#include <hps.h>
|
static const HPS::Type | staticType = HPS::Type::ConditionalExpression |
|
static const HPS::Type | staticType = HPS::Type::None |
|
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.
◆ ConditionalExpression() [1/5]
HPS::ConditionalExpression::ConditionalExpression |
( |
char const * |
in_condition | ) |
|
This constructor is the way to construct a ConditionalExpression object from a string.
- Parameters
-
in_condition | The string to use as the condition, assumed to be utf8 encoded. |
◆ ConditionalExpression() [2/5]
HPS::ConditionalExpression::ConditionalExpression |
( |
float |
in_number | ) |
|
This constructor is the way to construct a ConditionalExpression object from a number.
- Parameters
-
in_value | The number to use as the condition. |
◆ ConditionalExpression() [3/5]
HPS::ConditionalExpression::ConditionalExpression |
( |
HPS::Condition::Intrinsic |
in_special | ) |
|
This constructor is the way to construct a ConditionalExpression object from a special intrinsic type.
- Parameters
-
in_special | The intrinsic type to use as the condition. |
◆ ConditionalExpression() [4/5]
The copy constructor copies the source condition.
- Parameters
-
in_that | the source to be copied. |
◆ ConditionalExpression() [5/5]
◆ AND() [1/3]
An AND condition is satisfied if both of its operand conditions are satisfied.
- Parameters
-
in_operand2 | The condition to AND with this object. |
- Returns
- a new condition representing the logical AND of the operand condition with this object.
◆ AND() [2/3]
An AND condition is satisfied if both of its operand conditions are satisfied.
- Parameters
-
in_operand1 | The first condition operand. |
in_operand2 | The second condition operand. |
- Returns
- a new condition representing the logical AND of the operand conditions.
◆ AND() [3/3]
An AND condition is satisfied if all of its operand conditions are satisfied.
- Parameters
-
in_operands | The condition operands. |
- Returns
- a new condition representing the logical AND of the operand conditions.
◆ EQ() [1/2]
An EQ conditional expression is satisfied if its operand expressions are equal.
- Parameters
-
in_operand2 | The expression to compare to this object. |
- Returns
- a new conditional expression representing the equality comparison of the operand expression with this object.
◆ EQ() [2/2]
An EQ conditional expression is satisfied if its operand expressions are equal.
- Parameters
-
in_operand1 | The first condition operand. |
in_operand2 | The second condition operand. |
- Returns
- a new conditional expression representing the equality comparison of the operand expressions.
◆ Equals()
Check if the source object is equivalent to this object.
- Parameters
-
in_that | The source object to compare to this object. |
- Returns
- true if the objects are equivalent, false otherwise.
◆ GT() [1/2]
An GT conditional expression is satisfied if its second operand is greater than the first operand.
- Parameters
-
in_operand2 | The expression to compare to this object. |
- Returns
- a new conditional expression representing the greater than comparison of the operand expression with this object.
◆ GT() [2/2]
An GT conditional expression is satisfied if its second operand is greater than the first operand.
- Parameters
-
in_operand1 | The first condition operand. |
in_operand2 | The second condition operand. |
- Returns
- a new conditional expression representing the greater than comparison of the operand expressions.
◆ GTEQ() [1/2]
An GTEQ conditional expression is satisfied if its second operand is greater than or equal to the first operand.
- Parameters
-
in_operand2 | The expression to compare to this object. |
- Returns
- a new conditional expression representing the greater than or equal to comparison of the operand expression with this object.
◆ GTEQ() [2/2]
An GTEQ conditional expression is satisfied if its second operand is greater than or equal to the first operand.
- Parameters
-
in_operand1 | The first condition operand. |
in_operand2 | The second condition operand. |
- Returns
- a new conditional expression representing the greater than or equal to comparison of the operands.
◆ IsSatisfiedBy() [1/2]
bool HPS::ConditionalExpression::IsSatisfiedBy |
( |
UTF8Array const & |
in_conditions | ) |
const |
◆ IsSatisfiedBy() [2/2]
bool HPS::ConditionalExpression::IsSatisfiedBy |
( |
char const * |
in_condition | ) |
const |
◆ LT() [1/2]
An LT conditional expression is satisfied if its second operand is less than the first operand.
- Parameters
-
in_operand2 | The expression to compare to this object. |
- Returns
- a new conditional expression representing the less than comparison of the operand expression with this object.
◆ LT() [2/2]
An LT conditional expression is satisfied if its second operand is less than the first operand.
- Parameters
-
in_operand1 | The first condition operand. |
in_operand2 | The second condition operand. |
- Returns
- a new conditional expression representing the less than comparison of the operand expressions.
◆ LTEQ() [1/2]
An LTEQ conditional expression is satisfied if its second operand is less than or equal to the first operand.
- Parameters
-
in_operand2 | The expression to compare to this object. |
- Returns
- a new conditional expression representing the less than or equal to comparison of the operand expression with this object.
◆ LTEQ() [2/2]
An LTEQ conditional expression is satisfied if its second operand is less than or equal to the first operand.
- Parameters
-
in_operand1 | The first condition operand. |
in_operand2 | The second condition operand. |
- Returns
- a new conditional expression representing the less than or equal to comparison of the operand expressions.
◆ NEQ() [1/2]
An NEQ conditional expression is satisfied if its operand expressions are not equal.
- Parameters
-
in_operand2 | The expression to compare to this object. |
- Returns
- a new conditional expression representing the non-equality comparison of the operand expression with this object.
◆ NEQ() [2/2]
An NEQ conditional expression is satisfied if its operand expressions are not equal.
- Parameters
-
in_operand1 | The first condition operand. |
in_operand2 | The second condition operand. |
- Returns
- a new conditional expression representing the non-equality comparison of the operand expressions.
◆ NOT()
A NOT condition is satisfied if its operand condition is not satisfied.
- Parameters
-
in_operand | The condition operand. |
- Returns
- a new condition representing the logical negation of the operand.
◆ ObjectType()
HPS::Type HPS::ConditionalExpression::ObjectType |
( |
| ) |
const |
|
inlinevirtual |
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).
- Returns
- The declared type of the object in question, which may differ from the true, underlying type.
Reimplemented from HPS::Object.
◆ operator!()
A NOT condition is satisfied if its operand condition is not satisfied.
- Returns
- a new condition representing the logical negation of this object.
◆ operator!=()
Check if the source object is equivalent to this object.
- Parameters
-
in_that | The source object to compare to this object. |
- Returns
- true if the objects are not equivalent, false otherwise.
◆ operator&&()
An AND condition is satisfied if both of its operand conditions are satisfied.
- Parameters
-
in_operand2 | The condition to AND with this object. |
- Returns
- a new condition representing the logical AND of the operand condition with this object.
◆ operator=() [1/2]
◆ operator=() [2/2]
Copies the source ConditionalExpression object to this object.
- Parameters
-
in_that | The source of the copy. |
- Returns
- A reference to this object.
◆ operator==()
Check if the source object is equivalent to this object.
- Parameters
-
in_that | The source object to compare to this object. |
- Returns
- true if the objects are equivalent, false otherwise.
◆ operator^()
An XOR condition is satisfied if either operand condition is satisfied, but not both.
- Parameters
-
in_operand2 | The condition to XOR with this object. |
- Returns
- a new condition representing the logical XOR of the operand condition with this object.
◆ operator||()
An OR condition is satisfied if either of its operand conditions are satisfied.
- Parameters
-
in_operand2 | The condition to OR with this object. |
- Returns
- a new condition representing the logical OR of the operand condition with this object.
◆ OR() [1/3]
An OR condition is satisfied if either of its operand conditions are satisfied.
- Parameters
-
in_operand2 | The condition to OR with this object. |
- Returns
- a new condition representing the logical OR of the operand condition with this object.
◆ OR() [2/3]
An OR condition is satisfied if either of its operand conditions are satisfied.
- Parameters
-
in_operand1 | The first condition operand. |
in_operand2 | The second condition operand. |
- Returns
- a new condition representing the logical OR of the operand conditions.
◆ OR() [3/3]
An OR condition is satisfied if any of its operand conditions are satisfied.
- Parameters
-
in_operands | The condition operands. |
- Returns
- a new condition representing the logical OR of the operand conditions.
◆ ShowCondition()
bool HPS::ConditionalExpression::ShowCondition |
( |
UTF8 & |
out_condition | ) |
const |
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.
- Parameters
-
out_condition | The condition string. |
- Returns
- true if a condition string has been set, false otherwise.
◆ ShowIntrinsic()
bool HPS::ConditionalExpression::ShowIntrinsic |
( |
Condition::Intrinsic & |
out_special | ) |
const |
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.
- Parameters
-
out_special | The intrinsic type. |
- Returns
- true if an intrinsic type has been set, false otherwise.
◆ ShowNumber()
bool HPS::ConditionalExpression::ShowNumber |
( |
float & |
out_number | ) |
const |
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.
- Parameters
-
- Returns
- true if a number has been set, false otherwise.
◆ ShowOperands()
Retrieves the operands, if any, of this condition object. A ConditionalExpression object can only have either a number, condition string, intrinsic type, or operands.
- Parameters
-
out_operands | An array of condition operands. |
- Returns
- true if operands are set on this object, false otherwise.
◆ XOR() [1/2]
An XOR condition is satisfied if either operand condition is satisfied, but not both.
- Parameters
-
in_operand2 | The condition to XOR with this object. |
- Returns
- a new condition representing the logical XOR of the operand condition with this object.
◆ XOR() [2/2]
An XOR condition is satisfied if either operand condition is satisfied, but not both.
- Parameters
-
in_operand1 | The first condition operand. |
in_operand2 | The second condition operand. |
- Returns
- a new condition representing the logical XOR of the operand conditions.
◆ AND
An AND condition is satisfied if both of its operand conditions are satisfied.
- Parameters
-
in_operand1 | The first condition operand. |
in_operand2 | The second condition operand. |
- Returns
- a new condition representing the logical AND of the operand conditions.
◆ EQ
An EQ conditional expression is satisfied if its operand expressions are equal.
- Parameters
-
in_operand1 | The first condition operand. |
in_operand2 | The second condition operand. |
- Returns
- a new conditional expression representing the equality comparison of the operand expressions.
◆ GT
An GT conditional expression is satisfied if its second operand is greater than the first operand.
- Parameters
-
in_operand1 | The first condition operand. |
in_operand2 | The second condition operand. |
- Returns
- a new conditional expression representing the greater than comparison of the operand expressions.
◆ GTEQ
An GTEQ conditional expression is satisfied if its second operand is greater than or equal to the first operand.
- Parameters
-
in_operand1 | The first condition operand. |
in_operand2 | The second condition operand. |
- Returns
- a new conditional expression representing the greater than or equal to comparison of the operands.
◆ LT
An LT conditional expression is satisfied if its second operand is less than the first operand.
- Parameters
-
in_operand1 | The first condition operand. |
in_operand2 | The second condition operand. |
- Returns
- a new conditional expression representing the less than comparison of the operand expressions.
◆ LTEQ
An LTEQ conditional expression is satisfied if its second operand is less than or equal to the first operand.
- Parameters
-
in_operand1 | The first condition operand. |
in_operand2 | The second condition operand. |
- Returns
- a new conditional expression representing the less than or equal to comparison of the operand expressions.
◆ NEQ
An NEQ conditional expression is satisfied if its operand expressions are not equal.
- Parameters
-
in_operand1 | The first condition operand. |
in_operand2 | The second condition operand. |
- Returns
- a new conditional expression representing the non-equality comparison of the operand expressions.
◆ NOT
A NOT condition is satisfied if its operand condition is not satisfied.
- Parameters
-
in_operand | The condition operand. |
- Returns
- a new condition representing the logical negation of the operand.
◆ OR
An OR condition is satisfied if either of its operand conditions are satisfied.
- Parameters
-
in_operand1 | The first condition operand. |
in_operand2 | The second condition operand. |
- Returns
- a new condition representing the logical OR of the operand conditions.
◆ XOR
An XOR condition is satisfied if either operand condition is satisfied, but not both.
- Parameters
-
in_operand1 | The first condition operand. |
in_operand2 | The second condition operand. |
- Returns
- a new condition representing the logical XOR of the operand conditions.
The documentation for this class was generated from the following file: