Keep track of collisions. More...
Collaboration diagram for ns3::Hash::Example::Collider:Public Types | |
| enum | Bits { Bits32, Bits64 } |
| The size of hash function being tested. More... | |
Public Member Functions | |
| Collider (const std::string name, Hasher hash, const enum Bits bits) | |
| Constructor. More... | |
| bool | Add (const std::string phrase) |
| Add a string to the Collider. More... | |
| std::string | GetName () const |
| void | Report () const |
| Print the collisions found. More... | |
Public Attributes | |
| Hasher | m_hash |
| The hash. More... | |
| std::string | m_name |
| Name of this hash. More... | |
Private Types | |
| typedef std::vector< std::pair< uint64_t, std::string > > | collision_t |
| Collision map of subsequent instances. More... | |
| typedef std::map< uint64_t, std::string > | hashdict_t |
| Hashed dictionary of first instance of each hash. More... | |
Private Member Functions | |
| uint64_t | GetHash (const std::string phrase) |
| Get the appropriate hash value. More... | |
Private Attributes | |
| enum Bits | m_bits |
| Hash function. More... | |
| collision_t | m_coll |
| The list of collisions. More... | |
| hashdict_t | m_dict |
| The dictionary map, indexed by hash. More... | |
Keep track of collisions.
Definition at line 121 of file hash-example.cc.
|
private |
Collision map of subsequent instances.
Definition at line 260 of file hash-example.cc.
|
private |
Hashed dictionary of first instance of each hash.
Definition at line 254 of file hash-example.cc.
|
inline |
Constructor.
Definition at line 140 of file hash-example.cc.
|
inline |
|
inlineprivate |
Get the appropriate hash value.
| [in] | phrase | The string to hash. |
Definition at line 234 of file hash-example.cc.
References Bits32, ns3::Hasher::clear(), ns3::Hasher::GetHash32(), ns3::Hasher::GetHash64(), and m_bits.
Referenced by Add().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
|
inline |
Print the collisions found.
Definition at line 203 of file hash-example.cc.
References GetName(), m_coll, and m_dict.
Here is the call graph for this function:
|
private |
Hash function.
Definition at line 251 of file hash-example.cc.
|
private |
The list of collisions.
Definition at line 263 of file hash-example.cc.
|
private |
The dictionary map, indexed by hash.
Definition at line 257 of file hash-example.cc.
| Hasher ns3::Hash::Example::Collider::m_hash |
The hash.
Definition at line 125 of file hash-example.cc.
| std::string ns3::Hash::Example::Collider::m_name |