diff options
Diffstat (limited to 'neb/__init__.py')
| -rw-r--r-- | neb/__init__.py | 7 | 
1 files changed, 5 insertions, 2 deletions
| diff --git a/neb/__init__.py b/neb/__init__.py index 7e3075b..c9e385e 100644 --- a/neb/__init__.py +++ b/neb/__init__.py @@ -177,13 +177,16 @@ class TypeWrap:          # if it's an any type, it's valid          if self.parent is None:              return Bool(True) -        valid = self.is_func.call(List([None, target]), env, ns) +        if isinstance(self.is_func, UserFunction): +            valid = self.is_func.call(Expr([None, target]), env, ns) +        else: +            valid = self.is_func(None, [target], env, ns)          if valid.value == True:              return valid          parent_type = env.get(f"{target.type_}")          while valid.value != True and parent_type.parent is not None:              parent_type = env.get(f"{parent_type.parent}") -            valid = Bool(self.name == parent_type.name) +            valid = Bool(self.name == parent_type.name) # TODO wrong          return valid      def __str__(self): | 
