C++ Reference: constraint_solveri

Note: This documentation is automatically generated.

Collection of objects used to extend the Constraint Solver library.

This file contains a set of objects that simplifies writing extensions of the library.

The main objects that define extensions are:
   - BaseIntExpr, the base class of all expressions that are not variables.
   - SimpleRevFIFO, a reversible FIFO list with templatized values.
   A reversible data structure is a data structure that reverts its
   modifications when the search is going up in the search tree, usually
   after a failure occurs.
   - RevImmutableMultiMap, a reversible immutable multimap.
   - MakeConstraintDemon<n> and MakeDelayedConstraintDemon<n> to wrap methods
   of a constraint as a demon.
   - RevSwitch, a reversible flip-once switch.
   - SmallRevBitSet, RevBitSet, and RevBitMatrix: reversible 1D or 2D
   bitsets.
   - LocalSearchOperator, IntVarLocalSearchOperator, ChangeValue and
   PathOperator, to create new local search operators.
   - LocalSearchFilter and IntVarLocalSearchFilter, to create new local
   search filters.
   - BaseLns, to write Large Neighborhood Search operators.
   - SymmetryBreaker, to describe model symmetries that will be broken during
   search using the 'Symmetry Breaking During Search' framework
   see Gent, I. P., Harvey, W., & Kelsey, T. (2002).
   Groups and Constraints: Symmetry Breaking During Search.
   Principles and Practice of Constraint Programming CP2002
   (Vol. 2470, pp. 415-430). Springer. Retrieved from
   http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.11.1442.

Then, there are some internal classes that are used throughout the solver

and exposed in this file:
   - SearchLog, the root class of all periodic outputs during search.
   - ModelCache, A caching layer to avoid creating twice the same object.