ConditionalExpression

class HPS.ConditionalExpression : public HPS.Object

A ConditionalExpression is a string or collection of strings separated by logical operators. In practice, conditional expressions form a tree with the leaves being strings (the actual Conditions that must be satisfied) and the interior nodes being logical operators.

Public Functions

HPS.ConditionalExpression AND (HPS.ConditionalExpression in_operand2)

An AND condition is satisfied if both of its operand conditions are satisfied.

Param in_operand2

The condition to AND with this object.

Return

a new condition representing the logical AND of the operand condition with this object.

ConditionalExpression ()
ConditionalExpression (float in_number)

This constructor is the way to construct a ConditionalExpression object from a number.

ConditionalExpression (HPS.Condition.Intrinsic in_special)

This constructor is the way to construct a ConditionalExpression object from a special intrinsic type.

Param in_special

The intrinsic type to use as the condition.

ConditionalExpression (HPS.ConditionalExpression in_that)

The copy constructor copies the source condition.

Param in_that

the source to be copied.

ConditionalExpression (string in_condition)

This constructor is the way to construct a ConditionalExpression object from a string.

Param in_condition

The string to use as the condition, assumed to be utf8 encoded.

override void Dispose ()
HPS.ConditionalExpression EQ (HPS.ConditionalExpression in_operand2)

An EQ conditional expression is satisfied if its operand expressions are equal.

Param in_operand2

The expression to compare to this object.

Return

a new conditional expression representing the equality comparison of the operand expression with this object.

bool Equals (HPS.ConditionalExpression in_that)

Check if the source object is equivalent to this object.

Param in_that

The source object to compare to this object.

Return

true if the objects are equivalent, false otherwise.

override bool Equals (Object obj)
override int GetHashCode ()
HPS.ConditionalExpression GT (HPS.ConditionalExpression in_operand2)

An GT conditional expression is satisfied if its second operand is greater than the first operand.

Param in_operand2

The expression to compare to this object.

Return

a new conditional expression representing the greater than comparison of the operand expression with this object.

HPS.ConditionalExpression GTEQ (HPS.ConditionalExpression in_operand2)

An GTEQ conditional expression is satisfied if its second operand is greater than or equal to the first operand.

Param in_operand2

The expression to compare to this object.

Return

a new conditional expression representing the greater than or equal to comparison of the operand expression with this object.

bool IsSatisfiedBy (string in_condition)

Determines if the source ConditionalExpression object is satisfied by the given condition.

Param in_condition

The condition to test against the ConditionalExpression object.

Return

true if the ConditionalExpression object is satisfied, false otherwise.

bool IsSatisfiedBy (string[] in_conditions)
HPS.ConditionalExpression LT (HPS.ConditionalExpression in_operand2)

An LT conditional expression is satisfied if its second operand is less than the first operand.

Param in_operand2

The expression to compare to this object.

Return

a new conditional expression representing the less than comparison of the operand expression with this object.

HPS.ConditionalExpression LTEQ (HPS.ConditionalExpression in_operand2)

An LTEQ conditional expression is satisfied if its second operand is less than or equal to the first operand.

Param in_operand2

The expression to compare to this object.

Return

a new conditional expression representing the less than or equal to comparison of the operand expression with this object.

HPS.ConditionalExpression NEQ (HPS.ConditionalExpression in_operand2)

An NEQ conditional expression is satisfied if its operand expressions are not equal.

Param in_operand2

The expression to compare to this object.

Return

a new conditional expression representing the non-equality comparison of the operand expression with this object.

override HPS.Type ObjectType ()

This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).

Return

The declared type of the object in question, which may differ from the true, underlying type.

HPS.ConditionalExpression OR (HPS.ConditionalExpression in_operand2)

An OR condition is satisfied if either of its operand conditions are satisfied.

Param in_operand2

The condition to OR with this object.

Return

a new condition representing the logical OR of the operand condition with this object.

bool ShowCondition (out string out_condition)

Shows the condition string that has been set on this object, if any. A ConditionalExpression object can only have either a number, condition string, intrinsic type, or operands.

Param out_condition

The condition string.

Return

true if a condition string has been set, false otherwise.

bool ShowIntrinsic (out HPS.Condition.Intrinsic out_special)

Shows the intrinsic type that has been set on this object, if any. A ConditionalExpression object can only have either a number, condition string, intrinsic type, or operands.

Param out_special

The intrinsic type.

Return

true if an intrinsic type has been set, false otherwise.

bool ShowNumber (out float out_number)

Shows the number that has been set on this object, if any. A ConditionalExpression object can only have either a number, condition string, intrinsic type, or operands.

Param out_number

The number.

Return

true if a number has been set, false otherwise.

