| 
    pl_search_cpp 1.4
    
   | 
 
Represents a disjunction of predicates. More...
#include <pred.hpp>


Public Member Functions | |
| DisjPred (Engine *eng, std::vector< PredPtr > preds) | |
| Constructs a DisjPred with the given predicates.   | |
| void | initialize_call () override | 
| Initializes the predicate call.   | |
| bool | apply_choice () override | 
| Applies a choice.   | |
| bool | more_choices () override | 
| Checks if there are more choices.   | |
  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.   | |
| bool | is_non_det () | 
| Determines if the predicate is non-deterministic.   | |
| void | wrap_with_once () | 
| Wraps the predicate with a once.   | |
| virtual | ~Pred ()=default | 
| Virtual destructor for proper cleanup.   | |
| std::string | get_name () | 
| For debugging.   | |
Protected Attributes | |
| std::vector< PredPtr > | preds | 
| The predicates in the disjunction.   | |
| int | index | 
| index of the current predicate choice   | |
  Protected Attributes inherited from pl_search::Pred | |
| PredPtr | continuation | 
| The continuation of the predicate.   | |
| Engine * | engine | 
Represents a disjunction of predicates.
Constructs a DisjPred with the given predicates.
| eng | Pointer to the engine. | 
| preds | A vector of shared pointers to the predicates. | 
preds become the list of choices - when a choice is made that choice becomes the next predicate to be called.
      
  | 
  inlineoverridevirtual | 
Applies a choice.
< Get the next choice
By setting continuation to choice, it will be the next predicate to be called
Reimplemented from pl_search::Pred.
      
  | 
  inlineoverridevirtual | 
Initializes the predicate call.
< Set the continuations for each of preds to this continuation
Reimplemented from pl_search::Pred.
      
  | 
  inlineoverridevirtual | 
Checks if there are more choices.
Reimplemented from pl_search::Pred.
      
  | 
  protected | 
index of the current predicate choice
      
  | 
  protected | 
The predicates in the disjunction.