Signed-off-by: Jean Privat <jean@pryen.org>
class MMNullableType
special MMType
attr _base_type: MMType
+ redef meth is_valid do return _base_type.is_valid
redef meth is_nullable: Bool do return true
redef meth as_notnull do return _base_type
redef meth as_nullable do return self
# Formal types are named indirect types
class MMTypeFormal
special MMType
- redef meth is_valid do return _bound != null
+ redef meth is_valid do return _bound != null and _bound.is_valid
# The name of the type
readable attr _name: Symbol