bool ShowOperands (out HPS.ConditionalExpression[] out_operands)

Retrieves the operands, if any, of this condition object. A ConditionalExpression object can only have either a number, condition string, intrinsic type, or operands.

Param out_operands

An array of condition operands.

Return

true if operands are set on this object, false otherwise.

HPS.ConditionalExpression XOR (HPS.ConditionalExpression in_operand2)

An XOR condition is satisfied if either operand condition is satisfied, but not both.

Param in_operand2

The condition to XOR with this object.

Return

a new condition representing the logical XOR of the operand condition with this object.

Public Static Functions

HPS.ConditionalExpression AND (HPS.ConditionalExpression in_operand1, HPS.ConditionalExpression in_operand2)

An AND condition is satisfied if both of its operand conditions are satisfied.

Param in_operand1

The first condition operand.

Param in_operand2

The second condition operand.

Return

a new condition representing the logical AND of the operand conditions.

HPS.ConditionalExpression AND (HPS.ConditionalExpression[] in_operands)

An AND condition is satisfied if all of its operand conditions are satisfied.

Param in_operands

The condition operands.

Return

a new condition representing the logical AND of the operand conditions.

HPS.ConditionalExpression EQ (HPS.ConditionalExpression in_operand1, HPS.ConditionalExpression in_operand2)

An EQ conditional expression is satisfied if its operand expressions are equal.

Param in_operand1

The first condition operand.

Param in_operand2

The second condition operand.

Return

a new conditional expression representing the equality comparison of the operand expressions.

HPS.ConditionalExpression GT (HPS.ConditionalExpression in_operand1, HPS.ConditionalExpression in_operand2)

An GT conditional expression is satisfied if its second operand is greater than the first operand.

Param in_operand1

The first condition operand.

Param in_operand2

The second condition operand.

Return

a new conditional expression representing the greater than comparison of the operand expressions.

HPS.ConditionalExpression GTEQ (HPS.ConditionalExpression in_operand1, HPS.ConditionalExpression in_operand2)

An GTEQ conditional expression is satisfied if its second operand is greater than or equal to the first operand.

Param in_operand1

The first condition operand.

Param in_operand2

The second condition operand.

Return

a new conditional expression representing the greater than or equal to comparison of the operands.

HPS.ConditionalExpression LT (HPS.ConditionalExpression in_operand1, HPS.ConditionalExpression in_operand2)

An LT conditional expression is satisfied if its second operand is less than the first operand.

Param in_operand1

The first condition operand.

Param in_operand2

The second condition operand.

Return

a new conditional expression representing the less than comparison of the operand expressions.

HPS.ConditionalExpression LTEQ (HPS.ConditionalExpression in_operand1, HPS.ConditionalExpression in_operand2)

An LTEQ conditional expression is satisfied if its second operand is less than or equal to the first operand.

Param in_operand1

The first condition operand.

Param in_operand2

The second condition operand.

Return

a new conditional expression representing the less than or equal to comparison of the operand expressions.

HPS.ConditionalExpression NEQ (HPS.ConditionalExpression in_operand1, HPS.ConditionalExpression in_operand2)

An NEQ conditional expression is satisfied if its operand expressions are not equal.

Param in_operand1

The first condition operand.

Param in_operand2

The second condition operand.

Return

a new conditional expression representing the non-equality comparison of the operand expressions.

HPS.ConditionalExpression NOT (HPS.ConditionalExpression in_operand)

A NOT condition is satisfied if its operand condition is not satisfied.

Param in_operand

The condition operand.

Return

a new condition representing the logical negation of the operand.

bool operator!= (HPS.ConditionalExpression a, HPS.ConditionalExpression b)
bool operator== (HPS.ConditionalExpression a, HPS.ConditionalExpression b)
HPS.ConditionalExpression OR (HPS.ConditionalExpression in_operand1, HPS.ConditionalExpression in_operand2)

An OR condition is satisfied if either of its operand conditions are satisfied.

Param in_operand1

The first condition operand.

Param in_operand2

The second condition operand.

Return

a new condition representing the logical OR of the operand conditions.

HPS.ConditionalExpression OR (HPS.ConditionalExpression[] in_operands)

An OR condition is satisfied if any of its operand conditions are satisfied.

Param in_operands

The condition operands.

Return

a new condition representing the logical OR of the operand conditions.

HPS.ConditionalExpression XOR (HPS.ConditionalExpression in_operand1, HPS.ConditionalExpression in_operand2)

An XOR condition is satisfied if either operand condition is satisfied, but not both.

Param in_operand1

The first condition operand.

Param in_operand2

The second condition operand.

Return

a new condition representing the logical XOR of the operand conditions.