私は次のものを持っています:
class Foo
def bar
"foobar"
end
def baz
"foobaz"
end
def qux(arg)
...
end
end
明示的に指定せずに、メソッドandas_jsonのキーと値が含まれるようにオーバーライドするにはどうすればよいですか?barbazqux
私は次のものを持っています:
class Foo
def bar
"foobar"
end
def baz
"foobaz"
end
def qux(arg)
...
end
end
明示的に指定せずに、メソッドandas_jsonのキーと値が含まれるようにオーバーライドするにはどうすればよいですか?barbazqux
次のようなことができます。
def get_public_methods
array = self.public_methods(false).delete_if {|meth| Foo.instance_method(meth).arity > 0}.map{|meth| [meth, self.send(meth)]}
Hash[*array.flatten]
end
戻ります{:bar=>"foobar", :baz=>"foobaz"}
次に、オーバーロードを呼び出しget_public_methodsますas_json。