Clingo
Loading...
Searching...
No Matches
CppClingo::Ground::Stm Class Referenceabstract

Base class for groundable statements. More...

#include <statement.hh>

Inheritance diagram for CppClingo::Ground::Stm:
CppClingo::Ground::InstanceCallback CppClingo::Ground::StmAssignAggrElem CppClingo::Ground::StmBdAggrElem CppClingo::Ground::StmCondLit CppClingo::Ground::StmDisjunction CppClingo::Ground::StmDisjunctionElem CppClingo::Ground::StmEdge CppClingo::Ground::StmExternal CppClingo::Ground::StmHdAggr CppClingo::Ground::StmHdAggrElem CppClingo::Ground::StmHdTheory CppClingo::Ground::StmHeuristic CppClingo::Ground::StmProject CppClingo::Ground::StmRule CppClingo::Ground::StmShow CppClingo::Ground::StmTheoryElement CppClingo::Ground::StmWeakConstraint

Public Member Functions

auto body () const -> ULitVec const &
 Get the body of the statement.
 
auto important () const -> VariableSet
 Get the important variables in the statement.
 
- Public Member Functions inherited from CppClingo::Ground::InstanceCallback
virtual ~InstanceCallback ()=default
 Destroy the callback.
 
void init (size_t gen)
 Notify a statement that instantiation starts.
 
auto report (EvalContext const &ctx) -> bool
 Report an assignment giving rise to an instance for a statement.
 
void propagate (SymbolStore &store, OutputStm &out, Queue &queue)
 Notify a statement that instantiation has finished.
 
auto priority () const -> size_t
 The priority of the callback.
 
void print_head (std::ostream &out) const
 Print representation for debugging.
 
auto is_important (size_t index) const -> bool
 Check if the literal with the given index is important.
 

Friends

auto operator<< (std::ostream &out, Stm const &stm) -> std::ostream &
 Print the statement.
 

Detailed Description

Base class for groundable statements.

Member Function Documentation

◆ important()

auto CppClingo::Ground::Stm::important ( ) const -> VariableSet
inline

Get the important variables in the statement.

This comprises all variables that have to be bound to provide relevant instances. Relevant important variables from the body are gathered separately. For example, normal rules should provide the variables in the rule head, and integrity constraint can return an empty set.


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