【Ruby3.x】Method::>>()メソッドの使い方
>>メソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
メソッドは、RubyのMethodクラスにおいて、複数のメソッドやProcオブジェクトを連結し、その処理を順に実行する機能を提供するメソッドです。これは「関数合成」または「メソッド合成」と呼ばれる概念を実現し、左側のメソッドが実行された結果を、右側のメソッドの引数として自動的に渡すことで、一連の処理を流れるように記述することを可能にします。
たとえば、あるデータを加工する複数のステップがある場合、>>演算子でこれらを繋ぎ合わせることで、中間変数を用いることなく、各ステップの処理結果を次のステップへ渡すことができます。これにより、コードの可読性が向上し、より簡潔で分かりやすい記述が実現できます。この機能は、特にデータの変換処理や、複数の関数を連続して適用するようなシナリオで強力なツールとなり、関数型プログラミングのスタイルを取り入れたい場合に非常に有効です。複雑な処理の流れを直線的かつ視覚的に理解しやすくなり、保守性の高いコードを書く手助けとなります。
構文(syntax)
1class Calculator 2 def add_one(value) 3 value + 1 4 end 5 6 def multiply_by_two(value) 7 value * 2 8 end 9end 10 11calc = Calculator.new 12add_method = calc.method(:add_one) 13multiply_method = calc.method(:multiply_by_two) 14 15(add_method >> multiply_method).call(3)
引数(parameters)
req
- other_method: 結合する別のメソッド
戻り値(return)
Proc or Method
Method#>> は、レシーバーである Method オブジェクトに、指定された引数を渡して実行した結果を Proc オブジェクトまたは Method オブジェクトとして返します。