clingo
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups
Classes | Namespaces | Typedefs | Enumerations | Functions
term.hh File Reference
#include <gringo/bug.hh>
#include <gringo/value.hh>
#include <gringo/printable.hh>
#include <gringo/hashable.hh>
#include <gringo/locatable.hh>
#include <gringo/comparable.hh>
#include <gringo/clonable.hh>
#include <gringo/utility.hh>
#include <memory>
Include dependency graph for term.hh:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Gringo::Defines
 
struct  Gringo::GTerm
 
struct  Gringo::Term
 
struct  Gringo::Term::SimplifyRet
 
struct  Gringo::GRef
 
struct  Gringo::GValTerm
 
struct  Gringo::GFunctionTerm
 
struct  Gringo::GLinearTerm
 
struct  Gringo::GVarTerm
 
struct  Gringo::PoolTerm
 
struct  Gringo::ValTerm
 
struct  Gringo::VarTerm
 
struct  Gringo::UnOpTerm
 
struct  Gringo::BinOpTerm
 
struct  Gringo::DotsTerm
 
struct  Gringo::LuaTerm
 
struct  Gringo::FunctionTerm
 
struct  Gringo::LinearTerm
 

Namespaces

 Gringo
 

Typedefs

using Gringo::UGTerm = std::unique_ptr< GTerm >
 
using Gringo::UGTermVec = std::vector< UGTerm >
 
using Gringo::SGRef = std::shared_ptr< GRef >
 
using Gringo::UTermVec = std::vector< UTerm >
 
using Gringo::UTermVecVec = std::vector< UTermVec >
 
using Gringo::VarTermVec = std::vector< std::reference_wrapper< VarTerm >>
 
using Gringo::VarTermBoundVec = std::vector< std::pair< VarTerm *, bool >>
 
using Gringo::VarTermSet = std::unordered_set< std::reference_wrapper< VarTerm >, value_hash< std::reference_wrapper< VarTerm >>, value_equal_to< std::reference_wrapper< VarTerm >>>
 

Enumerations

enum  Gringo::BinOp : int {
  Gringo::BinOp::XOR, Gringo::BinOp::OR, Gringo::BinOp::AND, Gringo::BinOp::ADD,
  Gringo::BinOp::SUB, Gringo::BinOp::MUL, Gringo::BinOp::DIV, Gringo::BinOp::MOD,
  Gringo::BinOp::POW
}
 
enum  Gringo::UnOp : int { Gringo::UnOp::NEG, Gringo::UnOp::NOT, Gringo::UnOp::ABS }
 

Functions

int Gringo::eval (UnOp op, int x)
 
int Gringo::eval (BinOp op, int x, int y)
 
std::ostream & Gringo::operator<< (std::ostream &out, BinOp op)
 
std::ostream & Gringo::operator<< (std::ostream &out, UnOp op)
 
UTermVec Gringo::unpool (UTerm const &x)
 
int Gringo::toNum (UTerm const &x)