httpx/sig/headers.rbs
HoneyryderChuck e63c75a86c improvements in headers
using Hash#new(capacity: ) to better predict size; reduce the number of allocated arrays by passing the result of  to the store when possible, and only calling #downcased(str) once; #array_value will also not try to clean up errors in the passed data (it'll either fail loudly, or be fixed downstream)
2025-04-04 00:18:53 +01:00

52 lines
1.3 KiB
Plaintext

module HTTPX
class Headers
include _ToS
@headers: Hash[String, Array[_ToS]]
def self.new: (?untyped headers) -> instance
def ==: (untyped other) -> bool
def []: (String field) -> String?
def []=: (String field, headers_value value) -> void
def add: (String field, String value) -> void
def delete: (String field) -> Array[_ToS]?
def each: (?_Each[[String, String]]? extra_headers) { (String k, String v) -> void } -> void
| (?_Each[[String, String]]? extra_headers) -> Enumerable[[String, String]]
def get: (String field) -> Array[_ToS]
def key?: (String downcased_key) -> bool
def merge: (_Each[[String, headers_value]] other) -> Headers
def same_headers?: (untyped headers) -> bool
def empty?: () -> bool
def to_a: () -> Array[[String, String]]
def to_hash: () -> Hash[String, String]
alias to_h to_hash
def inspect: () -> String
private
def initialize: (?(headers_input | instance)?) -> void
def array_value: (headers_value value) -> Array[_ToS]
def downcased: (header_field field) -> String
end
type header_field = string | _ToS
type headers_value = _ToS | Array[_ToS]
type headers_hash = Hash[header_field, headers_value]
type headers_input = headers_hash | Array[[header_field, headers_value]]
type headers = Headers | headers_input
end