clingo
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
Clasp::VarInfo Struct Reference

Stores static information about a variable. More...

#include <shared_context.h>

Collaboration diagram for Clasp::VarInfo:
Collaboration graph

Public Types

enum  FLAG {
  MARK_P = 0x1u, MARK_N = 0x2u, NANT = 0x4u, PROJECT = 0x8u,
  BODY = 0x10u, EQ = 0x20u, DISJ = 0x40u, FROZEN = 0x80u
}
 

Public Member Functions

 VarInfo ()
 
VarType type () const
 Returns the type of the variable (or Var_t::atom_body_var if variable was created with parameter eq=true). More...
 
bool nant () const
 Returns true if var is contained in a negative loop or head of a choice rule. More...
 
bool project () const
 Returns true if var is a projection variable. More...
 
bool inDisj () const
 
bool frozen () const
 Returns true if var is excluded from variable elimination. More...
 
bool preferredSign () const
 Returns the preferred sign of this variable w.r.t its type. More...
 
bool has (FLAG f) const
 
bool has (uint32 f) const
 
void set (FLAG f)
 
void toggle (FLAG f)
 

Static Public Member Functions

static uint8 flag (FLAG x)
 

Public Attributes

uint8 rep
 

Detailed Description

Stores static information about a variable.

Member Enumeration Documentation

Enumerator
MARK_P 
MARK_N 
NANT 
PROJECT 
BODY 
EQ 
DISJ 
FROZEN 

Constructor & Destructor Documentation

Clasp::VarInfo::VarInfo ( )
inline

Member Function Documentation

static uint8 Clasp::VarInfo::flag ( FLAG  x)
inlinestatic
bool Clasp::VarInfo::frozen ( ) const
inline

Returns true if var is excluded from variable elimination.

Here is the call graph for this function:

bool Clasp::VarInfo::has ( FLAG  f) const
inline

Here is the call graph for this function:

bool Clasp::VarInfo::has ( uint32  f) const
inline
bool Clasp::VarInfo::inDisj ( ) const
inline

Here is the call graph for this function:

bool Clasp::VarInfo::nant ( ) const
inline

Returns true if var is contained in a negative loop or head of a choice rule.

Here is the call graph for this function:

bool Clasp::VarInfo::preferredSign ( ) const
inline

Returns the preferred sign of this variable w.r.t its type.

Returns
false (i.e no sign) if var originated from body, otherwise true.

Here is the call graph for this function:

bool Clasp::VarInfo::project ( ) const
inline

Returns true if var is a projection variable.

Here is the call graph for this function:

void Clasp::VarInfo::set ( FLAG  f)
inline

Here is the call graph for this function:

void Clasp::VarInfo::toggle ( FLAG  f)
inline

Here is the call graph for this function:

VarType Clasp::VarInfo::type ( ) const
inline

Returns the type of the variable (or Var_t::atom_body_var if variable was created with parameter eq=true).

Here is the call graph for this function:

Member Data Documentation

uint8 Clasp::VarInfo::rep

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