轉換為 Proc
響應 to_proc
的物件可以使用 &
運算子轉換為 procs(這也允許它們作為塊傳遞)。
類 Symbol 定義 #to_proc
,因此它嘗試在它接收的物件上呼叫相應的方法作為引數。
p [ 'rabbit', 'grass' ].map( &:upcase ) # => ["RABBIT", "GRASS"]
方法物件也定義了 #to_proc
。
output = method( :p )
[ 'rabbit', 'grass' ].map( &output ) # => "rabbit\ngrass"