Ruby 4.0 リファレンスマニュアル

function rb_funcall_passing_block_kw

[edit]
VALUE rb_funcall_passing_block_kw(VALUE recv, ID mid, int argc, const VALUE *argv, int kw_splat)

rb_funcall_passing_block と同じですが、argv の最後の要素をキーワード引数として扱うかどうかを kw_splat で指定します。

kw_splat には次のどれかを指定します。

  • RB_NO_KEYWORDS -- argv の最後はキーワード引数ではありません。
  • RB_PASS_KEYWORDS -- argv の最後はキーワード引数です。
  • RB_PASS_CALLED_KEYWORDS -- 現在のメソッドがキーワード引数付きで呼ばれていれば、キーワード引数を渡します。
[PARAM] recv:
メソッドのレシーバです。
[PARAM] mid:
呼び出すメソッドの名前です。
[PARAM] argc:
argv の要素数です。
[PARAM] argv:
メソッドに渡す引数の配列です。
[PARAM] kw_splat:
キーワード引数の扱いです。
[RETURN]
呼び出したメソッドの返り値です。
[EXCEPTION] NoMethodError:
メソッドがないとき、またはメソッドが private か protected のとき。
[EXCEPTION] Exception:
呼び出したメソッドの中で例外が発生したとき。