#include <DS.h>
Inheritance diagram for CB2::Domain:
Public Types | |
typedef List< constrain_atom > | constrain_literal |
Constrains literal (disjunction of atoms). | |
typedef List< constrain_literal > | constrain_cnf |
Constrains list (conjuction of literals). | |
enum | constrain_str_value { str_row_eq, str_row_neq } |
Constrain on string value. More... | |
enum | constrain_int_value { int_row_eq, int_row_neq, int_row_gt, int_row_lt, int_row_ge, int_row_le } |
Constrain on integer value. More... | |
enum | constrain_type { str_value, int_value } |
Constrain type. More... | |
Public Member Functions | |
Domain () | |
Empty constrain. | |
Domain (const Domain &prev) | |
Copy constructor. | |
Domain (const constrain_str_value con, const String &key, const String &value) | |
Constrain on string value. | |
Domain (const constrain_int_value con, const String &key, const int value) | |
Constrain on string value. | |
~Domain () | |
Destructor. | |
const Domain & | operator && (const Domain &right) |
Merge constains using AND logical operator. | |
const Domain & | operator|| (const Domain &right) |
Merge constains using OR logical operator. | |
const Domain & | operator! () |
Logical inversion of the constain. | |
Public Attributes | |
constrain_cnf | constrains |
Current constrains. | |
int | tag |
Tag for user-specific data. |
This class defines the domain for data queries. It is the way to define constrains on the domain of the query.
|
Constrains list (conjuction of literals).
|
|
Constrains literal (disjunction of atoms).
|
|
Constrain on integer value.
|
|
Constrain on string value.
|
|
Constrain type.
|
|
Empty constrain.
|
|
Copy constructor.
|
|
Constrain on string value.
|
|
Constrain on string value.
|
|
Destructor.
|
|
Merge constains using AND logical operator.
|
|
Logical inversion of the constain.
|
|
Merge constains using OR logical operator.
|
|
Current constrains.
|
|
Tag for user-specific data.
|