未知数の引数を受け取り、それらに対してハッシュ#digを実行するメソッドを作成しようとしています。#digラッパーメソッドで変数の動的数を受け入れる
def unknown_dig(hash, *args)
# do some magic?
hash.dig(non_array_args)
end
#example usage
unknown_dig(hash, 'a', 'b', 'c')
これは可能ですか?あなたは(あなたの代わりにそれにメソッドを呼び出すの引数としてハッシュを渡す)、それ以上の機能的なスタイルにしたい場合は
hash = { a: { b: 1 } }
hash.dig(:a, :b) == hash.dig(*[:a, :b])
、:(ルビー2.3で定義されている)
あなたは 'hash.dig(* args)'を探していますか? – Stefan