Logo Search packages:      
Sourcecode: maude version File versions  Download package

Public Types | Public Member Functions | Protected Types | Protected Member Functions | Static Protected Member Functions | Private Types | Private Member Functions | Private Attributes

DagNode Class Reference

Inheritance diagram for DagNode:
Inheritance graph
[legend]
Collaboration diagram for DagNode:
Collaboration graph
[legend]

List of all members.

Public Types

enum  ReturnResult { GROUND, NONGROUND, UNIMPLEMENTED }

Public Member Functions

virtual RawDagArgumentIteratorarguments ()=0
bool checkSort (const Sort *boundSort, Subproblem *&returnedSubproblem)
bool checkSort (const Sort *boundSort, RewritingContext &context)
void clearCopyPointers ()
int compare (const DagNode *other) const
virtual int compareArguments (const DagNode *other) const =0
virtual ReturnResult computeBaseSortForGroundSubterms ()
void computeGeneralizedSort (const SortBdds &sortBdds, const Vector< int > &realToBdd, Vector< Bdd > &generalizedSort)
bool computeSolvedForm (DagNode *rhs, UnificationContext &solution, PendingUnificationStack &pending)
virtual bool computeSolvedForm2 (DagNode *rhs, UnificationContext &solution, PendingUnificationStack &pending)
void computeTrueSort (RewritingContext &context)
DagNodecopyAndReduce (RewritingContext &context)
DagNodecopyEagerUptoReduced ()
DagNodecopyReducible ()
void copySetRewritingFlags (const DagNode *other)
void copySortIndex (const DagNode *other)
virtual DagNodecopyWithReplacement (int argIndex, DagNode *replacement)=0
virtual DagNodecopyWithReplacement (Vector< RedexPosition > &redexStack, int first, int last)=0
 DagNode (Symbol *symbol)
bool equal (const DagNode *other) const
virtual size_t getHashValue ()=0
MemoryCellgetMemoryCell ()
const MemoryCellgetMemoryCell () const
SortgetSort () const
int getSortIndex () const
Byte getTheoryByte () const
bool indexVariables (NarrowingVariableInfo &indices, int baseIndex)
virtual bool indexVariables2 (NarrowingVariableInfo &indices, int baseIndex)
bool inErrorSort ()
void insertVariables (NatSet &occurs)
virtual void insertVariables2 (NatSet &occurs)
DagNodeinstantiate (const Substitution &substitution)
virtual DagNodeinstantiate2 (const Substitution &substitution)
virtual DagNodeinstantiateWithReplacement (const Substitution &substitution, int argIndex, DagNode *newDag)
bool isGround () const
bool isReduced () const
bool isUnrewritable () const
bool isUnstackable () const
bool leq (const Sort *sort) const
virtual DagNodemakeClone ()=0
virtual ExtensionInfomakeExtensionInfo ()
void mark ()
bool matchVariable (int index, const Sort *sort, bool copyToAvoidOverwriting, Substitution &solution, Subproblem *&returnedSubproblem, ExtensionInfo *extensionInfo)
virtual bool matchVariableWithExtension (int index, const Sort *sort, Substitution &solution, Subproblem *&returnedSubproblem, ExtensionInfo *extensionInfo)
void * operator new (size_t size, DagNode *old)
void * operator new (size_t size)
virtual void overwriteWithClone (DagNode *old)=0
virtual DagNodepartialConstruct (DagNode *replacement, ExtensionInfo *extensionInfo)
virtual void partialReplace (DagNode *replacement, ExtensionInfo *extensionInfo)
void reduce (RewritingContext &context)
void replaceSymbol (Symbol *newSymbol)
void repudiateSortInfo ()
void setCallDtor ()
void setGround ()
void setReduced ()
void setSortIndex (int index)
void setTheoryByte (Byte value)
void setUnrewritable ()
void setUnstackable ()
virtual void stackArguments (Vector< RedexPosition > &redexStack, int parentIndex, bool respectFrozen)=0
Symbolsymbol () const
void upgradeSortIndex (const DagNode *other)

Protected Types

enum  Sizes { nrWords = 3 }

Protected Member Functions

virtual void clearCopyPointers2 ()=0
virtual DagNodecopyEagerUptoReduced2 ()=0
bool isHashValid () const
virtual DagNodemarkArguments ()=0
void setHashValid ()

Static Protected Member Functions

static size_t hash (size_t v1, size_t v2)
static size_t hash (size_t v1, size_t v2, size_t v3)

Private Types

enum  Flags {
  REDUCED = 1, COPIED = 2, UNREWRITABLE = 4, UNSTACKABLE = 8,
  GROUND_FLAG = 16, HASH_VALID = 32
}

Private Member Functions

void clearCopied ()
bool isCopied () const
 NO_COPYING (DagNode)
void setCopied ()

Private Attributes

union {
   DagNode *   copyPointer
   Symbol *   topSymbol
}; 

Detailed Description

Definition at line 32 of file dagNode.hh.


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

Generated by  Doxygen 1.6.0   Back to index