私は次のものを持っています:
class Foo
def bar
"foobar"
end
def baz
"foobaz"
end
def qux(arg)
...
end
end
明示的に指定せずに、メソッドandas_json
のキーと値が含まれるようにオーバーライドするにはどうすればよいですか?bar
baz
qux
私は次のものを持っています:
class Foo
def bar
"foobar"
end
def baz
"foobaz"
end
def qux(arg)
...
end
end
明示的に指定せずに、メソッドandas_json
のキーと値が含まれるようにオーバーライドするにはどうすればよいですか?bar
baz
qux
次のようなことができます。
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
。