ConstraintBuilder
ConstraintBuilder maintains the stacks that are used in
processing a ConstraintExpression. An OperatorStack
is used to hold operators that are waiting for their
operands to be reognized. a ConstraintStack holds
input constraints as well as the results of each
operator applied.
ConstraintStack is a type-safe stack for holding Constraints
OperatorStack is a type-safe stack for holding ConstraintOperators
Gets a value indicating whether this instance is resolvable.
public ConstraintBuilder()
Initializes a new instance of the ConstraintBuilder class.
Appends the specified operator to the expression by first
reducing the operator stack and then pushing the new
operator on the stack.
Appends the specified constraint to the expresson by pushing
it on the constraint stack.
Resolves this instance, returning a Constraint. If the builder
is not currently in a resolvable state, an exception is thrown.