scala> case class Subject(name: String, mark: Int)
defined class Subject
scala> def fn1(x: Subject) = x match {
| // A Pattern Gaurd always returns a Boolean
| // Here 'if x > 5' acts as a Pattern Gaurd
| case Subject("math", x) if x > 75 => {
| println("Matching : More than 75...")
| }
| case _ => println("Not matching...")
| }
fn1: (x: Subject)Unit
scala> fn1(Subject("math", 80))
Matching : More than 75...
scala> fn1(Subject("math", 60))
Not matching...