From 0c8c945ebaefd25197c20a239c6866ed748bd762 Mon Sep 17 00:00:00 2001 From: Adnan Maolood Date: Sun, 21 Feb 2021 00:20:42 -0500 Subject: [PATCH] client: Inline result type --- client.go | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/client.go b/client.go index 5a94031..d534fbe 100644 --- a/client.go +++ b/client.go @@ -125,9 +125,15 @@ func (c *Client) Do(ctx context.Context, req *Request) (*Response, error) { ServerName: host, }) + type result struct { + resp *Response + err error + } + res := make(chan result, 1) go func() { - res <- c.do(conn, req) + resp, err := c.do(conn, req) + res <- result{resp, err} }() select { @@ -139,21 +145,16 @@ func (c *Client) Do(ctx context.Context, req *Request) (*Response, error) { } } -type result struct { - resp *Response - err error -} - -func (c *Client) do(conn net.Conn, req *Request) result { +func (c *Client) do(conn net.Conn, req *Request) (*Response, error) { // Write the request if err := req.Write(conn); err != nil { - return result{nil, err} + return nil, err } // Read the response resp, err := ReadResponse(conn) if err != nil { - return result{nil, err} + return nil, err } // Store TLS connection state @@ -162,7 +163,7 @@ func (c *Client) do(conn net.Conn, req *Request) result { resp.TLS = &state } - return result{resp, nil} + return resp, nil } func (c *Client) dialContext(ctx context.Context, network, addr string) (net.Conn, error) {