clingo
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups
Public Member Functions | Public Attributes | List of all members
Gringo::Input::SimpleHeadLiteral Struct Reference

#include <aggregates.hh>

Inheritance diagram for Gringo::Input::SimpleHeadLiteral:
Inheritance graph
Collaboration diagram for Gringo::Input::SimpleHeadLiteral:
Collaboration graph

Public Member Functions

 SimpleHeadLiteral (ULit &&lit)
 
virtual Location const & loc () const
 
virtual void loc (Location const &loc)
 
virtual UHeadAggr shiftHead (UBodyAggrVec &aggr)
 
virtual UHeadAggr rewriteAggregates (UBodyAggrVec &aggr)
 
virtual void collect (VarTermBoundVec &vars) const
 
virtual bool operator== (HeadAggregate const &other) const
 
virtual void print (std::ostream &out) const
 
virtual size_t hash () const
 
virtual SimpleHeadLiteralclone () const
 
virtual void unpool (UHeadAggrVec &x, bool beforeRewrite)
 Unpool the aggregate and aggregate elements. More...
 
virtual void simplify (Projections &project, Term::DotsMap &dots, Term::ScriptMap &scripts, unsigned &auxNum)
 
virtual void assignLevels (AssignLevel &lvl)
 
virtual void rewriteArithmetics (Term::ArithmeticsMap &arith, unsigned &auxNum)
 
virtual bool hasPool (bool beforeRewrite) const
 
virtual bool check (ChkLvlVec &lvl) const
 
virtual void replace (Defines &dx)
 
virtual CreateHead toGround (ToGroundArg &x, bool external) const
 
virtual Value isEDB () const
 
virtual ~SimpleHeadLiteral ()
 
- Public Member Functions inherited from Gringo::Input::HeadAggregate
virtual ~HeadAggregate ()
 
- Public Member Functions inherited from Gringo::Printable
virtual ~Printable ()
 
- Public Member Functions inherited from Gringo::Hashable
virtual ~Hashable ()
 
- Public Member Functions inherited from Gringo::Locatable
virtual ~Locatable ()
 
- Public Member Functions inherited from Gringo::Clonable< HeadAggregate >
virtual ~Clonable ()
 
- Public Member Functions inherited from Gringo::Comparable< HeadAggregate >
virtual bool operator== (HeadAggregateconst &other) const =0
 
virtual bool operator!= (HeadAggregateconst &other) const
 
virtual ~Comparable ()
 

Public Attributes

ULit lit
 

Constructor & Destructor Documentation

Gringo::Input::SimpleHeadLiteral::SimpleHeadLiteral ( ULit &&  lit)
Gringo::Input::SimpleHeadLiteral::~SimpleHeadLiteral ( )
virtual

Member Function Documentation

void Gringo::Input::SimpleHeadLiteral::assignLevels ( AssignLevel lvl)
virtual

Assign levels to variables using the VarCollector.

Precondition
Must be called after simplify.

Implements Gringo::Input::HeadAggregate.

Here is the call graph for this function:

bool Gringo::Input::SimpleHeadLiteral::check ( ChkLvlVec lvl) const
virtual
SimpleHeadLiteral * Gringo::Input::SimpleHeadLiteral::clone ( ) const
virtual

Implements Gringo::Clonable< HeadAggregate >.

Here is the call graph for this function:

void Gringo::Input::SimpleHeadLiteral::collect ( VarTermBoundVec vars) const
virtual

Collects all variables occuring in the aggregate. Occurrences bound by the aggregate are marked as such (occurrences bound in nested scopes are not marked).

Implements Gringo::Input::HeadAggregate.

size_t Gringo::Input::SimpleHeadLiteral::hash ( ) const
virtual

Implements Gringo::Hashable.

Here is the call graph for this function:

bool Gringo::Input::SimpleHeadLiteral::hasPool ( bool  beforeRewrite) const
virtual
Value Gringo::Input::SimpleHeadLiteral::isEDB ( ) const
virtual

Reimplemented from Gringo::Input::HeadAggregate.

Location const & Gringo::Input::SimpleHeadLiteral::loc ( ) const
virtual

Implements Gringo::Locatable.

void Gringo::Input::SimpleHeadLiteral::loc ( Location const &  loc)
virtual

Implements Gringo::Locatable.

bool Gringo::Input::SimpleHeadLiteral::operator== ( HeadAggregate const &  other) const
virtual

Here is the call graph for this function:

void Gringo::Input::SimpleHeadLiteral::print ( std::ostream &  out) const
virtual

Implements Gringo::Printable.

void Gringo::Input::SimpleHeadLiteral::replace ( Defines dx)
virtual
UHeadAggr Gringo::Input::SimpleHeadLiteral::rewriteAggregates ( UBodyAggrVec aggr)
virtual
void Gringo::Input::SimpleHeadLiteral::rewriteArithmetics ( Term::ArithmeticsMap arith,
unsigned &  auxNum 
)
virtual

Rewrite arithmetics.

Precondition
Requires variables assigned to levels.

Implements Gringo::Input::HeadAggregate.

UHeadAggr Gringo::Input::SimpleHeadLiteral::shiftHead ( UBodyAggrVec aggr)
virtual
void Gringo::Input::SimpleHeadLiteral::simplify ( Projections project,
Term::DotsMap dots,
Term::ScriptMap scripts,
unsigned &  auxNum 
)
virtual

Simplify the aggregate and aggregate elements.

Precondition
Must be called after unpool.

Implements Gringo::Input::HeadAggregate.

CreateHead Gringo::Input::SimpleHeadLiteral::toGround ( ToGroundArg x,
bool  external 
) const
virtual

Implements Gringo::Input::HeadAggregate.

Here is the call graph for this function:

void Gringo::Input::SimpleHeadLiteral::unpool ( UHeadAggrVec x,
bool  beforeRewrite 
)
virtual

Unpool the aggregate and aggregate elements.

Implements Gringo::Input::HeadAggregate.

Member Data Documentation

ULit Gringo::Input::SimpleHeadLiteral::lit

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