PtrDictionary< T > Class Template Reference

Template dictionary class which manages the storage associated with it. More...

Inheritance diagram for PtrDictionary< T >:
[legend]
Collaboration diagram for PtrDictionary< T >:
[legend]

Public Member Functions

 PtrDictionary (const label size=128)
 Construct given initial table size. More...
 
 PtrDictionary (const PtrDictionary &dict)
 Copy construct. More...
 
template<class INew >
 PtrDictionary (Istream &is, const INew &inew)
 Construct from Istream using given Istream constructor class. More...
 
 PtrDictionary (Istream &is)
 Construct from Istream. More...
 
const Toperator[] (const word &key) const
 Find and return entry. More...
 
Toperator[] (const word &key)
 Find and return entry. More...
 
- Public Member Functions inherited from DictionaryBase< DLPtrList< T >, T >
 DictionaryBase (const label size=128)
 Construct with given or default (128) table capacity. More...
 
 DictionaryBase (const DictionaryBase &dict)
 Copy construct. More...
 
 DictionaryBase (Istream &is, const INew &inew)
 Construct from Istream using given Istream constructor class. More...
 
 DictionaryBase (Istream &is)
 Construct from Istream using default Istream constructor class. More...
 
bool found (const word &keyword) const
 Search for given keyword. More...
 
const Tcfind (const word &keyword) const
 Find and return an entry, nullptr on failure. More...
 
Tfind (const word &keyword)
 Find and return an entry, nullptr on failure. More...
 
const Tlookup (const word &keyword) const
 Find and return entry, FatalError on failure. More...
 
Tlookup (const word &keyword)
 Find and return entry, FatalError on failure. More...
 
wordList toc () const
 Return the table of contents (as a sorted list) More...
 
wordList sortedToc () const
 Return the table of contents as a sorted list. More...
 
wordList sortedToc (const Compare &comp) const
 Return table of contents sorted using the specified comparator. More...
 
Foam::wordList sortedToc (const Compare &comp) const
 
void prepend (const word &keyword, T *ptr)
 Add to front of dictionary. More...
 
void append (const word &keyword, T *ptr)
 Add to back of dictionary. More...
 
Tremove (const word &keyword)
 Remove and return entry specified by keyword. More...
 
void clear ()
 Clear the dictionary. More...
 
void transfer (DictionaryBase< DLPtrList< T >, T > &dict)
 Transfer the contents of the argument into this DictionaryBase. More...
 
void operator= (const DictionaryBase &)
 Copy assignment. More...
 
const Toperator[] (const word &key) const
 Find and return entry. More...
 
Toperator[] (const word &key)
 Find and return entry. More...
 
const TlookupPtr (const word &keyword) const
 Deprecated(2020-03) use cfind() More...
 
TlookupPtr (const word &keyword)
 Deprecated(2020-03) use find() More...
 
void insert (const word &keyword, T *ptr)
 Add to front of dictionary. More...
 
- Public Member Functions inherited from LPtrList< LListBase, T >
 LPtrList ()=default
 Default construct. More...
 
 LPtrList (T *item)
 Construct and add initial item pointer. More...
 
 LPtrList (const LPtrList &lst)
 Copy construct by using 'clone()' for each element. More...
 
 LPtrList (LPtrList &&lst)
 Move construct. More...
 
template<class INew >
 LPtrList (Istream &is, const INew &inew)
 Construct from Istream using given Istream constructor class. More...
 
 LPtrList (Istream &is)
 Construct from Istream using default Istream constructor class. More...
 
 ~LPtrList ()
 Destructor. More...
 
Tfirst ()
 The first entry in the list. More...
 
const Tfirst () const
 The first entry in the list (const access) More...
 
Tlast ()
 The last entry in the list. More...
 
const Tlast () const
 The last entry in the list (const access) More...
 
bool eraseHead ()
 Remove the head element from the list and delete the pointer. More...
 
void clear ()
 Clear the contents of the list. More...
 
void transfer (LPtrList< LListBase, T > &lst)
 
void operator= (const LPtrList< LListBase, T > &lst)
 Copy assign by using 'clone()' for each element. More...
 
void operator= (LPtrList< LListBase, T > &&lst)
 Move assign. More...
 
iterator begin ()
 Iterator to first item in list with non-const access. More...
 
const_iterator cbegin () const
 Iterator to first item in list with const access. More...
 
reverse_iterator rbegin ()
 Iterator to last item in list with non-const access. More...
 
const_reverse_iterator crbegin () const
 Iterator to last item in list with const access. More...
 
const_iterator begin () const
 Iterator to first item in list with const access. More...
 
const_reverse_iterator rbegin () const
 Iterator to last item in list with const access. More...
 
const iteratorend ()
 End of list for forward iterators. More...
 
const const_iteratorcend () const
 End of list for forward iterators. More...
 
const reverse_iteratorrend ()
 End of list for reverse iterators. More...
 
const const_reverse_iteratorcrend () const
 End of list for reverse iterators. More...
 
const const_iteratorend () const
 End of list for forward iterators. More...
 
const const_reverse_iteratorrend () const
 End of list for reverse iterators. More...
 
- Public Member Functions inherited from LList< LListBase, T * >
 LList ()=default
 Default construct. More...
 
 LList (const T * &elem)
 Construct and copy add initial item. More...
 
 LList (T * &&elem)
 Construct and move add initial item. More...
 
 LList (Istream &is)
 Construct from Istream. More...
 
 LList (const LList< LListBase, T * > &lst)
 Copy construct. More...
 
 LList (LList< LListBase, T * > &&lst)
 Move construct. More...
 
 LList (std::initializer_list< T * > lst)
 Copy construct from an initializer list. More...
 
 ~LList ()
 Destructor. More...
 
