AFAIK you cannot use AnyVal with inheritance. Since you might want to pattern match on these objects, they should extend a trait IMHO.