/// <summary> /// operator and compose the builder with an and clause /// </summary> /// <param name="left"></param> /// <param name="right"></param> /// <returns></returns> public static ConstraintBuilder operator &(ConstraintBuilder left, ConstraintBuilder right) { ConstraintBuilder newbuilder = new ConstraintBuilder(); newbuilder.constraints.Push(new OpenBracket()); AppendToStack(newbuilder.constraints, left.constraints); newbuilder.constraints.Push(new AndConstraint()); AppendToStack(newbuilder.constraints, right.constraints); newbuilder.constraints.Push(new CloseBracket()); return newbuilder; }
public static ConstraintBuilder LesserThan(Object obj) { return(ConstraintBuilder.ForLesserThan(obj)); }
public static ConstraintBuilder EqualsTo(Object obj) { return(ConstraintBuilder.ForEquals(obj)); }
public static ConstraintBuilder ForLesserThan(Object obj) { ConstraintBuilder c = new ConstraintBuilder(); c.Push(new LessThanConstraint(obj)); return c; }
public static ConstraintBuilder ForEquals(Object obj) { ConstraintBuilder c = new ConstraintBuilder(); c.Push(new EqualsConstraint(obj)); return c; }
private ConstraintBuilder(ConstraintBuilder original) { constraints = new Stack<IConstraint>(original.constraints); }
private ConstraintBuilder(ConstraintBuilder original) { constraints = new Stack <IConstraint>(original.constraints); }