Ruby 2.0以前の実装手法 知って損なしの【疑似キーワード引数】

Rubyの疑似キーワードについて記載いたします。

Ruby2.0以前の書き方で今は採用されていない書き方かもしれませんが

過去のコードなどでこのような書き方がでたときに「これだ!」と

思えるよう予備知識として是非参考にしてください。

 

疑似キーワードは引数にハッシュを使います。

ハッシュ値に内部で使用していないパラメータを渡してもエラーにはなりません。

例は以下のとおりです。

def test(member, buy_items = {})
    puts 'member => ' + member
    puts 'buy item => hat' if buy_items.key?(:hat)
    puts 'buy item => shirt' if buy_items.key?(:shirt)
end


test('Mike', hat: true, shirt: true)
# member => Mike
# buy item => hat
# buy item => shirt
test('Tom', hat: true, shoes: true)
# member => Tom
# buy item => hat
# => shoesは無視される

今後コードで出てきたときに躊躇せず解析していけると思うので
覚えておくと良いですね(*^^*)

何か参考になれば幸いです(*^^*)