在這種方法的意思表達「&Proc.new」,我發現在鐵軌來源:請給我解釋一下,什麼紅寶石方法
#導軌/ railties/lib中/導軌/ engine.rb
def routes
@routes ||= ActionDispatch::Routing::RouteSet.new
@routes.append(&Proc.new) if block_given?
@routes
end
我不明白如何運作表達 「& Proc.new」。
因爲,當我寫在乾淨的紅寶石類似的代碼,一樣:
def method_name
&Proc.new if block_given?
end
proc = method_name{ puts 'Hello world!' }
proc.call
我收到一個語法錯誤
非常感謝您的好解釋! –