class Gem::Resolv::DNS::Resource

def self.decode_rdata(msg) # :nodoc:

:nodoc:
def self.decode_rdata(msg) # :nodoc:
  raise NotImplementedError.new
end

def self.get_class(type_value, class_value) # :nodoc:

:nodoc:
def self.get_class(type_value, class_value) # :nodoc:
  return ClassHash[[type_value, class_value]] ||
         Generic.create(type_value, class_value)
end

def ==(other) # :nodoc:

:nodoc:
def ==(other) # :nodoc:
  return false unless self.class == other.class
  s_ivars = self.instance_variables
  s_ivars.sort!
  s_ivars.delete :@ttl
  o_ivars = other.instance_variables
  o_ivars.sort!
  o_ivars.delete :@ttl
  return s_ivars == o_ivars &&
    s_ivars.collect {|name| self.instance_variable_get name} ==
      o_ivars.collect {|name| other.instance_variable_get name}
end

def encode_rdata(msg) # :nodoc:

:nodoc:
def encode_rdata(msg) # :nodoc:
  raise NotImplementedError.new
end

def eql?(other) # :nodoc:

:nodoc:
def eql?(other) # :nodoc:
  return self == other
end

def hash # :nodoc:

:nodoc:
def hash # :nodoc:
  h = 0
  vars = self.instance_variables
  vars.delete :@ttl
  vars.each {|name|
    h ^= self.instance_variable_get(name).hash
  }
  return h
end