2
Пример объявления типа в F #:Имеет ли Scala эквивалент «типа» F #?
type ActiveCartData = { UnpaidItems: string list }
type PaidCartData = { PaidItems: string list; Payment: float }
type ShoppingCart =
| EmptyCart // no data
| ActiveCart of ActiveCartData
| PaidCart of PaidCartData
Как мы могли бы сделать что-то подобное в Scala, используя trait
и case class
и/или case object
?
начало:
trait ShoppingCart
case object EmptyCart extends ShoppingCart
case object ActiveCart extends ShoppingCart
case object PaidCart extends ShoppingCart
Но как сделать отношения с типами держателей данных?
Да, я Ожидал 'случай класс '. Я просто хотел убедиться, что не было ничего подобного псевдониму типа (исключая ключевое слово «тип» Scala). Благодаря! – boechat107