class
UniverseIntensionConstraintFactoryContents
- Reference
The UniverseIntensionConstraintFactory makes easier the construction of native intension constraints from the solver's API, by providing a functional notation.
Base classes
Public functions
-
auto constant(long value) -> Universe::
IUniverseIntensionConstraint* override -
auto constant(const Universe::
BigInteger& value) -> Universe:: IUniverseIntensionConstraint* override -
auto variable(std::string id) -> Universe::
IUniverseIntensionConstraint* override -
auto in(Universe::
IUniverseIntensionConstraint* constraint, const Universe:: BigInteger& min, const Universe:: BigInteger& max) -> Universe:: IUniverseIntensionConstraint* override -
auto in(Universe::
IUniverseIntensionConstraint* constraint, std::vector<Universe:: IUniverseIntensionConstraint*> set) -> Universe:: IUniverseIntensionConstraint* override -
auto notIn(Universe::
IUniverseIntensionConstraint* constraint, const Universe:: BigInteger& min, const Universe:: BigInteger& max) -> Universe:: IUniverseIntensionConstraint* override -
auto notIn(Universe::
IUniverseIntensionConstraint* constraint, std::vector<Universe:: IUniverseIntensionConstraint*> set) -> Universe:: IUniverseIntensionConstraint* override -
auto ite(Universe::
IUniverseIntensionConstraint* condition, Universe:: IUniverseIntensionConstraint* ifTrue, Universe:: IUniverseIntensionConstraint* ifFalse) -> Universe:: IUniverseIntensionConstraint* override -
auto unary(Universe::
UniverseOperator op, Universe:: IUniverseIntensionConstraint* constraint) -> Universe:: IUniverseIntensionConstraint* override -
auto binary(Universe::
UniverseOperator op, Universe:: IUniverseIntensionConstraint* left, Universe:: IUniverseIntensionConstraint* right) -> Universe:: IUniverseIntensionConstraint* override -
auto nary(Universe::
UniverseOperator op, std::vector<Universe:: IUniverseIntensionConstraint*> constraints) -> Universe:: IUniverseIntensionConstraint* override
Function documentation
Universe:: IUniverseIntensionConstraint* Universe:: UniverseIntensionConstraintFactory:: constant(long value) override
Parameters | |
---|---|
value | The value of the constant. |
Returns | The created intension constraint. |
Wraps a constant value in its representation as an intension constraint.
Universe:: IUniverseIntensionConstraint* Universe:: UniverseIntensionConstraintFactory:: constant(const Universe:: BigInteger& value) override
Parameters | |
---|---|
value | The value of the constant. |
Returns | The created intension constraint. |
Wraps a constant value in its representation as an intension constraint.
Universe:: IUniverseIntensionConstraint* Universe:: UniverseIntensionConstraintFactory:: variable(std::string id) override
Parameters | |
---|---|
id | The identifier of the variable. |
Returns | The created intension constraint. |
Wraps a variable in its representation as an intension constraint.
Universe:: IUniverseIntensionConstraint* Universe:: UniverseIntensionConstraintFactory:: in(Universe:: IUniverseIntensionConstraint* constraint,
const Universe:: BigInteger& min,
const Universe:: BigInteger& max) override
Parameters | |
---|---|
constraint | The constraint that should be in the range. |
min | The minimum value in the range. |
max | The maximum value in the range. |
Returns | The created intension constraint. |
Creates an intension constraint applying the in operator w.r.t. a range of values.
Universe:: IUniverseIntensionConstraint* Universe:: UniverseIntensionConstraintFactory:: in(Universe:: IUniverseIntensionConstraint* constraint,
std::vector<Universe:: IUniverseIntensionConstraint*> set) override
Parameters | |
---|---|
constraint | The constraint that should be in the set. |
set | The constraints in the set. |
Returns | The created intension constraint. |
Creates an intension constraint applying the in operator w.r.t. a set of values.
Universe:: IUniverseIntensionConstraint* Universe:: UniverseIntensionConstraintFactory:: notIn(Universe:: IUniverseIntensionConstraint* constraint,
const Universe:: BigInteger& min,
const Universe:: BigInteger& max) override
Parameters | |
---|---|
constraint | The constraint that should not be in the range. |
min | The minimum value in the range. |
max | The maximum value in the range. |
Returns | The created intension constraint. |
Creates an intension constraint applying the not-in operator w.r.t. a range of values.
Universe:: IUniverseIntensionConstraint* Universe:: UniverseIntensionConstraintFactory:: notIn(Universe:: IUniverseIntensionConstraint* constraint,
std::vector<Universe:: IUniverseIntensionConstraint*> set) override
Parameters | |
---|---|
constraint | The constraint that should not be in the set. |
set | The constraints in the set. |
Returns | The created intension constraint. |
Creates an intension constraint applying the not-in operator w.r.t. a set of values.
Universe:: IUniverseIntensionConstraint* Universe:: UniverseIntensionConstraintFactory:: ite(Universe:: IUniverseIntensionConstraint* condition,
Universe:: IUniverseIntensionConstraint* ifTrue,
Universe:: IUniverseIntensionConstraint* ifFalse) override
Parameters | |
---|---|
condition | The condition of the constraint. |
ifTrue | The intension constraint corresponding to the case in which the condition evaluates to true. |
ifFalse | The intension constraint corresponding to the case in which the condition evaluates to false. |
Returns | The created intension constraint. |
Creates an intension constraint applying the if-then-else operator.
Universe:: IUniverseIntensionConstraint* Universe:: UniverseIntensionConstraintFactory:: unary(Universe:: UniverseOperator op,
Universe:: IUniverseIntensionConstraint* constraint) override
Parameters | |
---|---|
op | The operator applied by the constraint. |
constraint | The constraint on which the operator is applied. |
Returns | The created intension constraint. |
Creates a new unary intension constraint.
Universe:: IUniverseIntensionConstraint* Universe:: UniverseIntensionConstraintFactory:: binary(Universe:: UniverseOperator op,
Universe:: IUniverseIntensionConstraint* left,
Universe:: IUniverseIntensionConstraint* right) override
Parameters | |
---|---|
op | The operator applied by the constraint. |
left | The left constraint on which the operator is applied. |
right | The right constraint on which the operator is applied. |
Returns | The created intension constraint. |
Creates a new binary intension constraint.
Universe:: IUniverseIntensionConstraint* Universe:: UniverseIntensionConstraintFactory:: nary(Universe:: UniverseOperator op,
std::vector<Universe:: IUniverseIntensionConstraint*> constraints) override
Parameters | |
---|---|
op | The operator applied by the constraint. |
constraints | The constraints on which the operator is applied. |
Returns | The created intension constraint. |
Creates a new n-ary intension constraint.