In: |
resolv.rb
|
Parent: | Object |
DefaultResolver | = | self.new |
AddressRegex | = | /(?:#{IPv4::Regex})|(?:#{IPv6::Regex})/ |
# File resolv.rb, line 206 def self.each_address(name, &block) DefaultResolver.each_address(name, &block) end
# File resolv.rb, line 218 def self.each_name(address, &proc) DefaultResolver.each_name(address, &proc) end
# File resolv.rb, line 222 def initialize(resolvers=[Hosts.new, DNS.new]) @resolvers = resolvers end
# File resolv.rb, line 237 def each_address(name) if AddressRegex =~ name yield name return end yielded = false @resolvers.each {|r| r.each_address(name) {|address| yield address.to_s yielded = true } return if yielded } end
# File resolv.rb, line 263 def each_name(address) yielded = false @resolvers.each {|r| r.each_name(address) {|name| yield name.to_s yielded = true } return if yielded } end
# File resolv.rb, line 226 def getaddress(name) each_address(name) {|address| return address} raise ResolvError.new("no address for #{name}") end
# File resolv.rb, line 231 def getaddresses(name) ret = [] each_address(name) {|address| ret << address} return ret end
# File resolv.rb, line 252 def getname(address) each_name(address) {|name| return name} raise ResolvError.new("no name for #{address}") end