【Ruby3.x】Proc::parameters()メソッドの使い方
parametersメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
parametersメソッドは、レシーバであるProcオブジェクトが受け取る引数の情報を、配列の配列として取得するメソッドです。Procオブジェクトとは、ブロックやラムダなどの実行可能なコードをオブジェクトとして扱ったものです。
このメソッドは、Procオブジェクトが期待する引数ごとに、その種類と名前を[型を表すシンボル, 引数名をシンボル]という形式の配列として返します。型には、:req(必須引数)や:opt(オプション引数)など、引数の性質に応じたシンボルが返されます。引数に名前がない場合は、引数名にnilが返されます。
parametersメソッドは、実行時にProcオブジェクトがどのような引数を要求しているかを動的に把握したい場合に大変有用です。この機能は、フレームワークがブロックの引数構造を解析し、それに応じて処理を分岐させるなど、プログラムの柔軟性を高めるために活用されます。
構文(syntax)
1my_proc = Proc.new { |a, b = 1, *c, d:, e: 2, **f, &block| } 2puts my_proc.parameters
引数(parameters)
引数なし
引数はありません
戻り値(return)
Array
Procオブジェクトが受け取ることができる引数の情報を配列として返します。