[#absl-RemoveCrc32cSuffix]
= xref:absl.adoc[absl]::RemoveCrc32cSuffix
:relfileprefix: ../
:mrdocs:

Compute the CRC32C value of a buffer with a suffix removed&period;

== Synopsis

Declared in `&lt;absl&sol;crc&sol;crc32c&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:absl/crc32c_t.adoc[crc32c&lowbar;t]
RemoveCrc32cSuffix(
    xref:absl/crc32c_t.adoc[crc32c&lowbar;t] full&lowbar;string&lowbar;crc,
    xref:absl/crc32c_t.adoc[crc32c&lowbar;t] suffix&lowbar;crc,
    size&lowbar;t suffix&lowbar;length);
----

== Description

Calculates the CRC32C value of an existing buffer with a series of bytes (the suffix) removed from the end of that buffer&period;

Given a CRC32C value of an existing buffer `full&lowbar;string&lowbar;crc`, the CRC32C value of the suffix to remove `suffix&lowbar;crc`, and the length of that suffix `suffix&lowbar;len`, returns the CRC32C value of the buffer with suffix removed&period;

This operation has a runtime cost of O(log(`suffix&lowbar;len`))

== Return Value

The CRC32C value of the buffer with the suffix removed&period;

== Parameters

[cols="1,4"]
|===
| Name| Description
| *full&lowbar;string&lowbar;crc*
| The CRC32C value of the complete buffer&period;
| *suffix&lowbar;crc*
| The CRC32C value of the suffix being removed&period;
| *suffix&lowbar;length*
| The length of the suffix being removed&period;
|===


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