|
LIBINT 2.9.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 |
Public Types inherited from libint2::SingletonStack< RR, std::string > | |
| typedef std::string | key_type |
| typedef std::shared_ptr< RR > | data_type |
| typedef KeyTypes::InstanceID | InstanceID |
| Specifies type for the instance index variables. | |
| typedef std::pair< InstanceID, std::shared_ptr< 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(T::* | 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 std::shared_ptr< RRStackBase< RR > > &rrs) |
| adds content of rrs to this stack | |
| void | remove (const data_type &rr) |
| removes rr from the stack | |
Public Member Functions inherited from libint2::SingletonStack< RR, std::string > | |
| SingletonStack (HashingFunction callback) | |
| callback to compute hash values is the only parameter | |
| const value_type & | find (const std::shared_ptr< RR > &obj) |
| Returns the pointer to the unique instance of object obj. | |
| const value_type & | find (const key_type &key) |
| Returns the pointer to the unique instance of object corresponding to key. | |
| const value_type & | find_hashed (const InstanceID &hashed_key) const |
| Returns the pointer to the unique instance of object corresponding to the hashed_key. | |
| void | remove (const std::shared_ptr< 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. | |
| void | purge () override |
Static Public Member Functions | |
| static std::shared_ptr< RRStackBase< RR > > & | Instance () |
| Obtain the unique Instance of RRStack. | |
Additional Inherited Members | |
Protected Types inherited from libint2::PurgeableStack< T, Policy > | |
| typedef Policy | PurgingPolicy |
RRStack implements a stack of RecurrenceRelation's which can only hold one instance of a given RR.
RecurrenceRelation::label() is used for hashing