Es ist ziemlich einfach zurück, ein Verfahren wie ein proc aus einem Modul zurückzukehren:Rubin: bessere Art und Weise verschiedene Methoden wie Procs aus einem Modul
module Foo
def self.bar
# Method implementation
end
def self.baz
# Method implementation
end
def self.qux
# Method implemenatation
end
def self.zoo
# Method implementation
end
end
Foo.method(:bar) # Returns a proc object
Aber was, wenn ich mehr als eine zurückkehren möge (aber nicht alle) Methode aus dem gleichen Modul? Ein Weg, dies zu tun ist: [:bar,:baz].inject([]) {|memo,i| memo << Foo.method(i)}
Gibt es eine bessere, agiler Weg, das gleiche zu tun?
Will nicht '% [bar baz] .map {| sym | Foo.method (sym)} Arbeit? – sawa
Wenn das nicht das ist, was Sie wollen, dann ist Ihre Frage nicht klar. – sawa
Was meinst du mit agil? – Brozorec