clingo
|
#include <safetycheck.hh>
Classes | |
struct | EntNode |
struct | VarNode |
Public Types | |
typedef std::vector< EntNode * > | EntVec |
typedef std::vector< VarNode * > | VarVec |
Public Member Functions | |
SafetyChecker () | |
SafetyChecker (SafetyChecker const &)=delete | |
SafetyChecker (SafetyChecker &&x) | |
template<class... T> | |
VarNode & | insertVar (T &&...args) |
template<class... T> | |
EntNode & | insertEnt (T &&...args) |
void | insertEdge (VarNode &x, EntNode &y) |
void | insertEdge (EntNode &x, VarNode &y) |
void | init (EntVec &open) |
void | propagate (EntNode *x, EntVec &open, VarVec *bound=nullptr) |
template<class Pred = std::less<Ent>> | |
EntVec | order (Pred pred=Pred()) |
VarVec | open () |
template<class... T> | |
SafetyChecker< Var, Ent > ::VarNode & | insertVar (T &&...args) |
template<class... T> | |
SafetyChecker< Var, Ent > ::EntNode & | insertEnt (T &&...args) |
template<class Pred > | |
SafetyChecker< Var, Ent >::EntVec | order (Pred pred) |
Public Attributes | |
std::forward_list< EntNode > | entNodes_ |
std::forward_list< VarNode > | varNodes_ |
typedef std::vector<EntNode*> Gringo::SafetyChecker< Var, Ent >::EntVec |
typedef std::vector<VarNode*> Gringo::SafetyChecker< Var, Ent >::VarVec |
|
default |
|
delete |
|
default |
void Gringo::SafetyChecker< Var, Ent >::init | ( | EntVec & | open | ) |
void Gringo::SafetyChecker< Var, Ent >::insertEdge | ( | VarNode & | x, |
EntNode & | y | ||
) |
Edge (x, y) implies that y depends on x being bound. E.g., variable x occurs on the rhs of assignment y.
void Gringo::SafetyChecker< Var, Ent >::insertEdge | ( | EntNode & | x, |
VarNode & | y | ||
) |
Edge (x, y) implies that y is bound by x. E.g., variable y occurs in a positive body element x.
EntNode& Gringo::SafetyChecker< Var, Ent >::insertEnt | ( | T &&... | args | ) |
SafetyChecker<Var, Ent>::EntNode& Gringo::SafetyChecker< Var, Ent >::insertEnt | ( | T &&... | args | ) |
VarNode& Gringo::SafetyChecker< Var, Ent >::insertVar | ( | T &&... | args | ) |
SafetyChecker<Var, Ent>::VarNode& Gringo::SafetyChecker< Var, Ent >::insertVar | ( | T &&... | args | ) |
SafetyChecker< Var, Ent >::VarVec Gringo::SafetyChecker< Var, Ent >::open | ( | ) |
EntVec Gringo::SafetyChecker< Var, Ent >::order | ( | Pred | pred = Pred() | ) |
SafetyChecker<Var, Ent>::EntVec Gringo::SafetyChecker< Var, Ent >::order | ( | Pred | pred | ) |
void Gringo::SafetyChecker< Var, Ent >::propagate | ( | EntNode * | x, |
EntVec & | open, | ||
VarVec * | bound = nullptr |
||
) |
std::forward_list<EntNode> Gringo::SafetyChecker< Var, Ent >::entNodes_ |
std::forward_list<VarNode> Gringo::SafetyChecker< Var, Ent >::varNodes_ |