LIBINT
2.6.0
|
RRStack implements a stack of RecurrenceRelation's which can only hold one instance of a given RR. More...
#include <rr.h>
Public Types | |
typedef SingletonStack< RR, std::string > | parent_type |
typedef parent_type::data_type | data_type |
typedef parent_type::value_type | value_type |
typedef parent_type::iter_type | iter_type |
typedef parent_type::citer_type | citer_type |
typedef parent_type::InstanceID | InstanceID |
![]() | |
typedef std::string | key_type |
typedef SafePtr< RR > | data_type |
typedef KeyTypes::InstanceID | InstanceID |
Specifies type for the instance index variables. | |
typedef std::pair< InstanceID, SafePtr< RR > > | value_type |
typedef std::map< key_type, value_type > | map_type |
typedef map_type::iterator | iter_type |
use iter_type objects to iterate over the stack | |
typedef map_type::const_iterator | citer_type |
const version of iter_type | |
typedef KeyTraits< key_type >::ReturnType | key_return_type |
hashing function returns keys as key_return_type | |
typedef key_return_type(RR ::* | HashingFunction) () const |
Specifies the type of callback which computes hashes. | |
typedef PurgeableStack< RR >::PurgingPolicy | PurgingPolicy |
PurgingPolicy determines whether and which objects on this stack are obsolete and can be removed. | |
Public Member Functions | |
void | add (const SafePtr< RRStackBase< RR > > &rrs) |
adds content of rrs to this stack | |
void | remove (const data_type &rr) |
removes rr from the stack | |
![]() | |
SingletonStack (HashingFunction callback) | |
callback to compute hash values is the only parameter | |
const value_type & | find (const SafePtr< RR > &obj) |
Returns the pointer to the unique instance of object obj. More... | |
const value_type & | find (const key_type &key) |
Returns the pointer to the unique instance of object corresponding to key. More... | |
const value_type & | find_hashed (const InstanceID &hashed_key) const |
Returns the pointer to the unique instance of object corresponding to the hashed_key. More... | |
void | remove (const SafePtr< RR > &obj) |
Searches for obj on the stack and, if found, removes the unique instance. | |
citer_type | begin () const |
Returns iterator to the beginning of the stack. | |
citer_type | end () const |
Returns iterator to the end of the stack. | |
virtual void | purge () |
Static Public Member Functions | |
static SafePtr< RRStackBase< RR > > & | Instance () |
Obtain the unique Instance of RRStack. | |
Additional Inherited Members | |
![]() | |
typedef DefaultPurgingPolicy< RR > | PurgingPolicy |
RRStack implements a stack of RecurrenceRelation's which can only hold one instance of a given RR.
RecurrenceRelation::label() is used for hashing