51#ifndef Foam_DictionaryBase_H
52#define Foam_DictionaryBase_H
64template<
class IDLListType,
class T>
67template<
class IDLListType,
class T>
75template<
class IDLListType,
class T>
138 template<
class Compare>
182 friend Ostream& operator<< <IDLListType, T>
196 return this->
cfind(keyword);
204 return this->
find(keyword);
Base dictionary class templated on both the form of doubly-linked list it uses as well as the type it...
T * operator[](const word &key)
Find and return entry.
void transfer(DictionaryBase< IDLListType, T > &dict)
Transfer the contents of the argument into this DictionaryBase.
void operator=(const DictionaryBase &)
Copy assignment.
T * find(const word &keyword)
Find and return an entry, nullptr on failure.
HashTable< T * > hashedTs_
HashTable of the entries held on the IDLListType for quick lookup.
T * remove(const word &keyword)
Remove and return entry specified by keyword.
wordList sortedToc(const Compare &comp) const
Return table of contents sorted using the specified comparator.
wordList sortedToc() const
Return the table of contents as a sorted list.
void insert(const word &keyword, T *ptr)
Add to front of dictionary.
void clear()
Clear the dictionary.
void append(const word &keyword, T *ptr)
Add to back of dictionary.
wordList toc() const
Return the table of contents (as a sorted list)
const T * cfind(const word &keyword) const
Find and return an entry, nullptr on failure.
const T * lookupPtr(const word &keyword) const
Deprecated(2020-03) use cfind()
const T * operator[](const word &key) const
Find and return entry.
void prepend(const word &keyword, T *ptr)
Add to front of dictionary.
A HashTable similar to std::unordered_map.
A helper class when constructing from an Istream or dictionary.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Lookup type of boundary radiation properties.
A class for handling words, derived from Foam::string.
Ostream & operator<<(Ostream &, const boundaryPatch &p)
Write boundaryPatch as dictionary entries (without surrounding braces)
#define FOAM_DEPRECATED_FOR(since, replacement)