blob: fb5424b67a7c608d55a30c5493be22f491a2e8e7 [file] [log] [blame]
class FunctionBackend(object):
def __init__(self):
self.function_classes = {}
def __getattr__(self, name):
fn = self.function_classes.get(name)
if fn is None:
raise NotImplementedError
return fn
def register_function(self, name, function_class):
if self.function_classes.get(name):
raise RuntimeError("Trying to register second function under name " + name + " in " + type(self).__name__)
self.function_classes[name] = function_class