nitlanguage
/
nit.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
nullable: convert lib, tools and tests
[nit.git]
/
src
/
metamodel
/
type_formal.nit
diff --git
a/src/metamodel/type_formal.nit
b/src/metamodel/type_formal.nit
index
fb24352
..
5ecf49f
100644
(file)
--- a/
src/metamodel/type_formal.nit
+++ b/
src/metamodel/type_formal.nit
@@
-28,24
+28,24
@@
end
# Formal types are named indirect types
class MMTypeFormal
special MMType
# Formal types are named indirect types
class MMTypeFormal
special MMType
+ redef meth is_valid do return _bound != null and _bound.is_valid
+
# The name of the type
# The name of the type
- readable attr _name: Symbol
+ readable attr _name: Symbol
# The type refered
# The type refered
- readable attr _bound: MMType
+ meth bound: MMType do return _bound.as(not null)
+ attr _bound: nullable MMType
- redef meth <(t) do return t != null and (t == self or t.is_supertype(_bound))
+ redef meth <(t) do return t == self or t.is_supertype(bound)
redef meth is_supertype(t) do return _bound.is_supertype(t)
redef meth is_supertype(t) do return _bound.is_supertype(t)
+ redef meth is_nullable do return _bound.is_nullable
redef meth direct_type do return _bound.direct_type
redef meth direct_type do return _bound.direct_type
- redef meth local_class
- do
- if _bound == null then return null
- return _bound.local_class
- end
+ redef meth local_class do return _bound.local_class
redef meth to_s do return _name.to_s
redef meth to_s do return _name.to_s
- protected init(name: Symbol, bound: MMType)
+ protected init(name: Symbol, bound: nullable MMType)
do
_name = name
_bound = bound
do
_name = name
_bound = bound