Classes | Public Member Functions | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes
Clasp::Asp::SccChecker Class Reference

#include <logic_program_types.h>

List of all members.

Classes

struct  Call

Public Member Functions

 SccChecker (LogicProgram &prg, AtomList &sccAtoms, uint32 startScc)
uint32 sccs () const
void visit (PrgBody *body)
void visit (PrgAtom *atom)
void visit (PrgDisj *disj)

Private Types

typedef PodVector< Call >::type CallStack
typedef PodVector< uintp >::type NodeStack

Private Member Functions

void addCall (PrgNode *n, NodeType t, uint32 next, uint32 min=0)
bool doVisit (PrgNode *n, bool seen=true) const
bool onNode (PrgNode *n, NodeType t, Call &c, uint32 data)
bool recurse (Call &c)
void visitDfs (PrgNode *n, NodeType t)

Static Private Member Functions

static bool isNode (uintp n, NodeType t)
static uintp packNode (PrgNode *n, NodeType t)
static PrgNodeunpackNode (uintp n)

Private Attributes

CallStack callStack_
uint32 count_
NodeStack nodeStack_
LogicProgramprg_
AtomListsccAtoms_
uint32 sccs_

Detailed Description

Definition at line 675 of file logic_program_types.h.


Member Typedef Documentation

Definition at line 688 of file logic_program_types.h.

Definition at line 689 of file logic_program_types.h.


Constructor & Destructor Documentation

Clasp::Asp::SccChecker::SccChecker ( LogicProgram prg,
AtomList sccAtoms,
uint32  startScc 
)

Definition at line 396 of file logic_program_types.cpp.


Member Function Documentation

void Clasp::Asp::SccChecker::addCall ( PrgNode n,
NodeType  t,
uint32  next,
uint32  min = 0 
) [inline, private]

Definition at line 697 of file logic_program_types.h.

bool Clasp::Asp::SccChecker::doVisit ( PrgNode n,
bool  seen = true 
) const [inline, private]

Definition at line 693 of file logic_program_types.h.

static bool Clasp::Asp::SccChecker::isNode ( uintp  n,
NodeType  t 
) [inline, static, private]

Definition at line 692 of file logic_program_types.h.

bool Clasp::Asp::SccChecker::onNode ( PrgNode n,
NodeType  t,
Call c,
uint32  data 
) [private]

Definition at line 487 of file logic_program_types.cpp.

static uintp Clasp::Asp::SccChecker::packNode ( PrgNode n,
NodeType  t 
) [inline, static, private]

Definition at line 690 of file logic_program_types.h.

bool Clasp::Asp::SccChecker::recurse ( Call c) [private]

Definition at line 447 of file logic_program_types.cpp.

uint32 Clasp::Asp::SccChecker::sccs ( ) const [inline]

Definition at line 678 of file logic_program_types.h.

static PrgNode* Clasp::Asp::SccChecker::unpackNode ( uintp  n) [inline, static, private]

Definition at line 691 of file logic_program_types.h.

void Clasp::Asp::SccChecker::visit ( PrgBody body) [inline]

Definition at line 679 of file logic_program_types.h.

void Clasp::Asp::SccChecker::visit ( PrgAtom atom) [inline]

Definition at line 680 of file logic_program_types.h.

void Clasp::Asp::SccChecker::visit ( PrgDisj disj) [inline]

Definition at line 681 of file logic_program_types.h.

void Clasp::Asp::SccChecker::visitDfs ( PrgNode n,
NodeType  t 
) [private]

Definition at line 406 of file logic_program_types.cpp.


Member Data Documentation

Definition at line 701 of file logic_program_types.h.

Definition at line 705 of file logic_program_types.h.

Definition at line 702 of file logic_program_types.h.

Definition at line 703 of file logic_program_types.h.

Definition at line 704 of file logic_program_types.h.

Definition at line 706 of file logic_program_types.h.


The documentation for this class was generated from the following files:


clasp
Author(s): Benjamin Kaufmann
autogenerated on Thu Aug 27 2015 12:41:41