Skip to content

Instantly share code, notes, and snippets.

scala> EmailAddress("[email protected]").map(_.copy(emailAddress = "@example.com"))
<console>:13: error: value copy is not a member of EmailAddress
EmailAddress("[email protected]").map(_.copy(emailAddress = "@example.com"))
^
class EvilEmailAddress(address: String) extends EmailAddress(address)
EmailClient.sendEmail(from = new EvilEmailAddress("[email protected]"), to = new EvilEmailAddress("@example.com")) {
...
}
sealed abstract case class EmailAddress(emailAddress: String)
scala> class EvilEmailAddress(address: String) extends EmailAddress(address)
<console>:14: error: illegal inheritance from sealed class EmailAddress
class EvilEmailAddress(address: String) extends EmailAddress(address)
scala> new EmailAddress("@example.com") {}
<console>:15: error: illegal inheritance from sealed class EmailAddress
new EmailAddress(""){}