别人封装的 gem 包,有没有方法可以查询一个对象的所有属性?就像方法 methods 一样。 比如有一对象 @test @test.methods 可以查询所有方法 有没有可以查看所有属性的呢?
class A
def initialize
@a=0;@c=3
end
attr_accessor :a, :c, :b
end
a = A.new
ins_vars = a.instance_variables.map{|v|v.to_s[1..-1]}
methods = a.methods.map &:to_s
ins_vars & methods #attribute