reference first ()
 The first entry in the list. More...
 
const_reference first () const
 The first entry in the list (const access) More...
 
reference last ()
 The last entry in the list. More...
 
const_reference last () const
 The last entry in the list (const access) More...
 
void prepend (const T * &elem)
 Add copy at front of list. More...
 
void prepend (T * &&elem)
 Move construct at front of list. More...
 
void append (const T * &elem)
 Add copy at back of list. More...
 
void append (T * &&elem)
 Move construct at back of list. More...
 
bool eraseHead ()
 Erase the first entry. More...
 
TremoveHead ()
 Remove and return first entry. More...
 
Tremove (link *item)
 Remove and return element. More...
 
Tremove (iterator &iter)
 Remove and return element specified by iterator. More...
 
void clear ()
 Delete contents of list. More...
 
void transfer (LList< LListBase, T * > &lst)
 
void operator= (const LList< LListBase, T * > &lst)
 Copy assignment. More...
 
void operator= (LList< LListBase, T * > &&lst)
 Move assignment. More...
 
void operator= (std::initializer_list< T * > lst)
 Copy assignment from an initializer list. More...
 
IstreamreadList (Istream &is)
 Read list from Istream. More...
 
OstreamwriteList (Ostream &os, const label shortLen=0) const
 Write LList with line-breaks when length exceeds shortLen. More...
 
iterator begin ()
 Iterator to first item in list with non-const access. More...
 
const_iterator begin () const
 Iterator to first item in list with const access. More...
 
const_iterator cbegin () const
 Iterator to first item in list with const access. More...
 
reverse_iterator rbegin ()
 Iterator to last item in list with non-const access. More...
 
const_reverse_iterator rbegin () const
 Iterator to last item in list with const access. More...
 
const_reverse_iterator crbegin () const
 Iterator to last item in list with const access. More...
 
const iterator & end ()
 End of list for forward iterators. More...
 
const const_iterator & end () const
 End of list for forward iterators. More...
 
const const_iterator & cend () const
 End of list for forward iterators. More...
 
const reverse_iterator & rend ()
 End of list for reverse iterators. More...
 
const const_reverse_iterator & rend () const
 End of list for reverse iterators. More...
 
const const_reverse_iterator & crend () const
 End of list for reverse iterators. More...
 
void insert (const T * &elem)
 Add copy at front of list. Same as prepend() More...
 
void insert (T * &&elem)
 Move construct at front of list. Same as prepend() More...
 

Additional Inherited Members

- Public Types inherited from LPtrList< LListBase, T >
typedef Tpointer
 Pointer for LPtrList::value_type objects. More...
 
typedef const Tconst_pointer
 Const pointer for LPtrList::value_type objects. More...
 
typedef Treference
 Reference for LPtrList::value_type objects. More...
 
typedef const Tconst_reference
 Const reference for LPtrList::value_type objects. More...
 
using base_iterator = typename LListBase::iterator
 
using const_base_iterator = typename LListBase::const_iterator
 
typedef LList< LListBase, T * > parent_type
 The parent list storage. More...
 
- Public Types inherited from LList< LListBase, T * >
typedef Tvalue_type
 Type of values stored. More...
 
typedef T * * pointer
 Pointer for value_type. More...
 
typedef const T * * const_pointer
 Const pointer for value_type. More...
 
typedef T * & reference
 Reference for value_type. More...
 
typedef const T * & const_reference
 Const reference for value_type. More...
 
typedef label size_type
 The type that can represent the container size. More...
 
typedef label difference_type
 The difference between iterators. More...
 
using base_iterator = typename LListBase::iterator
 
using const_base_iterator = typename LListBase::const_iterator
 
- Protected Member Functions inherited from DictionaryBase< DLPtrList< T >, T >
void addEntries ()
 
- Protected Attributes inherited from DictionaryBase< DLPtrList< T >, T >
HashTable< T * > hashedTs_
 HashTable of the entries held on the IDLListType for quick lookup. More...
 

Detailed Description

template<class T>
class Foam::PtrDictionary< T >

Template dictionary class which manages the storage associated with it.

It is derived from DictionaryBase instantiated on a memory managed form of intrusive doubly-linked list of <T>.

Definition at line 52 of file PtrDictionary.H.

Constructor & Destructor Documentation

◆ PtrDictionary() [1/4]

PtrDictionary ( const label  size = 128)
inlineexplicit

Construct given initial table size.

Definition at line 61 of file PtrDictionary.H.

◆ PtrDictionary() [2/4]

PtrDictionary ( const PtrDictionary< T > &  dict)
inline

Copy construct.

Definition at line 67 of file PtrDictionary.H.

◆ PtrDictionary() [3/4]

PtrDictionary ( Istream is,
const INew inew 
)
inline

Construct from Istream using given Istream constructor class.

Definition at line 74 of file PtrDictionary.H.

◆ PtrDictionary() [4/4]

PtrDictionary ( Istream is)
inlineexplicit

Construct from Istream.

Definition at line 80 of file PtrDictionary.H.

Member Function Documentation

◆ operator[]() [1/2]

const T & operator[] ( const word key) const
inline

Find and return entry.

Definition at line 89 of file PtrDictionary.H.

References DictionaryBase< DLPtrList< T >, T >::operator, and T.

◆ operator[]() [2/2]

T & operator[] ( const word key)
inline

Find and return entry.

Definition at line 95 of file PtrDictionary.H.

References DictionaryBase< DLPtrList< T >, T >::operator, and T.


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