def new(cls, target_sinks): target_sinks = namedtuple_from_dict('Targets',target_sinks) sinks, functions = Impl._calculate_reach(target_sinks) return cls( targets = target_sinks, sinks = sinks, functions = functions)
def new(cls, data={}): return cls( data = namedtuple_from_dict("ConstantData", data) )
def new(cls, slot, data={}): return cls( slot = slot, data = namedtuple_from_dict("SourceData", data) )
def new(cls, target, data={}): return cls(target, namedtuple_from_dict("SinkData", data))
def new(cls, sources, data={}): return cls( sources = namedtuple_from_dict("Sources", sources), data = namedtuple_from_dict("FunctionData", data) )