我已經繼承了一堆沒有被任何類或模塊包裝的方法,並且只是在.rb文件中列出。這是由於在黃瓜測試套件中使用該文件而成爲可能。我想收集所有這些方法的集合並遍歷每個方法調用,並在每個方法調用時對它們進行一些工作。Ruby - 方法集合
EX:
def call_all_methods
method1
method2
method3(true)
method3(false)
method4('Y', true)
method4('N', true)
method4('Y', false)
method4('N', false)
end
什麼,我希望能夠做的是包裝這些陣列中的全部,並與周圍
$all_methods.each do |method|
begin
method.call
rescue Exception1
handle_exception1
rescue Exception2
handle_exception2
end
end
我有一個開始/救援塊分別給他們打電話嘗試把它們全部放在一個數組中使用%w
call_all_methods = %w(...)
和那個作品,但它使得方法醜陋看起來t在IDE中
我試着在文件上做一個readlines,但是這個方法在讀取文件時被執行。
我可以創建方法來包裝每個調用,但然後我有一個方法來調用另一種方法(一行),這是不正確的。
我已經看過Ruby: methods as array elements - how do they work?但既不這些解決方案似乎是很好的解決方案,我想要做的,因爲它會髒的代碼
其實我有之前試圖實現這一點,但問題是他們中的一些人有爭論。問題中列出的方法是方法調用,而不是方法聲明。 –