func WithRawRequestBody(input io.ReadCloser) RequestParam {
	return WithRawRequestBodyProvider(func() io.ReadCloser {
		return input
	})
}
WithRawRequestBody uses the provided io.ReadCloser as
the request body.
Example:

input, _ := os.Open("file.txt")
resp, err := client.Do(..., WithRawRequestBody(input), ...)

Deprecated: Retries don't include the body for WithRawRequestBody.
Use WithRawRequestBodyProvider for full retry support.
package httpclient
import (
	"context"
	"fmt"
	"io"
	"net/url"
	"strings"
	"github.com/palantir/conjure-go-runtime/v2/conjure-go-contract/codecs"
	werror "github.com/palantir/witchcraft-go-error"
)
func WithRPCMethodName(name string) RequestParam {
	return requestParamFunc(func(b *requestBuilder) error {
		b.configureCtx = append(b.configureCtx, func(ctx context.Context) context.Context {
			return ContextWithRPCMethodName(ctx, name)
		})
		return nil
	})
}
func WithRequestMethod(method string) RequestParam {
	return requestParamFunc(func(b *requestBuilder) error {
		if method == "" {
			return werror.Error("transport.RequestMethod: method can not be empty")
		}
		b.method = strings.ToUpper(method)
		return nil
	})
}
func WithPath(path string) RequestParam {
	return requestParamFunc(func(b *requestBuilder) error {
		b.path = path
		return nil
	})
}
func WithPathf(format string, args ...interface{}) RequestParam {
	return WithPath(fmt.Sprintf(format, args...))
}
func WithHeader(key, value string) RequestParam {
	return requestParamFunc(func(b *requestBuilder) error {
		b.headers.Set(key, value)
		return nil
	})
}
func WithQueryValues(query url.Values) RequestParam {
	return requestParamFunc(func(b *requestBuilder) error {
		b.query = query
		return nil
	})
}
func WithRequestBody(input interface{}, encoder codecs.Encoder) RequestParam {
	return requestParamFunc(func(b *requestBuilder) error {
		b.bodyMiddleware.requestInput = input
		b.bodyMiddleware.requestEncoder = encoder
		b.headers.Set("Content-Type", encoder.ContentType())
		return nil
	})
}