public NodePropertiesValidationRule(string propertyName, NodePropertiesValidationRuleDelegate <T> @delegate)
 {
     _delegate     = @delegate;
     _propertyName = propertyName;
 }
 public void AddRule <TNode, TValue>(string propertyName, NodePropertiesValidationRuleDelegate <TNode, TValue> rule) where TNode : AbstractActionModelTreeNode
 {
     Platform.CheckForEmptyString(propertyName, "propertyName");
     Platform.CheckForNullReference(rule, "rule");
     this.AddRule(new NodePropertiesValidationRule <TNode, TValue>(propertyName, rule));
 }