httpx/sig/resolver.rbs
2022-01-16 22:54:56 +02:00

28 lines
813 B
Plaintext

module HTTPX
type ipaddr = IPAddr | String
module Resolver
extend Registry[Symbol, Class]
RESOLVE_TIMEOUT: Integer | Float
@lookup_mutex: Thread::Mutex
type dns_resource = singleton(Resolv::DNS::Resource)
type dns_result = { "name" => String, "TTL" => Numeric, "alias" => String }
| { "name" => String, "TTL" => Numeric, "data" => String }
def self?.cached_lookup: (String hostname) -> Array[String]?
def self?.cached_lookup_set: (String hostname, Array[dns_result] addresses) -> void
def self?.lookup: (String hostname, Numeric ttl) -> Array[String]?
def self?.generate_id: () -> Integer
def self?.encode_dns_query: (String hostname, ?type: dns_resource) -> String
def self?.decode_dns_answer: (String) -> Array[dns_result]
end
end