DoxigAlpha

contentLengthDrain

Function parameters

Parameters

#
w:*Writer
data:[]const []const u8
splat:usize

Type definitions in this namespace

Types

#
Method
https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods
Status
https://developer.mozilla.org/en-US/docs/Web/HTTP/Status
TransferEncoding
compression is intentionally omitted here since it is handled in `ContentEncoding`.
BodyWriter
Request or response body.

Source

Implementation

#
pub fn contentLengthDrain(w: *Writer, data: []const []const u8, splat: usize) Error!usize {
    const bw: *BodyWriter = @alignCast(@fieldParentPtr("writer", w));
    assert(!bw.isEliding());
    const out = bw.http_protocol_output;
    const n = try out.writeSplatHeader(w.buffered(), data, splat);
    bw.state.content_length -= n;
    return w.consume(n);
}