Gecode::FlatZinc Namespace Reference
Interpreter for the FlatZinc language. More...
Namespaces | |
namespace | AST |
Abstract syntax trees for the FlatZinc interpreter. | |
Classes | |
class | ConExpr |
Abstract representation of a constraint. More... | |
struct | Option |
Optional value. More... | |
class | ParserState |
State of the FlatZinc parser More... | |
class | Registry |
Map from constraint identifier to constraint posting functions. More... | |
class | SymbolTable |
Symbol table mapping identifiers (strings) to values. More... | |
class | Alias |
Alias for a variable specification More... | |
class | VarSpec |
Base class for variable specifications. More... | |
class | IntVarSpec |
Specification for integer variables. More... | |
class | BoolVarSpec |
Specification for Boolean variables. More... | |
class | FloatVarSpec |
Specification for floating point variables. More... | |
class | SetVarSpec |
Specification for set variables. More... | |
class | Printer |
Output support class for FlatZinc interpreter. More... | |
class | FlatZincOptions |
Options for running FlatZinc models More... | |
class | FlatZincSpace |
A space that can be initialized with a FlatZinc model. More... | |
class | Error |
Exception class for FlatZinc errors More... | |
Typedefs | |
typedef std::pair< std::string, Option< std::vector< int > * > > | intvartype |
typedef std::pair< std::string, VarSpec * > | varspec |
Functions | |
IntSet | vs2is (IntVarSpec *vs) |
int | vs2bsl (BoolVarSpec *bs) |
int | vs2bsh (BoolVarSpec *bs) |
TieBreakVarBranch< IntVarBranch > | ann2ivarsel (AST::Node *ann) |
IntValBranch | ann2ivalsel (AST::Node *ann) |
IntAssign | ann2asnivalsel (AST::Node *ann) |
SetVarBranch | ann2svarsel (AST::Node *ann) |
SetValBranch | ann2svalsel (AST::Node *ann) |
void | flattenAnnotations (AST::Array *ann, std::vector< AST::Node * > &out) |
Registry & | registry (void) |
Return global registry object. | |
GECODE_FLATZINC_EXPORT FlatZincSpace * | parse (const std::string &fileName, Printer &p, std::ostream &err=std::cerr, FlatZincSpace *fzs=NULL) |
Parse FlatZinc file fileName into fzs and return it. | |
GECODE_FLATZINC_EXPORT FlatZincSpace * | parse (std::istream &is, Printer &p, std::ostream &err=std::cerr, FlatZincSpace *fzs=NULL) |
Parse FlatZinc from is into fzs and return it. |
Detailed Description
Interpreter for the FlatZinc language.
The Gecode::FlatZinc namespace contains all functionality required to parse and solve constraint models written in the FlatZinc language.
Typedef Documentation
typedef std::pair<std::string,Option<std::vector<int>* > > Gecode::FlatZinc::intvartype |
typedef std::pair<std::string, VarSpec*> Gecode::FlatZinc::varspec |
Function Documentation
IntSet Gecode::FlatZinc::vs2is | ( | IntVarSpec * | vs | ) |
Definition at line 50 of file flatzinc.cpp.
int Gecode::FlatZinc::vs2bsl | ( | BoolVarSpec * | bs | ) |
Definition at line 70 of file flatzinc.cpp.
int Gecode::FlatZinc::vs2bsh | ( | BoolVarSpec * | bs | ) |
Definition at line 82 of file flatzinc.cpp.
TieBreakVarBranch<IntVarBranch> Gecode::FlatZinc::ann2ivarsel | ( | AST::Node * | ann | ) |
Definition at line 94 of file flatzinc.cpp.
IntValBranch Gecode::FlatZinc::ann2ivalsel | ( | AST::Node * | ann | ) |
Definition at line 130 of file flatzinc.cpp.
IntAssign Gecode::FlatZinc::ann2asnivalsel | ( | AST::Node * | ann | ) |
Definition at line 153 of file flatzinc.cpp.
SetVarBranch Gecode::FlatZinc::ann2svarsel | ( | AST::Node * | ann | ) |
Definition at line 171 of file flatzinc.cpp.
SetValBranch Gecode::FlatZinc::ann2svalsel | ( | AST::Node * | ann | ) |
Definition at line 190 of file flatzinc.cpp.
void Gecode::FlatZinc::flattenAnnotations | ( | AST::Array * | ann, | |
std::vector< AST::Node * > & | out | |||
) |
Definition at line 334 of file flatzinc.cpp.
Registry & Gecode::FlatZinc::registry | ( | void | ) |
Return global registry object.
GECODE_FLATZINC_EXPORT FlatZincSpace* Gecode::FlatZinc::parse | ( | const std::string & | fileName, | |
Printer & | p, | |||
std::ostream & | err = std::cerr , |
|||
FlatZincSpace * | fzs = NULL | |||
) |
Parse FlatZinc file fileName into fzs and return it.
Creates a new empty FlatZincSpace if fzs is NULL.
GECODE_FLATZINC_EXPORT FlatZincSpace* Gecode::FlatZinc::parse | ( | std::istream & | is, | |
Printer & | p, | |||
std::ostream & | err = std::cerr , |
|||
FlatZincSpace * | fzs = NULL | |||
) |
Parse FlatZinc from is into fzs and return it.
Creates a new empty FlatZincSpace if fzs is NULL.