Tbpgr Blog

Employee Experience Engineer tbpgr(てぃーびー) のブログ

Ruby | Ruby2.0新規要素 | キーワード引数

概要

キーワード引数

詳細

Ruby1.9までは引数の最後にHashを利用することで擬似的にキーワード引数を
再現していたが、文法としてサポートされました。
どの引数がどの値を示しているか一目瞭然でわかります。

サンプルコード
# encoding: utf-8
require 'tbpgr_utils'

def show_charactor(charactor, upper: false, spacing: false)
  charactor.upcase! if upper
  charactor = charactor.spacing if spacing
  charactor
end

bulk_puts_eval binding, <<-EOS
show_charactor("hoge")
show_charactor("hoge", upper: true)
show_charactor("hoge", upper: true, spacing: true)
show_charactor("hoge", spacing: true)
EOS
出力
show_charactor("hoge") # => "hoge"
show_charactor("hoge", upper: true) # => "HOGE"
show_charactor("hoge", upper: true, spacing: true) # => "H O G E"
show_charactor("hoge", spacing: true) # => "h o g e"