Я хочу иметь классы, которые могут смешивать только указанные черты:
class Peter extends Human with Lawful with Evil
class Mag extends Elf with Chaotic with Neutral
Есть ли в Scala способ сделать это?
UPD:
trait Law
trait Lawful extends Law
trait LNeutral extends Law
trait Chaotic extends Law
trait Moral
trait Good extends Moral
trait Neutral extends Moral
trait Evil extends Moral
class Hero .........
class Homer extends Hero with Chaotic with Good
Я хочу определить класс Hero
таким образом, чтобы клиентский программист смешивал определенные черты (Lawful
/LNeutral
/Chaotic
и Good
/Neutral
/Evil
), если он расширяет класс Hero
. И я хочу найти другие возможности для ограничения/ограничения клиентского кода следующим образом.