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

Compute the CRC32C value of a buffer with a prefix 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]
RemoveCrc32cPrefix(
    xref:absl/crc32c_t.adoc[crc32c&lowbar;t] prefix&lowbar;crc,
    xref:absl/crc32c_t.adoc[crc32c&lowbar;t] full&lowbar;string&lowbar;crc,
    size&lowbar;t remaining&lowbar;string&lowbar;length);
----

== Description

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

Given the CRC32C value of an existing buffer, `full&lowbar;string&lowbar;crc`&semi; The CRC32C value of a prefix of that buffer, `prefix&lowbar;crc`&semi; and the length of the buffer with the prefix removed, `remaining&lowbar;string&lowbar;length` , return the CRC32C value of the buffer with the prefix removed&period;

This operation has a runtime cost of O(log(`remaining&lowbar;string&lowbar;length`))&period;

== Return Value

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

== Parameters

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


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