![]() |
Lumiera 0.pre.04
»edit your freedom«
|
#include "lib/hash-indexed.hpp"
A Mixin to add a private ID type to the target class, together with storage to hold an instance of this ID, getter and setter, and a templated version of the ID type which can be used to pass specific subclass type info.
Definition at line 124 of file hash-indexed.hpp.
Classes | |
| struct | ID |
| generic hash based ID, corresponding to the base class BA More... | |
| struct | Id |
| Hash based ID, typed to a specific subclass of BA. More... | |
| struct | UseEmbeddedHash |
| enables use of BA objects as keys within std::unordered_map More... | |
| struct | UseHashID |
| trivial hash functor using the ID as hash More... | |
Public Member Functions | |
| ID const & | getID () const |
| template<typename T > | |
| Id< T > const & | recastID () const |
| redefining of the specific type info of the Id is allowed, as all share the same implementation | |
| void | assignID (HashIndexed const &ref) |
Friends | |
| bool | operator== (HashIndexed const &hal, HashIndexed const &har) |
| equality comparison delegated to the ID implementation | |
| bool | operator!= (HashIndexed const &hal, HashIndexed const &har) |
Protected Member Functions | |
| HashIndexed () | |
| HashIndexed (IMP const &iref) | |
Private Attributes | |
| ID | id_ |
|
inlineprotected |
Definition at line 188 of file hash-indexed.hpp.
|
inlineprotected |
Definition at line 189 of file hash-indexed.hpp.
|
inline |
Definition at line 162 of file hash-indexed.hpp.
References HashIndexed< BA, IMP >::id_.
Referenced by HashIndexed< BA, IMP >::assignID(), HashIndexed_test::checkBasicProperties(), TestB::operator==(), and HashIndexed< BA, IMP >::recastID().
Here is the caller graph for this function:redefining of the specific type info of the Id is allowed, as all share the same implementation
Definition at line 171 of file hash-indexed.hpp.
References HashIndexed< BA, IMP >::getID().
Here is the call graph for this function:
|
inline |
Definition at line 177 of file hash-indexed.hpp.
References HashIndexed< BA, IMP >::getID(), and HashIndexed< BA, IMP >::id_.
Here is the call graph for this function:
|
private |
Definition at line 192 of file hash-indexed.hpp.
Referenced by HashIndexed< BA, IMP >::assignID(), and HashIndexed< BA, IMP >::getID().
|
friend |
equality comparison delegated to the ID implementation
Definition at line 183 of file hash-indexed.hpp.
|
friend |
Definition at line 184 of file hash-indexed.hpp.
Inheritance diagram for HashIndexed< BA, IMP >:
Collaboration diagram for HashIndexed< BA, IMP >: