|
Lattice Land Parsing Library
|
Classes | |
| class | SolverOutput |
Enumerations | |
| enum class | OutputType { XCSP , FLATZINC } |
| enum class | TableDecomposition { DISJUNCTIVE , TABLE_PREDICATE , ELEMENTS } |
Functions | |
| template<class Allocator > | |
| battery::shared_ptr< TFormula< Allocator >, Allocator > | parse_flatzinc_str (const std::string &input, SolverOutput< Allocator > &output) |
| template<class Allocator > | |
| battery::shared_ptr< TFormula< Allocator >, Allocator > | parse_flatzinc (const std::string &filename, SolverOutput< Allocator > &output) |
| template<class Allocator > | |
| battery::shared_ptr< TFormula< Allocator >, Allocator > | parse_flatzinc_str (const std::string &input, const Allocator &allocator=Allocator()) |
| template<class Allocator > | |
| battery::shared_ptr< TFormula< Allocator >, Allocator > | parse_flatzinc (const std::string &filename, const Allocator &allocator=Allocator()) |
| template<class Allocator > | |
| void | parse_xcsp3 (const std::string &filename, XCSP3Core::XCSP3_turbo_callbacks< Allocator > &cb) |
| template<class Allocator > | |
| battery::shared_ptr< TFormula< Allocator >, Allocator > | parse_xcsp3 (const std::string &filename, SolverOutput< Allocator > &output, TableDecomposition d=TableDecomposition::ELEMENTS) |
| template<class Allocator > | |
| battery::shared_ptr< TFormula< Allocator >, Allocator > | parse_xcsp3_str (const std::string &input, TableDecomposition d=TableDecomposition::ELEMENTS, const Allocator &allocator=Allocator()) |
| template<class Allocator > | |
| battery::shared_ptr< TFormula< Allocator >, Allocator > | parse_xcsp3 (const std::string &filename, TableDecomposition d=TableDecomposition::ELEMENTS, const Allocator &allocator=Allocator()) |
|
strong |
|
strong |
| battery::shared_ptr< TFormula< Allocator >, Allocator > lala::parse_flatzinc_str | ( | const std::string & | input, |
| SolverOutput< Allocator > & | output | ||
| ) |
We parse the constraint language FlatZinc as described in the documentation: https://www.minizinc.org/doc-2.4.1/en/fzn-spec.html#specification-of-flatzinc. We also extend FlatZinc conservatively for the purposes of our framework:
real (same as float).int_ge, int_gt mainly to simplify testing in lala_core.int_minus, float_minus, int_neg, float_neg.true and false in the constraint statement.int_le(int_plus(a,b), 5) stands for a+b <= 5.| battery::shared_ptr< TFormula< Allocator >, Allocator > lala::parse_flatzinc | ( | const std::string & | filename, |
| SolverOutput< Allocator > & | output | ||
| ) |
| battery::shared_ptr< TFormula< Allocator >, Allocator > lala::parse_flatzinc_str | ( | const std::string & | input, |
| const Allocator & | allocator = Allocator() |
||
| ) |
| battery::shared_ptr< TFormula< Allocator >, Allocator > lala::parse_flatzinc | ( | const std::string & | filename, |
| const Allocator & | allocator = Allocator() |
||
| ) |
| void lala::parse_xcsp3 | ( | const std::string & | filename, |
| XCSP3Core::XCSP3_turbo_callbacks< Allocator > & | cb | ||
| ) |
| battery::shared_ptr< TFormula< Allocator >, Allocator > lala::parse_xcsp3 | ( | const std::string & | filename, |
| SolverOutput< Allocator > & | output, | ||
| TableDecomposition | d = TableDecomposition::ELEMENTS |
||
| ) |
| battery::shared_ptr< TFormula< Allocator >, Allocator > lala::parse_xcsp3_str | ( | const std::string & | input, |
| TableDecomposition | d = TableDecomposition::ELEMENTS, |
||
| const Allocator & | allocator = Allocator() |
||
| ) |
| battery::shared_ptr< TFormula< Allocator >, Allocator > lala::parse_xcsp3 | ( | const std::string & | filename, |
| TableDecomposition | d = TableDecomposition::ELEMENTS, |
||
| const Allocator & | allocator = Allocator() |
||
| ) |