public static void regestFuns(string name, Fn2 fn) { if (protoids.nameids.ContainsKey(name)) { int id = protoids.nameids[name]; funs.Add(id, fn); } else if (protoids.nameids.ContainsKey("Protocol." + name)) //default "Protocol." { int id = protoids.nameids["Protocol." + name]; funs.Add(id, fn); } }
public virtual void compose() { Fn1 fn1a = new Fn1(); Fn1 fn1b = new Fn1(); Fn2 fn2 = new Fn2(); CalculationFunctions fns1 = CalculationFunctions.of(fn1a); CalculationFunctions fns2 = CalculationFunctions.of(fn1b, fn2); CalculationFunctions composed = fns1.composedWith(fns2); assertEquals(composed.getFunction(new Target1()), fn1a); assertEquals(composed.getFunction(new Target2()), fn2); }