CVC3
|
#include <expr_value.h>
Inherits CVC3::ExprValue.
Inherited by CVC3::ExprApply.
Public Member Functions | |
ExprNode (ExprManager *em, int kind, ExprIndex idx=0) | |
Constructor. | |
ExprNode (ExprManager *em, int kind, const std::vector< Expr > &kids, ExprIndex idx=0) | |
Constructor. | |
virtual | ~ExprNode () |
Destructor. | |
void * | operator new (size_t size, MemoryManager *mm) |
Overload operator new. | |
void | operator delete (void *pMem, MemoryManager *mm) |
void | operator delete (void *) |
Overload operator delete. | |
virtual bool | operator== (const ExprValue &ev2) const |
Compare with another ExprValue. | |
virtual CDO< Theorem > * | getSig () const |
Special attributes for uninterpreted functions. | |
virtual CDO< Theorem > * | getRep () const |
virtual void | setRep (CDO< Theorem > *rep) |
virtual void | setSig (CDO< Theorem > *sig) |
![]() | |
ExprValue (ExprManager *em, int kind, ExprIndex idx=0) | |
Constructor. | |
virtual | ~ExprValue () |
Destructor. | |
int | getKind () const |
Get the kind of the expression. | |
void * | operator new (size_t size, MemoryManager *mm) |
Overload operator new. | |
void | operator delete (void *pMem, MemoryManager *mm) |
void | operator delete (void *) |
Overload operator delete. | |
virtual const ExprValue * | getExprValue () const |
Test whether the expression is a generic subclass. | |
virtual bool | isString () const |
String expression tester. | |
virtual bool | isRational () const |
Rational number expression tester. | |
virtual bool | isVar () const |
Uninterpreted constants. | |
virtual bool | isApply () const |
Application of another expression. | |
virtual bool | isSymbol () const |
Special named symbol. | |
virtual bool | isClosure () const |
A LAMBDA-expression or a quantifier. | |
virtual bool | isTheorem () const |
Special Expr holding a theorem. | |
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. | |
virtual const Expr & | getVar () const |
Returns the original Boolean variable (for BoolVarExprValue) | |
virtual Op | getOp () const |
Get the Op from an Apply Expr. | |
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 | |
unsigned | arity () const |
Return number of children. | |
std::vector< Expr > & | getKids1 () |
Return reference to children. | |
const std::vector< Expr > & | getKids () const |
Return reference to children. | |
size_t | computeHash () const |
Use our static hash() for the member method. | |
Unsigned | computeSize () const |
Use our static sizeWithChildren() for the member method. | |
virtual ExprValue * | copy (ExprManager *em, ExprIndex idx=0) const |
Make a clean copy of itself using the given memory manager. | |
![]() | |
MemoryManager * | getMM (size_t MMIndex) |
Return the memory manager (for the benefit of subclasses) | |
ExprValue * | rebuild (ExprManager *em) const |
Make a clean copy of itself using the given ExprManager. | |
Expr | rebuild (Expr e, ExprManager *em) const |
Make a clean copy of the expr using the given ExprManager. | |
Protected Attributes | |
std::vector< Expr > | d_children |
Vector of children. | |
CDO< Theorem > * | d_sig |
CDO< Theorem > * | d_rep |
![]() | |
int | d_kind |
The kind of the expression. In particular, it determines which subclass of ExprValue is used to store the expression. | |
ExprManager * | d_em |
Our expr. manager. | |
Private Member Functions | |
size_t | getMMIndex () const |
Tell ExprManager who we are. | |
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) |
![]() | |
static std::hash< char * > | s_charHash |
Return child with greatest height. | |
static std::hash< long int > | s_intHash |
Definition at line 414 of file expr_value.h.
|
inline |
Constructor.
Definition at line 456 of file expr_value.h.
|
inline |
Constructor.
Definition at line 459 of file expr_value.h.
|
virtual |
Destructor.
Definition at line 104 of file expr_value.cpp.
|
inlineprivatevirtual |
Tell ExprManager who we are.
Reimplemented from CVC3::ExprValue.
Reimplemented in CVC3::ExprApply.
Definition at line 429 of file expr_value.h.
References CVC3::EXPR_NODE.
|
inlineprotectedvirtual |
Return number of children.
Reimplemented from CVC3::ExprValue.
Definition at line 433 of file expr_value.h.
|
inlineprotected |
Return reference to children.
Definition at line 436 of file expr_value.h.
Referenced by CVC3::Expr::Expr().
|
inlineprotectedvirtual |
Return reference to children.
Reimplemented from CVC3::ExprValue.
Definition at line 439 of file expr_value.h.
|
inlineprotectedvirtual |
Use our static hash() for the member method.
Reimplemented from CVC3::ExprValue.
Reimplemented in CVC3::ExprApply.
Definition at line 442 of file expr_value.h.
References CVC3::ExprValue::hash().
Referenced by CVC3::ExprApply::computeHash().
|
inlineprotectedvirtual |
Use our static sizeWithChildren() for the member method.
Reimplemented from CVC3::ExprValue.
Definition at line 447 of file expr_value.h.
References CVC3::ExprValue::sizeWithChildren().
|
protectedvirtual |
Make a clean copy of itself using the given memory manager.
Reimplemented from CVC3::ExprValue.
Reimplemented in CVC3::ExprApply.
Definition at line 131 of file expr_value.cpp.
References CVC3::ExprManager::getMM().
|
inline |
Overload operator new.
Definition at line 466 of file expr_value.h.
|
inline |
Definition at line 468 of file expr_value.h.
|
inline |
Overload operator delete.
Definition at line 473 of file expr_value.h.
|
virtual |
Compare with another ExprValue.
Reimplemented from CVC3::ExprValue.
Reimplemented in CVC3::ExprApply.
Definition at line 123 of file expr_value.cpp.
References CVC3::ExprValue::getKids(), CVC3::ExprValue::getKind(), and CVC3::ExprValue::getMMIndex().
Special attributes for uninterpreted functions.
Reimplemented from CVC3::ExprValue.
Definition at line 478 of file expr_value.h.
Reimplemented from CVC3::ExprValue.
Definition at line 479 of file expr_value.h.
Reimplemented from CVC3::ExprValue.
Definition at line 481 of file expr_value.h.
Reimplemented from CVC3::ExprValue.
Definition at line 482 of file expr_value.h.
|
friend |
Definition at line 415 of file expr_value.h.
|
friend |
Definition at line 416 of file expr_value.h.
|
protected |
Vector of children.
Definition at line 420 of file expr_value.h.
Definition at line 423 of file expr_value.h.
Definition at line 424 of file expr_value.h.