1
def a(b: 88, c: 97)
puts b
puts c
end
上記のコードが動作します。しかし、Rubyのパラメータ構文エラーのvarargs
def a(b: 88, c: 97, *c)
puts b
puts c
end
構文エラーが発生します。誰かがそれを説明する正しいドキュメントに私を指摘できますか?
def a(b: 88, c: 97)
puts b
puts c
end
上記のコードが動作します。しかし、Rubyのパラメータ構文エラーのvarargs
def a(b: 88, c: 97, *c)
puts b
puts c
end
構文エラーが発生します。誰かがそれを説明する正しいドキュメントに私を指摘できますか?
位置の引数は、メソッドシグネチャの最初に置かれます。名前付き引数は最後になります。
これはうまくいくはずですが、重複するパラメータ名がありますが、これは許可されていません。詳細と
def a(*c, b: 88, c: 97)
puts b
puts c
end
# ~> -:1: duplicated argument name
# ~> def a(*c, b: 88, c: 97)
# ~> ^
何あなたのコードが行うことになっている、すなわち、異なる値で呼び出されるメソッド内の 'C'のための期待値は何ですか? – Stefan