copy overloads

Synopses

Declared in <bdlbb_blobutil.h>

Copy into the specified dst starting at the specified dstOffset the specified length bytes from the specified src. The behavior is undefined unless 0 <= dstOffset, 0 <= length, dst || 0 == length, src || 0 == length, !dst || dstOffset <= dst‐>length() ‐ length, and src refers to a buffer with at least length bytes. 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.

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

Copy the specified length bytes starting at the specified position in the specified srcBlob to the specified dstBuffer. The behavior of this function is undefined unless 0 <= length, 0 <= position, position <= srcBlob.totalSize() ‐ length, and dstBuffer has room for length bytes. Note that this function does not set dstBuffer[length] to 0.

static
void
copy(
    char* dstBuffer,
    Blob const& srcBlob,
    int position,
    int length);

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.

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

Created with MrDocs