[#SaltedOutpointHasher]
= SaltedOutpointHasher
:mrdocs:

Hashes a transaction outpoint (COutPoint) with a per&hyphen;instance random salt&period;

== Synopsis

Declared in `&lt;util&sol;hasher&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
class SaltedOutpointHasher;
----

== Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:SaltedOutpointHasher/2constructor.adoc[`SaltedOutpointHasher`]         [.small]#[constructor]#
| Construct the hasher with a fresh random salt&period;
| xref:SaltedOutpointHasher/operator_call.adoc[`operator()`] 
| Having the hash noexcept allows libstdc&plus;&plus;&apos;s unordered&lowbar;map to recalculate the hash during rehash, so it does not have to cache the value&period; This reduces node&apos;s memory by sizeof(size&lowbar;t)&period; The required recalculation has a slight performance penalty (around 1&period;6%), but this is compensated by memory savings of about 9% which allow for a larger dbcache setting&period;
|===



[.small]#Created with https://www.mrdocs.com[MrDocs]#
