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:
parent
cda5745c1b
commit
94d6ec1d90
6 changed files with 87 additions and 8 deletions
|
@ -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)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue