检查ruby中实例的类型

检查ruby中实例的类型,ruby,Ruby,我正在调试一个应用程序,我需要在其中检查DNS查询的资源类是否为输入类型。以下是我的发现: [6] pry(#<DNS::Server>)> resource_class => Resolv::DNS::Resource::IN::A [7] pry(#<DNS::Server>)> resource_class.inspect => "Resolv::DNS::Resource::IN::A" [8] pry(#<DNS::Server&g

我正在调试一个应用程序,我需要在其中检查DNS查询的资源类是否为输入类型。以下是我的发现:

[6] pry(#<DNS::Server>)> resource_class
=> Resolv::DNS::Resource::IN::A
[7] pry(#<DNS::Server>)> resource_class.inspect
=> "Resolv::DNS::Resource::IN::A"
[8] pry(#<DNS::Server>)> resource_class.class.name
=> "Class"
[9] pry(#<DNS::Server>)> resource_class.kind_of? Class
=> true
[10] pry(#<DNS::Server>)> resource_class.kind_of? Resolv::DNS::Resource::IN::A
=> false
[11] pry(#<DNS::Server>)> resource_class.instance_of? Class
=> true
[12] pry(#<DNS::Server>)> resource_class.instance_of? Resolv::DNS::Resource::IN::A
=> false
[13] pry(#<DNS::Server>)> resource_class.is_a? Class
=> true
[14] pry(#<DNS::Server>)> resource_class.is_a? Resolv::DNS::Resource::IN::A
=> false
[6]pry(#)>资源类
=>Resolv::DNS::Resource::IN::A
[7] pry(#)>资源类检查
=>“Resolv::DNS::Resource::IN::A”
[8] pry(#)>resource_class.class.name
=>“类”
[9] pry(#)>资源类。种类?等级
=>正确
[10] pry(#)>资源类。种类?Resolv::DNS::Resource::IN::A
=>错误
[11] pry(#)>resource_class.instance_of?等级
=>正确
[12] pry(#)>resource_class.instance_of?Resolv::DNS::Resource::IN::A
=>错误
[13] pry(#)>resource_class?等级
=>正确
[14] pry(#)>resource_class?Resolv::DNS::Resource::IN::A
=>错误

我试图使用的
resource\u class.instance\u进行检查?Resolv::DNS::Resource::IN::A
不起作用。如何检查此项?

您的
资源\u类是一个类。它不是
Resolv::DNS::Resource::IN::A
的实例;它是
Resolv::DNS::Resource::IN::A
。因此,简单的比较就足够了:

resource_class == Resolv::DNS::Resource::IN::A