|
pl_search_cpp 1.8
|
Intended for internal use by NotNot which injects this call directly after the predicate supplied to the NotNot constructor. More...
#include <pred.hpp>


Public Member Functions | |
| NotNotEnd (Engine *eng) | |
| NotNot::initialize_call uses this to "terminate" the call supplied to NotNot. | |
| bool | initialize_call () override |
| Initializes the predicate call. | |
| bool | apply_choice () override |
| Pop the environment stack to the corresponding NotNot predicate. This removes further choices (choicepoints) and backtrack to undo any variable bindings created after the NotNot predicate was called. | |
| void | set_env_index (int index) |
Public Member Functions inherited from pl_search::DetPred | |
| DetPred (Engine *eng) | |
| Represents a deterministic predicate. | |
Public Member Functions inherited from pl_search::SemiDetPred | |
| SemiDetPred (Engine *eng) | |
| Represents a semi-deterministic predicate. | |
| bool | more_choices () override |
| Applies a choice. | |
| bool | must_push () override |
| Determines if the predicate needs to be pushed onto the environment stack when called. | |
Public Member Functions inherited from pl_search::Pred | |
| Pred (Engine *eng) | |
| Default constructor. | |
| PredPtr | get_continuation () |
| Gets the continuation of the predicate. | |
| virtual void | set_continuation (PredPtr cont) |
| Sets the continuation of the predicate. | |
| PredPtr | last_pred () |
| Follows the continuation chain to the last predicate. | |
| virtual | ~Pred ()=default |
| Virtual destructor for proper cleanup. | |
| virtual std::string | get_name () |
| For debugging. | |
Protected Attributes | |
| int | env_index |
Protected Attributes inherited from pl_search::Pred | |
| PredPtr | continuation |
| The continuation of the predicate. | |
| Engine * | engine |
Intended for internal use by NotNot which injects this call directly after the predicate supplied to the NotNot constructor.
|
inline |
NotNot::initialize_call uses this to "terminate" the call supplied to NotNot.
| eng | Pointer to the engine. |
|
overridevirtual |
Pop the environment stack to the corresponding NotNot predicate. This removes further choices (choicepoints) and backtrack to undo any variable bindings created after the NotNot predicate was called.
Reimplemented from pl_search::DetPred.
|
inlineoverridevirtual |
Initializes the predicate call.
Reimplemented from pl_search::Pred.
|
inline |
|
protected |