pl_search_cpp 1.4
Loading...
Searching...
No Matches
Classes | Namespaces | Typedefs | Functions
pred.hpp File Reference

Definition of the Pred class and its derived classes. More...

#include "term.hpp"
#include "typedefs.hpp"
#include <memory>
#include <stack>
#include <vector>
Include dependency graph for pred.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  pl_search::Pred
 Abstract base class for Prolog-like predicates. More...
 
class  pl_search::ChoicePred
 Represents a choice predicate. More...
 
class  pl_search::SemiDetPred
 Represents a semi-deterministic predicate. More...
 
class  pl_search::DetPred
 Represents a deterministic predicate. More...
 
class  pl_search::DisjPred
 Represents a disjunction of predicates. More...
 
class  pl_search::Cut
 Represents a Prolog like cut. When called it pops env_stack thus removing choicepoints. More...
 
class  pl_search::NotNotEnd
 Intended for internal use by NotNot which injects this call directly after the predicate supplied to the NotNot constructor. More...
 
class  pl_search::NotNot
 Represents an equivalent of the Prolog call \+\+Call. The aim is to determine if Call succeeds without binding any variables in the call. More...
 
class  pl_search::IfThenElse
 Represents the equivalent of Prolog if-then-else i.e. (G1 -> G2; G3) - similar to (G1, !, G2; G3) ) More...
 
class  pl_search::LoopBodyFactory
 LoopBodyFactory is an abstract base class used for generating instances of a predicate class used in the body of a loop. More...
 
class  pl_search::Loop
 Constructs a predicate that loops over (instances of) a predicate while some condition (loop_continues) is satisfied. More...
 

Namespaces

 

Typedefs

typedef std::shared_ptr< ChoiceIteratorpl_search::ChoiceIteratorPtr
 

Functions

PredPtr pl_search::conjunction (std::vector< PredPtr > preds)
 Represents a conjunction of predicates by chaining them together via continuations.
 
std::string pl_search::repr (PredPtr pred)
 

Detailed Description

Definition of the Pred class and its derived classes.