public static void Add <A, B, C, D, R>(this SymbolTable table, string name, Func <A, B, C, D, R> func, bool doNullProp = false) { if (typeof(D) != typeof(EvaluationContext)) { table.Add(new CallSignature(name, typeof(R), typeof(A), typeof(B), typeof(C), typeof(D)), InvokeeFactory.Wrap(func, doNullProp)); } else { table.Add(new CallSignature(name, typeof(R), typeof(A), typeof(B), typeof(C)), InvokeeFactory.Wrap(func, doNullProp)); } }
public static void AddVar(this SymbolTable table, string name, IElementNavigator value) { table.Add(new CallSignature(name, typeof(string)), InvokeeFactory.Return(value.ToTypedElement())); }
public static void Add <R>(this SymbolTable table, string name, Func <R> func) { table.Add(new CallSignature(name, typeof(R)), InvokeeFactory.Wrap(func)); }
public static void AddLogic(this SymbolTable table, string name, Func <Func <bool?>, Func <bool?>, bool?> func) { table.Add(new CallSignature(name, typeof(bool?), typeof(object), typeof(Func <bool?>), typeof(Func <bool?>)), InvokeeFactory.WrapLogic(func)); }