引数
参考:
メソッド定義 – クラス/メソッドの定義 (Ruby 2.5.0)
目次
引数の処理
super に引数を渡す方法
参考:
How do I add named parameters in a subclass or change their default in Ruby 2.2? – Stack Overflow
Splat Operator
参考:
ここまで出来る!Ruby の Splat Operator まとめ | alpaca-tc
Splat Operator in Ruby | Jaco Pretorius
Everything you should know about Ruby Splats | Alex Castaño
What does a double * (splat) operator do – Stack Overflow
Double Splat
参考:
Drat! – Ruby has a Double Splat | Firmafon Developers Blog
Ruby keyword arguments, the double splat, and ** | Ronald Hong’s blog
ARGV
参考:
constant Object::ARGV (Ruby 2.5.0)
参照渡し
Ruby の引数、及び、戻り値は全て「値渡し」である。
Ruby のオブジェクトは「参照」であるので、引数で渡す場合、及び、戻り値として返す場合ともに、オブジェクトが大きくてもコピーのコストは発生しない。(明示的に dup
でクローンした場合を除く。)
Ruby においては全ての値 (value) はオブジェクトであり、メソッドにおける引数、及び、戻り値は全て、実際には「参照」の「値渡し」であるといえる。
参考:
メソッドの引数は参照の値渡し? | blog @kimromi