Sha256: 80bdc9cc3bf12001de699cec9903ca157823997594aeda5b281b5fa88f0539a5

Contents?: true

Size: 1.83 KB

Versions: 3

Compression:

Stored size: 1.83 KB

Contents

module HTTPX
  interface _Response
    def raise_for_status: () -> void 
  end

  class Response
    include _Response
    include _ToS
    include _Reader

    attr_reader status: int
    attr_reader headers: headers
    attr_reader body: Body
    attr_reader version: String

    @options: Options
    @request: Request

    def copy_to: (_ToPath | _Writer destination) -> void
    def close: () -> void
    def uri: () -> uri

    def merge_headers: (headers) -> void
    def bodyless?: () -> bool
    def content_type: () -> ContentType
    def complete?: () -> bool

    private

    def initialize: (Request, _ToS, String, headers?) -> untyped
    def no_data?: () -> bool

    class Body
      include _Writer
      include _Reader
      include _ToS
      include _ToStr

      @state: :idle | :memory | :buffer
      @threshold_size: Integer
      @window_size: Integer

      def each: () { (String) -> void } -> void
              | () -> Enumerable[String]

      def bytesize: () -> Numeric
      def empty?: () -> bool
      def copy_to: (_ToPath | _Writer destination) -> void
      def close: () -> void

      private

      def initialize: (Response, options) -> untyped
      def rewind: () -> void
      def transition: () -> void
    end
  end

  class ContentType
    attr_reader mime_type: String?
    attr_reader charset: String?

    def self.parse: (_ToS) -> instance
    def self.mime_type: (_ToS) -> String?
    def self.charset: (_ToS) -> String?

    private

    def initialize: (String?, String?) -> untyped
  end

  class ErrorResponse
    include _Response
    include Loggable

    @options: Options

    attr_reader request: Request
    attr_reader error: Exception

    def status: () -> (Integer | _ToS)

    private

    def initialize: (Request, Exception, options) -> untyped
  end

  type response = Response | ErrorResponse
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
httpx-0.13.2 sig/response.rbs
httpx-0.13.1 sig/response.rbs
httpx-0.13.0 sig/response.rbs