Predator  [unstable] git snapshot
Public Types | Public Member Functions | Protected Member Functions | Private Member Functions
SymStateWithJoin Class Reference

#include <symstate.hh>

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

Public Types

typedef TList::const_iterator const_iterator
typedef TList::iterator iterator

Public Member Functions

virtual bool insert (const SymHeap &sh, bool allowThreeWay=true)
 insert given SymHeap object into the state
virtual int lookup (const SymHeap &sh) const
 look for the given symbolic heap, return its index if found, -1 otherwise
virtual void clear ()
virtual void swap (SymState &other)
size_t size () const
 return count of object stored in the container
const SymHeapoperator[] (int nth) const
 return nth SymHeap object, 0 <= nth < size()
const_iterator begin () const
 return STL-like iterator to go through the container
iterator begin ()
 return STL-like iterator to go through the container
const_iterator end () const
 return STL-like iterator to go through the container
iterator end ()
 return STL-like iterator to go through the container

Protected Member Functions

virtual void insertNew (const SymHeap &sh)
 insert new SymHeap that @ must be guaranteed to be not yet in
virtual void eraseExisting (int nth)
virtual void swapExisting (int nth, SymHeap &sh)
virtual void rotateExisting (int idxA, int idxB)
void updateTraceOf (int idx, Trace::Node *tr, EJoinStatus status)

Private Member Functions

void packState (unsigned idx, bool allowThreeWay)

Detailed Description

Definition at line 149 of file symstate.hh.

Member Typedef Documentation

typedef TList::const_iterator const_iterator
inherited

Definition at line 43 of file symstate.hh.

typedef TList::iterator iterator
inherited

Definition at line 44 of file symstate.hh.

Member Function Documentation

const_iterator begin ( ) const
inlineinherited

return STL-like iterator to go through the container

Definition at line 77 of file symstate.hh.

References SymState::heaps_.

iterator begin ( )
inlineinherited

return STL-like iterator to go through the container

Definition at line 83 of file symstate.hh.

References SymState::heaps_.

virtual void clear ( )
virtualinherited

Reimplemented in SymStateMarked.

const_iterator end ( ) const
inlineinherited

return STL-like iterator to go through the container

Definition at line 80 of file symstate.hh.

References SymState::heaps_.

iterator end ( )
inlineinherited

return STL-like iterator to go through the container

Definition at line 86 of file symstate.hh.

References SymState::heaps_.

virtual void eraseExisting ( int  nth)
inlineprotectedvirtualinherited

Reimplemented in SymStateMarked.

Definition at line 92 of file symstate.hh.

References SymState::heaps_.

virtual bool insert ( const SymHeap sh,
bool  allowThreeWay = true 
)
virtual

insert given SymHeap object into the state

Reimplemented from SymState.

virtual void insertNew ( const SymHeap sh)
protectedvirtualinherited

insert new SymHeap that @ must be guaranteed to be not yet in

Reimplemented in SymStateMarked.

virtual int lookup ( const SymHeap heap) const
virtualinherited

look for the given symbolic heap, return its index if found, -1 otherwise

Implements SymState.

const SymHeap& operator[] ( int  nth) const
inlineinherited

return nth SymHeap object, 0 <= nth < size()

Definition at line 72 of file symstate.hh.

References SymState::heaps_.

void packState ( unsigned  idx,
bool  allowThreeWay 
)
private
virtual void rotateExisting ( int  idxA,
int  idxB 
)
protectedvirtualinherited

Reimplemented in SymStateMarked.

size_t size ( ) const
inlineinherited

return count of object stored in the container

Definition at line 69 of file symstate.hh.

References SymState::heaps_.

Referenced by SymStateMarked::operator=().

virtual void swap ( SymState other)
inlinevirtualinherited

Reimplemented in SymStateMarked.

Definition at line 55 of file symstate.hh.

References SymState::heaps_.

virtual void swapExisting ( int  nth,
SymHeap sh 
)
inlineprotectedvirtualinherited

Reimplemented in SymStateMarked.

Definition at line 97 of file symstate.hh.

References SymState::heaps_, and SymHeap::swap().

void updateTraceOf ( int  idx,
Trace::Node tr,
EJoinStatus  status 
)
protectedinherited

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