/// <summary> /// Create a "Trigger" with a Setter that has a reference kept in the list TriggerFields. /// /// By storing these set methods' reference in the list, we can easily set the value whenever we want, /// and pass setter methods around like any other variable. /// </summary> /// <returns>NodePortTriggerField</returns> public static NodePortTriggerField Create(MethodInfo field, ITriggeredNode node) { var newTriggerField = new NodePortTriggerField(field, node); TriggerFields.Add(newTriggerField); return(newTriggerField); }
NodePortTriggerField(MethodInfo field, ITriggeredNode node) { Field = field; Node = node; Setter = (value) => Field.Invoke(Node, new object[] { true }); }