The head of a disjunctive rule. More...
#include <logic_program_types.h>
Public Types | |
typedef EdgeIterator | atom_iterator |
Public Member Functions | |
atom_iterator | begin () const |
void | destroy () |
Destroys a disjunction created via create(). | |
void | detach (LogicProgram &prg) |
atom_iterator | end () const |
bool | propagateAssigned (LogicProgram &prg, PrgHead *at, EdgeType t) |
Propagates the assignment of an atom in this disjunction. | |
uint32 | size () const |
Number of atoms in disjunction. | |
Static Public Member Functions | |
static PrgDisj * | create (uint32 id, const VarVec &heads) |
Constructor for disjunctions. | |
Private Member Functions | |
PrgDisj (uint32 id, const VarVec &atoms) | |
~PrgDisj () | |
Private Attributes | |
PrgEdge | atoms_ [0] |
The head of a disjunctive rule.
Definition at line 643 of file logic_program_types.h.
Definition at line 645 of file logic_program_types.h.
Clasp::Asp::PrgDisj::PrgDisj | ( | uint32 | id, |
const VarVec & | atoms | ||
) | [explicit, private] |
Definition at line 1413 of file logic_program_types.cpp.
Clasp::Asp::PrgDisj::~PrgDisj | ( | ) | [private] |
Definition at line 1420 of file logic_program_types.cpp.
atom_iterator Clasp::Asp::PrgDisj::begin | ( | ) | const [inline] |
Definition at line 653 of file logic_program_types.h.
PrgDisj * Clasp::Asp::PrgDisj::create | ( | uint32 | id, |
const VarVec & | heads | ||
) | [static] |
Constructor for disjunctions.
Definition at line 1408 of file logic_program_types.cpp.
void Clasp::Asp::PrgDisj::destroy | ( | ) |
Destroys a disjunction created via create().
Definition at line 1421 of file logic_program_types.cpp.
void Clasp::Asp::PrgDisj::detach | ( | LogicProgram & | prg | ) |
Definition at line 1426 of file logic_program_types.cpp.
atom_iterator Clasp::Asp::PrgDisj::end | ( | ) | const [inline] |
Definition at line 654 of file logic_program_types.h.
bool Clasp::Asp::PrgDisj::propagateAssigned | ( | LogicProgram & | prg, |
PrgHead * | at, | ||
EdgeType | t | ||
) |
Propagates the assignment of an atom in this disjunction.
Definition at line 1439 of file logic_program_types.cpp.
uint32 Clasp::Asp::PrgDisj::size | ( | ) | const [inline] |
Number of atoms in disjunction.
Definition at line 652 of file logic_program_types.h.
PrgEdge Clasp::Asp::PrgDisj::atoms_[0] [private] |
Definition at line 660 of file logic_program_types.h.