Guest User

Untitled

a guest
Mar 27th, 2018
303
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.78 KB | None | 0 0
  1. #!/usr/bin/env scala -feature
  2.  
  3. object EMail {
  4. //object EMail extends ((String, String) => String) {
  5. //object EMail extends Function2[String, String, String] {
  6.  
  7. //def apply(user: String, domain: String) = user + "@" + domain
  8.  
  9. def unapply(str: String): Option[(String,String)] = {
  10. val parts = str split "@"
  11. if (parts.length == 2) Some(parts(0), parts(1)) else None
  12. }
  13. }
  14.  
  15. val s: Any = "ed@you.com"
  16. s match {
  17. case EMail(user, domain) => println(user + " at " + domain)
  18. case _ => println("not an email address")
  19. }
  20.  
  21. //val ss = List(s, s, "sue@me.com","sue@me.com")
  22. //val ss = List(s,"sue@me.com","sue@me.com")
  23. val ss = List("sue@me.com","sue@me.com", s, s, s)
  24. ss match {
  25. case EMail(u1, d1) :: EMail(u2, d2) :: _ if (u1 == u2) => println(s"$u1 has a dupe")
  26. case _ => println("not sure")
  27. }
Add Comment
Please, Sign In to add comment