Copy a byte range from one blob into another at a destination offset.

Synopsis

Declared in <bdlbb_blobutil.h>

static
void
copy(
    Blob* dst,
    int dstOffset,
    Blob const& src,
    int srcOffset,
    int length);

Description

Copy into the specified dst starting at the specified dstOffset the specified length bytes starting at the specified srcOffset in the specified src. The behavior is undefined unless 0 <= dstOffset, 0 <= srcOffset, 0 <= length, dst || 0 == length, !dst || dstOffset <= dst‐>length() ‐ length, and srcOffset <= src‐>length() ‐ length. Note that this operation does not require dst to have a blob buffer factory in that it does not create or destroy blobs ‐‐ it simply copies data from src into dst, so dst must already have room for length bytes of data added at dstOffset.

Parameters

Name

Description

dst

destination blob

dstOffset

starting byte offset in dst

src

source blob

srcOffset

starting byte offset in src

length

number of bytes to copy

Created with MrDocs