Function endUnflushed [src]
When using content-length, asserts that the amount of data sent matches
the value sent in the header.
Otherwise, transfer-encoding: chunked is being used, and it writes the
end-of-stream message with empty trailers.
Respects the value of isEliding to omit all data after the headers.
Does not flush http_protocol_output, but does flush writer.
See also:
end
endChunked
Prototype
pub fn endUnflushed(w: *BodyWriter) Error!void Parameters
w: *BodyWriter Possible Errors
Source
pub fn endUnflushed(w: *BodyWriter) Error!void {
try w.writer.flush();
switch (w.state) {
.end => unreachable,
.content_length => |len| {
assert(len == 0); // Trips when end() called before all bytes written.
w.state = .end;
},
.none => {},
.chunk_len => return endChunkedUnflushed(w, .{}),
}
}