Files
smnp-py/smnp/environment/function/model.py
2019-07-04 02:19:15 +02:00

18 lines
434 B
Python

from enum import Enum, auto
class FunctionType(Enum):
FUNCTION = auto()
METHOD = auto()
class Function:
def __init__(self, signature, function):
self.signature = signature
self.function = function
def call(self, env, args):
result = self.signature(args)
if result[0]:
return self.function(env, *result[1:])
# todo: raise illegal signature exception or something