Skip to content

Commit 5f1f840

Browse files
committed
Fix for ImplicitRestNode
1 parent fab55d9 commit 5f1f840

2 files changed

Lines changed: 2 additions & 2 deletions

File tree

lib/repl_type_completor/type_analyzer.rb

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -923,8 +923,7 @@ def assign_parameters(node, scope, args, kwargs)
923923
node.posts.zip posts do |n, v|
924924
assign_required_parameter n, v, scope
925925
end
926-
if node.rest&.name
927-
# node.rest is Prism::RestParameterNode
926+
if node.rest.is_a?(Prism::RestParameterNode) && node.rest.name
928927
scope[node.rest.name.to_s] = Types.array_of(*rest)
929928
end
930929
node.keywords.each do |n|

test/repl_type_completor/test_type_analyze.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -681,6 +681,7 @@ def test_call_parameter
681681

682682
def test_block_args
683683
assert_call('[1,2,3].tap{|a| a.', include: Array)
684+
assert_call('[1,2,3].tap{|a,| a.', include: Integer)
684685
assert_call('[1,2,3].tap{|a,b| a.', include: Integer)
685686
assert_call('[1,2,3].tap{|(a,b)| a.', include: Integer)
686687
assert_call('[1,2,3].tap{|a,*b| b.', include: Array)

0 commit comments

Comments
 (0)