Sha256: c6e9c62c8b57a6e63faf6d77647e98f97bbab4bf5488a09214881b8e01cc2617

Contents?: true

Size: 1.12 KB

Versions: 7

Compression:

Stored size: 1.12 KB

Contents

module HTTPX
  class TCP
    include Loggable

    attr_reader ip: IPAddr?

    attr_reader port: Integer

    attr_reader addresses: Array[ipaddr]

    attr_reader state: Symbol

    attr_reader interests: io_interests

    alias host ip

    # TODO: lift when https://github.com/ruby/rbs/issues/1497 fixed
    def initialize: (URI::Generic origin, Array[ipaddr]? addresses, options options) ?{ (self) -> void } -> void

    def add_addresses: (Array[ipaddr] addrs) -> void

    def to_io: () -> ::IO

    def protocol: () -> String

    def connect: () -> void

    private

    # :nocov:
    def try_connect: () -> void

    public

    def read: (Integer size, ?(Buffer | String) buffer) -> (0 | nil | untyped)

    def write: (Buffer buffer) -> Integer?

    def close: () -> void

    def connected?: () -> bool

    def expired?: () -> boolish

    def closed?: () -> bool

    # :nocov:
    def inspect: () -> ::String

    private

    def build_socket: () -> Socket

    def transition: (Symbol nextstate) -> void

    def do_transition: (Symbol nextstate) -> void

    def log_transition_state: (Symbol nextstate) -> void
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
httpx-1.0.2 sig/io/tcp.rbs
httpx-0.24.7 sig/io/tcp.rbs
httpx-1.0.1 sig/io/tcp.rbs
httpx-1.0.0 sig/io/tcp.rbs
httpx-0.24.6 sig/io/tcp.rbs
httpx-0.24.5 sig/io/tcp.rbs
httpx-0.24.4 sig/io/tcp.rbs