Function deinit [src]

Returns the request's Connection back to the pool of the Client.

Prototype

pub fn deinit(r: *Request) void

Parameters

r: *Request

Source

pub fn deinit(r: *Request) void { if (r.connection) |connection| { connection.closing = connection.closing or switch (r.reader.state) { .ready => false, .received_head => c: { if (r.method.requestHasBody()) break :c true; if (!r.method.responseHasBody()) break :c false; const reader = r.reader.bodyReader(&.{}, r.response_transfer_encoding, r.response_content_length); _ = reader.discardRemaining() catch |err| switch (err) { error.ReadFailed => break :c true, }; break :c r.reader.state != .ready; }, else => true, }; r.client.connection_pool.release(connection); } r.* = undefined; }