CVC3
2.4.1
|
#include <expr_value.h>
Public Member Functions | |
ExprApplyTmp (ExprManager *em, const Op &op, const std::vector< Expr > &kids) | |
virtual | ~ExprApplyTmp () |
bool | operator== (const ExprValue &ev2) const |
Compare with another ExprValue. More... | |
![]() | |
ExprNodeTmp (ExprManager *em, int kind, const std::vector< Expr > &kids) | |
Constructor. More... | |
virtual | ~ExprNodeTmp () |
Destructor. More... | |
![]() | |
ExprValue (ExprManager *em, int kind, ExprIndex idx=0) | |
Constructor. More... | |
virtual | ~ExprValue () |
Destructor. More... | |
int | getKind () const |
Get the kind of the expression. More... | |
void * | operator new (size_t size, MemoryManager *mm) |
Overload operator new. More... | |
void | operator delete (void *pMem, MemoryManager *mm) |
void | operator delete (void *) |
Overload operator delete. More... | |
virtual const ExprValue * | getExprValue () const |
Test whether the expression is a generic subclass. More... | |
virtual bool | isString () const |
String expression tester. More... | |
virtual bool | isRational () const |
Rational number expression tester. More... | |
virtual bool | isVar () const |
Uninterpreted constants. More... | |
virtual bool | isSymbol () const |
Special named symbol. More... | |
virtual bool | isClosure () const |
A LAMBDA-expression or a quantifier. More... | |
virtual bool | isTheorem () const |
Special Expr holding a theorem. More... | |
virtual CDO< Theorem > * | getSig () const |
Special attributes for uninterpreted functions. More... | |
virtual CDO< Theorem > * | getRep () const |
virtual void | setSig (CDO< Theorem > *sig) |
virtual void | setRep (CDO< Theorem > *rep) |
virtual const std::string & | getUid () const |
virtual const std::string & | getString () const |
virtual const Rational & | getRational () const |
virtual const std::string & | getName () const |
Returns the string name of UCONST and BOUND_VAR expr's. More... | |
virtual const Expr & | getVar () const |
Returns the original Boolean variable (for BoolVarExprValue) More... | |
virtual const std::vector< Expr > & | getVars () const |
virtual const Expr & | getBody () const |
virtual void | setTriggers (const std::vector< std::vector< Expr > > &triggers) |
virtual const std::vector < std::vector< Expr > > & | getTriggers () const |
virtual const Expr & | getExistential () const |
virtual int | getBoundIndex () const |
virtual const std::vector < std::string > & | getFields () const |
virtual const std::string & | getField () const |
virtual int | getTupleIndex () const |
virtual const Theorem & | getTheorem () const |
Protected Member Functions | |
size_t | getMMIndex () const |
Tell ExprManager who we are. More... | |
size_t | computeHash () const |
Use our static hash() for the member method. More... | |
Op | getOp () const |
Get the Op from an Apply Expr. More... | |
bool | isApply () const |
Application of another expression. More... | |
ExprValue * | copy (ExprManager *em, ExprIndex idx=0) const |
Make a clean copy of itself using the given memory manager. More... | |
![]() | |
unsigned | arity () const |
Return number of children. More... | |
const std::vector< Expr > & | getKids () const |
Return reference to children. More... | |
Unsigned | computeSize () const |
Use our static sizeWithChildren() for the member method. More... | |
![]() | |
MemoryManager * | getMM (size_t MMIndex) |
Return the memory manager (for the benefit of subclasses) More... | |
ExprValue * | rebuild (ExprManager *em) const |
Make a clean copy of itself using the given ExprManager. More... | |
Expr | rebuild (Expr e, ExprManager *em) const |
Make a clean copy of the expr using the given ExprManager. More... | |
Private Attributes | |
Expr | d_opExpr |
Friends | |
class | Expr |
class | ExprManager |
Additional Inherited Members | |
![]() | |
static size_t | pointerHash (void *p) |
static size_t | hash (const int kind, const std::vector< Expr > &kids) |
static size_t | hash (const int n) |
static Unsigned | sizeWithChildren (const std::vector< Expr > &kids) |
![]() | |
const std::vector< Expr > & | d_children |
Vector of children. More... | |
![]() | |
int | d_kind |
The kind of the expression. In particular, it determines which subclass of ExprValue is used to store the expression. More... | |
ExprManager * | d_em |
Our expr. manager. More... | |
![]() | |
static std::hash< char * > | s_charHash |
Return child with greatest height. More... | |
static std::hash< long int > | s_intHash |
Definition at line 534 of file expr_value.h.
|
inline |
Definition at line 550 of file expr_value.h.
References APPLY, CVC3::ExprValue::d_kind, DebugAssert, CVC3::Op::getExpr(), and CVC3::Expr::isNull().
|
inlinevirtual |
Definition at line 555 of file expr_value.h.
|
inlineprotectedvirtual |
Tell ExprManager who we are.
Reimplemented from CVC3::ExprNodeTmp.
Definition at line 540 of file expr_value.h.
References CVC3::EXPR_APPLY.
|
inlineprotectedvirtual |
Use our static hash() for the member method.
Reimplemented from CVC3::ExprNodeTmp.
Definition at line 541 of file expr_value.h.
References CVC3::ExprNodeTmp::computeHash(), d_opExpr, CVC3::Expr::hash(), and PRIME.
|
inlineprotectedvirtual |
Get the Op from an Apply Expr.
Reimplemented from CVC3::ExprValue.
Definition at line 544 of file expr_value.h.
References d_opExpr.
|
inlineprotectedvirtual |
Application of another expression.
Reimplemented from CVC3::ExprValue.
Definition at line 545 of file expr_value.h.
|
protectedvirtual |
Make a clean copy of itself using the given memory manager.
Reimplemented from CVC3::ExprNodeTmp.
Definition at line 254 of file expr_value.cpp.
References CVC3::ExprManager::getMM().
|
virtual |
Compare with another ExprValue.
Reimplemented from CVC3::ExprNodeTmp.
Definition at line 246 of file expr_value.cpp.
References CVC3::ExprValue::getKids(), CVC3::ExprValue::getMMIndex(), and CVC3::ExprValue::getOp().
|
friend |
Definition at line 535 of file expr_value.h.
|
friend |
Definition at line 536 of file expr_value.h.
|
private |
Definition at line 538 of file expr_value.h.
Referenced by computeHash(), and getOp().