#include <IbexCell.h>
Inherits hash_map.
Public Member Functions | |
| BacktrackableMap () | |
| ~BacktrackableMap () | |
| BacktrackableMap (const BacktrackableMap &m1, const BacktrackableMap &m2) | |
| void | import (const BacktrackableMap &m) |
| template<typename DATA> | |
| void | add () |
| void | add (const char *id, BacktrackableFactory *fac) |
| void | create (Cell &c) const |
| void | create_child (Cell &c, Cell &father, bool side) const |
Friends | |
| std::ostream & | operator<< (std::ostream &os, const BacktrackableMap &m) |
This class allows to record all backtrackable data factories, indexed by the class ID of the data.
| ibex::BacktrackableMap::BacktrackableMap | ( | ) | [inline] |
Create an empty map.
| ibex::BacktrackableMap::~BacktrackableMap | ( | ) | [inline] |
Delete this instance.
| ibex::BacktrackableMap::BacktrackableMap | ( | const BacktrackableMap & | m1, | |
| const BacktrackableMap & | m2 | |||
| ) | [inline] |
Merge two maps.
| void ibex::BacktrackableMap::import | ( | const BacktrackableMap & | m | ) | [inline] |
Merge m with this map
| void ibex::BacktrackableMap::add | ( | ) | [inline] |
Add a new entry (template variant)
| void ibex::BacktrackableMap::add | ( | const char * | id, | |
| BacktrackableFactory * | fac | |||
| ) | [inline] |
Add a new entry (non-template variant)
| id | - the name of the class (as returned by typeid). | |
| fac | - the factory to be inserted. A copy of this factory is made. |
| void ibex::BacktrackableMap::create | ( | Cell & | c | ) | const [inline] |
Create the backtrackable data of the root cell.
Create the backtrackable data of a child cell.
| std::ostream& operator<< | ( | std::ostream & | os, | |
| const BacktrackableMap & | m | |||
| ) | [friend] |
Stream out internal structures (for debug purpose).
1.5.5