[#BloombergLP-bslh-SpookyHashAlgorithmImp-finalize]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslh.adoc[bslh]::xref:BloombergLP/bslh/SpookyHashAlgorithmImp.adoc[SpookyHashAlgorithmImp]::finalize
:relfileprefix: ../../../
:mrdocs:

Load the finalized 128&hyphen;bit hash into `hash1` and `hash2`&period;

== Synopsis

Declared in `&lt;bslh&lowbar;spookyhashalgorithmimp&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
void
finalize(
    xref:BloombergLP/bslh/SpookyHashAlgorithmImp/Uint64.adoc[Uint64]* hash1,
    xref:BloombergLP/bslh/SpookyHashAlgorithmImp/Uint64.adoc[Uint64]* hash2);
----

== Description

Load the finalized hash into the specified `hash1` and `hash2`&period; `hash1` will contain the higher order bits of the hash and `hash2` will contain the lower order bits&period; The internal state of the algorithm will be modified, meaning that calling final multiple times will result in different hash values being returned&period; The returned hash will be the same as if `Hash128` had been called will all of the accumulated data in one block&period; The behavior is undefined unless both `hash1` and `hash2` point to 8 bytes of modifiable memory&period; Note that a value will be returned even if `update` has not been called&period;

== Parameters

[cols="1,4"]
|===
| Name| Description
| *hash1*
| higher&hyphen;order 64 bits of the finalized hash
| *hash2*
| lower&hyphen;order 64 bits of the finalized hash
|===


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