Skip to content

Commit 0ee68f7

Browse files
authored
Merge pull request #3980 from ruby/fix-binding
Fix binding for `in`, `not`, and `do` on/after command calls
2 parents 8cc4eda + fd0a20f commit 0ee68f7

9 files changed

Lines changed: 429 additions & 361 deletions
Lines changed: 15 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -1,95 +1,49 @@
1-
@ ProgramNode (location: (1,0)-(3,17))
1+
@ ProgramNode (location: (1,0)-(1,17))
22
├── flags: ∅
33
├── locals: []
44
└── statements:
5-
@ StatementsNode (location: (1,0)-(3,17))
5+
@ StatementsNode (location: (1,0)-(1,17))
66
├── flags: ∅
7-
└── body: (length: 2)
8-
├── @ CallNode (location: (1,0)-(1,19))
9-
│ ├── flags: newline, ignore_visibility
10-
│ ├── receiver: ∅
11-
│ ├── call_operator_loc: ∅
12-
│ ├── name: :foo
13-
│ ├── message_loc: (1,0)-(1,3) = "foo"
14-
│ ├── opening_loc: (1,3)-(1,4) = "("
15-
│ ├── arguments:
16-
│ │ @ ArgumentsNode (location: (1,4)-(1,18))
17-
│ │ ├── flags: ∅
18-
│ │ └── arguments: (length: 1)
19-
│ │ └── @ CallNode (location: (1,4)-(1,18))
20-
│ │ ├── flags: ignore_visibility
21-
│ │ ├── receiver: ∅
22-
│ │ ├── call_operator_loc: ∅
23-
│ │ ├── name: :bar
24-
│ │ ├── message_loc: (1,4)-(1,7) = "bar"
25-
│ │ ├── opening_loc: ∅
26-
│ │ ├── arguments:
27-
│ │ │ @ ArgumentsNode (location: (1,8)-(1,11))
28-
│ │ │ ├── flags: ∅
29-
│ │ │ └── arguments: (length: 1)
30-
│ │ │ └── @ CallNode (location: (1,8)-(1,11))
31-
│ │ │ ├── flags: variable_call, ignore_visibility
32-
│ │ │ ├── receiver: ∅
33-
│ │ │ ├── call_operator_loc: ∅
34-
│ │ │ ├── name: :baz
35-
│ │ │ ├── message_loc: (1,8)-(1,11) = "baz"
36-
│ │ │ ├── opening_loc: ∅
37-
│ │ │ ├── arguments: ∅
38-
│ │ │ ├── closing_loc: ∅
39-
│ │ │ ├── equal_loc: ∅
40-
│ │ │ └── block: ∅
41-
│ │ ├── closing_loc: ∅
42-
│ │ ├── equal_loc: ∅
43-
│ │ └── block:
44-
│ │ @ BlockNode (location: (1,12)-(1,18))
45-
│ │ ├── flags: ∅
46-
│ │ ├── locals: []
47-
│ │ ├── parameters: ∅
48-
│ │ ├── body: ∅
49-
│ │ ├── opening_loc: (1,12)-(1,14) = "do"
50-
│ │ └── closing_loc: (1,15)-(1,18) = "end"
51-
│ ├── closing_loc: (1,18)-(1,19) = ")"
52-
│ ├── equal_loc: ∅
53-
│ └── block: ∅
54-
└── @ CallNode (location: (3,0)-(3,17))
7+
└── body: (length: 1)
8+
└── @ CallNode (location: (1,0)-(1,17))
559
├── flags: newline, ignore_visibility
5610
├── receiver: ∅
5711
├── call_operator_loc: ∅
5812
├── name: :foo
59-
├── message_loc: (3,0)-(3,3) = "foo"
60-
├── opening_loc: (3,3)-(3,4) = "("
13+
├── message_loc: (1,0)-(1,3) = "foo"
14+
├── opening_loc: (1,3)-(1,4) = "("
6115
├── arguments:
62-
│ @ ArgumentsNode (location: (3,4)-(3,16))
16+
│ @ ArgumentsNode (location: (1,4)-(1,16))
6317
│ ├── flags: ∅
6418
│ └── arguments: (length: 1)
65-
│ └── @ CallNode (location: (3,4)-(3,16))
19+
│ └── @ CallNode (location: (1,4)-(1,16))
6620
│ ├── flags: ignore_visibility
6721
│ ├── receiver: ∅
6822
│ ├── call_operator_loc: ∅
6923
│ ├── name: :bar
70-
│ ├── message_loc: (3,4)-(3,7) = "bar"
24+
│ ├── message_loc: (1,4)-(1,7) = "bar"
7125
│ ├── opening_loc: ∅
7226
│ ├── arguments:
73-
│ │ @ ArgumentsNode (location: (3,8)-(3,16))
27+
│ │ @ ArgumentsNode (location: (1,8)-(1,16))
7428
│ │ ├── flags: ∅
7529
│ │ └── arguments: (length: 2)
76-
│ │ ├── @ CallNode (location: (3,8)-(3,11))
30+
│ │ ├── @ CallNode (location: (1,8)-(1,11))
7731
│ │ │ ├── flags: variable_call, ignore_visibility
7832
│ │ │ ├── receiver: ∅
7933
│ │ │ ├── call_operator_loc: ∅
8034
│ │ │ ├── name: :baz
81-
│ │ │ ├── message_loc: (3,8)-(3,11) = "baz"
35+
│ │ │ ├── message_loc: (1,8)-(1,11) = "baz"
8236
│ │ │ ├── opening_loc: ∅
8337
│ │ │ ├── arguments: ∅
8438
│ │ │ ├── closing_loc: ∅
8539
│ │ │ ├── equal_loc: ∅
8640
│ │ │ └── block: ∅
87-
│ │ └── @ CallNode (location: (3,13)-(3,16))
41+
│ │ └── @ CallNode (location: (1,13)-(1,16))
8842
│ │ ├── flags: variable_call, ignore_visibility
8943
│ │ ├── receiver: ∅
9044
│ │ ├── call_operator_loc: ∅
9145
│ │ ├── name: :bat
92-
│ │ ├── message_loc: (3,13)-(3,16) = "bat"
46+
│ │ ├── message_loc: (1,13)-(1,16) = "bat"
9347
│ │ ├── opening_loc: ∅
9448
│ │ ├── arguments: ∅
9549
│ │ ├── closing_loc: ∅
@@ -98,6 +52,6 @@
9852
│ ├── closing_loc: ∅
9953
│ ├── equal_loc: ∅
10054
│ └── block: ∅
101-
├── closing_loc: (3,16)-(3,17) = ")"
55+
├── closing_loc: (1,16)-(1,17) = ")"
10256
├── equal_loc: ∅
10357
└── block: ∅

0 commit comments

Comments
 (0)