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

Compute a CRC32C value from an existing value and an additional buffer&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]
ExtendCrc32c(
    xref:absl/crc32c_t.adoc[crc32c&lowbar;t] initial&lowbar;crc,
    std::string&lowbar;view buf&lowbar;to&lowbar;add);
----

== Description

Computes a CRC32C value from an `initial&lowbar;crc` CRC32C value including the `buf&lowbar;to&lowbar;add` bytes of an additional buffer&period; Using this function is more efficient than computing a CRC32C value for the combined buffer from scratch&period;

Note&colon; `ExtendCrc32c` with an initial&lowbar;crc of 0 is equivalent to `ComputeCrc32c`&period;

This operation has a runtime cost of O(`buf&lowbar;to&lowbar;add&period;size()`)

== Return Value

The CRC32C value of the combined buffer&period;

== Parameters

[cols="1,4"]
|===
| Name| Description
| *initial&lowbar;crc*
| The CRC32C value of the bytes already processed&period;
| *buf&lowbar;to&lowbar;add*
| The additional bytes to include in the checksum&period;
|===


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