1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

Make pattern matching support **nil syntax

This commit is contained in:
Kazuki Tsujimoto 2019-09-01 16:39:34 +09:00
parent cda5745c1b
commit 94d6ec1d90
No known key found for this signature in database
GPG key ID: BCEA306C49B81CD7
6 changed files with 87 additions and 8 deletions

View file

@ -846,6 +846,44 @@ END
end
end
assert_block do
[{}, C.new({})].all? do |i|
case i
in **nil
true
end
end
end
assert_block do
[{a: 0}, C.new({a: 0})].all? do |i|
case i
in **nil
else
true
end
end
end
assert_block do
[{a: 0}, C.new({a: 0})].all? do |i|
case i
in a:, **nil
true
end
end
end
assert_block do
[{a: 0, b: 1}, C.new({a: 0, b: 1})].all? do |i|
case i
in a:, **nil
else
true
end
end
end
assert_block do
case C.new({a: 0})
in C(a: 0)