|
BDE 4.14.0 Production release
|
#include <bslstl_hashtable.h>
Public Member Functions | |
| HashTable_HashWrapper () | |
| HashTable_HashWrapper (const FUNCTOR &fn) | |
| void | swap (HashTable_HashWrapper &other) |
Exchange the value of this object with the specified other object. | |
| template<class ARG_TYPE > | |
| std::size_t | operator() (ARG_TYPE &arg) const |
| const FUNCTOR & | functor () const |
This class provides a wrapper around a functor satisfying the Hash requirements (bslstl_hash ) such that the function call operator is always declared as const qualified.
TBD Provide an optimization for the case of an empty base functor, where we can safely const_cast want calling the base class operator.
Note that we would only one class, not two, with C++11 variadic templates and perfect forwarding, and we could also easily detect whether or not FUNCTOR provided a const-qualified operator().
See bslstl_hashtable
|
inline |
Create a HashTable_HashWrapper object wrapping a FUNCTOR that has its default value.
|
inlineexplicit |
Create a HashTable_HashWrapper object wrapping a FUNCTOR that is a copy of the specified fn.
|
inline |
Return a reference providing non-modifiable access to the hash functor wrapped by this object.
|
inline |
Call the wrapped functor with the specified arg and return the result. Note that ARG_TYPE will typically be deduced as a const type.
|
inline |