diff options
author | Kevin Newton <[email protected]> | 2024-09-13 15:33:14 -0400 |
---|---|---|
committer | Kevin Newton <[email protected]> | 2024-09-16 08:44:19 -0400 |
commit | d57bc870ac8021f2c23e4da346d037820ad45d64 (patch) | |
tree | 2f1611ffe01a7966cf305f6d5dbcf5d4e9496b3f /test/prism | |
parent | fab01b15e999e9f9e18389dabfce3919e080ed56 (diff) |
[PRISM] Remove snapshot testing from Prism sync
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/11624
Diffstat (limited to 'test/prism')
914 files changed, 0 insertions, 94492 deletions
diff --git a/test/prism/snapshots/alias.txt b/test/prism/snapshots/alias.txt deleted file mode 100644 index 0d52c14f1a..0000000000 --- a/test/prism/snapshots/alias.txt +++ /dev/null @@ -1,215 +0,0 @@ -@ ProgramNode (location: (1,0)-(23,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(23,11)) - ├── flags: ∅ - └── body: (length: 12) - ├── @ AliasMethodNode (location: (1,0)-(1,15)) - │ ├── flags: newline - │ ├── new_name: - │ │ @ SymbolNode (location: (1,6)-(1,10)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,6)-(1,7) = ":" - │ │ ├── value_loc: (1,7)-(1,10) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ ├── old_name: - │ │ @ SymbolNode (location: (1,11)-(1,15)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,11)-(1,12) = ":" - │ │ ├── value_loc: (1,12)-(1,15) = "bar" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "bar" - │ └── keyword_loc: (1,0)-(1,5) = "alias" - ├── @ AliasMethodNode (location: (3,0)-(3,21)) - │ ├── flags: newline - │ ├── new_name: - │ │ @ SymbolNode (location: (3,6)-(3,13)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (3,6)-(3,9) = "%s[" - │ │ ├── value_loc: (3,9)-(3,12) = "abc" - │ │ ├── closing_loc: (3,12)-(3,13) = "]" - │ │ └── unescaped: "abc" - │ ├── old_name: - │ │ @ SymbolNode (location: (3,14)-(3,21)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (3,14)-(3,17) = "%s[" - │ │ ├── value_loc: (3,17)-(3,20) = "def" - │ │ ├── closing_loc: (3,20)-(3,21) = "]" - │ │ └── unescaped: "def" - │ └── keyword_loc: (3,0)-(3,5) = "alias" - ├── @ AliasMethodNode (location: (5,0)-(5,19)) - │ ├── flags: newline - │ ├── new_name: - │ │ @ SymbolNode (location: (5,6)-(5,12)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (5,6)-(5,8) = ":'" - │ │ ├── value_loc: (5,8)-(5,11) = "abc" - │ │ ├── closing_loc: (5,11)-(5,12) = "'" - │ │ └── unescaped: "abc" - │ ├── old_name: - │ │ @ SymbolNode (location: (5,13)-(5,19)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (5,13)-(5,15) = ":'" - │ │ ├── value_loc: (5,15)-(5,18) = "def" - │ │ ├── closing_loc: (5,18)-(5,19) = "'" - │ │ └── unescaped: "def" - │ └── keyword_loc: (5,0)-(5,5) = "alias" - ├── @ AliasMethodNode (location: (7,0)-(7,23)) - │ ├── flags: newline - │ ├── new_name: - │ │ @ InterpolatedSymbolNode (location: (7,6)-(7,16)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (7,6)-(7,8) = ":\"" - │ │ ├── parts: (length: 2) - │ │ │ ├── @ StringNode (location: (7,8)-(7,11)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (7,8)-(7,11) = "abc" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "abc" - │ │ │ └── @ EmbeddedStatementsNode (location: (7,11)-(7,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (7,11)-(7,13) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (7,13)-(7,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (7,13)-(7,14)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── closing_loc: (7,14)-(7,15) = "}" - │ │ └── closing_loc: (7,15)-(7,16) = "\"" - │ ├── old_name: - │ │ @ SymbolNode (location: (7,17)-(7,23)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (7,17)-(7,19) = ":'" - │ │ ├── value_loc: (7,19)-(7,22) = "def" - │ │ ├── closing_loc: (7,22)-(7,23) = "'" - │ │ └── unescaped: "def" - │ └── keyword_loc: (7,0)-(7,5) = "alias" - ├── @ AliasGlobalVariableNode (location: (9,0)-(9,11)) - │ ├── flags: newline - │ ├── new_name: - │ │ @ GlobalVariableReadNode (location: (9,6)-(9,8)) - │ │ ├── flags: ∅ - │ │ └── name: :$a - │ ├── old_name: - │ │ @ BackReferenceReadNode (location: (9,9)-(9,11)) - │ │ ├── flags: ∅ - │ │ └── name: :$' - │ └── keyword_loc: (9,0)-(9,5) = "alias" - ├── @ AliasMethodNode (location: (11,0)-(11,13)) - │ ├── flags: newline - │ ├── new_name: - │ │ @ SymbolNode (location: (11,6)-(11,9)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (11,6)-(11,9) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ ├── old_name: - │ │ @ SymbolNode (location: (11,10)-(11,13)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (11,10)-(11,13) = "bar" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "bar" - │ └── keyword_loc: (11,0)-(11,5) = "alias" - ├── @ AliasGlobalVariableNode (location: (13,0)-(13,15)) - │ ├── flags: newline - │ ├── new_name: - │ │ @ GlobalVariableReadNode (location: (13,6)-(13,10)) - │ │ ├── flags: ∅ - │ │ └── name: :$foo - │ ├── old_name: - │ │ @ GlobalVariableReadNode (location: (13,11)-(13,15)) - │ │ ├── flags: ∅ - │ │ └── name: :$bar - │ └── keyword_loc: (13,0)-(13,5) = "alias" - ├── @ AliasMethodNode (location: (15,0)-(15,12)) - │ ├── flags: newline - │ ├── new_name: - │ │ @ SymbolNode (location: (15,6)-(15,9)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (15,6)-(15,9) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ ├── old_name: - │ │ @ SymbolNode (location: (15,10)-(15,12)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (15,10)-(15,12) = "if" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "if" - │ └── keyword_loc: (15,0)-(15,5) = "alias" - ├── @ AliasMethodNode (location: (17,0)-(17,13)) - │ ├── flags: newline - │ ├── new_name: - │ │ @ SymbolNode (location: (17,6)-(17,9)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (17,6)-(17,9) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ ├── old_name: - │ │ @ SymbolNode (location: (17,10)-(17,13)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (17,10)-(17,13) = "<=>" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "<=>" - │ └── keyword_loc: (17,0)-(17,5) = "alias" - ├── @ AliasMethodNode (location: (19,0)-(19,15)) - │ ├── flags: newline - │ ├── new_name: - │ │ @ SymbolNode (location: (19,6)-(19,9)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (19,6)-(19,7) = ":" - │ │ ├── value_loc: (19,7)-(19,9) = "==" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "==" - │ ├── old_name: - │ │ @ SymbolNode (location: (19,10)-(19,15)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (19,10)-(19,11) = ":" - │ │ ├── value_loc: (19,11)-(19,15) = "eql?" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "eql?" - │ └── keyword_loc: (19,0)-(19,5) = "alias" - ├── @ AliasMethodNode (location: (21,0)-(21,9)) - │ ├── flags: newline - │ ├── new_name: - │ │ @ SymbolNode (location: (21,6)-(21,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (21,6)-(21,7) = "A" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "A" - │ ├── old_name: - │ │ @ SymbolNode (location: (21,8)-(21,9)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (21,8)-(21,9) = "B" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "B" - │ └── keyword_loc: (21,0)-(21,5) = "alias" - └── @ AliasMethodNode (location: (23,0)-(23,11)) - ├── flags: newline - ├── new_name: - │ @ SymbolNode (location: (23,6)-(23,8)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (23,6)-(23,7) = ":" - │ ├── value_loc: (23,7)-(23,8) = "A" - │ ├── closing_loc: ∅ - │ └── unescaped: "A" - ├── old_name: - │ @ SymbolNode (location: (23,9)-(23,11)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (23,9)-(23,10) = ":" - │ ├── value_loc: (23,10)-(23,11) = "B" - │ ├── closing_loc: ∅ - │ └── unescaped: "B" - └── keyword_loc: (23,0)-(23,5) = "alias" diff --git a/test/prism/snapshots/arithmetic.txt b/test/prism/snapshots/arithmetic.txt deleted file mode 100644 index 963080e0d9..0000000000 --- a/test/prism/snapshots/arithmetic.txt +++ /dev/null @@ -1,257 +0,0 @@ -@ ProgramNode (location: (1,0)-(13,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(13,8)) - ├── flags: ∅ - └── body: (length: 7) - ├── @ CallNode (location: (1,0)-(1,8)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,0)-(1,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,4)-(1,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (1,4)-(1,8)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (1,5)-(1,8)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (1,5)-(1,8) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :! - │ │ ├── message_loc: (1,4)-(1,5) = "!" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (3,0)-(3,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (3,0)-(3,4)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (3,1)-(3,4)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (3,1)-(3,4) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :-@ - │ │ ├── message_loc: (3,0)-(3,1) = "-" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :* - │ ├── message_loc: (3,4)-(3,5) = "*" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (3,5)-(3,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (3,5)-(3,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (3,5)-(3,8) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (5,0)-(5,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (5,0)-(5,4)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (5,1)-(5,4)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (5,1)-(5,4) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :+@ - │ │ ├── message_loc: (5,0)-(5,1) = "+" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :** - │ ├── message_loc: (5,4)-(5,6) = "**" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (5,6)-(5,9)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (5,6)-(5,9)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (5,6)-(5,9) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (7,0)-(7,8)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (7,0)-(7,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (7,4)-(7,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (7,4)-(7,8)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (7,5)-(7,8)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (7,5)-(7,8) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :~ - │ │ ├── message_loc: (7,4)-(7,5) = "~" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (9,0)-(9,17)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (9,0)-(9,10)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (9,0)-(9,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (9,0)-(9,3) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :<< - │ │ ├── message_loc: (9,4)-(9,6) = "<<" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (9,7)-(9,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ CallNode (location: (9,7)-(9,10)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (9,7)-(9,10) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :<< - │ ├── message_loc: (9,11)-(9,13) = "<<" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (9,14)-(9,17)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (9,14)-(9,17)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (9,14)-(9,17) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (11,0)-(11,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (11,1)-(11,5)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ IntegerNode (location: (11,1)-(11,2)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :** - │ │ ├── message_loc: (11,2)-(11,4) = "**" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (11,4)-(11,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (11,4)-(11,5)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :-@ - │ ├── message_loc: (11,0)-(11,1) = "-" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (13,0)-(13,8)) - ├── flags: newline - ├── receiver: - │ @ IntegerNode (location: (13,0)-(13,2)) - │ ├── flags: static_literal, decimal - │ └── value: -1 - ├── call_operator_loc: (13,2)-(13,3) = "." - ├── name: :zero? - ├── message_loc: (13,3)-(13,8) = "zero?" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/arrays.txt b/test/prism/snapshots/arrays.txt deleted file mode 100644 index f34ee1395c..0000000000 --- a/test/prism/snapshots/arrays.txt +++ /dev/null @@ -1,1886 +0,0 @@ -@ ProgramNode (location: (1,0)-(122,32)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(122,32)) - ├── flags: ∅ - └── body: (length: 50) - ├── @ ArrayNode (location: (1,0)-(1,4)) - │ ├── flags: newline, contains_splat - │ ├── elements: (length: 1) - │ │ └── @ SplatNode (location: (1,1)-(1,3)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (1,1)-(1,2) = "*" - │ │ └── expression: - │ │ @ CallNode (location: (1,2)-(1,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (1,2)-(1,3) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (1,0)-(1,1) = "[" - │ └── closing_loc: (1,3)-(1,4) = "]" - ├── @ CallNode (location: (3,0)-(3,23)) - │ ├── flags: newline, attribute_write - │ ├── receiver: - │ │ @ CallNode (location: (3,0)-(3,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (3,0)-(3,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :[]= - │ ├── message_loc: (3,3)-(3,13) = "[bar, baz]" - │ ├── opening_loc: (3,3)-(3,4) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (3,4)-(3,23)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 3) - │ │ ├── @ CallNode (location: (3,4)-(3,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (3,4)-(3,7) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── @ CallNode (location: (3,9)-(3,12)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (3,9)-(3,12) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ ArrayNode (location: (3,16)-(3,23)) - │ │ ├── flags: static_literal - │ │ ├── elements: (length: 3) - │ │ │ ├── @ IntegerNode (location: (3,16)-(3,17)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── @ IntegerNode (location: (3,19)-(3,20)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ └── @ IntegerNode (location: (3,22)-(3,23)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 3 - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ ├── closing_loc: (3,12)-(3,13) = "]" - │ └── block: ∅ - ├── @ ArrayNode (location: (5,0)-(5,13)) - │ ├── flags: newline - │ ├── elements: (length: 1) - │ │ └── @ KeywordHashNode (location: (5,1)-(5,12)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (5,1)-(5,12)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ SymbolNode (location: (5,1)-(5,3)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (5,1)-(5,2) = "a" - │ │ │ ├── closing_loc: (5,2)-(5,3) = ":" - │ │ │ └── unescaped: "a" - │ │ ├── value: - │ │ │ @ ArrayNode (location: (5,4)-(5,12)) - │ │ │ ├── flags: static_literal - │ │ │ ├── elements: (length: 2) - │ │ │ │ ├── @ SymbolNode (location: (5,5)-(5,7)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: (5,5)-(5,6) = ":" - │ │ │ │ │ ├── value_loc: (5,6)-(5,7) = "b" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "b" - │ │ │ │ └── @ SymbolNode (location: (5,9)-(5,11)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (5,9)-(5,10) = ":" - │ │ │ │ ├── value_loc: (5,10)-(5,11) = "c" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "c" - │ │ │ ├── opening_loc: (5,4)-(5,5) = "[" - │ │ │ └── closing_loc: (5,11)-(5,12) = "]" - │ │ └── operator_loc: ∅ - │ ├── opening_loc: (5,0)-(5,1) = "[" - │ └── closing_loc: (5,12)-(5,13) = "]" - ├── @ ArrayNode (location: (9,0)-(15,1)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 5) - │ │ ├── @ SymbolNode (location: (9,1)-(9,3)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (9,1)-(9,2) = ":" - │ │ │ ├── value_loc: (9,2)-(9,3) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ ├── @ SymbolNode (location: (9,5)-(9,7)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (9,5)-(9,6) = ":" - │ │ │ ├── value_loc: (9,6)-(9,7) = "b" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "b" - │ │ ├── @ SymbolNode (location: (10,0)-(10,2)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (10,0)-(10,1) = ":" - │ │ │ ├── value_loc: (10,1)-(10,2) = "c" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "c" - │ │ ├── @ IntegerNode (location: (10,3)-(10,4)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ SymbolNode (location: (14,0)-(14,2)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (14,0)-(14,1) = ":" - │ │ ├── value_loc: (14,1)-(14,2) = "d" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "d" - │ ├── opening_loc: (9,0)-(9,1) = "[" - │ └── closing_loc: (15,0)-(15,1) = "]" - ├── @ ArrayNode (location: (18,0)-(26,1)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 5) - │ │ ├── @ SymbolNode (location: (18,1)-(18,3)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (18,1)-(18,2) = ":" - │ │ │ ├── value_loc: (18,2)-(18,3) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ ├── @ SymbolNode (location: (18,5)-(18,7)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (18,5)-(18,6) = ":" - │ │ │ ├── value_loc: (18,6)-(18,7) = "b" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "b" - │ │ ├── @ SymbolNode (location: (19,0)-(19,2)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (19,0)-(19,1) = ":" - │ │ │ ├── value_loc: (19,1)-(19,2) = "c" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "c" - │ │ ├── @ IntegerNode (location: (19,3)-(19,4)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ SymbolNode (location: (23,0)-(23,2)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (23,0)-(23,1) = ":" - │ │ ├── value_loc: (23,1)-(23,2) = "d" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "d" - │ ├── opening_loc: (18,0)-(18,1) = "[" - │ └── closing_loc: (26,0)-(26,1) = "]" - ├── @ ArrayNode (location: (28,0)-(28,12)) - │ ├── flags: newline - │ ├── elements: (length: 1) - │ │ └── @ KeywordHashNode (location: (28,1)-(28,11)) - │ │ ├── flags: ∅ - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (28,1)-(28,11)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ CallNode (location: (28,1)-(28,4)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (28,1)-(28,4) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── value: - │ │ │ @ CallNode (location: (28,8)-(28,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (28,8)-(28,11) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (28,5)-(28,7) = "=>" - │ ├── opening_loc: (28,0)-(28,1) = "[" - │ └── closing_loc: (28,11)-(28,12) = "]" - ├── @ CallNode (location: (30,0)-(30,19)) - │ ├── flags: newline, attribute_write - │ ├── receiver: - │ │ @ CallNode (location: (30,0)-(30,8)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (30,0)-(30,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (30,0)-(30,3) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :[] - │ │ ├── message_loc: (30,3)-(30,8) = "[bar]" - │ │ ├── opening_loc: (30,3)-(30,4) = "[" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (30,4)-(30,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ CallNode (location: (30,4)-(30,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (30,4)-(30,7) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── closing_loc: (30,7)-(30,8) = "]" - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :[]= - │ ├── message_loc: (30,8)-(30,13) = "[baz]" - │ ├── opening_loc: (30,8)-(30,9) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (30,9)-(30,19)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (30,9)-(30,12)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (30,9)-(30,12) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ CallNode (location: (30,16)-(30,19)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :qux - │ │ ├── message_loc: (30,16)-(30,19) = "qux" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (30,12)-(30,13) = "]" - │ └── block: ∅ - ├── @ CallNode (location: (32,0)-(32,13)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (32,0)-(32,8)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (32,0)-(32,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (32,0)-(32,3) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :[] - │ │ ├── message_loc: (32,3)-(32,8) = "[bar]" - │ │ ├── opening_loc: (32,3)-(32,4) = "[" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (32,4)-(32,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ CallNode (location: (32,4)-(32,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (32,4)-(32,7) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── closing_loc: (32,7)-(32,8) = "]" - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :[] - │ ├── message_loc: (32,8)-(32,13) = "[baz]" - │ ├── opening_loc: (32,8)-(32,9) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (32,9)-(32,12)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (32,9)-(32,12)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (32,9)-(32,12) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (32,12)-(32,13) = "]" - │ └── block: ∅ - ├── @ ArrayNode (location: (34,0)-(35,1)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 0) - │ ├── opening_loc: (34,0)-(34,1) = "[" - │ └── closing_loc: (35,0)-(35,1) = "]" - ├── @ CallNode (location: (37,0)-(37,13)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (37,0)-(37,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (37,0)-(37,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :[] - │ ├── message_loc: (37,3)-(37,13) = "[bar, baz]" - │ ├── opening_loc: (37,3)-(37,4) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (37,4)-(37,12)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (37,4)-(37,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (37,4)-(37,7) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ CallNode (location: (37,9)-(37,12)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (37,9)-(37,12) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (37,12)-(37,13) = "]" - │ └── block: ∅ - ├── @ CallNode (location: (39,0)-(39,19)) - │ ├── flags: newline, attribute_write - │ ├── receiver: - │ │ @ CallNode (location: (39,0)-(39,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (39,0)-(39,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :[]= - │ ├── message_loc: (39,3)-(39,13) = "[bar, baz]" - │ ├── opening_loc: (39,3)-(39,4) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (39,4)-(39,19)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 3) - │ │ ├── @ CallNode (location: (39,4)-(39,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (39,4)-(39,7) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── @ CallNode (location: (39,9)-(39,12)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (39,9)-(39,12) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ CallNode (location: (39,16)-(39,19)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :qux - │ │ ├── message_loc: (39,16)-(39,19) = "qux" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (39,12)-(39,13) = "]" - │ └── block: ∅ - ├── @ MultiWriteNode (location: (41,0)-(41,21)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ IndexTargetNode (location: (41,0)-(41,6)) - │ │ │ ├── flags: attribute_write - │ │ │ ├── receiver: - │ │ │ │ @ CallNode (location: (41,0)-(41,3)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :foo - │ │ │ │ ├── message_loc: (41,0)-(41,3) = "foo" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── opening_loc: (41,3)-(41,4) = "[" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (41,4)-(41,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (41,4)-(41,5)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 0 - │ │ │ ├── closing_loc: (41,5)-(41,6) = "]" - │ │ │ └── block: ∅ - │ │ └── @ IndexTargetNode (location: (41,8)-(41,14)) - │ │ ├── flags: attribute_write - │ │ ├── receiver: - │ │ │ @ CallNode (location: (41,8)-(41,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (41,8)-(41,11) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (41,11)-(41,12) = "[" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (41,12)-(41,13)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (41,12)-(41,13)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 0 - │ │ ├── closing_loc: (41,13)-(41,14) = "]" - │ │ └── block: ∅ - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (41,15)-(41,16) = "=" - │ └── value: - │ @ ArrayNode (location: (41,17)-(41,21)) - │ ├── flags: static_literal - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (41,17)-(41,18)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (41,20)-(41,21)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── opening_loc: ∅ - │ └── closing_loc: ∅ - ├── @ CallNode (location: (43,0)-(43,19)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (43,0)-(43,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (43,0)-(43,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :[] - │ ├── message_loc: (43,3)-(43,19) = "[bar[baz] = qux]" - │ ├── opening_loc: (43,3)-(43,4) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (43,4)-(43,18)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (43,4)-(43,18)) - │ │ ├── flags: attribute_write - │ │ ├── receiver: - │ │ │ @ CallNode (location: (43,4)-(43,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (43,4)-(43,7) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :[]= - │ │ ├── message_loc: (43,7)-(43,12) = "[baz]" - │ │ ├── opening_loc: (43,7)-(43,8) = "[" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (43,8)-(43,18)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 2) - │ │ │ ├── @ CallNode (location: (43,8)-(43,11)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ ├── message_loc: (43,8)-(43,11) = "baz" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── @ CallNode (location: (43,15)-(43,18)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :qux - │ │ │ ├── message_loc: (43,15)-(43,18) = "qux" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── closing_loc: (43,11)-(43,12) = "]" - │ │ └── block: ∅ - │ ├── closing_loc: (43,18)-(43,19) = "]" - │ └── block: ∅ - ├── @ CallNode (location: (45,0)-(45,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (45,0)-(45,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (45,0)-(45,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :[] - │ ├── message_loc: (45,3)-(45,8) = "[bar]" - │ ├── opening_loc: (45,3)-(45,4) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (45,4)-(45,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (45,4)-(45,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (45,4)-(45,7) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (45,7)-(45,8) = "]" - │ └── block: ∅ - ├── @ CallNode (location: (47,0)-(47,14)) - │ ├── flags: newline, attribute_write - │ ├── receiver: - │ │ @ CallNode (location: (47,0)-(47,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (47,0)-(47,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :[]= - │ ├── message_loc: (47,3)-(47,8) = "[bar]" - │ ├── opening_loc: (47,3)-(47,4) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (47,4)-(47,14)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (47,4)-(47,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (47,4)-(47,7) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ CallNode (location: (47,11)-(47,14)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (47,11)-(47,14) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (47,7)-(47,8) = "]" - │ └── block: ∅ - ├── @ ArrayNode (location: (49,0)-(49,6)) - │ ├── flags: newline - │ ├── elements: (length: 1) - │ │ └── @ KeywordHashNode (location: (49,1)-(49,5)) - │ │ ├── flags: ∅ - │ │ └── elements: (length: 1) - │ │ └── @ AssocSplatNode (location: (49,1)-(49,5)) - │ │ ├── flags: ∅ - │ │ ├── value: - │ │ │ @ HashNode (location: (49,3)-(49,5)) - │ │ │ ├── flags: static_literal - │ │ │ ├── opening_loc: (49,3)-(49,4) = "{" - │ │ │ ├── elements: (length: 0) - │ │ │ └── closing_loc: (49,4)-(49,5) = "}" - │ │ └── operator_loc: (49,1)-(49,3) = "**" - │ ├── opening_loc: (49,0)-(49,1) = "[" - │ └── closing_loc: (49,5)-(49,6) = "]" - ├── @ ArrayNode (location: (51,0)-(51,6)) - │ ├── flags: newline - │ ├── elements: (length: 1) - │ │ └── @ KeywordHashNode (location: (51,1)-(51,5)) - │ │ ├── flags: ∅ - │ │ └── elements: (length: 1) - │ │ └── @ AssocSplatNode (location: (51,1)-(51,5)) - │ │ ├── flags: ∅ - │ │ ├── value: - │ │ │ @ CallNode (location: (51,3)-(51,5)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :kw - │ │ │ ├── message_loc: (51,3)-(51,5) = "kw" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (51,1)-(51,3) = "**" - │ ├── opening_loc: (51,0)-(51,1) = "[" - │ └── closing_loc: (51,5)-(51,6) = "]" - ├── @ ArrayNode (location: (53,0)-(53,9)) - │ ├── flags: newline - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (53,1)-(53,2)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ KeywordHashNode (location: (53,4)-(53,8)) - │ │ ├── flags: ∅ - │ │ └── elements: (length: 1) - │ │ └── @ AssocSplatNode (location: (53,4)-(53,8)) - │ │ ├── flags: ∅ - │ │ ├── value: - │ │ │ @ CallNode (location: (53,6)-(53,8)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :kw - │ │ │ ├── message_loc: (53,6)-(53,8) = "kw" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (53,4)-(53,6) = "**" - │ ├── opening_loc: (53,0)-(53,1) = "[" - │ └── closing_loc: (53,8)-(53,9) = "]" - ├── @ ArrayNode (location: (55,0)-(55,21)) - │ ├── flags: newline - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (55,1)-(55,2)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ KeywordHashNode (location: (55,4)-(55,20)) - │ │ ├── flags: ∅ - │ │ └── elements: (length: 3) - │ │ ├── @ AssocSplatNode (location: (55,4)-(55,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── value: - │ │ │ │ @ CallNode (location: (55,6)-(55,8)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :kw - │ │ │ │ ├── message_loc: (55,6)-(55,8) = "kw" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── operator_loc: (55,4)-(55,6) = "**" - │ │ ├── @ AssocSplatNode (location: (55,10)-(55,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── value: - │ │ │ │ @ HashNode (location: (55,12)-(55,14)) - │ │ │ │ ├── flags: static_literal - │ │ │ │ ├── opening_loc: (55,12)-(55,13) = "{" - │ │ │ │ ├── elements: (length: 0) - │ │ │ │ └── closing_loc: (55,13)-(55,14) = "}" - │ │ │ └── operator_loc: (55,10)-(55,12) = "**" - │ │ └── @ AssocSplatNode (location: (55,16)-(55,20)) - │ │ ├── flags: ∅ - │ │ ├── value: - │ │ │ @ CallNode (location: (55,18)-(55,20)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :kw - │ │ │ ├── message_loc: (55,18)-(55,20) = "kw" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (55,16)-(55,18) = "**" - │ ├── opening_loc: (55,0)-(55,1) = "[" - │ └── closing_loc: (55,20)-(55,21) = "]" - ├── @ ArrayNode (location: (57,0)-(59,1)) - │ ├── flags: newline - │ ├── elements: (length: 1) - │ │ └── @ KeywordHashNode (location: (58,2)-(58,12)) - │ │ ├── flags: ∅ - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (58,2)-(58,12)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ CallNode (location: (58,2)-(58,5)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (58,2)-(58,5) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── value: - │ │ │ @ CallNode (location: (58,9)-(58,12)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (58,9)-(58,12) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (58,6)-(58,8) = "=>" - │ ├── opening_loc: (57,0)-(57,1) = "[" - │ └── closing_loc: (59,0)-(59,1) = "]" - ├── @ ArrayNode (location: (62,0)-(62,17)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 3) - │ │ ├── @ SymbolNode (location: (62,3)-(62,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (62,3)-(62,6) = "one" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "one" - │ │ ├── @ SymbolNode (location: (62,7)-(62,10)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (62,7)-(62,10) = "two" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "two" - │ │ └── @ SymbolNode (location: (62,11)-(62,16)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (62,11)-(62,16) = "three" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "three" - │ ├── opening_loc: (62,0)-(62,3) = "%i#" - │ └── closing_loc: (62,16)-(62,17) = "#" - ├── @ ArrayNode (location: (64,0)-(64,17)) - │ ├── flags: newline - │ ├── elements: (length: 3) - │ │ ├── @ StringNode (location: (64,3)-(64,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (64,3)-(64,6) = "one" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "one" - │ │ ├── @ StringNode (location: (64,7)-(64,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (64,7)-(64,10) = "two" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "two" - │ │ └── @ StringNode (location: (64,11)-(64,16)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (64,11)-(64,16) = "three" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "three" - │ ├── opening_loc: (64,0)-(64,3) = "%w#" - │ └── closing_loc: (64,16)-(64,17) = "#" - ├── @ XStringNode (location: (66,0)-(66,17)) - │ ├── flags: newline - │ ├── opening_loc: (66,0)-(66,3) = "%x#" - │ ├── content_loc: (66,3)-(66,16) = "one two three" - │ ├── closing_loc: (66,16)-(66,17) = "#" - │ └── unescaped: "one two three" - ├── @ ArrayNode (location: (69,0)-(69,17)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 3) - │ │ ├── @ SymbolNode (location: (69,3)-(69,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (69,3)-(69,6) = "one" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "one" - │ │ ├── @ SymbolNode (location: (69,7)-(69,10)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (69,7)-(69,10) = "two" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "two" - │ │ └── @ SymbolNode (location: (69,11)-(69,16)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (69,11)-(69,16) = "three" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "three" - │ ├── opening_loc: (69,0)-(69,3) = "%i@" - │ └── closing_loc: (69,16)-(69,17) = "@" - ├── @ ArrayNode (location: (71,0)-(71,17)) - │ ├── flags: newline - │ ├── elements: (length: 3) - │ │ ├── @ StringNode (location: (71,3)-(71,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (71,3)-(71,6) = "one" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "one" - │ │ ├── @ StringNode (location: (71,7)-(71,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (71,7)-(71,10) = "two" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "two" - │ │ └── @ StringNode (location: (71,11)-(71,16)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (71,11)-(71,16) = "three" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "three" - │ ├── opening_loc: (71,0)-(71,3) = "%w@" - │ └── closing_loc: (71,16)-(71,17) = "@" - ├── @ XStringNode (location: (73,0)-(73,17)) - │ ├── flags: newline - │ ├── opening_loc: (73,0)-(73,3) = "%x@" - │ ├── content_loc: (73,3)-(73,16) = "one two three" - │ ├── closing_loc: (73,16)-(73,17) = "@" - │ └── unescaped: "one two three" - ├── @ ArrayNode (location: (76,0)-(76,17)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 3) - │ │ ├── @ SymbolNode (location: (76,3)-(76,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (76,3)-(76,6) = "one" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "one" - │ │ ├── @ SymbolNode (location: (76,7)-(76,10)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (76,7)-(76,10) = "two" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "two" - │ │ └── @ SymbolNode (location: (76,11)-(76,16)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (76,11)-(76,16) = "three" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "three" - │ ├── opening_loc: (76,0)-(76,3) = "%i{" - │ └── closing_loc: (76,16)-(76,17) = "}" - ├── @ ArrayNode (location: (78,0)-(78,17)) - │ ├── flags: newline - │ ├── elements: (length: 3) - │ │ ├── @ StringNode (location: (78,3)-(78,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (78,3)-(78,6) = "one" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "one" - │ │ ├── @ StringNode (location: (78,7)-(78,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (78,7)-(78,10) = "two" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "two" - │ │ └── @ StringNode (location: (78,11)-(78,16)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (78,11)-(78,16) = "three" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "three" - │ ├── opening_loc: (78,0)-(78,3) = "%w{" - │ └── closing_loc: (78,16)-(78,17) = "}" - ├── @ XStringNode (location: (80,0)-(80,17)) - │ ├── flags: newline - │ ├── opening_loc: (80,0)-(80,3) = "%x{" - │ ├── content_loc: (80,3)-(80,16) = "one two three" - │ ├── closing_loc: (80,16)-(80,17) = "}" - │ └── unescaped: "one two three" - ├── @ ArrayNode (location: (82,0)-(82,7)) - │ ├── flags: newline - │ ├── elements: (length: 1) - │ │ └── @ StringNode (location: (82,3)-(82,6)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (82,3)-(82,6) = "\\C:" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\\C:" - │ ├── opening_loc: (82,0)-(82,3) = "%w[" - │ └── closing_loc: (82,6)-(82,7) = "]" - ├── @ IndexOperatorWriteNode (location: (84,0)-(84,10)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (84,0)-(84,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (84,0)-(84,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── opening_loc: (84,3)-(84,4) = "[" - │ ├── arguments: ∅ - │ ├── closing_loc: (84,4)-(84,5) = "]" - │ ├── block: ∅ - │ ├── binary_operator: :+ - │ ├── binary_operator_loc: (84,6)-(84,8) = "+=" - │ └── value: - │ @ IntegerNode (location: (84,9)-(84,10)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ IndexOrWriteNode (location: (86,0)-(86,11)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (86,0)-(86,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (86,0)-(86,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── opening_loc: (86,3)-(86,4) = "[" - │ ├── arguments: ∅ - │ ├── closing_loc: (86,4)-(86,5) = "]" - │ ├── block: ∅ - │ ├── operator_loc: (86,6)-(86,9) = "||=" - │ └── value: - │ @ IntegerNode (location: (86,10)-(86,11)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ IndexAndWriteNode (location: (88,0)-(88,11)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (88,0)-(88,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (88,0)-(88,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── opening_loc: (88,3)-(88,4) = "[" - │ ├── arguments: ∅ - │ ├── closing_loc: (88,4)-(88,5) = "]" - │ ├── block: ∅ - │ ├── operator_loc: (88,6)-(88,9) = "&&=" - │ └── value: - │ @ IntegerNode (location: (88,10)-(88,11)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ IndexOperatorWriteNode (location: (90,0)-(90,14)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (90,0)-(90,7)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (90,0)-(90,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (90,0)-(90,3) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (90,3)-(90,4) = "." - │ │ ├── name: :foo - │ │ ├── message_loc: (90,4)-(90,7) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── opening_loc: (90,7)-(90,8) = "[" - │ ├── arguments: ∅ - │ ├── closing_loc: (90,8)-(90,9) = "]" - │ ├── block: ∅ - │ ├── binary_operator: :+ - │ ├── binary_operator_loc: (90,10)-(90,12) = "+=" - │ └── value: - │ @ IntegerNode (location: (90,13)-(90,14)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ IndexOrWriteNode (location: (92,0)-(92,15)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (92,0)-(92,7)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (92,0)-(92,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (92,0)-(92,3) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (92,3)-(92,4) = "." - │ │ ├── name: :foo - │ │ ├── message_loc: (92,4)-(92,7) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── opening_loc: (92,7)-(92,8) = "[" - │ ├── arguments: ∅ - │ ├── closing_loc: (92,8)-(92,9) = "]" - │ ├── block: ∅ - │ ├── operator_loc: (92,10)-(92,13) = "||=" - │ └── value: - │ @ IntegerNode (location: (92,14)-(92,15)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ IndexAndWriteNode (location: (94,0)-(94,15)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (94,0)-(94,7)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (94,0)-(94,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (94,0)-(94,3) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (94,3)-(94,4) = "." - │ │ ├── name: :foo - │ │ ├── message_loc: (94,4)-(94,7) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── opening_loc: (94,7)-(94,8) = "[" - │ ├── arguments: ∅ - │ ├── closing_loc: (94,8)-(94,9) = "]" - │ ├── block: ∅ - │ ├── operator_loc: (94,10)-(94,13) = "&&=" - │ └── value: - │ @ IntegerNode (location: (94,14)-(94,15)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ IndexOperatorWriteNode (location: (96,0)-(96,13)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (96,0)-(96,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (96,0)-(96,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── opening_loc: (96,3)-(96,4) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (96,4)-(96,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (96,4)-(96,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (96,4)-(96,7) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (96,7)-(96,8) = "]" - │ ├── block: ∅ - │ ├── binary_operator: :+ - │ ├── binary_operator_loc: (96,9)-(96,11) = "+=" - │ └── value: - │ @ IntegerNode (location: (96,12)-(96,13)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ IndexOrWriteNode (location: (98,0)-(98,14)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (98,0)-(98,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (98,0)-(98,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── opening_loc: (98,3)-(98,4) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (98,4)-(98,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (98,4)-(98,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (98,4)-(98,7) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (98,7)-(98,8) = "]" - │ ├── block: ∅ - │ ├── operator_loc: (98,9)-(98,12) = "||=" - │ └── value: - │ @ IntegerNode (location: (98,13)-(98,14)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ IndexAndWriteNode (location: (100,0)-(100,14)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (100,0)-(100,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (100,0)-(100,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── opening_loc: (100,3)-(100,4) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (100,4)-(100,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (100,4)-(100,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (100,4)-(100,7) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (100,7)-(100,8) = "]" - │ ├── block: ∅ - │ ├── operator_loc: (100,9)-(100,12) = "&&=" - │ └── value: - │ @ IntegerNode (location: (100,13)-(100,14)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ IndexOperatorWriteNode (location: (102,0)-(102,17)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (102,0)-(102,7)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (102,0)-(102,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (102,0)-(102,3) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (102,3)-(102,4) = "." - │ │ ├── name: :foo - │ │ ├── message_loc: (102,4)-(102,7) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── opening_loc: (102,7)-(102,8) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (102,8)-(102,11)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (102,8)-(102,11)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (102,8)-(102,11) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (102,11)-(102,12) = "]" - │ ├── block: ∅ - │ ├── binary_operator: :+ - │ ├── binary_operator_loc: (102,13)-(102,15) = "+=" - │ └── value: - │ @ IntegerNode (location: (102,16)-(102,17)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ IndexOrWriteNode (location: (104,0)-(104,18)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (104,0)-(104,7)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (104,0)-(104,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (104,0)-(104,3) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (104,3)-(104,4) = "." - │ │ ├── name: :foo - │ │ ├── message_loc: (104,4)-(104,7) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── opening_loc: (104,7)-(104,8) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (104,8)-(104,11)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (104,8)-(104,11)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (104,8)-(104,11) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (104,11)-(104,12) = "]" - │ ├── block: ∅ - │ ├── operator_loc: (104,13)-(104,16) = "||=" - │ └── value: - │ @ IntegerNode (location: (104,17)-(104,18)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ IndexAndWriteNode (location: (106,0)-(106,18)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (106,0)-(106,7)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (106,0)-(106,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (106,0)-(106,3) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (106,3)-(106,4) = "." - │ │ ├── name: :foo - │ │ ├── message_loc: (106,4)-(106,7) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── opening_loc: (106,7)-(106,8) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (106,8)-(106,11)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (106,8)-(106,11)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (106,8)-(106,11) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (106,11)-(106,12) = "]" - │ ├── block: ∅ - │ ├── operator_loc: (106,13)-(106,16) = "&&=" - │ └── value: - │ @ IntegerNode (location: (106,17)-(106,18)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ DefNode (location: (108,0)-(108,19)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (108,4)-(108,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (108,6)-(108,7)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (108,6)-(108,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: ∅ - │ │ │ ├── name_loc: ∅ - │ │ │ └── operator_loc: (108,6)-(108,7) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (108,10)-(108,14)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (108,10)-(108,14)) - │ │ ├── flags: newline - │ │ ├── receiver: - │ │ │ @ CallNode (location: (108,10)-(108,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (108,10)-(108,11) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :[] - │ │ ├── message_loc: (108,11)-(108,14) = "[*]" - │ │ ├── opening_loc: (108,11)-(108,12) = "[" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (108,12)-(108,13)) - │ │ │ ├── flags: contains_splat - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ SplatNode (location: (108,12)-(108,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (108,12)-(108,13) = "*" - │ │ │ └── expression: ∅ - │ │ ├── closing_loc: (108,13)-(108,14) = "]" - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (108,0)-(108,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (108,5)-(108,6) = "(" - │ ├── rparen_loc: (108,7)-(108,8) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (108,16)-(108,19) = "end" - ├── @ DefNode (location: (110,0)-(110,22)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (110,4)-(110,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (110,6)-(110,7)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (110,6)-(110,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: ∅ - │ │ │ ├── name_loc: ∅ - │ │ │ └── operator_loc: (110,6)-(110,7) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (110,10)-(110,17)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (110,10)-(110,17)) - │ │ ├── flags: newline - │ │ ├── receiver: - │ │ │ @ CallNode (location: (110,10)-(110,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (110,10)-(110,11) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :[] - │ │ ├── message_loc: (110,11)-(110,17) = "[1, *]" - │ │ ├── opening_loc: (110,11)-(110,12) = "[" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (110,12)-(110,16)) - │ │ │ ├── flags: contains_splat - │ │ │ └── arguments: (length: 2) - │ │ │ ├── @ IntegerNode (location: (110,12)-(110,13)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── @ SplatNode (location: (110,15)-(110,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (110,15)-(110,16) = "*" - │ │ │ └── expression: ∅ - │ │ ├── closing_loc: (110,16)-(110,17) = "]" - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (110,0)-(110,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (110,5)-(110,6) = "(" - │ ├── rparen_loc: (110,7)-(110,8) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (110,19)-(110,22) = "end" - ├── @ DefNode (location: (112,0)-(112,23)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (112,4)-(112,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (112,6)-(112,7)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (112,6)-(112,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: ∅ - │ │ │ ├── name_loc: ∅ - │ │ │ └── operator_loc: (112,6)-(112,7) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (112,10)-(112,18)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (112,10)-(112,18)) - │ │ ├── flags: newline, attribute_write - │ │ ├── receiver: - │ │ │ @ CallNode (location: (112,10)-(112,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (112,10)-(112,11) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :[]= - │ │ ├── message_loc: (112,11)-(112,14) = "[*]" - │ │ ├── opening_loc: (112,11)-(112,12) = "[" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (112,12)-(112,18)) - │ │ │ ├── flags: contains_splat - │ │ │ └── arguments: (length: 2) - │ │ │ ├── @ SplatNode (location: (112,12)-(112,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (112,12)-(112,13) = "*" - │ │ │ │ └── expression: ∅ - │ │ │ └── @ IntegerNode (location: (112,17)-(112,18)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: (112,13)-(112,14) = "]" - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (112,0)-(112,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (112,5)-(112,6) = "(" - │ ├── rparen_loc: (112,7)-(112,8) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (112,20)-(112,23) = "end" - ├── @ DefNode (location: (114,0)-(114,26)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (114,4)-(114,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (114,6)-(114,7)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (114,6)-(114,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: ∅ - │ │ │ ├── name_loc: ∅ - │ │ │ └── operator_loc: (114,6)-(114,7) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (114,10)-(114,21)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (114,10)-(114,21)) - │ │ ├── flags: newline, attribute_write - │ │ ├── receiver: - │ │ │ @ CallNode (location: (114,10)-(114,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (114,10)-(114,11) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :[]= - │ │ ├── message_loc: (114,11)-(114,17) = "[1, *]" - │ │ ├── opening_loc: (114,11)-(114,12) = "[" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (114,12)-(114,21)) - │ │ │ ├── flags: contains_splat - │ │ │ └── arguments: (length: 3) - │ │ │ ├── @ IntegerNode (location: (114,12)-(114,13)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── @ SplatNode (location: (114,15)-(114,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (114,15)-(114,16) = "*" - │ │ │ │ └── expression: ∅ - │ │ │ └── @ IntegerNode (location: (114,20)-(114,21)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: (114,16)-(114,17) = "]" - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (114,0)-(114,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (114,5)-(114,6) = "(" - │ ├── rparen_loc: (114,7)-(114,8) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (114,23)-(114,26) = "end" - ├── @ DefNode (location: (116,0)-(116,24)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (116,4)-(116,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (116,6)-(116,7)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (116,6)-(116,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: ∅ - │ │ │ ├── name_loc: ∅ - │ │ │ └── operator_loc: (116,6)-(116,7) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (116,10)-(116,19)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IndexOperatorWriteNode (location: (116,10)-(116,19)) - │ │ ├── flags: newline - │ │ ├── receiver: - │ │ │ @ CallNode (location: (116,10)-(116,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (116,10)-(116,11) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── opening_loc: (116,11)-(116,12) = "[" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (116,12)-(116,13)) - │ │ │ ├── flags: contains_splat - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ SplatNode (location: (116,12)-(116,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (116,12)-(116,13) = "*" - │ │ │ └── expression: ∅ - │ │ ├── closing_loc: (116,13)-(116,14) = "]" - │ │ ├── block: ∅ - │ │ ├── binary_operator: :+ - │ │ ├── binary_operator_loc: (116,15)-(116,17) = "+=" - │ │ └── value: - │ │ @ IntegerNode (location: (116,18)-(116,19)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── locals: [] - │ ├── def_keyword_loc: (116,0)-(116,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (116,5)-(116,6) = "(" - │ ├── rparen_loc: (116,7)-(116,8) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (116,21)-(116,24) = "end" - ├── @ DefNode (location: (118,0)-(118,28)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (118,4)-(118,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (118,6)-(118,7)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (118,6)-(118,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: ∅ - │ │ │ ├── name_loc: ∅ - │ │ │ └── operator_loc: (118,6)-(118,7) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (118,10)-(118,23)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IndexAndWriteNode (location: (118,10)-(118,23)) - │ │ ├── flags: newline - │ │ ├── receiver: - │ │ │ @ CallNode (location: (118,10)-(118,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (118,10)-(118,11) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── opening_loc: (118,11)-(118,12) = "[" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (118,12)-(118,16)) - │ │ │ ├── flags: contains_splat - │ │ │ └── arguments: (length: 2) - │ │ │ ├── @ IntegerNode (location: (118,12)-(118,13)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── @ SplatNode (location: (118,15)-(118,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (118,15)-(118,16) = "*" - │ │ │ └── expression: ∅ - │ │ ├── closing_loc: (118,16)-(118,17) = "]" - │ │ ├── block: ∅ - │ │ ├── operator_loc: (118,18)-(118,21) = "&&=" - │ │ └── value: - │ │ @ IntegerNode (location: (118,22)-(118,23)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── locals: [] - │ ├── def_keyword_loc: (118,0)-(118,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (118,5)-(118,6) = "(" - │ ├── rparen_loc: (118,7)-(118,8) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (118,25)-(118,28) = "end" - ├── @ DefNode (location: (120,0)-(120,29)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (120,4)-(120,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (120,6)-(120,7)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (120,6)-(120,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: ∅ - │ │ │ ├── name_loc: ∅ - │ │ │ └── operator_loc: (120,6)-(120,7) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ BeginNode (location: (120,0)-(120,29)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── rescue_clause: - │ │ │ @ RescueNode (location: (120,10)-(120,24)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (120,10)-(120,16) = "rescue" - │ │ │ ├── exceptions: (length: 0) - │ │ │ ├── operator_loc: (120,17)-(120,19) = "=>" - │ │ │ ├── reference: - │ │ │ │ @ IndexTargetNode (location: (120,20)-(120,24)) - │ │ │ │ ├── flags: attribute_write - │ │ │ │ ├── receiver: - │ │ │ │ │ @ CallNode (location: (120,20)-(120,21)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :a - │ │ │ │ │ ├── message_loc: (120,20)-(120,21) = "a" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── opening_loc: (120,21)-(120,22) = "[" - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (120,22)-(120,23)) - │ │ │ │ │ ├── flags: contains_splat - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ SplatNode (location: (120,22)-(120,23)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── operator_loc: (120,22)-(120,23) = "*" - │ │ │ │ │ └── expression: ∅ - │ │ │ │ ├── closing_loc: (120,23)-(120,24) = "]" - │ │ │ │ └── block: ∅ - │ │ │ ├── statements: ∅ - │ │ │ └── subsequent: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: ∅ - │ │ └── end_keyword_loc: (120,26)-(120,29) = "end" - │ ├── locals: [] - │ ├── def_keyword_loc: (120,0)-(120,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (120,5)-(120,6) = "(" - │ ├── rparen_loc: (120,7)-(120,8) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (120,26)-(120,29) = "end" - └── @ DefNode (location: (122,0)-(122,32)) - ├── flags: newline - ├── name: :f - ├── name_loc: (122,4)-(122,5) = "f" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (122,6)-(122,7)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: - │ │ @ RestParameterNode (location: (122,6)-(122,7)) - │ │ ├── flags: ∅ - │ │ ├── name: ∅ - │ │ ├── name_loc: ∅ - │ │ └── operator_loc: (122,6)-(122,7) = "*" - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: - │ @ BeginNode (location: (122,0)-(122,32)) - │ ├── flags: ∅ - │ ├── begin_keyword_loc: ∅ - │ ├── statements: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (122,10)-(122,27)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (122,10)-(122,16) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: (122,17)-(122,19) = "=>" - │ │ ├── reference: - │ │ │ @ IndexTargetNode (location: (122,20)-(122,27)) - │ │ │ ├── flags: attribute_write - │ │ │ ├── receiver: - │ │ │ │ @ CallNode (location: (122,20)-(122,21)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ ├── message_loc: (122,20)-(122,21) = "a" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── opening_loc: (122,21)-(122,22) = "[" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (122,22)-(122,26)) - │ │ │ │ ├── flags: contains_splat - │ │ │ │ └── arguments: (length: 2) - │ │ │ │ ├── @ IntegerNode (location: (122,22)-(122,23)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ └── @ SplatNode (location: (122,25)-(122,26)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (122,25)-(122,26) = "*" - │ │ │ │ └── expression: ∅ - │ │ │ ├── closing_loc: (122,26)-(122,27) = "]" - │ │ │ └── block: ∅ - │ │ ├── statements: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (122,29)-(122,32) = "end" - ├── locals: [] - ├── def_keyword_loc: (122,0)-(122,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (122,5)-(122,6) = "(" - ├── rparen_loc: (122,7)-(122,8) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (122,29)-(122,32) = "end" diff --git a/test/prism/snapshots/begin_ensure.txt b/test/prism/snapshots/begin_ensure.txt deleted file mode 100644 index 2f127cd11f..0000000000 --- a/test/prism/snapshots/begin_ensure.txt +++ /dev/null @@ -1,286 +0,0 @@ -@ ProgramNode (location: (1,0)-(21,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(21,15)) - ├── flags: ∅ - └── body: (length: 5) - ├── @ BeginNode (location: (1,0)-(5,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (1,0)-(1,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (2,0)-(2,1)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (2,0)-(2,1)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (2,0)-(2,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: - │ │ @ EnsureNode (location: (3,0)-(5,3)) - │ │ ├── flags: ∅ - │ │ ├── ensure_keyword_loc: (3,0)-(3,6) = "ensure" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (4,0)-(4,1)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (4,0)-(4,1)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (4,0)-(4,1) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── end_keyword_loc: (5,0)-(5,3) = "end" - │ └── end_keyword_loc: (5,0)-(5,3) = "end" - ├── @ BeginNode (location: (7,0)-(7,24)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (7,0)-(7,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (7,7)-(7,8)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (7,7)-(7,8)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (7,7)-(7,8) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: - │ │ @ EnsureNode (location: (7,10)-(7,24)) - │ │ ├── flags: ∅ - │ │ ├── ensure_keyword_loc: (7,10)-(7,16) = "ensure" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (7,18)-(7,19)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (7,18)-(7,19)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (7,18)-(7,19) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── end_keyword_loc: (7,21)-(7,24) = "end" - │ └── end_keyword_loc: (7,21)-(7,24) = "end" - ├── @ BeginNode (location: (9,0)-(11,4)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (9,0)-(9,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (9,6)-(9,7)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (9,6)-(9,7)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (9,6)-(9,7) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: - │ │ @ EnsureNode (location: (10,1)-(11,4)) - │ │ ├── flags: ∅ - │ │ ├── ensure_keyword_loc: (10,1)-(10,7) = "ensure" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (10,8)-(10,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (10,8)-(10,9)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (10,8)-(10,9) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── end_keyword_loc: (11,1)-(11,4) = "end" - │ └── end_keyword_loc: (11,1)-(11,4) = "end" - ├── @ BeginNode (location: (13,0)-(13,22)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (13,0)-(13,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (13,6)-(13,7)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (13,6)-(13,7)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (13,6)-(13,7) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: - │ │ @ EnsureNode (location: (13,9)-(13,22)) - │ │ ├── flags: ∅ - │ │ ├── ensure_keyword_loc: (13,9)-(13,15) = "ensure" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (13,16)-(13,17)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (13,16)-(13,17)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (13,16)-(13,17) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── end_keyword_loc: (13,19)-(13,22) = "end" - │ └── end_keyword_loc: (13,19)-(13,22) = "end" - └── @ BeginNode (location: (15,0)-(21,15)) - ├── flags: newline - ├── begin_keyword_loc: (15,0)-(15,5) = "begin" - ├── statements: - │ @ StatementsNode (location: (15,6)-(21,11)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ BeginNode (location: (15,6)-(21,11)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (15,6)-(15,11) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (15,11)-(21,7)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (15,11)-(21,7)) - │ │ ├── flags: newline - │ │ ├── receiver: - │ │ │ @ SymbolNode (location: (15,11)-(15,13)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (15,11)-(15,12) = ":" - │ │ │ ├── value_loc: (15,12)-(15,13) = "s" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "s" - │ │ ├── call_operator_loc: (15,13)-(15,14) = "." - │ │ ├── name: :l - │ │ ├── message_loc: (15,14)-(15,15) = "l" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (15,16)-(21,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ BeginNode (location: (15,16)-(21,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── begin_keyword_loc: (15,16)-(15,21) = "begin" - │ │ │ ├── statements: ∅ - │ │ │ ├── rescue_clause: ∅ - │ │ │ ├── else_clause: ∅ - │ │ │ ├── ensure_clause: - │ │ │ │ @ EnsureNode (location: (15,22)-(21,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── ensure_keyword_loc: (15,22)-(15,28) = "ensure" - │ │ │ │ ├── statements: - │ │ │ │ │ @ StatementsNode (location: (15,29)-(21,3)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (15,29)-(21,3)) - │ │ │ │ │ ├── flags: newline - │ │ │ │ │ ├── receiver: - │ │ │ │ │ │ @ ConstantReadNode (location: (15,29)-(15,35)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── name: :Module - │ │ │ │ │ ├── call_operator_loc: (15,35)-(15,36) = "." - │ │ │ │ │ ├── name: :new - │ │ │ │ │ ├── message_loc: (15,36)-(15,39) = "new" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: - │ │ │ │ │ @ BlockNode (location: (15,40)-(21,3)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── locals: [] - │ │ │ │ │ ├── parameters: ∅ - │ │ │ │ │ ├── body: - │ │ │ │ │ │ @ StatementsNode (location: (16,2)-(20,5)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ │ └── @ BeginNode (location: (16,2)-(20,5)) - │ │ │ │ │ │ ├── flags: newline - │ │ │ │ │ │ ├── begin_keyword_loc: (16,2)-(16,7) = "begin" - │ │ │ │ │ │ ├── statements: - │ │ │ │ │ │ │ @ StatementsNode (location: (17,4)-(17,9)) - │ │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ │ │ └── @ BreakNode (location: (17,4)-(17,9)) - │ │ │ │ │ │ │ ├── flags: newline - │ │ │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ │ │ └── keyword_loc: (17,4)-(17,9) = "break" - │ │ │ │ │ │ ├── rescue_clause: ∅ - │ │ │ │ │ │ ├── else_clause: ∅ - │ │ │ │ │ │ ├── ensure_clause: - │ │ │ │ │ │ │ @ EnsureNode (location: (18,4)-(20,5)) - │ │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ │ ├── ensure_keyword_loc: (18,4)-(18,10) = "ensure" - │ │ │ │ │ │ │ ├── statements: - │ │ │ │ │ │ │ │ @ StatementsNode (location: (18,11)-(19,7)) - │ │ │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ │ │ │ └── @ CallNode (location: (18,11)-(19,7)) - │ │ │ │ │ │ │ │ ├── flags: newline - │ │ │ │ │ │ │ │ ├── receiver: - │ │ │ │ │ │ │ │ │ @ ConstantReadNode (location: (18,11)-(18,17)) - │ │ │ │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ │ │ │ └── name: :Module - │ │ │ │ │ │ │ │ ├── call_operator_loc: (18,17)-(18,18) = "." - │ │ │ │ │ │ │ │ ├── name: :new - │ │ │ │ │ │ │ │ ├── message_loc: (18,18)-(18,21) = "new" - │ │ │ │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ │ │ │ └── block: - │ │ │ │ │ │ │ │ @ BlockNode (location: (18,22)-(19,7)) - │ │ │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ │ │ ├── locals: [] - │ │ │ │ │ │ │ │ ├── parameters: ∅ - │ │ │ │ │ │ │ │ ├── body: ∅ - │ │ │ │ │ │ │ │ ├── opening_loc: (18,22)-(18,24) = "do" - │ │ │ │ │ │ │ │ └── closing_loc: (19,4)-(19,7) = "end" - │ │ │ │ │ │ │ └── end_keyword_loc: (20,2)-(20,5) = "end" - │ │ │ │ │ │ └── end_keyword_loc: (20,2)-(20,5) = "end" - │ │ │ │ │ ├── opening_loc: (15,40)-(15,42) = "do" - │ │ │ │ │ └── closing_loc: (21,0)-(21,3) = "end" - │ │ │ │ └── end_keyword_loc: (21,4)-(21,7) = "end" - │ │ │ └── end_keyword_loc: (21,4)-(21,7) = "end" - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (21,8)-(21,11) = "end" - ├── rescue_clause: ∅ - ├── else_clause: ∅ - ├── ensure_clause: ∅ - └── end_keyword_loc: (21,12)-(21,15) = "end" diff --git a/test/prism/snapshots/begin_rescue.txt b/test/prism/snapshots/begin_rescue.txt deleted file mode 100644 index a3f78ec5f7..0000000000 --- a/test/prism/snapshots/begin_rescue.txt +++ /dev/null @@ -1,786 +0,0 @@ -@ ProgramNode (location: (1,0)-(78,3)) -├── flags: ∅ -├── locals: [:ex] -└── statements: - @ StatementsNode (location: (1,0)-(78,3)) - ├── flags: ∅ - └── body: (length: 17) - ├── @ BeginNode (location: (1,0)-(1,33)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (1,0)-(1,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (1,7)-(1,8)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,7)-(1,8)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (1,7)-(1,8) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (1,10)-(1,19)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (1,10)-(1,16) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,18)-(1,19)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (1,18)-(1,19)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (1,18)-(1,19) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: - │ │ @ ElseNode (location: (1,21)-(1,33)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (1,21)-(1,25) = "else" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,27)-(1,28)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (1,27)-(1,28)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :c - │ │ │ ├── message_loc: (1,27)-(1,28) = "c" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── end_keyword_loc: (1,30)-(1,33) = "end" - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (1,30)-(1,33) = "end" - ├── @ BeginNode (location: (3,0)-(3,44)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (3,0)-(3,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (3,7)-(3,8)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (3,7)-(3,8)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (3,7)-(3,8) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (3,10)-(3,19)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (3,10)-(3,16) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (3,18)-(3,19)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (3,18)-(3,19)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (3,18)-(3,19) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: - │ │ @ ElseNode (location: (3,21)-(3,36)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (3,21)-(3,25) = "else" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (3,27)-(3,28)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (3,27)-(3,28)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :c - │ │ │ ├── message_loc: (3,27)-(3,28) = "c" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── end_keyword_loc: (3,30)-(3,36) = "ensure" - │ ├── ensure_clause: - │ │ @ EnsureNode (location: (3,30)-(3,44)) - │ │ ├── flags: ∅ - │ │ ├── ensure_keyword_loc: (3,30)-(3,36) = "ensure" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (3,38)-(3,39)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (3,38)-(3,39)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :d - │ │ │ ├── message_loc: (3,38)-(3,39) = "d" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── end_keyword_loc: (3,41)-(3,44) = "end" - │ └── end_keyword_loc: (3,41)-(3,44) = "end" - ├── @ BeginNode (location: (5,0)-(7,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (5,0)-(5,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (6,0)-(6,1)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (6,0)-(6,1)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (6,0)-(6,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (7,0)-(7,3) = "end" - ├── @ BeginNode (location: (9,0)-(9,13)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (9,0)-(9,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (9,7)-(9,8)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (9,7)-(9,8)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (9,7)-(9,8) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (9,10)-(9,13) = "end" - ├── @ BeginNode (location: (11,0)-(12,4)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (11,0)-(11,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (11,6)-(11,7)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (11,6)-(11,7)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (11,6)-(11,7) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (12,1)-(12,4) = "end" - ├── @ BeginNode (location: (14,0)-(14,12)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (14,0)-(14,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (14,6)-(14,7)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (14,6)-(14,7)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (14,6)-(14,7) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (14,9)-(14,12) = "end" - ├── @ BeginNode (location: (16,0)-(24,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (16,0)-(16,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (17,0)-(17,1)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (17,0)-(17,1)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (17,0)-(17,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (18,0)-(23,1)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (18,0)-(18,6) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (19,0)-(19,1)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (19,0)-(19,1)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (19,0)-(19,1) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: - │ │ @ RescueNode (location: (20,0)-(23,1)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (20,0)-(20,6) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (21,0)-(21,1)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (21,0)-(21,1)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :c - │ │ │ ├── message_loc: (21,0)-(21,1) = "c" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: - │ │ @ RescueNode (location: (22,0)-(23,1)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (22,0)-(22,6) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (23,0)-(23,1)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (23,0)-(23,1)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :d - │ │ │ ├── message_loc: (23,0)-(23,1) = "d" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (24,0)-(24,3) = "end" - ├── @ BeginNode (location: (26,0)-(32,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (26,0)-(26,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (27,2)-(27,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (27,2)-(27,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (27,2)-(27,3) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (28,0)-(31,3)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (28,0)-(28,6) = "rescue" - │ │ ├── exceptions: (length: 1) - │ │ │ └── @ ConstantReadNode (location: (28,7)-(28,16)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Exception - │ │ ├── operator_loc: (28,17)-(28,19) = "=>" - │ │ ├── reference: - │ │ │ @ LocalVariableTargetNode (location: (28,20)-(28,22)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :ex - │ │ │ └── depth: 0 - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (29,2)-(29,3)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (29,2)-(29,3)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (29,2)-(29,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: - │ │ @ RescueNode (location: (30,0)-(31,3)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (30,0)-(30,6) = "rescue" - │ │ ├── exceptions: (length: 2) - │ │ │ ├── @ ConstantReadNode (location: (30,7)-(30,23)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :AnotherException - │ │ │ └── @ ConstantReadNode (location: (30,25)-(30,41)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :OneMoreException - │ │ ├── operator_loc: (30,42)-(30,44) = "=>" - │ │ ├── reference: - │ │ │ @ LocalVariableTargetNode (location: (30,45)-(30,47)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :ex - │ │ │ └── depth: 0 - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (31,2)-(31,3)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (31,2)-(31,3)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :c - │ │ │ ├── message_loc: (31,2)-(31,3) = "c" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (32,0)-(32,3) = "end" - ├── @ BeginNode (location: (34,0)-(40,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (34,0)-(34,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (35,2)-(35,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (35,2)-(35,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (35,2)-(35,3) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (36,0)-(37,3)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (36,0)-(36,6) = "rescue" - │ │ ├── exceptions: (length: 1) - │ │ │ └── @ ConstantReadNode (location: (36,7)-(36,16)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Exception - │ │ ├── operator_loc: (36,17)-(36,19) = "=>" - │ │ ├── reference: - │ │ │ @ LocalVariableTargetNode (location: (36,20)-(36,22)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :ex - │ │ │ └── depth: 0 - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (37,2)-(37,3)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (37,2)-(37,3)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (37,2)-(37,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: - │ │ @ EnsureNode (location: (38,0)-(40,3)) - │ │ ├── flags: ∅ - │ │ ├── ensure_keyword_loc: (38,0)-(38,6) = "ensure" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (39,2)-(39,3)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (39,2)-(39,3)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (39,2)-(39,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── end_keyword_loc: (40,0)-(40,3) = "end" - │ └── end_keyword_loc: (40,0)-(40,3) = "end" - ├── @ StringNode (location: (42,0)-(42,6)) - │ ├── flags: newline - │ ├── opening_loc: (42,0)-(42,2) = "%!" - │ ├── content_loc: (42,2)-(42,5) = "abc" - │ ├── closing_loc: (42,5)-(42,6) = "!" - │ └── unescaped: "abc" - ├── @ BeginNode (location: (44,0)-(48,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (44,0)-(44,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (45,0)-(45,1)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (45,0)-(45,1)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (45,0)-(45,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (46,0)-(47,1)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (46,0)-(46,6) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (47,0)-(47,1)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (47,0)-(47,1)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (47,0)-(47,1) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (48,0)-(48,3) = "end" - ├── @ BeginNode (location: (50,0)-(50,20)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (50,0)-(50,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (50,6)-(50,7)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (50,6)-(50,7)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (50,6)-(50,7) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (50,8)-(50,16)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (50,8)-(50,14) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (50,15)-(50,16)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (50,15)-(50,16)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (50,15)-(50,16) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (50,17)-(50,20) = "end" - ├── @ BeginNode (location: (52,0)-(54,5)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (52,0)-(52,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (53,0)-(53,1)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (53,0)-(53,1)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (53,0)-(53,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (53,2)-(54,1)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (53,2)-(53,8) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (54,0)-(54,1)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (54,0)-(54,1)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (54,0)-(54,1) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (54,2)-(54,5) = "end" - ├── @ BeginNode (location: (56,0)-(60,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (56,0)-(56,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (57,0)-(57,1)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (57,0)-(57,1)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (57,0)-(57,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (58,0)-(59,1)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (58,0)-(58,6) = "rescue" - │ │ ├── exceptions: (length: 1) - │ │ │ └── @ ConstantReadNode (location: (58,7)-(58,16)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Exception - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (59,0)-(59,1)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (59,0)-(59,1)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (59,0)-(59,1) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (60,0)-(60,3) = "end" - ├── @ BeginNode (location: (62,0)-(66,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (62,0)-(62,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (63,0)-(63,1)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (63,0)-(63,1)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (63,0)-(63,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (64,0)-(65,1)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (64,0)-(64,6) = "rescue" - │ │ ├── exceptions: (length: 2) - │ │ │ ├── @ ConstantReadNode (location: (64,7)-(64,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :Exception - │ │ │ └── @ ConstantReadNode (location: (64,18)-(64,33)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :CustomException - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (65,0)-(65,1)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (65,0)-(65,1)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (65,0)-(65,1) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (66,0)-(66,3) = "end" - ├── @ BeginNode (location: (68,0)-(72,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (68,0)-(68,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (69,2)-(69,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (69,2)-(69,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (69,2)-(69,3) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (70,0)-(71,3)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (70,0)-(70,6) = "rescue" - │ │ ├── exceptions: (length: 2) - │ │ │ ├── @ ConstantReadNode (location: (70,7)-(70,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :Exception - │ │ │ └── @ ConstantReadNode (location: (70,18)-(70,33)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :CustomException - │ │ ├── operator_loc: (70,34)-(70,36) = "=>" - │ │ ├── reference: - │ │ │ @ LocalVariableTargetNode (location: (70,37)-(70,39)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :ex - │ │ │ └── depth: 0 - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (71,2)-(71,3)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (71,2)-(71,3)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (71,2)-(71,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (72,0)-(72,3) = "end" - └── @ BeginNode (location: (74,0)-(78,3)) - ├── flags: newline - ├── begin_keyword_loc: (74,0)-(74,5) = "begin" - ├── statements: - │ @ StatementsNode (location: (75,2)-(75,3)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (75,2)-(75,3)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (75,2)-(75,3) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── rescue_clause: - │ @ RescueNode (location: (76,0)-(77,3)) - │ ├── flags: ∅ - │ ├── keyword_loc: (76,0)-(76,6) = "rescue" - │ ├── exceptions: (length: 1) - │ │ └── @ ConstantReadNode (location: (76,7)-(76,16)) - │ │ ├── flags: ∅ - │ │ └── name: :Exception - │ ├── operator_loc: (76,17)-(76,19) = "=>" - │ ├── reference: - │ │ @ LocalVariableTargetNode (location: (76,20)-(76,22)) - │ │ ├── flags: ∅ - │ │ ├── name: :ex - │ │ └── depth: 0 - │ ├── statements: - │ │ @ StatementsNode (location: (77,2)-(77,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (77,2)-(77,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (77,2)-(77,3) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── subsequent: ∅ - ├── else_clause: ∅ - ├── ensure_clause: ∅ - └── end_keyword_loc: (78,0)-(78,3) = "end" diff --git a/test/prism/snapshots/blocks.txt b/test/prism/snapshots/blocks.txt deleted file mode 100644 index 761e3bb051..0000000000 --- a/test/prism/snapshots/blocks.txt +++ /dev/null @@ -1,829 +0,0 @@ -@ ProgramNode (location: (1,0)-(54,17)) -├── flags: ∅ -├── locals: [:fork] -└── statements: - @ StatementsNode (location: (1,0)-(54,17)) - ├── flags: ∅ - └── body: (length: 20) - ├── @ CallNode (location: (1,0)-(1,16)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (1,0)-(1,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,0)-(1,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :[] - │ ├── message_loc: (1,3)-(1,8) = "[bar]" - │ ├── opening_loc: (1,3)-(1,4) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,4)-(1,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (1,4)-(1,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,4)-(1,7) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (1,7)-(1,8) = "]" - │ └── block: - │ @ BlockNode (location: (1,9)-(1,16)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,11)-(1,14)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,11)-(1,14)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (1,11)-(1,14) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (1,9)-(1,10) = "{" - │ └── closing_loc: (1,15)-(1,16) = "}" - ├── @ CallNode (location: (3,0)-(5,3)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (3,0)-(3,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (3,0)-(3,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :[] - │ ├── message_loc: (3,3)-(3,8) = "[bar]" - │ ├── opening_loc: (3,3)-(3,4) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (3,4)-(3,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (3,4)-(3,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (3,4)-(3,7) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (3,7)-(3,8) = "]" - │ └── block: - │ @ BlockNode (location: (3,9)-(5,3)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (4,0)-(4,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (4,0)-(4,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (4,0)-(4,3) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (3,9)-(3,11) = "do" - │ └── closing_loc: (5,0)-(5,3) = "end" - ├── @ CallNode (location: (7,0)-(7,35)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (7,0)-(7,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :x - │ │ ├── message_loc: (7,0)-(7,1) = "x" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (7,1)-(7,2) = "." - │ ├── name: :reduce - │ ├── message_loc: (7,2)-(7,8) = "reduce" - │ ├── opening_loc: (7,8)-(7,9) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (7,9)-(7,10)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (7,9)-(7,10)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 0 - │ ├── closing_loc: (7,10)-(7,11) = ")" - │ └── block: - │ @ BlockNode (location: (7,12)-(7,35)) - │ ├── flags: ∅ - │ ├── locals: [:x, :memo] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (7,14)-(7,23)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (7,15)-(7,22)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 2) - │ │ │ │ ├── @ RequiredParameterNode (location: (7,15)-(7,16)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :x - │ │ │ │ └── @ RequiredParameterNode (location: (7,18)-(7,22)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :memo - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (7,14)-(7,15) = "|" - │ │ └── closing_loc: (7,22)-(7,23) = "|" - │ ├── body: - │ │ @ StatementsNode (location: (7,24)-(7,33)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableOperatorWriteNode (location: (7,24)-(7,33)) - │ │ ├── flags: newline - │ │ ├── name_loc: (7,24)-(7,28) = "memo" - │ │ ├── binary_operator_loc: (7,29)-(7,31) = "+=" - │ │ ├── value: - │ │ │ @ LocalVariableReadNode (location: (7,32)-(7,33)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :x - │ │ │ └── depth: 0 - │ │ ├── name: :memo - │ │ ├── binary_operator: :+ - │ │ └── depth: 0 - │ ├── opening_loc: (7,12)-(7,13) = "{" - │ └── closing_loc: (7,34)-(7,35) = "}" - ├── @ CallNode (location: (9,0)-(9,10)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (9,0)-(9,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (9,4)-(9,10)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (9,4)-(9,6) = "do" - │ └── closing_loc: (9,7)-(9,10) = "end" - ├── @ CallNode (location: (11,0)-(11,21)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (11,0)-(11,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (11,4)-(11,21)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (11,4)-(11,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (11,4)-(11,7) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ ParenthesesNode (location: (11,9)-(11,21)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (11,10)-(11,20)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (11,10)-(11,20)) - │ │ │ ├── flags: newline, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (11,10)-(11,13) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (11,14)-(11,20)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: ∅ - │ │ │ ├── opening_loc: (11,14)-(11,16) = "do" - │ │ │ └── closing_loc: (11,17)-(11,20) = "end" - │ │ ├── opening_loc: (11,9)-(11,10) = "(" - │ │ └── closing_loc: (11,20)-(11,21) = ")" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (13,0)-(13,14)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (13,0)-(13,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (13,4)-(13,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (13,4)-(13,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (13,4)-(13,7) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (13,8)-(13,14)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (13,8)-(13,10) = "do" - │ └── closing_loc: (13,11)-(13,14) = "end" - ├── @ CallNode (location: (15,0)-(15,18)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (15,0)-(15,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (15,4)-(15,11)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (15,4)-(15,11)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (15,4)-(15,7) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (15,8)-(15,11)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ CallNode (location: (15,8)-(15,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (15,8)-(15,11) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (15,12)-(15,18)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (15,12)-(15,14) = "do" - │ └── closing_loc: (15,15)-(15,18) = "end" - ├── @ CallNode (location: (17,0)-(18,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (17,0)-(17,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (17,4)-(18,3)) - │ ├── flags: ∅ - │ ├── locals: [:a] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (17,7)-(17,17)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (17,8)-(17,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 1) - │ │ │ │ └── @ OptionalParameterNode (location: (17,8)-(17,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ ├── name_loc: (17,8)-(17,9) = "a" - │ │ │ │ ├── operator_loc: (17,10)-(17,11) = "=" - │ │ │ │ └── value: - │ │ │ │ @ CallNode (location: (17,12)-(17,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── receiver: - │ │ │ │ │ @ CallNode (location: (17,12)-(17,13)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :b - │ │ │ │ │ ├── message_loc: (17,12)-(17,13) = "b" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :[] - │ │ │ │ ├── message_loc: (17,13)-(17,16) = "[1]" - │ │ │ │ ├── opening_loc: (17,13)-(17,14) = "[" - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (17,14)-(17,15)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ IntegerNode (location: (17,14)-(17,15)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ ├── closing_loc: (17,15)-(17,16) = "]" - │ │ │ │ └── block: ∅ - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (17,7)-(17,8) = "|" - │ │ └── closing_loc: (17,16)-(17,17) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (17,4)-(17,6) = "do" - │ └── closing_loc: (18,0)-(18,3) = "end" - ├── @ CallNode (location: (20,0)-(22,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (20,0)-(20,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (20,4)-(22,3)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ BeginNode (location: (20,4)-(22,3)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── rescue_clause: - │ │ │ @ RescueNode (location: (21,0)-(21,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (21,0)-(21,6) = "rescue" - │ │ │ ├── exceptions: (length: 0) - │ │ │ ├── operator_loc: ∅ - │ │ │ ├── reference: ∅ - │ │ │ ├── statements: ∅ - │ │ │ └── subsequent: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: ∅ - │ │ └── end_keyword_loc: (22,0)-(22,3) = "end" - │ ├── opening_loc: (20,4)-(20,6) = "do" - │ └── closing_loc: (22,0)-(22,3) = "end" - ├── @ CallNode (location: (24,0)-(29,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (24,0)-(24,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (24,4)-(29,3)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (25,2)-(28,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (25,2)-(28,5)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (25,2)-(25,5) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (25,6)-(28,5)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (26,4)-(27,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (26,4)-(27,7)) - │ │ │ ├── flags: newline, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (26,4)-(26,7) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (26,8)-(27,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: ∅ - │ │ │ ├── opening_loc: (26,8)-(26,10) = "do" - │ │ │ └── closing_loc: (27,4)-(27,7) = "end" - │ │ ├── opening_loc: (25,6)-(25,8) = "do" - │ │ └── closing_loc: (28,2)-(28,5) = "end" - │ ├── opening_loc: (24,4)-(24,6) = "do" - │ └── closing_loc: (29,0)-(29,3) = "end" - ├── @ CallNode (location: (31,0)-(31,16)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (31,0)-(31,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (31,0)-(31,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :[] - │ ├── message_loc: (31,3)-(31,8) = "[bar]" - │ ├── opening_loc: (31,3)-(31,4) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (31,4)-(31,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (31,4)-(31,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (31,4)-(31,7) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (31,7)-(31,8) = "]" - │ └── block: - │ @ BlockNode (location: (31,9)-(31,16)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (31,11)-(31,14)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (31,11)-(31,14)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (31,11)-(31,14) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (31,9)-(31,10) = "{" - │ └── closing_loc: (31,15)-(31,16) = "}" - ├── @ CallNode (location: (33,0)-(33,24)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (33,0)-(33,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (33,4)-(33,24)) - │ ├── flags: ∅ - │ ├── locals: [:x, :y, :z] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (33,6)-(33,20)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (33,7)-(33,19)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (33,7)-(33,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :x - │ │ │ ├── optionals: (length: 1) - │ │ │ │ └── @ OptionalParameterNode (location: (33,10)-(33,15)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :y - │ │ │ │ ├── name_loc: (33,10)-(33,11) = "y" - │ │ │ │ ├── operator_loc: (33,12)-(33,13) = "=" - │ │ │ │ └── value: - │ │ │ │ @ IntegerNode (location: (33,14)-(33,15)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 1) - │ │ │ │ └── @ RequiredKeywordParameterNode (location: (33,17)-(33,19)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :z - │ │ │ │ └── name_loc: (33,17)-(33,19) = "z:" - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (33,6)-(33,7) = "|" - │ │ └── closing_loc: (33,19)-(33,20) = "|" - │ ├── body: - │ │ @ StatementsNode (location: (33,21)-(33,22)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (33,21)-(33,22)) - │ │ ├── flags: newline - │ │ ├── name: :x - │ │ └── depth: 0 - │ ├── opening_loc: (33,4)-(33,5) = "{" - │ └── closing_loc: (33,23)-(33,24) = "}" - ├── @ CallNode (location: (35,0)-(35,11)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (35,0)-(35,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (35,4)-(35,11)) - │ ├── flags: ∅ - │ ├── locals: [:x] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (35,6)-(35,9)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (35,7)-(35,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (35,7)-(35,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :x - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (35,6)-(35,7) = "|" - │ │ └── closing_loc: (35,8)-(35,9) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (35,4)-(35,5) = "{" - │ └── closing_loc: (35,10)-(35,11) = "}" - ├── @ LocalVariableWriteNode (location: (37,0)-(37,8)) - │ ├── flags: newline - │ ├── name: :fork - │ ├── depth: 0 - │ ├── name_loc: (37,0)-(37,4) = "fork" - │ ├── value: - │ │ @ IntegerNode (location: (37,7)-(37,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (37,5)-(37,6) = "=" - ├── @ CallNode (location: (38,0)-(39,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :fork - │ ├── message_loc: (38,0)-(38,4) = "fork" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (38,5)-(39,3)) - │ ├── flags: ∅ - │ ├── locals: [:a] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (38,8)-(38,11)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (38,9)-(38,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (38,9)-(38,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (38,8)-(38,9) = "|" - │ │ └── closing_loc: (38,10)-(38,11) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (38,5)-(38,7) = "do" - │ └── closing_loc: (39,0)-(39,3) = "end" - ├── @ CallNode (location: (41,0)-(41,12)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :fork - │ ├── message_loc: (41,0)-(41,4) = "fork" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (41,5)-(41,12)) - │ ├── flags: ∅ - │ ├── locals: [:a] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (41,7)-(41,10)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (41,8)-(41,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (41,8)-(41,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (41,7)-(41,8) = "|" - │ │ └── closing_loc: (41,9)-(41,10) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (41,5)-(41,6) = "{" - │ └── closing_loc: (41,11)-(41,12) = "}" - ├── @ CallNode (location: (43,0)-(44,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :C - │ ├── message_loc: (43,0)-(43,1) = "C" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (43,2)-(44,3)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (43,2)-(43,4) = "do" - │ └── closing_loc: (44,0)-(44,3) = "end" - ├── @ CallNode (location: (46,0)-(46,4)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :C - │ ├── message_loc: (46,0)-(46,1) = "C" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (46,2)-(46,4)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (46,2)-(46,3) = "{" - │ └── closing_loc: (46,3)-(46,4) = "}" - ├── @ CallNode (location: (48,0)-(52,1)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (48,0)-(48,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (48,4)-(52,1)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (48,4)-(52,1)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :lambda - │ │ ├── message_loc: (48,4)-(48,10) = "lambda" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (48,11)-(52,1)) - │ │ ├── flags: ∅ - │ │ ├── locals: [:a, :b] - │ │ ├── parameters: - │ │ │ @ BlockParametersNode (location: (48,13)-(51,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parameters: - │ │ │ │ @ ParametersNode (location: (49,2)-(50,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── requireds: (length: 0) - │ │ │ │ ├── optionals: (length: 0) - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── posts: (length: 0) - │ │ │ │ ├── keywords: (length: 2) - │ │ │ │ │ ├── @ OptionalKeywordParameterNode (location: (49,2)-(49,6)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ ├── name: :a - │ │ │ │ │ │ ├── name_loc: (49,2)-(49,4) = "a:" - │ │ │ │ │ │ └── value: - │ │ │ │ │ │ @ IntegerNode (location: (49,5)-(49,6)) - │ │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ │ └── value: 1 - │ │ │ │ │ └── @ OptionalKeywordParameterNode (location: (50,2)-(50,6)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :b - │ │ │ │ │ ├── name_loc: (50,2)-(50,4) = "b:" - │ │ │ │ │ └── value: - │ │ │ │ │ @ IntegerNode (location: (50,5)-(50,6)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 2 - │ │ │ │ ├── keyword_rest: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── locals: (length: 0) - │ │ │ ├── opening_loc: (48,13)-(48,14) = "|" - │ │ │ └── closing_loc: (51,2)-(51,3) = "|" - │ │ ├── body: ∅ - │ │ ├── opening_loc: (48,11)-(48,12) = "{" - │ │ └── closing_loc: (52,0)-(52,1) = "}" - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (54,0)-(54,17)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :foo - ├── message_loc: (54,0)-(54,3) = "foo" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (54,4)-(54,17)) - ├── flags: ∅ - ├── locals: [:bar] - ├── parameters: - │ @ BlockParametersNode (location: (54,7)-(54,13)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (54,8)-(54,12)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (54,8)-(54,11)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :bar - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ ImplicitRestNode (location: (54,11)-(54,12)) - │ │ │ └── flags: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (54,7)-(54,8) = "|" - │ └── closing_loc: (54,12)-(54,13) = "|" - ├── body: ∅ - ├── opening_loc: (54,4)-(54,6) = "do" - └── closing_loc: (54,14)-(54,17) = "end" diff --git a/test/prism/snapshots/boolean_operators.txt b/test/prism/snapshots/boolean_operators.txt deleted file mode 100644 index bde70d6509..0000000000 --- a/test/prism/snapshots/boolean_operators.txt +++ /dev/null @@ -1,59 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,7)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(5,7)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ LocalVariableAndWriteNode (location: (1,0)-(1,7)) - │ ├── flags: newline - │ ├── name_loc: (1,0)-(1,1) = "a" - │ ├── operator_loc: (1,2)-(1,5) = "&&=" - │ ├── value: - │ │ @ CallNode (location: (1,6)-(1,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (1,6)-(1,7) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── name: :a - │ └── depth: 0 - ├── @ LocalVariableOperatorWriteNode (location: (3,0)-(3,6)) - │ ├── flags: newline - │ ├── name_loc: (3,0)-(3,1) = "a" - │ ├── binary_operator_loc: (3,2)-(3,4) = "+=" - │ ├── value: - │ │ @ CallNode (location: (3,5)-(3,6)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (3,5)-(3,6) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── name: :a - │ ├── binary_operator: :+ - │ └── depth: 0 - └── @ LocalVariableOrWriteNode (location: (5,0)-(5,7)) - ├── flags: newline - ├── name_loc: (5,0)-(5,1) = "a" - ├── operator_loc: (5,2)-(5,5) = "||=" - ├── value: - │ @ CallNode (location: (5,6)-(5,7)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :b - │ ├── message_loc: (5,6)-(5,7) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── name: :a - └── depth: 0 diff --git a/test/prism/snapshots/booleans.txt b/test/prism/snapshots/booleans.txt deleted file mode 100644 index 47ce80217a..0000000000 --- a/test/prism/snapshots/booleans.txt +++ /dev/null @@ -1,11 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,4)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ FalseNode (location: (1,0)-(1,5)) - │ └── flags: newline, static_literal - └── @ TrueNode (location: (3,0)-(3,4)) - └── flags: newline, static_literal diff --git a/test/prism/snapshots/break.txt b/test/prism/snapshots/break.txt deleted file mode 100644 index 469b603f84..0000000000 --- a/test/prism/snapshots/break.txt +++ /dev/null @@ -1,499 +0,0 @@ -@ ProgramNode (location: (1,0)-(29,21)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(29,21)) - ├── flags: ∅ - └── body: (length: 13) - ├── @ CallNode (location: (1,0)-(1,13)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (1,0)-(1,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (1,4)-(1,13)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,6)-(1,11)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ BreakNode (location: (1,6)-(1,11)) - │ │ ├── flags: newline - │ │ ├── arguments: ∅ - │ │ └── keyword_loc: (1,6)-(1,11) = "break" - │ ├── opening_loc: (1,4)-(1,5) = "{" - │ └── closing_loc: (1,12)-(1,13) = "}" - ├── @ CallNode (location: (3,0)-(3,27)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (3,0)-(3,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (3,4)-(3,27)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (3,6)-(3,25)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ BreakNode (location: (3,6)-(3,25)) - │ │ ├── flags: newline - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (3,12)-(3,25)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 3) - │ │ │ ├── @ ParenthesesNode (location: (3,12)-(3,15)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── body: - │ │ │ │ │ @ StatementsNode (location: (3,13)-(3,14)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ IntegerNode (location: (3,13)-(3,14)) - │ │ │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ ├── opening_loc: (3,12)-(3,13) = "(" - │ │ │ │ └── closing_loc: (3,14)-(3,15) = ")" - │ │ │ ├── @ ParenthesesNode (location: (3,17)-(3,20)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── body: - │ │ │ │ │ @ StatementsNode (location: (3,18)-(3,19)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ IntegerNode (location: (3,18)-(3,19)) - │ │ │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ │ │ └── value: 2 - │ │ │ │ ├── opening_loc: (3,17)-(3,18) = "(" - │ │ │ │ └── closing_loc: (3,19)-(3,20) = ")" - │ │ │ └── @ ParenthesesNode (location: (3,22)-(3,25)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (3,23)-(3,24)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (3,23)-(3,24)) - │ │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ │ └── value: 3 - │ │ │ ├── opening_loc: (3,22)-(3,23) = "(" - │ │ │ └── closing_loc: (3,24)-(3,25) = ")" - │ │ └── keyword_loc: (3,6)-(3,11) = "break" - │ ├── opening_loc: (3,4)-(3,5) = "{" - │ └── closing_loc: (3,26)-(3,27) = "}" - ├── @ CallNode (location: (5,0)-(5,15)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (5,0)-(5,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (5,4)-(5,15)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (5,6)-(5,13)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ BreakNode (location: (5,6)-(5,13)) - │ │ ├── flags: newline - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (5,12)-(5,13)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (5,12)-(5,13)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── keyword_loc: (5,6)-(5,11) = "break" - │ ├── opening_loc: (5,4)-(5,5) = "{" - │ └── closing_loc: (5,14)-(5,15) = "}" - ├── @ CallNode (location: (7,0)-(8,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (7,0)-(7,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (7,4)-(8,3)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (7,6)-(8,1)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ BreakNode (location: (7,6)-(8,1)) - │ │ ├── flags: newline - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (7,12)-(8,1)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 3) - │ │ │ ├── @ IntegerNode (location: (7,12)-(7,13)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── @ IntegerNode (location: (7,15)-(7,16)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ └── @ IntegerNode (location: (8,0)-(8,1)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 3 - │ │ └── keyword_loc: (7,6)-(7,11) = "break" - │ ├── opening_loc: (7,4)-(7,5) = "{" - │ └── closing_loc: (8,2)-(8,3) = "}" - ├── @ CallNode (location: (10,0)-(10,21)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (10,0)-(10,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (10,4)-(10,21)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (10,6)-(10,19)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ BreakNode (location: (10,6)-(10,19)) - │ │ ├── flags: newline - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (10,12)-(10,19)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 3) - │ │ │ ├── @ IntegerNode (location: (10,12)-(10,13)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── @ IntegerNode (location: (10,15)-(10,16)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ └── @ IntegerNode (location: (10,18)-(10,19)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 3 - │ │ └── keyword_loc: (10,6)-(10,11) = "break" - │ ├── opening_loc: (10,4)-(10,5) = "{" - │ └── closing_loc: (10,20)-(10,21) = "}" - ├── @ CallNode (location: (12,0)-(12,23)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (12,0)-(12,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (12,4)-(12,23)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (12,6)-(12,21)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ BreakNode (location: (12,6)-(12,21)) - │ │ ├── flags: newline - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (12,12)-(12,21)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ ArrayNode (location: (12,12)-(12,21)) - │ │ │ ├── flags: static_literal - │ │ │ ├── elements: (length: 3) - │ │ │ │ ├── @ IntegerNode (location: (12,13)-(12,14)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ ├── @ IntegerNode (location: (12,16)-(12,17)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 2 - │ │ │ │ └── @ IntegerNode (location: (12,19)-(12,20)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 3 - │ │ │ ├── opening_loc: (12,12)-(12,13) = "[" - │ │ │ └── closing_loc: (12,20)-(12,21) = "]" - │ │ └── keyword_loc: (12,6)-(12,11) = "break" - │ ├── opening_loc: (12,4)-(12,5) = "{" - │ └── closing_loc: (12,22)-(12,23) = "}" - ├── @ CallNode (location: (14,0)-(17,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (14,0)-(14,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (14,4)-(17,3)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (14,6)-(17,1)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ BreakNode (location: (14,6)-(17,1)) - │ │ ├── flags: newline - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (14,11)-(17,1)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ ParenthesesNode (location: (14,11)-(17,1)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (15,2)-(16,3)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 2) - │ │ │ │ ├── @ IntegerNode (location: (15,2)-(15,3)) - │ │ │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ └── @ IntegerNode (location: (16,2)-(16,3)) - │ │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ ├── opening_loc: (14,11)-(14,12) = "(" - │ │ │ └── closing_loc: (17,0)-(17,1) = ")" - │ │ └── keyword_loc: (14,6)-(14,11) = "break" - │ ├── opening_loc: (14,4)-(14,5) = "{" - │ └── closing_loc: (17,2)-(17,3) = "}" - ├── @ CallNode (location: (19,0)-(19,15)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (19,0)-(19,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (19,4)-(19,15)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (19,6)-(19,13)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ BreakNode (location: (19,6)-(19,13)) - │ │ ├── flags: newline - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (19,11)-(19,13)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ ParenthesesNode (location: (19,11)-(19,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: ∅ - │ │ │ ├── opening_loc: (19,11)-(19,12) = "(" - │ │ │ └── closing_loc: (19,12)-(19,13) = ")" - │ │ └── keyword_loc: (19,6)-(19,11) = "break" - │ ├── opening_loc: (19,4)-(19,5) = "{" - │ └── closing_loc: (19,14)-(19,15) = "}" - ├── @ CallNode (location: (21,0)-(21,16)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (21,0)-(21,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (21,4)-(21,16)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (21,6)-(21,14)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ BreakNode (location: (21,6)-(21,14)) - │ │ ├── flags: newline - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (21,11)-(21,14)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ ParenthesesNode (location: (21,11)-(21,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (21,12)-(21,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (21,12)-(21,13)) - │ │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── opening_loc: (21,11)-(21,12) = "(" - │ │ │ └── closing_loc: (21,13)-(21,14) = ")" - │ │ └── keyword_loc: (21,6)-(21,11) = "break" - │ ├── opening_loc: (21,4)-(21,5) = "{" - │ └── closing_loc: (21,15)-(21,16) = "}" - ├── @ CallNode (location: (23,0)-(23,22)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (23,0)-(23,16)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (23,0)-(23,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (23,4)-(23,16)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (23,6)-(23,14)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ BreakNode (location: (23,6)-(23,14)) - │ │ │ ├── flags: newline - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (23,12)-(23,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (23,12)-(23,14)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 42 - │ │ │ └── keyword_loc: (23,6)-(23,11) = "break" - │ │ ├── opening_loc: (23,4)-(23,5) = "{" - │ │ └── closing_loc: (23,15)-(23,16) = "}" - │ ├── call_operator_loc: ∅ - │ ├── name: :== - │ ├── message_loc: (23,17)-(23,19) = "==" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (23,20)-(23,22)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (23,20)-(23,22)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 42 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (25,0)-(25,23)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (25,0)-(25,17)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (25,0)-(25,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (25,4)-(25,17)) - │ │ ├── flags: ∅ - │ │ ├── locals: [:a] - │ │ ├── parameters: - │ │ │ @ BlockParametersNode (location: (25,6)-(25,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parameters: - │ │ │ │ @ ParametersNode (location: (25,7)-(25,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── requireds: (length: 1) - │ │ │ │ │ └── @ RequiredParameterNode (location: (25,7)-(25,8)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :a - │ │ │ │ ├── optionals: (length: 0) - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── posts: (length: 0) - │ │ │ │ ├── keywords: (length: 0) - │ │ │ │ ├── keyword_rest: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── locals: (length: 0) - │ │ │ ├── opening_loc: (25,6)-(25,7) = "|" - │ │ │ └── closing_loc: (25,8)-(25,9) = "|" - │ │ ├── body: - │ │ │ @ StatementsNode (location: (25,10)-(25,15)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ BreakNode (location: (25,10)-(25,15)) - │ │ │ ├── flags: newline - │ │ │ ├── arguments: ∅ - │ │ │ └── keyword_loc: (25,10)-(25,15) = "break" - │ │ ├── opening_loc: (25,4)-(25,5) = "{" - │ │ └── closing_loc: (25,16)-(25,17) = "}" - │ ├── call_operator_loc: ∅ - │ ├── name: :== - │ ├── message_loc: (25,18)-(25,20) = "==" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (25,21)-(25,23)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (25,21)-(25,23)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 42 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ WhileNode (location: (27,0)-(27,21)) - │ ├── flags: newline - │ ├── keyword_loc: (27,0)-(27,5) = "while" - │ ├── closing_loc: (27,18)-(27,21) = "end" - │ ├── predicate: - │ │ @ AndNode (location: (27,6)-(27,16)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ CallNode (location: (27,6)-(27,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :_ - │ │ │ ├── message_loc: (27,6)-(27,7) = "_" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── right: - │ │ │ @ BreakNode (location: (27,11)-(27,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ └── keyword_loc: (27,11)-(27,16) = "break" - │ │ └── operator_loc: (27,8)-(27,10) = "&&" - │ └── statements: ∅ - └── @ UntilNode (location: (29,0)-(29,21)) - ├── flags: newline - ├── keyword_loc: (29,0)-(29,5) = "until" - ├── closing_loc: (29,18)-(29,21) = "end" - ├── predicate: - │ @ AndNode (location: (29,6)-(29,16)) - │ ├── flags: ∅ - │ ├── left: - │ │ @ CallNode (location: (29,6)-(29,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :_ - │ │ ├── message_loc: (29,6)-(29,7) = "_" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── right: - │ │ @ BreakNode (location: (29,11)-(29,16)) - │ │ ├── flags: ∅ - │ │ ├── arguments: ∅ - │ │ └── keyword_loc: (29,11)-(29,16) = "break" - │ └── operator_loc: (29,8)-(29,10) = "&&" - └── statements: ∅ diff --git a/test/prism/snapshots/case.txt b/test/prism/snapshots/case.txt deleted file mode 100644 index 3afc25826c..0000000000 --- a/test/prism/snapshots/case.txt +++ /dev/null @@ -1,554 +0,0 @@ -@ ProgramNode (location: (1,0)-(55,3)) -├── flags: ∅ -├── locals: [:b] -└── statements: - @ StatementsNode (location: (1,0)-(55,3)) - ├── flags: ∅ - └── body: (length: 15) - ├── @ CaseNode (location: (1,0)-(3,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (1,5)-(1,8)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,5)-(1,6) = ":" - │ │ ├── value_loc: (1,6)-(1,8) = "hi" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "hi" - │ ├── conditions: (length: 1) - │ │ └── @ WhenNode (location: (2,0)-(2,8)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (2,0)-(2,4) = "when" - │ │ ├── conditions: (length: 1) - │ │ │ └── @ SymbolNode (location: (2,5)-(2,8)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (2,5)-(2,6) = ":" - │ │ │ ├── value_loc: (2,6)-(2,8) = "hi" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "hi" - │ │ ├── then_keyword_loc: ∅ - │ │ └── statements: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (1,0)-(1,4) = "case" - │ └── end_keyword_loc: (3,0)-(3,3) = "end" - ├── @ CaseNode (location: (5,0)-(5,58)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ TrueNode (location: (5,5)-(5,9)) - │ │ └── flags: static_literal - │ ├── conditions: (length: 2) - │ │ ├── @ WhenNode (location: (5,11)-(5,30)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (5,11)-(5,15) = "when" - │ │ │ ├── conditions: (length: 1) - │ │ │ │ └── @ TrueNode (location: (5,16)-(5,20)) - │ │ │ │ └── flags: static_literal - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ └── statements: - │ │ │ @ StatementsNode (location: (5,22)-(5,30)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (5,22)-(5,30)) - │ │ │ ├── flags: newline, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :puts - │ │ │ ├── message_loc: (5,22)-(5,26) = "puts" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (5,27)-(5,30)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ SymbolNode (location: (5,27)-(5,30)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (5,27)-(5,28) = ":" - │ │ │ │ ├── value_loc: (5,28)-(5,30) = "hi" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "hi" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ WhenNode (location: (5,32)-(5,53)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (5,32)-(5,36) = "when" - │ │ ├── conditions: (length: 1) - │ │ │ └── @ FalseNode (location: (5,37)-(5,42)) - │ │ │ └── flags: static_literal - │ │ ├── then_keyword_loc: ∅ - │ │ └── statements: - │ │ @ StatementsNode (location: (5,44)-(5,53)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (5,44)-(5,53)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :puts - │ │ ├── message_loc: (5,44)-(5,48) = "puts" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (5,49)-(5,53)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ SymbolNode (location: (5,49)-(5,53)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (5,49)-(5,50) = ":" - │ │ │ ├── value_loc: (5,50)-(5,53) = "bye" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "bye" - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (5,0)-(5,4) = "case" - │ └── end_keyword_loc: (5,55)-(5,58) = "end" - ├── @ CaseNode (location: (7,0)-(7,20)) - │ ├── flags: newline - │ ├── predicate: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ WhenNode (location: (7,6)-(7,15)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (7,6)-(7,10) = "when" - │ │ ├── conditions: (length: 1) - │ │ │ └── @ SplatNode (location: (7,11)-(7,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (7,11)-(7,12) = "*" - │ │ │ └── expression: - │ │ │ @ CallNode (location: (7,12)-(7,15)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (7,12)-(7,15) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── then_keyword_loc: ∅ - │ │ └── statements: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (7,0)-(7,4) = "case" - │ └── end_keyword_loc: (7,17)-(7,20) = "end" - ├── @ CaseNode (location: (9,0)-(13,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (9,5)-(9,8)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (9,5)-(9,6) = ":" - │ │ ├── value_loc: (9,6)-(9,8) = "hi" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "hi" - │ ├── conditions: (length: 1) - │ │ └── @ WhenNode (location: (10,0)-(10,8)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (10,0)-(10,4) = "when" - │ │ ├── conditions: (length: 1) - │ │ │ └── @ SymbolNode (location: (10,5)-(10,8)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (10,5)-(10,6) = ":" - │ │ │ ├── value_loc: (10,6)-(10,8) = "hi" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "hi" - │ │ ├── then_keyword_loc: ∅ - │ │ └── statements: ∅ - │ ├── else_clause: - │ │ @ ElseNode (location: (11,0)-(13,3)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (11,0)-(11,4) = "else" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (12,0)-(12,2)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ SymbolNode (location: (12,0)-(12,2)) - │ │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (12,0)-(12,1) = ":" - │ │ │ ├── value_loc: (12,1)-(12,2) = "b" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "b" - │ │ └── end_keyword_loc: (13,0)-(13,3) = "end" - │ ├── case_keyword_loc: (9,0)-(9,4) = "case" - │ └── end_keyword_loc: (13,0)-(13,3) = "end" - ├── @ CaseNode (location: (15,0)-(15,36)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (15,5)-(15,9)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :this - │ │ ├── message_loc: (15,5)-(15,9) = "this" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ WhenNode (location: (15,11)-(15,31)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (15,11)-(15,15) = "when" - │ │ ├── conditions: (length: 2) - │ │ │ ├── @ ConstantReadNode (location: (15,16)-(15,22)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :FooBar - │ │ │ └── @ ConstantReadNode (location: (15,24)-(15,31)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :BazBonk - │ │ ├── then_keyword_loc: ∅ - │ │ └── statements: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (15,0)-(15,4) = "case" - │ └── end_keyword_loc: (15,33)-(15,36) = "end" - ├── @ CaseNode (location: (17,0)-(19,3)) - │ ├── flags: newline - │ ├── predicate: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ WhenNode (location: (18,0)-(18,15)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (18,0)-(18,4) = "when" - │ │ ├── conditions: (length: 1) - │ │ │ └── @ CallNode (location: (18,5)-(18,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── receiver: - │ │ │ │ @ CallNode (location: (18,5)-(18,8)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :foo - │ │ │ │ ├── message_loc: (18,5)-(18,8) = "foo" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :== - │ │ │ ├── message_loc: (18,9)-(18,11) = "==" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (18,12)-(18,15)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (18,12)-(18,15)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (18,12)-(18,15) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── then_keyword_loc: ∅ - │ │ └── statements: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (17,0)-(17,4) = "case" - │ └── end_keyword_loc: (19,0)-(19,3) = "end" - ├── @ CaseNode (location: (21,0)-(25,3)) - │ ├── flags: newline - │ ├── predicate: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ WhenNode (location: (22,0)-(22,6)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (22,0)-(22,4) = "when" - │ │ ├── conditions: (length: 1) - │ │ │ └── @ CallNode (location: (22,5)-(22,6)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (22,5)-(22,6) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── then_keyword_loc: ∅ - │ │ └── statements: ∅ - │ ├── else_clause: - │ │ @ ElseNode (location: (23,0)-(25,3)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (23,0)-(23,4) = "else" - │ │ ├── statements: ∅ - │ │ └── end_keyword_loc: (25,0)-(25,3) = "end" - │ ├── case_keyword_loc: (21,0)-(21,4) = "case" - │ └── end_keyword_loc: (25,0)-(25,3) = "end" - ├── @ CaseNode (location: (27,0)-(30,6)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (27,5)-(27,9)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :type - │ │ ├── message_loc: (27,5)-(27,9) = "type" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ WhenNode (location: (28,3)-(28,10)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (28,3)-(28,7) = "when" - │ │ ├── conditions: (length: 1) - │ │ │ └── @ SymbolNode (location: (28,8)-(28,10)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (28,8)-(28,9) = ":" - │ │ │ ├── value_loc: (28,9)-(28,10) = "b" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "b" - │ │ ├── then_keyword_loc: ∅ - │ │ └── statements: ∅ - │ ├── else_clause: - │ │ @ ElseNode (location: (29,5)-(30,6)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (29,5)-(29,9) = "else" - │ │ ├── statements: ∅ - │ │ └── end_keyword_loc: (30,3)-(30,6) = "end" - │ ├── case_keyword_loc: (27,0)-(27,4) = "case" - │ └── end_keyword_loc: (30,3)-(30,6) = "end" - ├── @ CaseNode (location: (32,0)-(32,25)) - │ ├── flags: newline - │ ├── predicate: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ WhenNode (location: (32,14)-(32,20)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (32,14)-(32,18) = "when" - │ │ ├── conditions: (length: 1) - │ │ │ └── @ IntegerNode (location: (32,19)-(32,20)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── then_keyword_loc: ∅ - │ │ └── statements: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (32,0)-(32,4) = "case" - │ └── end_keyword_loc: (32,22)-(32,25) = "end" - ├── @ CaseNode (location: (34,0)-(36,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ MatchPredicateNode (location: (34,5)-(34,11)) - │ │ ├── flags: ∅ - │ │ ├── value: - │ │ │ @ IntegerNode (location: (34,5)-(34,6)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── pattern: - │ │ │ @ IntegerNode (location: (34,10)-(34,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── operator_loc: (34,7)-(34,9) = "in" - │ ├── conditions: (length: 1) - │ │ └── @ WhenNode (location: (35,0)-(35,6)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (35,0)-(35,4) = "when" - │ │ ├── conditions: (length: 1) - │ │ │ └── @ IntegerNode (location: (35,5)-(35,6)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 3 - │ │ ├── then_keyword_loc: ∅ - │ │ └── statements: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (34,0)-(34,4) = "case" - │ └── end_keyword_loc: (36,0)-(36,3) = "end" - ├── @ CaseNode (location: (38,0)-(38,24)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ MatchPredicateNode (location: (38,5)-(38,11)) - │ │ ├── flags: ∅ - │ │ ├── value: - │ │ │ @ IntegerNode (location: (38,5)-(38,6)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── pattern: - │ │ │ @ IntegerNode (location: (38,10)-(38,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── operator_loc: (38,7)-(38,9) = "in" - │ ├── conditions: (length: 1) - │ │ └── @ WhenNode (location: (38,13)-(38,19)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (38,13)-(38,17) = "when" - │ │ ├── conditions: (length: 1) - │ │ │ └── @ IntegerNode (location: (38,18)-(38,19)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 3 - │ │ ├── then_keyword_loc: ∅ - │ │ └── statements: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (38,0)-(38,4) = "case" - │ └── end_keyword_loc: (38,21)-(38,24) = "end" - ├── @ CaseMatchNode (location: (40,0)-(42,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ MatchPredicateNode (location: (40,5)-(40,11)) - │ │ ├── flags: ∅ - │ │ ├── value: - │ │ │ @ IntegerNode (location: (40,5)-(40,6)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── pattern: - │ │ │ @ IntegerNode (location: (40,10)-(40,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── operator_loc: (40,7)-(40,9) = "in" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (41,0)-(41,4)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IntegerNode (location: (41,3)-(41,4)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 3 - │ │ ├── statements: ∅ - │ │ ├── in_loc: (41,0)-(41,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (40,0)-(40,4) = "case" - │ └── end_keyword_loc: (42,0)-(42,3) = "end" - ├── @ CaseMatchNode (location: (44,0)-(44,22)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ MatchPredicateNode (location: (44,5)-(44,11)) - │ │ ├── flags: ∅ - │ │ ├── value: - │ │ │ @ IntegerNode (location: (44,5)-(44,6)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── pattern: - │ │ │ @ IntegerNode (location: (44,10)-(44,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── operator_loc: (44,7)-(44,9) = "in" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (44,13)-(44,17)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IntegerNode (location: (44,16)-(44,17)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 3 - │ │ ├── statements: ∅ - │ │ ├── in_loc: (44,13)-(44,15) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (44,0)-(44,4) = "case" - │ └── end_keyword_loc: (44,19)-(44,22) = "end" - ├── @ CaseMatchNode (location: (46,0)-(49,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (46,5)-(46,6)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (46,5)-(46,6) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (47,0)-(48,3)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (47,3)-(47,15)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (47,5)-(47,7) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ AndNode (location: (47,8)-(47,15)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── left: - │ │ │ │ │ @ CallNode (location: (47,8)-(47,9)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :c - │ │ │ │ │ ├── message_loc: (47,8)-(47,9) = "c" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── right: - │ │ │ │ │ @ CallNode (location: (47,14)-(47,15)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (47,14)-(47,15) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ └── operator_loc: (47,10)-(47,13) = "and" - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (47,3)-(47,4)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ LocalVariableTargetNode (location: (47,3)-(47,4)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── name: :b - │ │ │ │ └── depth: 0 - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (48,2)-(48,3)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (48,2)-(48,3)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :e - │ │ │ ├── message_loc: (48,2)-(48,3) = "e" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── in_loc: (47,0)-(47,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (46,0)-(46,4) = "case" - │ └── end_keyword_loc: (49,0)-(49,3) = "end" - └── @ CallNode (location: (51,0)-(55,3)) - ├── flags: newline - ├── receiver: - │ @ IntegerNode (location: (51,0)-(51,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── call_operator_loc: (51,1)-(51,2) = "." - ├── name: :then - ├── message_loc: (51,2)-(51,6) = "then" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (51,7)-(55,3)) - ├── flags: ∅ - ├── locals: [:_1] - ├── parameters: - │ @ NumberedParametersNode (location: (51,7)-(55,3)) - │ ├── flags: ∅ - │ └── maximum: 1 - ├── body: - │ @ StatementsNode (location: (52,2)-(54,5)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CaseMatchNode (location: (52,2)-(54,5)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ IntegerNode (location: (52,7)-(52,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (53,2)-(53,8)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ PinnedVariableNode (location: (53,5)-(53,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── variable: - │ │ │ │ @ LocalVariableReadNode (location: (53,6)-(53,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :_1 - │ │ │ │ └── depth: 0 - │ │ │ └── operator_loc: (53,5)-(53,6) = "^" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (53,2)-(53,4) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (52,2)-(52,6) = "case" - │ └── end_keyword_loc: (54,2)-(54,5) = "end" - ├── opening_loc: (51,7)-(51,9) = "do" - └── closing_loc: (55,0)-(55,3) = "end" diff --git a/test/prism/snapshots/classes.txt b/test/prism/snapshots/classes.txt deleted file mode 100644 index 11ba921df5..0000000000 --- a/test/prism/snapshots/classes.txt +++ /dev/null @@ -1,418 +0,0 @@ -@ ProgramNode (location: (1,0)-(35,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(35,3)) - ├── flags: ∅ - └── body: (length: 14) - ├── @ ClassNode (location: (1,0)-(1,17)) - │ ├── flags: newline - │ ├── locals: [:a] - │ ├── class_keyword_loc: (1,0)-(1,5) = "class" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (1,6)-(1,7)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── inheritance_operator_loc: ∅ - │ ├── superclass: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,8)-(1,13)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableWriteNode (location: (1,8)-(1,13)) - │ │ ├── flags: newline - │ │ ├── name: :a - │ │ ├── depth: 0 - │ │ ├── name_loc: (1,8)-(1,9) = "a" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (1,12)-(1,13)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── operator_loc: (1,10)-(1,11) = "=" - │ ├── end_keyword_loc: (1,14)-(1,17) = "end" - │ └── name: :A - ├── @ ClassNode (location: (3,0)-(3,20)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (3,0)-(3,5) = "class" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (3,6)-(3,7)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── inheritance_operator_loc: ∅ - │ ├── superclass: ∅ - │ ├── body: - │ │ @ BeginNode (location: (3,0)-(3,20)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── rescue_clause: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: - │ │ │ @ EnsureNode (location: (3,9)-(3,20)) - │ │ │ ├── flags: ∅ - │ │ │ ├── ensure_keyword_loc: (3,9)-(3,15) = "ensure" - │ │ │ ├── statements: ∅ - │ │ │ └── end_keyword_loc: (3,17)-(3,20) = "end" - │ │ └── end_keyword_loc: (3,17)-(3,20) = "end" - │ ├── end_keyword_loc: (3,17)-(3,20) = "end" - │ └── name: :A - ├── @ ClassNode (location: (5,0)-(5,34)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (5,0)-(5,5) = "class" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (5,6)-(5,7)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── inheritance_operator_loc: ∅ - │ ├── superclass: ∅ - │ ├── body: - │ │ @ BeginNode (location: (5,0)-(5,34)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── rescue_clause: - │ │ │ @ RescueNode (location: (5,9)-(5,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (5,9)-(5,15) = "rescue" - │ │ │ ├── exceptions: (length: 0) - │ │ │ ├── operator_loc: ∅ - │ │ │ ├── reference: ∅ - │ │ │ ├── statements: ∅ - │ │ │ └── subsequent: ∅ - │ │ ├── else_clause: - │ │ │ @ ElseNode (location: (5,17)-(5,29)) - │ │ │ ├── flags: ∅ - │ │ │ ├── else_keyword_loc: (5,17)-(5,21) = "else" - │ │ │ ├── statements: ∅ - │ │ │ └── end_keyword_loc: (5,23)-(5,29) = "ensure" - │ │ ├── ensure_clause: - │ │ │ @ EnsureNode (location: (5,23)-(5,34)) - │ │ │ ├── flags: ∅ - │ │ │ ├── ensure_keyword_loc: (5,23)-(5,29) = "ensure" - │ │ │ ├── statements: ∅ - │ │ │ └── end_keyword_loc: (5,31)-(5,34) = "end" - │ │ └── end_keyword_loc: (5,31)-(5,34) = "end" - │ ├── end_keyword_loc: (5,31)-(5,34) = "end" - │ └── name: :A - ├── @ ClassNode (location: (7,0)-(9,3)) - │ ├── flags: newline - │ ├── locals: [:a] - │ ├── class_keyword_loc: (7,0)-(7,5) = "class" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (7,6)-(7,7)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── inheritance_operator_loc: (7,8)-(7,9) = "<" - │ ├── superclass: - │ │ @ ConstantReadNode (location: (7,10)-(7,11)) - │ │ ├── flags: ∅ - │ │ └── name: :B - │ ├── body: - │ │ @ StatementsNode (location: (8,0)-(8,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableWriteNode (location: (8,0)-(8,5)) - │ │ ├── flags: newline - │ │ ├── name: :a - │ │ ├── depth: 0 - │ │ ├── name_loc: (8,0)-(8,1) = "a" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (8,4)-(8,5)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── operator_loc: (8,2)-(8,3) = "=" - │ ├── end_keyword_loc: (9,0)-(9,3) = "end" - │ └── name: :A - ├── @ SingletonClassNode (location: (11,0)-(12,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (11,0)-(11,5) = "class" - │ ├── operator_loc: (11,6)-(11,8) = "<<" - │ ├── expression: - │ │ @ CallNode (location: (11,9)-(11,16)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (11,13)-(11,16)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (11,13)-(11,16) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :! - │ │ ├── message_loc: (11,9)-(11,12) = "not" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ └── end_keyword_loc: (12,0)-(12,3) = "end" - ├── @ ClassNode (location: (14,0)-(14,40)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (14,0)-(14,5) = "class" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (14,6)-(14,7)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── inheritance_operator_loc: ∅ - │ ├── superclass: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (14,9)-(14,35)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SingletonClassNode (location: (14,9)-(14,35)) - │ │ ├── flags: newline - │ │ ├── locals: [] - │ │ ├── class_keyword_loc: (14,9)-(14,14) = "class" - │ │ ├── operator_loc: (14,15)-(14,17) = "<<" - │ │ ├── expression: - │ │ │ @ SelfNode (location: (14,18)-(14,22)) - │ │ │ └── flags: ∅ - │ │ ├── body: - │ │ │ @ BeginNode (location: (14,9)-(14,35)) - │ │ │ ├── flags: ∅ - │ │ │ ├── begin_keyword_loc: ∅ - │ │ │ ├── statements: ∅ - │ │ │ ├── rescue_clause: ∅ - │ │ │ ├── else_clause: ∅ - │ │ │ ├── ensure_clause: - │ │ │ │ @ EnsureNode (location: (14,24)-(14,35)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── ensure_keyword_loc: (14,24)-(14,30) = "ensure" - │ │ │ │ ├── statements: ∅ - │ │ │ │ └── end_keyword_loc: (14,32)-(14,35) = "end" - │ │ │ └── end_keyword_loc: (14,32)-(14,35) = "end" - │ │ └── end_keyword_loc: (14,32)-(14,35) = "end" - │ ├── end_keyword_loc: (14,37)-(14,40) = "end" - │ └── name: :A - ├── @ ClassNode (location: (16,0)-(16,54)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (16,0)-(16,5) = "class" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (16,6)-(16,7)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── inheritance_operator_loc: ∅ - │ ├── superclass: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (16,9)-(16,49)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SingletonClassNode (location: (16,9)-(16,49)) - │ │ ├── flags: newline - │ │ ├── locals: [] - │ │ ├── class_keyword_loc: (16,9)-(16,14) = "class" - │ │ ├── operator_loc: (16,15)-(16,17) = "<<" - │ │ ├── expression: - │ │ │ @ SelfNode (location: (16,18)-(16,22)) - │ │ │ └── flags: ∅ - │ │ ├── body: - │ │ │ @ BeginNode (location: (16,9)-(16,49)) - │ │ │ ├── flags: ∅ - │ │ │ ├── begin_keyword_loc: ∅ - │ │ │ ├── statements: ∅ - │ │ │ ├── rescue_clause: - │ │ │ │ @ RescueNode (location: (16,24)-(16,30)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── keyword_loc: (16,24)-(16,30) = "rescue" - │ │ │ │ ├── exceptions: (length: 0) - │ │ │ │ ├── operator_loc: ∅ - │ │ │ │ ├── reference: ∅ - │ │ │ │ ├── statements: ∅ - │ │ │ │ └── subsequent: ∅ - │ │ │ ├── else_clause: - │ │ │ │ @ ElseNode (location: (16,32)-(16,44)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── else_keyword_loc: (16,32)-(16,36) = "else" - │ │ │ │ ├── statements: ∅ - │ │ │ │ └── end_keyword_loc: (16,38)-(16,44) = "ensure" - │ │ │ ├── ensure_clause: - │ │ │ │ @ EnsureNode (location: (16,38)-(16,49)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── ensure_keyword_loc: (16,38)-(16,44) = "ensure" - │ │ │ │ ├── statements: ∅ - │ │ │ │ └── end_keyword_loc: (16,46)-(16,49) = "end" - │ │ │ └── end_keyword_loc: (16,46)-(16,49) = "end" - │ │ └── end_keyword_loc: (16,46)-(16,49) = "end" - │ ├── end_keyword_loc: (16,51)-(16,54) = "end" - │ └── name: :A - ├── @ SingletonClassNode (location: (18,0)-(19,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (18,0)-(18,5) = "class" - │ ├── operator_loc: (18,6)-(18,8) = "<<" - │ ├── expression: - │ │ @ CallNode (location: (18,9)-(18,16)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (18,9)-(18,12)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (18,9)-(18,12) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (18,12)-(18,13) = "." - │ │ ├── name: :bar - │ │ ├── message_loc: (18,13)-(18,16) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ └── end_keyword_loc: (19,0)-(19,3) = "end" - ├── @ SingletonClassNode (location: (21,0)-(21,20)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (21,0)-(21,5) = "class" - │ ├── operator_loc: (21,6)-(21,8) = "<<" - │ ├── expression: - │ │ @ CallNode (location: (21,9)-(21,16)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (21,9)-(21,12)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (21,9)-(21,12) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (21,12)-(21,13) = "." - │ │ ├── name: :bar - │ │ ├── message_loc: (21,13)-(21,16) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ └── end_keyword_loc: (21,17)-(21,20) = "end" - ├── @ SingletonClassNode (location: (23,0)-(24,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (23,0)-(23,5) = "class" - │ ├── operator_loc: (23,6)-(23,8) = "<<" - │ ├── expression: - │ │ @ SelfNode (location: (23,9)-(23,13)) - │ │ └── flags: ∅ - │ ├── body: ∅ - │ └── end_keyword_loc: (24,0)-(24,3) = "end" - ├── @ SingletonClassNode (location: (26,0)-(26,17)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (26,0)-(26,5) = "class" - │ ├── operator_loc: (26,6)-(26,8) = "<<" - │ ├── expression: - │ │ @ SelfNode (location: (26,9)-(26,13)) - │ │ └── flags: ∅ - │ ├── body: ∅ - │ └── end_keyword_loc: (26,14)-(26,17) = "end" - ├── @ SingletonClassNode (location: (28,0)-(30,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (28,0)-(28,5) = "class" - │ ├── operator_loc: (28,6)-(28,8) = "<<" - │ ├── expression: - │ │ @ SelfNode (location: (28,9)-(28,13)) - │ │ └── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (29,0)-(29,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (29,0)-(29,5)) - │ │ ├── flags: newline - │ │ ├── receiver: - │ │ │ @ IntegerNode (location: (29,0)-(29,1)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :+ - │ │ ├── message_loc: (29,2)-(29,3) = "+" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (29,4)-(29,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (29,4)-(29,5)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── end_keyword_loc: (30,0)-(30,3) = "end" - ├── @ SingletonClassNode (location: (32,0)-(32,23)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (32,0)-(32,5) = "class" - │ ├── operator_loc: (32,6)-(32,8) = "<<" - │ ├── expression: - │ │ @ SelfNode (location: (32,9)-(32,13)) - │ │ └── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (32,14)-(32,19)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (32,14)-(32,19)) - │ │ ├── flags: newline - │ │ ├── receiver: - │ │ │ @ IntegerNode (location: (32,14)-(32,15)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :+ - │ │ ├── message_loc: (32,16)-(32,17) = "+" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (32,18)-(32,19)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (32,18)-(32,19)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── end_keyword_loc: (32,20)-(32,23) = "end" - └── @ ClassNode (location: (34,0)-(35,3)) - ├── flags: newline - ├── locals: [] - ├── class_keyword_loc: (34,0)-(34,5) = "class" - ├── constant_path: - │ @ ConstantReadNode (location: (34,6)-(34,7)) - │ ├── flags: ∅ - │ └── name: :A - ├── inheritance_operator_loc: (34,8)-(34,9) = "<" - ├── superclass: - │ @ CallNode (location: (34,10)-(34,14)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ ConstantReadNode (location: (34,10)-(34,11)) - │ │ ├── flags: ∅ - │ │ └── name: :B - │ ├── call_operator_loc: ∅ - │ ├── name: :[] - │ ├── message_loc: (34,11)-(34,14) = "[1]" - │ ├── opening_loc: (34,11)-(34,12) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (34,12)-(34,13)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (34,12)-(34,13)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: (34,13)-(34,14) = "]" - │ └── block: ∅ - ├── body: ∅ - ├── end_keyword_loc: (35,0)-(35,3) = "end" - └── name: :A diff --git a/test/prism/snapshots/command_method_call.txt b/test/prism/snapshots/command_method_call.txt deleted file mode 100644 index ab48ee480e..0000000000 --- a/test/prism/snapshots/command_method_call.txt +++ /dev/null @@ -1,773 +0,0 @@ -@ ProgramNode (location: (1,0)-(41,10)) -├── flags: ∅ -├── locals: [:foo, :bar] -└── statements: - @ StatementsNode (location: (1,0)-(41,10)) - ├── flags: ∅ - └── body: (length: 21) - ├── @ CallNode (location: (1,0)-(1,5)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,0)-(1,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,4)-(1,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (1,4)-(1,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (3,0)-(3,9)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (3,0)-(3,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (3,4)-(3,9)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (3,4)-(3,9)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (3,4)-(3,7) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (3,8)-(3,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (3,8)-(3,9)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ IfNode (location: (5,0)-(5,14)) - │ ├── flags: newline - │ ├── if_keyword_loc: (5,6)-(5,8) = "if" - │ ├── predicate: - │ │ @ CallNode (location: (5,9)-(5,14)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (5,9)-(5,12) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (5,13)-(5,14)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (5,13)-(5,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (5,0)-(5,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (5,0)-(5,5)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (5,0)-(5,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (5,4)-(5,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (5,4)-(5,5)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── subsequent: ∅ - │ └── end_keyword_loc: ∅ - ├── @ UnlessNode (location: (7,0)-(7,18)) - │ ├── flags: newline - │ ├── keyword_loc: (7,6)-(7,12) = "unless" - │ ├── predicate: - │ │ @ CallNode (location: (7,13)-(7,18)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (7,13)-(7,16) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (7,17)-(7,18)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (7,17)-(7,18)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (7,0)-(7,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (7,0)-(7,5)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (7,0)-(7,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (7,4)-(7,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (7,4)-(7,5)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── else_clause: ∅ - │ └── end_keyword_loc: ∅ - ├── @ WhileNode (location: (9,0)-(9,17)) - │ ├── flags: newline - │ ├── keyword_loc: (9,6)-(9,11) = "while" - │ ├── closing_loc: ∅ - │ ├── predicate: - │ │ @ CallNode (location: (9,12)-(9,17)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (9,12)-(9,15) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (9,16)-(9,17)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (9,16)-(9,17)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── statements: - │ @ StatementsNode (location: (9,0)-(9,5)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (9,0)-(9,5)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (9,0)-(9,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (9,4)-(9,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (9,4)-(9,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ UntilNode (location: (11,0)-(11,17)) - │ ├── flags: newline - │ ├── keyword_loc: (11,6)-(11,11) = "until" - │ ├── closing_loc: ∅ - │ ├── predicate: - │ │ @ CallNode (location: (11,12)-(11,17)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (11,12)-(11,15) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (11,16)-(11,17)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (11,16)-(11,17)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── statements: - │ @ StatementsNode (location: (11,0)-(11,5)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (11,0)-(11,5)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (11,0)-(11,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (11,4)-(11,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (11,4)-(11,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ RescueModifierNode (location: (13,0)-(13,18)) - │ ├── flags: newline - │ ├── expression: - │ │ @ CallNode (location: (13,0)-(13,5)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (13,0)-(13,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (13,4)-(13,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (13,4)-(13,5)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── keyword_loc: (13,6)-(13,12) = "rescue" - │ └── rescue_expression: - │ @ CallNode (location: (13,13)-(13,18)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (13,13)-(13,16) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (13,17)-(13,18)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (13,17)-(13,18)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (15,0)-(15,10)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (15,0)-(15,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (15,0)-(15,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :[] - │ ├── message_loc: (15,3)-(15,10) = "[bar 1]" - │ ├── opening_loc: (15,3)-(15,4) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (15,4)-(15,9)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (15,4)-(15,9)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (15,4)-(15,7) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (15,8)-(15,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (15,8)-(15,9)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (15,9)-(15,10) = "]" - │ └── block: ∅ - ├── @ AndNode (location: (17,0)-(17,15)) - │ ├── flags: newline - │ ├── left: - │ │ @ CallNode (location: (17,0)-(17,5)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (17,0)-(17,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (17,4)-(17,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (17,4)-(17,5)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── right: - │ │ @ CallNode (location: (17,10)-(17,15)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (17,10)-(17,13) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (17,14)-(17,15)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (17,14)-(17,15)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (17,6)-(17,9) = "and" - ├── @ OrNode (location: (19,0)-(19,14)) - │ ├── flags: newline - │ ├── left: - │ │ @ CallNode (location: (19,0)-(19,5)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (19,0)-(19,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (19,4)-(19,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (19,4)-(19,5)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── right: - │ │ @ CallNode (location: (19,9)-(19,14)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (19,9)-(19,12) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (19,13)-(19,14)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (19,13)-(19,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (19,6)-(19,8) = "or" - ├── @ CallNode (location: (21,0)-(21,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (21,4)-(21,9)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (21,4)-(21,7) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (21,8)-(21,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (21,8)-(21,9)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :! - │ ├── message_loc: (21,0)-(21,3) = "not" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ LocalVariableWriteNode (location: (23,0)-(23,17)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── depth: 0 - │ ├── name_loc: (23,0)-(23,3) = "foo" - │ ├── value: - │ │ @ LocalVariableWriteNode (location: (23,6)-(23,17)) - │ │ ├── flags: ∅ - │ │ ├── name: :bar - │ │ ├── depth: 0 - │ │ ├── name_loc: (23,6)-(23,9) = "bar" - │ │ ├── value: - │ │ │ @ CallNode (location: (23,12)-(23,17)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (23,12)-(23,15) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (23,16)-(23,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (23,16)-(23,17)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (23,10)-(23,11) = "=" - │ └── operator_loc: (23,4)-(23,5) = "=" - ├── @ DefNode (location: (25,0)-(25,15)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (25,4)-(25,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (25,10)-(25,15)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (25,10)-(25,15)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (25,10)-(25,13) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (25,14)-(25,15)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (25,14)-(25,15)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (25,0)-(25,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: (25,8)-(25,9) = "=" - │ └── end_keyword_loc: ∅ - ├── @ CallNode (location: (27,0)-(27,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (27,0)-(27,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: (27,1)-(27,2) = "." - │ ├── name: :foo - │ ├── message_loc: (27,2)-(27,5) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (27,6)-(27,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (27,6)-(27,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (29,0)-(29,11)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (29,0)-(29,5)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ IntegerNode (location: (29,0)-(29,1)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── call_operator_loc: (29,1)-(29,2) = "." - │ │ ├── name: :foo - │ │ ├── message_loc: (29,2)-(29,5) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (29,5)-(29,6) = "." - │ ├── name: :bar - │ ├── message_loc: (29,6)-(29,9) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (29,10)-(29,11)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (29,10)-(29,11)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (31,0)-(31,14)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (31,0)-(31,8)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (31,0)-(31,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── receiver: - │ │ │ │ @ IntegerNode (location: (31,0)-(31,1)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── call_operator_loc: (31,1)-(31,2) = "." - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (31,2)-(31,5) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :[] - │ │ ├── message_loc: (31,5)-(31,8) = "[2]" - │ │ ├── opening_loc: (31,5)-(31,6) = "[" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (31,6)-(31,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (31,6)-(31,7)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── closing_loc: (31,7)-(31,8) = "]" - │ │ └── block: ∅ - │ ├── call_operator_loc: (31,8)-(31,9) = "." - │ ├── name: :bar - │ ├── message_loc: (31,9)-(31,12) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (31,13)-(31,14)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (31,13)-(31,14)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 3 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (33,0)-(33,14)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (33,0)-(33,8)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ IntegerNode (location: (33,0)-(33,1)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── call_operator_loc: (33,1)-(33,2) = "." - │ │ ├── name: :foo - │ │ ├── message_loc: (33,2)-(33,5) = "foo" - │ │ ├── opening_loc: (33,5)-(33,6) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (33,6)-(33,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (33,6)-(33,7)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── closing_loc: (33,7)-(33,8) = ")" - │ │ └── block: ∅ - │ ├── call_operator_loc: (33,8)-(33,9) = "." - │ ├── name: :bar - │ ├── message_loc: (33,9)-(33,12) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (33,13)-(33,14)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (33,13)-(33,14)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 3 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (35,0)-(35,15)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (35,0)-(35,9)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ IntegerNode (location: (35,0)-(35,1)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── call_operator_loc: (35,1)-(35,2) = "." - │ │ ├── name: :foo - │ │ ├── message_loc: (35,2)-(35,5) = "foo" - │ │ ├── opening_loc: (35,5)-(35,6) = "(" - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: (35,8)-(35,9) = ")" - │ │ └── block: - │ │ @ BlockArgumentNode (location: (35,6)-(35,8)) - │ │ ├── flags: ∅ - │ │ ├── expression: - │ │ │ @ IntegerNode (location: (35,7)-(35,8)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── operator_loc: (35,6)-(35,7) = "&" - │ ├── call_operator_loc: (35,9)-(35,10) = "." - │ ├── name: :bar - │ ├── message_loc: (35,10)-(35,13) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (35,14)-(35,15)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (35,14)-(35,15)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 3 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ AndNode (location: (37,0)-(37,17)) - │ ├── flags: newline - │ ├── left: - │ │ @ CallNode (location: (37,0)-(37,6)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (37,1)-(37,6)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (37,1)-(37,4) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (37,5)-(37,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (37,5)-(37,6)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :! - │ │ ├── message_loc: (37,0)-(37,1) = "!" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── right: - │ │ @ CallNode (location: (37,11)-(37,17)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (37,12)-(37,17)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (37,12)-(37,15) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (37,16)-(37,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (37,16)-(37,17)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :! - │ │ ├── message_loc: (37,11)-(37,12) = "!" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (37,7)-(37,10) = "and" - ├── @ OrNode (location: (39,0)-(39,16)) - │ ├── flags: newline - │ ├── left: - │ │ @ CallNode (location: (39,0)-(39,6)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (39,1)-(39,6)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (39,1)-(39,4) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (39,5)-(39,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (39,5)-(39,6)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :! - │ │ ├── message_loc: (39,0)-(39,1) = "!" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── right: - │ │ @ CallNode (location: (39,10)-(39,16)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (39,11)-(39,16)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (39,11)-(39,14) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (39,15)-(39,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (39,15)-(39,16)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :! - │ │ ├── message_loc: (39,10)-(39,11) = "!" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (39,7)-(39,9) = "or" - └── @ CallNode (location: (41,0)-(41,10)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (41,4)-(41,10)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ CallNode (location: (41,5)-(41,10)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (41,5)-(41,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (41,9)-(41,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (41,9)-(41,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :! - │ ├── message_loc: (41,4)-(41,5) = "!" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :! - ├── message_loc: (41,0)-(41,3) = "not" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/comments.txt b/test/prism/snapshots/comments.txt deleted file mode 100644 index 66869bc2a9..0000000000 --- a/test/prism/snapshots/comments.txt +++ /dev/null @@ -1,147 +0,0 @@ -@ ProgramNode (location: (1,0)-(24,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(24,5)) - ├── flags: ∅ - └── body: (length: 9) - ├── @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (3,0)-(3,1)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :b - │ ├── message_loc: (3,0)-(3,1) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (5,0)-(5,1)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :c - │ ├── message_loc: (5,0)-(5,1) = "c" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (6,0)-(6,1)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :d - │ ├── message_loc: (6,0)-(6,1) = "d" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (8,0)-(10,4)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (8,0)-(8,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :e - │ │ ├── message_loc: (8,0)-(8,1) = "e" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (10,2)-(10,3) = "." - │ ├── name: :f - │ ├── message_loc: (10,3)-(10,4) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (12,0)-(14,2)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (12,0)-(12,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :g - │ │ ├── message_loc: (12,0)-(12,1) = "g" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (14,0)-(14,1) = "." - │ ├── name: :h - │ ├── message_loc: (14,1)-(14,2) = "h" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (16,0)-(17,2)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (16,0)-(16,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :i - │ │ ├── message_loc: (16,0)-(16,1) = "i" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (17,0)-(17,1) = "." - │ ├── name: :j - │ ├── message_loc: (17,1)-(17,2) = "j" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (19,0)-(20,4)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (19,0)-(19,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :k - │ │ ├── message_loc: (19,0)-(19,1) = "k" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (20,2)-(20,3) = "." - │ ├── name: :l - │ ├── message_loc: (20,3)-(20,4) = "l" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (22,0)-(24,5)) - ├── flags: newline, safe_navigation - ├── receiver: - │ @ CallNode (location: (22,0)-(22,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (22,0)-(22,1) = "m" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (24,2)-(24,4) = "&." - ├── name: :n - ├── message_loc: (24,4)-(24,5) = "n" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/constants.txt b/test/prism/snapshots/constants.txt deleted file mode 100644 index e1aada8e96..0000000000 --- a/test/prism/snapshots/constants.txt +++ /dev/null @@ -1,1336 +0,0 @@ -@ ProgramNode (location: (1,0)-(184,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(184,10)) - ├── flags: ∅ - └── body: (length: 90) - ├── @ ConstantPathNode (location: (1,0)-(1,4)) - │ ├── flags: newline - │ ├── parent: - │ │ @ ConstantReadNode (location: (1,0)-(1,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── name: :B - │ ├── delimiter_loc: (1,1)-(1,3) = "::" - │ └── name_loc: (1,3)-(1,4) = "B" - ├── @ ConstantPathNode (location: (3,0)-(3,7)) - │ ├── flags: newline - │ ├── parent: - │ │ @ ConstantPathNode (location: (3,0)-(3,4)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ ConstantReadNode (location: (3,0)-(3,1)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :A - │ │ ├── name: :B - │ │ ├── delimiter_loc: (3,1)-(3,3) = "::" - │ │ └── name_loc: (3,3)-(3,4) = "B" - │ ├── name: :C - │ ├── delimiter_loc: (3,4)-(3,6) = "::" - │ └── name_loc: (3,6)-(3,7) = "C" - ├── @ ConstantPathNode (location: (5,0)-(5,4)) - │ ├── flags: newline - │ ├── parent: - │ │ @ CallNode (location: (5,0)-(5,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (5,0)-(5,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── name: :B - │ ├── delimiter_loc: (5,1)-(5,3) = "::" - │ └── name_loc: (5,3)-(5,4) = "B" - ├── @ ConstantPathWriteNode (location: (7,0)-(7,8)) - │ ├── flags: newline - │ ├── target: - │ │ @ ConstantPathNode (location: (7,0)-(7,4)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ ConstantReadNode (location: (7,0)-(7,1)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :A - │ │ ├── name: :B - │ │ ├── delimiter_loc: (7,1)-(7,3) = "::" - │ │ └── name_loc: (7,3)-(7,4) = "B" - │ ├── operator_loc: (7,5)-(7,6) = "=" - │ └── value: - │ @ IntegerNode (location: (7,7)-(7,8)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ ConstantWriteNode (location: (9,0)-(9,5)) - │ ├── flags: newline - │ ├── name: :A - │ ├── name_loc: (9,0)-(9,1) = "A" - │ ├── value: - │ │ @ IntegerNode (location: (9,4)-(9,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (9,2)-(9,3) = "=" - ├── @ ConstantReadNode (location: (11,0)-(11,3)) - │ ├── flags: newline - │ └── name: :ABC - ├── @ CallNode (location: (13,0)-(13,5)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :Foo - │ ├── message_loc: (13,0)-(13,3) = "Foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (13,4)-(13,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (13,4)-(13,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (15,0)-(15,8)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :Foo - │ ├── message_loc: (15,0)-(15,3) = "Foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (15,4)-(15,8)) - │ │ ├── flags: contains_splat - │ │ └── arguments: (length: 1) - │ │ └── @ SplatNode (location: (15,4)-(15,8)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (15,4)-(15,5) = "*" - │ │ └── expression: - │ │ @ CallNode (location: (15,5)-(15,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (15,5)-(15,8) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (17,0)-(17,9)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :Foo - │ ├── message_loc: (17,0)-(17,3) = "Foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (17,4)-(17,9)) - │ │ ├── flags: contains_keywords, contains_keyword_splat - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (17,4)-(17,9)) - │ │ ├── flags: ∅ - │ │ └── elements: (length: 1) - │ │ └── @ AssocSplatNode (location: (17,4)-(17,9)) - │ │ ├── flags: ∅ - │ │ ├── value: - │ │ │ @ CallNode (location: (17,6)-(17,9)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (17,6)-(17,9) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (17,4)-(17,6) = "**" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (19,0)-(19,8)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :Foo - │ ├── message_loc: (19,0)-(19,3) = "Foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockArgumentNode (location: (19,4)-(19,8)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (19,5)-(19,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (19,5)-(19,8) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (19,4)-(19,5) = "&" - ├── @ CallNode (location: (21,0)-(21,13)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (21,0)-(21,3)) - │ │ ├── flags: ∅ - │ │ └── name: :Foo - │ ├── call_operator_loc: (21,3)-(21,5) = "::" - │ ├── name: :Bar - │ ├── message_loc: (21,5)-(21,8) = "Bar" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (21,9)-(21,13)) - │ │ ├── flags: contains_splat - │ │ └── arguments: (length: 1) - │ │ └── @ SplatNode (location: (21,9)-(21,13)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (21,9)-(21,10) = "*" - │ │ └── expression: - │ │ @ CallNode (location: (21,10)-(21,13)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (21,10)-(21,13) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (23,0)-(23,14)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (23,0)-(23,3)) - │ │ ├── flags: ∅ - │ │ └── name: :Foo - │ ├── call_operator_loc: (23,3)-(23,5) = "::" - │ ├── name: :Bar - │ ├── message_loc: (23,5)-(23,8) = "Bar" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (23,9)-(23,14)) - │ │ ├── flags: contains_keywords, contains_keyword_splat - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (23,9)-(23,14)) - │ │ ├── flags: ∅ - │ │ └── elements: (length: 1) - │ │ └── @ AssocSplatNode (location: (23,9)-(23,14)) - │ │ ├── flags: ∅ - │ │ ├── value: - │ │ │ @ CallNode (location: (23,11)-(23,14)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (23,11)-(23,14) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (23,9)-(23,11) = "**" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (25,0)-(25,13)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (25,0)-(25,3)) - │ │ ├── flags: ∅ - │ │ └── name: :Foo - │ ├── call_operator_loc: (25,3)-(25,5) = "::" - │ ├── name: :Bar - │ ├── message_loc: (25,5)-(25,8) = "Bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockArgumentNode (location: (25,9)-(25,13)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (25,10)-(25,13)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (25,10)-(25,13) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (25,9)-(25,10) = "&" - ├── @ CallNode (location: (27,0)-(27,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantPathNode (location: (27,0)-(27,3)) - │ │ ├── flags: ∅ - │ │ ├── parent: ∅ - │ │ ├── name: :A - │ │ ├── delimiter_loc: (27,0)-(27,2) = "::" - │ │ └── name_loc: (27,2)-(27,3) = "A" - │ ├── call_operator_loc: (27,3)-(27,5) = "::" - │ ├── name: :foo - │ ├── message_loc: (27,5)-(27,8) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ ConstantPathWriteNode (location: (29,0)-(29,7)) - │ ├── flags: newline - │ ├── target: - │ │ @ ConstantPathNode (location: (29,0)-(29,3)) - │ │ ├── flags: ∅ - │ │ ├── parent: ∅ - │ │ ├── name: :A - │ │ ├── delimiter_loc: (29,0)-(29,2) = "::" - │ │ └── name_loc: (29,2)-(29,3) = "A" - │ ├── operator_loc: (29,4)-(29,5) = "=" - │ └── value: - │ @ IntegerNode (location: (29,6)-(29,7)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ ConstantPathWriteNode (location: (31,0)-(31,10)) - │ ├── flags: newline - │ ├── target: - │ │ @ ConstantPathNode (location: (31,0)-(31,6)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ ConstantPathNode (location: (31,0)-(31,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parent: ∅ - │ │ │ ├── name: :A - │ │ │ ├── delimiter_loc: (31,0)-(31,2) = "::" - │ │ │ └── name_loc: (31,2)-(31,3) = "A" - │ │ ├── name: :B - │ │ ├── delimiter_loc: (31,3)-(31,5) = "::" - │ │ └── name_loc: (31,5)-(31,6) = "B" - │ ├── operator_loc: (31,7)-(31,8) = "=" - │ └── value: - │ @ IntegerNode (location: (31,9)-(31,10)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ ConstantPathNode (location: (33,0)-(33,6)) - │ ├── flags: newline - │ ├── parent: - │ │ @ ConstantPathNode (location: (33,0)-(33,3)) - │ │ ├── flags: ∅ - │ │ ├── parent: ∅ - │ │ ├── name: :A - │ │ ├── delimiter_loc: (33,0)-(33,2) = "::" - │ │ └── name_loc: (33,2)-(33,3) = "A" - │ ├── name: :B - │ ├── delimiter_loc: (33,3)-(33,5) = "::" - │ └── name_loc: (33,5)-(33,6) = "B" - ├── @ ConstantPathNode (location: (35,0)-(35,3)) - │ ├── flags: newline - │ ├── parent: ∅ - │ ├── name: :A - │ ├── delimiter_loc: (35,0)-(35,2) = "::" - │ └── name_loc: (35,2)-(35,3) = "A" - ├── @ CallNode (location: (37,0)-(37,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (37,0)-(37,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (37,1)-(37,3) = "::" - │ ├── name: :false - │ ├── message_loc: (37,3)-(37,8) = "false" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (39,0)-(39,10)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantPathNode (location: (39,0)-(39,4)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ ConstantReadNode (location: (39,0)-(39,1)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :A - │ │ ├── name: :B - │ │ ├── delimiter_loc: (39,1)-(39,3) = "::" - │ │ └── name_loc: (39,3)-(39,4) = "B" - │ ├── call_operator_loc: (39,4)-(39,6) = "::" - │ ├── name: :true - │ ├── message_loc: (39,6)-(39,10) = "true" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (41,0)-(41,4)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (41,0)-(41,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (41,1)-(41,3) = "::" - │ ├── name: :& - │ ├── message_loc: (41,3)-(41,4) = "&" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (43,0)-(43,4)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (43,0)-(43,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (43,1)-(43,3) = "::" - │ ├── name: :` - │ ├── message_loc: (43,3)-(43,4) = "`" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (45,0)-(45,4)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (45,0)-(45,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (45,1)-(45,3) = "::" - │ ├── name: :! - │ ├── message_loc: (45,3)-(45,4) = "!" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (47,0)-(47,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (47,0)-(47,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (47,1)-(47,3) = "::" - │ ├── name: :!= - │ ├── message_loc: (47,3)-(47,5) = "!=" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (49,0)-(49,4)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (49,0)-(49,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (49,1)-(49,3) = "::" - │ ├── name: :^ - │ ├── message_loc: (49,3)-(49,4) = "^" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (51,0)-(51,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (51,0)-(51,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (51,1)-(51,3) = "::" - │ ├── name: :== - │ ├── message_loc: (51,3)-(51,5) = "==" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (53,0)-(53,6)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (53,0)-(53,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (53,1)-(53,3) = "::" - │ ├── name: :=== - │ ├── message_loc: (53,3)-(53,6) = "===" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (55,0)-(55,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (55,0)-(55,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (55,1)-(55,3) = "::" - │ ├── name: :=~ - │ ├── message_loc: (55,3)-(55,5) = "=~" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (57,0)-(57,4)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (57,0)-(57,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (57,1)-(57,3) = "::" - │ ├── name: :> - │ ├── message_loc: (57,3)-(57,4) = ">" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (59,0)-(59,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (59,0)-(59,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (59,1)-(59,3) = "::" - │ ├── name: :>= - │ ├── message_loc: (59,3)-(59,5) = ">=" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (61,0)-(61,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (61,0)-(61,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (61,1)-(61,3) = "::" - │ ├── name: :>> - │ ├── message_loc: (61,3)-(61,5) = ">>" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (63,0)-(63,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (63,0)-(63,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (63,1)-(63,3) = "::" - │ ├── name: :<< - │ ├── message_loc: (63,3)-(63,5) = "<<" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ ConstantPathNode (location: (65,0)-(67,1)) - │ ├── flags: newline - │ ├── parent: - │ │ @ ConstantReadNode (location: (65,0)-(65,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── name: :C - │ ├── delimiter_loc: (65,1)-(65,3) = "::" - │ └── name_loc: (67,0)-(67,1) = "C" - ├── @ CallNode (location: (69,0)-(69,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (69,0)-(69,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (69,1)-(69,3) = "::" - │ ├── name: :alias - │ ├── message_loc: (69,3)-(69,8) = "alias" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (71,0)-(71,6)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (71,0)-(71,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (71,1)-(71,3) = "::" - │ ├── name: :and - │ ├── message_loc: (71,3)-(71,6) = "and" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (73,0)-(73,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (73,0)-(73,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (73,1)-(73,3) = "::" - │ ├── name: :begin - │ ├── message_loc: (73,3)-(73,8) = "begin" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ ConstantPathNode (location: (75,0)-(75,8)) - │ ├── flags: newline - │ ├── parent: - │ │ @ ConstantReadNode (location: (75,0)-(75,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── name: :BEGIN - │ ├── delimiter_loc: (75,1)-(75,3) = "::" - │ └── name_loc: (75,3)-(75,8) = "BEGIN" - ├── @ CallNode (location: (77,0)-(77,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (77,0)-(77,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (77,1)-(77,3) = "::" - │ ├── name: :break - │ ├── message_loc: (77,3)-(77,8) = "break" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (79,0)-(79,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (79,0)-(79,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (79,1)-(79,3) = "::" - │ ├── name: :class - │ ├── message_loc: (79,3)-(79,8) = "class" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (81,0)-(81,6)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (81,0)-(81,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (81,1)-(81,3) = "::" - │ ├── name: :def - │ ├── message_loc: (81,3)-(81,6) = "def" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (83,0)-(83,10)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (83,0)-(83,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (83,1)-(83,3) = "::" - │ ├── name: :defined - │ ├── message_loc: (83,3)-(83,10) = "defined" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (85,0)-(85,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (85,0)-(85,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (85,1)-(85,3) = "::" - │ ├── name: :do - │ ├── message_loc: (85,3)-(85,5) = "do" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (87,0)-(87,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (87,0)-(87,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (87,1)-(87,3) = "::" - │ ├── name: :else - │ ├── message_loc: (87,3)-(87,7) = "else" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (89,0)-(89,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (89,0)-(89,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (89,1)-(89,3) = "::" - │ ├── name: :elsif - │ ├── message_loc: (89,3)-(89,8) = "elsif" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (91,0)-(91,6)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (91,0)-(91,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (91,1)-(91,3) = "::" - │ ├── name: :end - │ ├── message_loc: (91,3)-(91,6) = "end" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ ConstantPathNode (location: (93,0)-(93,6)) - │ ├── flags: newline - │ ├── parent: - │ │ @ ConstantReadNode (location: (93,0)-(93,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── name: :END - │ ├── delimiter_loc: (93,1)-(93,3) = "::" - │ └── name_loc: (93,3)-(93,6) = "END" - ├── @ CallNode (location: (95,0)-(95,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (95,0)-(95,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (95,1)-(95,3) = "::" - │ ├── name: :ensure - │ ├── message_loc: (95,3)-(95,9) = "ensure" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (97,0)-(97,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (97,0)-(97,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (97,1)-(97,3) = "::" - │ ├── name: :false - │ ├── message_loc: (97,3)-(97,8) = "false" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (99,0)-(99,6)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (99,0)-(99,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (99,1)-(99,3) = "::" - │ ├── name: :for - │ ├── message_loc: (99,3)-(99,6) = "for" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (101,0)-(101,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (101,0)-(101,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (101,1)-(101,3) = "::" - │ ├── name: :if - │ ├── message_loc: (101,3)-(101,5) = "if" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (103,0)-(103,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (103,0)-(103,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (103,1)-(103,3) = "::" - │ ├── name: :in - │ ├── message_loc: (103,3)-(103,5) = "in" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (105,0)-(105,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (105,0)-(105,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (105,1)-(105,3) = "::" - │ ├── name: :next - │ ├── message_loc: (105,3)-(105,7) = "next" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (107,0)-(107,6)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (107,0)-(107,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (107,1)-(107,3) = "::" - │ ├── name: :nil - │ ├── message_loc: (107,3)-(107,6) = "nil" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (109,0)-(109,6)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (109,0)-(109,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (109,1)-(109,3) = "::" - │ ├── name: :not - │ ├── message_loc: (109,3)-(109,6) = "not" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (111,0)-(111,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (111,0)-(111,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (111,1)-(111,3) = "::" - │ ├── name: :or - │ ├── message_loc: (111,3)-(111,5) = "or" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (113,0)-(113,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (113,0)-(113,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (113,1)-(113,3) = "::" - │ ├── name: :redo - │ ├── message_loc: (113,3)-(113,7) = "redo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (115,0)-(115,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (115,0)-(115,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (115,1)-(115,3) = "::" - │ ├── name: :rescue - │ ├── message_loc: (115,3)-(115,9) = "rescue" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (117,0)-(117,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (117,0)-(117,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (117,1)-(117,3) = "::" - │ ├── name: :retry - │ ├── message_loc: (117,3)-(117,8) = "retry" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (119,0)-(119,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (119,0)-(119,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (119,1)-(119,3) = "::" - │ ├── name: :return - │ ├── message_loc: (119,3)-(119,9) = "return" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (121,0)-(121,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (121,0)-(121,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (121,1)-(121,3) = "::" - │ ├── name: :self - │ ├── message_loc: (121,3)-(121,7) = "self" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (123,0)-(123,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (123,0)-(123,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (123,1)-(123,3) = "::" - │ ├── name: :super - │ ├── message_loc: (123,3)-(123,8) = "super" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (125,0)-(125,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (125,0)-(125,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (125,1)-(125,3) = "::" - │ ├── name: :then - │ ├── message_loc: (125,3)-(125,7) = "then" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (127,0)-(127,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (127,0)-(127,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (127,1)-(127,3) = "::" - │ ├── name: :true - │ ├── message_loc: (127,3)-(127,7) = "true" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (129,0)-(129,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (129,0)-(129,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (129,1)-(129,3) = "::" - │ ├── name: :undef - │ ├── message_loc: (129,3)-(129,8) = "undef" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (131,0)-(131,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (131,0)-(131,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (131,1)-(131,3) = "::" - │ ├── name: :unless - │ ├── message_loc: (131,3)-(131,9) = "unless" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (133,0)-(133,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (133,0)-(133,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (133,1)-(133,3) = "::" - │ ├── name: :until - │ ├── message_loc: (133,3)-(133,8) = "until" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (135,0)-(135,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (135,0)-(135,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (135,1)-(135,3) = "::" - │ ├── name: :when - │ ├── message_loc: (135,3)-(135,7) = "when" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (137,0)-(137,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (137,0)-(137,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (137,1)-(137,3) = "::" - │ ├── name: :while - │ ├── message_loc: (137,3)-(137,8) = "while" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (139,0)-(139,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (139,0)-(139,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (139,1)-(139,3) = "::" - │ ├── name: :yield - │ ├── message_loc: (139,3)-(139,8) = "yield" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (141,0)-(141,15)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (141,0)-(141,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (141,1)-(141,3) = "::" - │ ├── name: :__ENCODING__ - │ ├── message_loc: (141,3)-(141,15) = "__ENCODING__" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (143,0)-(143,11)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (143,0)-(143,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (143,1)-(143,3) = "::" - │ ├── name: :__FILE__ - │ ├── message_loc: (143,3)-(143,11) = "__FILE__" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (145,0)-(145,11)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (145,0)-(145,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (145,1)-(145,3) = "::" - │ ├── name: :__LINE__ - │ ├── message_loc: (145,3)-(145,11) = "__LINE__" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (147,0)-(147,4)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (147,0)-(147,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (147,1)-(147,3) = "::" - │ ├── name: :< - │ ├── message_loc: (147,3)-(147,4) = "<" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (149,0)-(149,6)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (149,0)-(149,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (149,1)-(149,3) = "::" - │ ├── name: :<=> - │ ├── message_loc: (149,3)-(149,6) = "<=>" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (151,0)-(151,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (151,0)-(151,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (151,1)-(151,3) = "::" - │ ├── name: :<< - │ ├── message_loc: (151,3)-(151,5) = "<<" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (153,0)-(153,4)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (153,0)-(153,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (153,1)-(153,3) = "::" - │ ├── name: :- - │ ├── message_loc: (153,3)-(153,4) = "-" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (155,0)-(155,4)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (155,0)-(155,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (155,1)-(155,3) = "::" - │ ├── name: :% - │ ├── message_loc: (155,3)-(155,4) = "%" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (157,0)-(157,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (157,0)-(157,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (157,1)-(157,3) = "::" - │ ├── name: :% - │ ├── message_loc: (157,3)-(157,4) = "%" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (157,4)-(157,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (157,4)-(157,5)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :i - │ │ ├── message_loc: (157,4)-(157,5) = "i" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (159,0)-(159,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (159,0)-(159,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (159,1)-(159,3) = "::" - │ ├── name: :% - │ ├── message_loc: (159,3)-(159,4) = "%" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (159,4)-(159,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (159,4)-(159,5)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :w - │ │ ├── message_loc: (159,4)-(159,5) = "w" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (161,0)-(161,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (161,0)-(161,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (161,1)-(161,3) = "::" - │ ├── name: :% - │ ├── message_loc: (161,3)-(161,4) = "%" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (161,4)-(161,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (161,4)-(161,5)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :x - │ │ ├── message_loc: (161,4)-(161,5) = "x" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (163,0)-(163,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (163,0)-(163,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (163,1)-(163,3) = "::" - │ ├── name: :% - │ ├── message_loc: (163,3)-(163,4) = "%" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (163,4)-(163,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ ConstantReadNode (location: (163,4)-(163,5)) - │ │ ├── flags: ∅ - │ │ └── name: :I - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (165,0)-(165,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (165,0)-(165,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (165,1)-(165,3) = "::" - │ ├── name: :% - │ ├── message_loc: (165,3)-(165,4) = "%" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (165,4)-(165,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ ConstantReadNode (location: (165,4)-(165,5)) - │ │ ├── flags: ∅ - │ │ └── name: :W - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (167,0)-(167,4)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (167,0)-(167,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (167,1)-(167,3) = "::" - │ ├── name: :| - │ ├── message_loc: (167,3)-(167,4) = "|" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (169,0)-(169,4)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (169,0)-(169,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (169,1)-(169,3) = "::" - │ ├── name: :+ - │ ├── message_loc: (169,3)-(169,4) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (171,0)-(171,4)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (171,0)-(171,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (171,1)-(171,3) = "::" - │ ├── name: :/ - │ ├── message_loc: (171,3)-(171,4) = "/" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (173,0)-(173,4)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (173,0)-(173,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (173,1)-(173,3) = "::" - │ ├── name: :* - │ ├── message_loc: (173,3)-(173,4) = "*" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (175,0)-(175,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (175,0)-(175,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (175,1)-(175,3) = "::" - │ ├── name: :** - │ ├── message_loc: (175,3)-(175,5) = "**" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (177,0)-(177,4)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (177,0)-(177,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (177,1)-(177,3) = "::" - │ ├── name: :~ - │ ├── message_loc: (177,3)-(177,4) = "~" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ ConstantPathNode (location: (179,0)-(180,1)) - │ ├── flags: newline - │ ├── parent: - │ │ @ CallNode (location: (179,0)-(179,4)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ ConstantReadNode (location: (179,0)-(179,1)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :A - │ │ ├── call_operator_loc: (179,1)-(179,3) = "::" - │ │ ├── name: :_ - │ │ ├── message_loc: (179,3)-(179,4) = "_" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── name: :C - │ ├── delimiter_loc: (179,4)-(179,6) = "::" - │ └── name_loc: (180,0)-(180,1) = "C" - └── @ RangeNode (location: (182,0)-(184,10)) - ├── flags: newline - ├── left: - │ @ CallNode (location: (182,0)-(182,4)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ ConstantReadNode (location: (182,0)-(182,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (182,1)-(182,3) = "::" - │ ├── name: :_ - │ ├── message_loc: (182,3)-(182,4) = "_" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── right: - │ @ CallNode (location: (184,0)-(184,10)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ ConstantReadNode (location: (184,0)-(184,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (184,1)-(184,3) = "::" - │ ├── name: :__END__ - │ ├── message_loc: (184,3)-(184,10) = "__END__" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── operator_loc: (182,4)-(182,6) = ".." diff --git a/test/prism/snapshots/dash_heredocs.txt b/test/prism/snapshots/dash_heredocs.txt deleted file mode 100644 index 1ca8b4f73d..0000000000 --- a/test/prism/snapshots/dash_heredocs.txt +++ /dev/null @@ -1,273 +0,0 @@ -@ ProgramNode (location: (1,0)-(57,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(57,11)) - ├── flags: ∅ - └── body: (length: 13) - ├── @ StringNode (location: (1,0)-(1,6)) - │ ├── flags: newline - │ ├── opening_loc: (1,0)-(1,6) = "<<-EOF" - │ ├── content_loc: (2,0)-(3,0) = " a\n" - │ ├── closing_loc: (3,0)-(4,0) = "EOF\n" - │ └── unescaped: " a\n" - ├── @ CallNode (location: (5,0)-(5,20)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ StringNode (location: (5,0)-(5,8)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (5,0)-(5,8) = "<<-FIRST" - │ │ ├── content_loc: (6,0)-(7,0) = " a\n" - │ │ ├── closing_loc: (7,0)-(8,0) = "FIRST\n" - │ │ └── unescaped: " a\n" - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (5,9)-(5,10) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (5,11)-(5,20)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (5,11)-(5,20)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (5,11)-(5,20) = "<<-SECOND" - │ │ ├── content_loc: (8,0)-(9,0) = " b\n" - │ │ ├── closing_loc: (9,0)-(10,0) = "SECOND\n" - │ │ └── unescaped: " b\n" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ InterpolatedXStringNode (location: (11,0)-(11,8)) - │ ├── flags: newline - │ ├── opening_loc: (11,0)-(11,8) = "<<-`EOF`" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (12,0)-(13,0)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (12,0)-(13,0) = " a\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: " a\n" - │ │ ├── @ EmbeddedStatementsNode (location: (13,0)-(13,4)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (13,0)-(13,2) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (13,2)-(13,3)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (13,2)-(13,3)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── message_loc: (13,2)-(13,3) = "b" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── closing_loc: (13,3)-(13,4) = "}" - │ │ └── @ StringNode (location: (13,4)-(14,0)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (13,4)-(14,0) = "\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\n" - │ └── closing_loc: (14,0)-(15,0) = "EOF\n" - ├── @ StringNode (location: (16,0)-(16,6)) - │ ├── flags: newline - │ ├── opening_loc: (16,0)-(16,6) = "<<-EOF" - │ ├── content_loc: (17,0)-(18,0) = " a\n" - │ ├── closing_loc: (18,0)-(19,0) = "EOF\n" - │ └── unescaped: " a\n" - ├── @ StringNode (location: (20,0)-(20,6)) - │ ├── flags: newline - │ ├── opening_loc: (20,0)-(20,6) = "<<-EOF" - │ ├── content_loc: (21,0)-(23,0) = " a\n b\n" - │ ├── closing_loc: (23,0)-(24,0) = " EOF\n" - │ └── unescaped: " a\n b\n" - ├── @ InterpolatedStringNode (location: (25,0)-(25,8)) - │ ├── flags: newline - │ ├── opening_loc: (25,0)-(25,8) = "<<-\"EOF\"" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (26,0)-(27,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (26,0)-(27,0) = " a\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: " a\n" - │ │ ├── @ EmbeddedStatementsNode (location: (27,0)-(27,4)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (27,0)-(27,2) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (27,2)-(27,3)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (27,2)-(27,3)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── message_loc: (27,2)-(27,3) = "b" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── closing_loc: (27,3)-(27,4) = "}" - │ │ └── @ StringNode (location: (27,4)-(28,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (27,4)-(28,0) = "\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\n" - │ └── closing_loc: (28,0)-(29,0) = "EOF\n" - ├── @ InterpolatedStringNode (location: (30,0)-(30,6)) - │ ├── flags: newline - │ ├── opening_loc: (30,0)-(30,6) = "<<-EOF" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (31,0)-(32,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (31,0)-(32,0) = " a\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: " a\n" - │ │ ├── @ EmbeddedStatementsNode (location: (32,0)-(32,4)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (32,0)-(32,2) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (32,2)-(32,3)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (32,2)-(32,3)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── message_loc: (32,2)-(32,3) = "b" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── closing_loc: (32,3)-(32,4) = "}" - │ │ └── @ StringNode (location: (32,4)-(33,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (32,4)-(33,0) = "\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\n" - │ └── closing_loc: (33,0)-(34,0) = "EOF\n" - ├── @ StringNode (location: (35,0)-(35,6)) - │ ├── flags: newline - │ ├── opening_loc: (35,0)-(35,2) = "%#" - │ ├── content_loc: (35,2)-(35,5) = "abc" - │ ├── closing_loc: (35,5)-(35,6) = "#" - │ └── unescaped: "abc" - ├── @ StringNode (location: (37,0)-(37,6)) - │ ├── flags: newline - │ ├── opening_loc: (37,0)-(37,6) = "<<-EOF" - │ ├── content_loc: (38,0)-(40,0) = " a\n b\n" - │ ├── closing_loc: (40,0)-(41,0) = "EOF\n" - │ └── unescaped: " a\n b\n" - ├── @ StringNode (location: (42,0)-(42,5)) - │ ├── flags: newline - │ ├── opening_loc: (42,0)-(42,5) = "<<-''" - │ ├── content_loc: (43,0)-(43,0) = "" - │ ├── closing_loc: (43,0)-(44,0) = "\n" - │ └── unescaped: "" - ├── @ StringNode (location: (45,0)-(45,8)) - │ ├── flags: newline - │ ├── opening_loc: (45,0)-(45,8) = "<<-'EOF'" - │ ├── content_loc: (46,0)-(47,0) = " a \#{1}\n" - │ ├── closing_loc: (47,0)-(48,0) = "EOF\n" - │ └── unescaped: " a \#{1}\n" - ├── @ CallNode (location: (49,0)-(49,11)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ StringNode (location: (49,0)-(49,4)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (49,0)-(49,4) = "<<-A" - │ │ ├── content_loc: (50,0)-(51,0) = " a\n" - │ │ ├── closing_loc: (51,0)-(52,0) = "A\n" - │ │ └── unescaped: " a\n" - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (49,5)-(49,6) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (49,7)-(49,11)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (49,7)-(49,11)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (49,7)-(49,11) = "<<-B" - │ │ ├── parts: (length: 3) - │ │ │ ├── @ StringNode (location: (52,0)-(53,2)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (52,0)-(53,2) = " b\n " - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: " b\n " - │ │ │ ├── @ EmbeddedStatementsNode (location: (53,2)-(54,3)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (53,2)-(53,4) = "\#{" - │ │ │ │ ├── statements: - │ │ │ │ │ @ StatementsNode (location: (53,4)-(53,5)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ IntegerNode (location: (53,4)-(53,5)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 2 - │ │ │ │ └── closing_loc: (54,2)-(54,3) = "}" - │ │ │ └── @ StringNode (location: (54,3)-(55,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (54,3)-(55,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ └── closing_loc: (55,0)-(56,0) = "B\n" - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (57,0)-(57,11)) - ├── flags: newline - ├── receiver: - │ @ StringNode (location: (57,0)-(57,4)) - │ ├── flags: ∅ - │ ├── opening_loc: (57,0)-(57,4) = "<<-A" - │ ├── content_loc: (58,0)-(59,0) = " a\n" - │ ├── closing_loc: (59,0)-(60,0) = "A\n" - │ └── unescaped: " a\n" - ├── call_operator_loc: ∅ - ├── name: :+ - ├── message_loc: (57,5)-(57,6) = "+" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (57,7)-(57,11)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ InterpolatedStringNode (location: (57,7)-(57,11)) - │ ├── flags: ∅ - │ ├── opening_loc: (57,7)-(57,11) = "<<-B" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (60,0)-(61,2)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (60,0)-(61,2) = " b\n " - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: " b\n " - │ │ ├── @ EmbeddedStatementsNode (location: (61,2)-(62,4)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (61,2)-(61,4) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (62,2)-(62,3)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (62,2)-(62,3)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ └── closing_loc: (62,3)-(62,4) = "}" - │ │ └── @ StringNode (location: (62,4)-(63,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (62,4)-(63,0) = "\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\n" - │ └── closing_loc: (63,0)-(64,0) = "B\n" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/defined.txt b/test/prism/snapshots/defined.txt deleted file mode 100644 index 761c7b2ce7..0000000000 --- a/test/prism/snapshots/defined.txt +++ /dev/null @@ -1,99 +0,0 @@ -@ ProgramNode (location: (1,0)-(10,1)) -├── flags: ∅ -├── locals: [:x] -└── statements: - @ StatementsNode (location: (1,0)-(10,1)) - ├── flags: ∅ - └── body: (length: 5) - ├── @ AndNode (location: (1,0)-(1,25)) - │ ├── flags: newline - │ ├── left: - │ │ @ DefinedNode (location: (1,0)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── lparen_loc: ∅ - │ │ ├── value: - │ │ │ @ IntegerNode (location: (1,9)-(1,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── rparen_loc: ∅ - │ │ └── keyword_loc: (1,0)-(1,8) = "defined?" - │ ├── right: - │ │ @ DefinedNode (location: (1,15)-(1,25)) - │ │ ├── flags: ∅ - │ │ ├── lparen_loc: ∅ - │ │ ├── value: - │ │ │ @ IntegerNode (location: (1,24)-(1,25)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── rparen_loc: ∅ - │ │ └── keyword_loc: (1,15)-(1,23) = "defined?" - │ └── operator_loc: (1,11)-(1,14) = "and" - ├── @ DefinedNode (location: (3,0)-(3,16)) - │ ├── flags: newline - │ ├── lparen_loc: (3,8)-(3,9) = "(" - │ ├── value: - │ │ @ LocalVariableOperatorWriteNode (location: (3,9)-(3,15)) - │ │ ├── flags: ∅ - │ │ ├── name_loc: (3,9)-(3,10) = "x" - │ │ ├── binary_operator_loc: (3,11)-(3,13) = "%=" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (3,14)-(3,15)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── name: :x - │ │ ├── binary_operator: :% - │ │ └── depth: 0 - │ ├── rparen_loc: (3,15)-(3,16) = ")" - │ └── keyword_loc: (3,0)-(3,8) = "defined?" - ├── @ DefinedNode (location: (5,0)-(5,21)) - │ ├── flags: newline - │ ├── lparen_loc: (5,8)-(5,9) = "(" - │ ├── value: - │ │ @ AndNode (location: (5,9)-(5,20)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ CallNode (location: (5,9)-(5,12)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (5,9)-(5,12) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── right: - │ │ │ @ CallNode (location: (5,17)-(5,20)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (5,17)-(5,20) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (5,13)-(5,16) = "and" - │ ├── rparen_loc: (5,20)-(5,21) = ")" - │ └── keyword_loc: (5,0)-(5,8) = "defined?" - ├── @ DefinedNode (location: (7,0)-(7,10)) - │ ├── flags: newline - │ ├── lparen_loc: ∅ - │ ├── value: - │ │ @ IntegerNode (location: (7,9)-(7,10)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── rparen_loc: ∅ - │ └── keyword_loc: (7,0)-(7,8) = "defined?" - └── @ DefinedNode (location: (9,0)-(10,1)) - ├── flags: newline - ├── lparen_loc: (9,8)-(9,9) = "(" - ├── value: - │ @ StringNode (location: (9,9)-(9,14)) - │ ├── flags: ∅ - │ ├── opening_loc: (9,9)-(9,10) = "\"" - │ ├── content_loc: (9,10)-(9,13) = "foo" - │ ├── closing_loc: (9,13)-(9,14) = "\"" - │ └── unescaped: "foo" - ├── rparen_loc: (10,0)-(10,1) = ")" - └── keyword_loc: (9,0)-(9,8) = "defined?" diff --git a/test/prism/snapshots/dos_endings.txt b/test/prism/snapshots/dos_endings.txt deleted file mode 100644 index 69d6b7cd7e..0000000000 --- a/test/prism/snapshots/dos_endings.txt +++ /dev/null @@ -1,114 +0,0 @@ -@ ProgramNode (location: (1,0)-(17,20)) -├── flags: ∅ -├── locals: [:x, :a] -└── statements: - @ StatementsNode (location: (1,0)-(17,20)) - ├── flags: ∅ - └── body: (length: 5) - ├── @ CallNode (location: (1,0)-(2,12)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :puts - │ ├── message_loc: (1,0)-(1,4) = "puts" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,5)-(2,12)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (1,5)-(2,12)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: ∅ - │ │ ├── parts: (length: 2) - │ │ │ ├── @ StringNode (location: (1,5)-(1,9)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: (1,5)-(1,6) = "\"" - │ │ │ │ ├── content_loc: (1,6)-(1,8) = "hi" - │ │ │ │ ├── closing_loc: (1,8)-(1,9) = "\"" - │ │ │ │ └── unescaped: "hi" - │ │ │ └── @ StringNode (location: (2,5)-(2,12)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: (2,5)-(2,6) = "\"" - │ │ │ ├── content_loc: (2,6)-(2,11) = "there" - │ │ │ ├── closing_loc: (2,11)-(2,12) = "\"" - │ │ │ └── unescaped: "there" - │ │ └── closing_loc: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ ArrayNode (location: (4,0)-(5,2)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 1) - │ │ └── @ SymbolNode (location: (4,3)-(5,1)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (4,3)-(5,1) = "a\\\r\nb" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a\nb" - │ ├── opening_loc: (4,0)-(4,3) = "%I{" - │ └── closing_loc: (5,1)-(5,2) = "}" - ├── @ StringNode (location: (7,0)-(7,4)) - │ ├── flags: newline - │ ├── opening_loc: (7,0)-(7,4) = "<<-E" - │ ├── content_loc: (8,0)-(11,0) = " 1 \\\r\n 2\r\n 3\r\n" - │ ├── closing_loc: (11,0)-(12,0) = "E\r\n" - │ └── unescaped: " 1 2\n 3\n" - ├── @ LocalVariableWriteNode (location: (13,0)-(15,0)) - │ ├── flags: newline - │ ├── name: :x - │ ├── depth: 0 - │ ├── name_loc: (13,0)-(13,1) = "x" - │ ├── value: - │ │ @ StringNode (location: (13,4)-(15,0)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (13,4)-(14,0) = "%\r\n" - │ │ ├── content_loc: (14,0)-(14,0) = "" - │ │ ├── closing_loc: (14,0)-(15,0) = "\r\n" - │ │ └── unescaped: "" - │ └── operator_loc: (13,2)-(13,3) = "=" - └── @ LocalVariableWriteNode (location: (17,0)-(17,20)) - ├── flags: newline - ├── name: :a - ├── depth: 0 - ├── name_loc: (17,0)-(17,1) = "a" - ├── value: - │ @ CallNode (location: (17,4)-(17,20)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (17,4)-(17,7) = "foo" - │ ├── opening_loc: (17,7)-(17,8) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (17,8)-(17,19)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (17,8)-(17,19)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ InterpolatedStringNode (location: (17,8)-(17,14)) - │ │ │ ├── flags: static_literal - │ │ │ ├── opening_loc: (17,8)-(17,14) = "<<~EOF" - │ │ │ ├── parts: (length: 2) - │ │ │ │ ├── @ StringNode (location: (18,0)-(19,0)) - │ │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── content_loc: (18,0)-(19,0) = "\r\n" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "\n" - │ │ │ │ └── @ StringNode (location: (19,0)-(20,0)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (19,0)-(20,0) = " baz\r\n" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "baz\n" - │ │ │ └── closing_loc: (20,0)-(21,0) = " EOF\r\n" - │ │ ├── call_operator_loc: (17,14)-(17,15) = "." - │ │ ├── name: :chop - │ │ ├── message_loc: (17,15)-(17,19) = "chop" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (17,19)-(17,20) = ")" - │ └── block: ∅ - └── operator_loc: (17,2)-(17,3) = "=" diff --git a/test/prism/snapshots/dstring.txt b/test/prism/snapshots/dstring.txt deleted file mode 100644 index b3ece40513..0000000000 --- a/test/prism/snapshots/dstring.txt +++ /dev/null @@ -1,89 +0,0 @@ -@ ProgramNode (location: (1,0)-(29,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(29,1)) - ├── flags: ∅ - └── body: (length: 8) - ├── @ StringNode (location: (1,0)-(2,6)) - │ ├── flags: newline - │ ├── opening_loc: (1,0)-(1,1) = "\"" - │ ├── content_loc: (1,1)-(2,5) = "foo\n bar" - │ ├── closing_loc: (2,5)-(2,6) = "\"" - │ └── unescaped: "foo\n bar" - ├── @ InterpolatedStringNode (location: (4,0)-(5,9)) - │ ├── flags: newline - │ ├── opening_loc: (4,0)-(4,1) = "\"" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (4,1)-(5,2)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (4,1)-(5,2) = "foo\n " - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo\n " - │ │ └── @ EmbeddedStatementsNode (location: (5,2)-(5,8)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (5,2)-(5,4) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (5,4)-(5,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (5,4)-(5,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (5,4)-(5,7) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── closing_loc: (5,7)-(5,8) = "}" - │ └── closing_loc: (5,8)-(5,9) = "\"" - ├── @ InterpolatedStringNode (location: (7,0)-(9,2)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: ∅ - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (7,0)-(8,2)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: (7,0)-(7,1) = "\"" - │ │ │ ├── content_loc: (7,1)-(8,1) = "fo\no" - │ │ │ ├── closing_loc: (8,1)-(8,2) = "\"" - │ │ │ └── unescaped: "fo\no" - │ │ └── @ StringNode (location: (8,3)-(9,2)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: (8,3)-(8,4) = "\"" - │ │ ├── content_loc: (8,4)-(9,1) = "ba\nr" - │ │ ├── closing_loc: (9,1)-(9,2) = "\"" - │ │ └── unescaped: "ba\nr" - │ └── closing_loc: ∅ - ├── @ StringNode (location: (11,0)-(13,1)) - │ ├── flags: newline - │ ├── opening_loc: (11,0)-(11,1) = "\"" - │ ├── content_loc: (11,1)-(13,0) = "\nfoo\\\n" - │ ├── closing_loc: (13,0)-(13,1) = "\"" - │ └── unescaped: "\nfoo" - ├── @ StringNode (location: (15,0)-(17,1)) - │ ├── flags: newline - │ ├── opening_loc: (15,0)-(15,1) = "\"" - │ ├── content_loc: (15,1)-(17,0) = "\nfoo\\\\\n" - │ ├── closing_loc: (17,0)-(17,1) = "\"" - │ └── unescaped: "\nfoo\\\n" - ├── @ StringNode (location: (19,0)-(21,1)) - │ ├── flags: newline - │ ├── opening_loc: (19,0)-(19,1) = "\"" - │ ├── content_loc: (19,1)-(21,0) = "\nfoo\\\\\\\n" - │ ├── closing_loc: (21,0)-(21,1) = "\"" - │ └── unescaped: "\nfoo\\" - ├── @ StringNode (location: (23,0)-(25,1)) - │ ├── flags: newline - │ ├── opening_loc: (23,0)-(23,1) = "\"" - │ ├── content_loc: (23,1)-(25,0) = "\nfoo\\\\\\\\\n" - │ ├── closing_loc: (25,0)-(25,1) = "\"" - │ └── unescaped: "\nfoo\\\\\n" - └── @ StringNode (location: (27,0)-(29,1)) - ├── flags: newline - ├── opening_loc: (27,0)-(27,1) = "\"" - ├── content_loc: (27,1)-(29,0) = "\nfoo\\\\\\\\\\\n" - ├── closing_loc: (29,0)-(29,1) = "\"" - └── unescaped: "\nfoo\\\\" diff --git a/test/prism/snapshots/dsym_str.txt b/test/prism/snapshots/dsym_str.txt deleted file mode 100644 index 835cbbdc8a..0000000000 --- a/test/prism/snapshots/dsym_str.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ SymbolNode (location: (1,0)-(2,6)) - ├── flags: newline, static_literal, forced_us_ascii_encoding - ├── opening_loc: (1,0)-(1,2) = ":\"" - ├── value_loc: (1,2)-(2,5) = "foo\n bar" - ├── closing_loc: (2,5)-(2,6) = "\"" - └── unescaped: "foo\n bar" diff --git a/test/prism/snapshots/embdoc_no_newline_at_end.txt b/test/prism/snapshots/embdoc_no_newline_at_end.txt deleted file mode 100644 index 5756285aaf..0000000000 --- a/test/prism/snapshots/embdoc_no_newline_at_end.txt +++ /dev/null @@ -1,7 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,0)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,0)) - ├── flags: ∅ - └── body: (length: 0) diff --git a/test/prism/snapshots/emoji_method_calls.txt b/test/prism/snapshots/emoji_method_calls.txt deleted file mode 100644 index f6f1bc4162..0000000000 --- a/test/prism/snapshots/emoji_method_calls.txt +++ /dev/null @@ -1,33 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,12)) - ├── flags: newline, attribute_write - ├── receiver: - │ @ CallNode (location: (1,0)-(1,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,0)-(1,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,3)-(1,4) = "." - ├── name: :🌊= - ├── message_loc: (1,4)-(1,8) = "🌊" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,11)-(1,12)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,11)-(1,12)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/endless_methods.txt b/test/prism/snapshots/endless_methods.txt deleted file mode 100644 index 29f701ed17..0000000000 --- a/test/prism/snapshots/endless_methods.txt +++ /dev/null @@ -1,115 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,22)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,22)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ DefNode (location: (1,0)-(1,11)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (1,4)-(1,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,10)-(1,11)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (1,10)-(1,11)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── locals: [] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: (1,8)-(1,9) = "=" - │ └── end_keyword_loc: ∅ - ├── @ DefNode (location: (3,0)-(3,14)) - │ ├── flags: newline - │ ├── name: :bar - │ ├── name_loc: (3,4)-(3,7) = "bar" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (3,10)-(3,14)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (3,10)-(3,14)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :A - │ │ ├── message_loc: (3,10)-(3,11) = "A" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (3,12)-(3,14)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ StringNode (location: (3,12)-(3,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (3,12)-(3,13) = "\"" - │ │ │ ├── content_loc: (3,13)-(3,13) = "" - │ │ │ ├── closing_loc: (3,13)-(3,14) = "\"" - │ │ │ └── unescaped: "" - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (3,0)-(3,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: (3,8)-(3,9) = "=" - │ └── end_keyword_loc: ∅ - └── @ DefNode (location: (5,0)-(5,22)) - ├── flags: newline - ├── name: :method - ├── name_loc: (5,4)-(5,10) = "method" - ├── receiver: ∅ - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (5,13)-(5,22)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (5,13)-(5,22)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ CallNode (location: (5,13)-(5,18)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ IntegerNode (location: (5,13)-(5,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :+ - │ │ ├── message_loc: (5,15)-(5,16) = "+" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (5,17)-(5,18)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (5,17)-(5,18)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (5,19)-(5,20) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (5,21)-(5,22)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (5,21)-(5,22)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 3 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── locals: [] - ├── def_keyword_loc: (5,0)-(5,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: (5,11)-(5,12) = "=" - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/endless_range_in_conditional.txt b/test/prism/snapshots/endless_range_in_conditional.txt deleted file mode 100644 index e3b0df7408..0000000000 --- a/test/prism/snapshots/endless_range_in_conditional.txt +++ /dev/null @@ -1,58 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,12)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ IfNode (location: (1,0)-(1,13)) - │ ├── flags: newline - │ ├── if_keyword_loc: (1,0)-(1,2) = "if" - │ ├── predicate: - │ │ @ FlipFlopNode (location: (1,3)-(1,7)) - │ │ ├── flags: static_literal - │ │ ├── left: - │ │ │ @ IntegerNode (location: (1,3)-(1,4)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: - │ │ │ @ IntegerNode (location: (1,6)-(1,7)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── operator_loc: (1,4)-(1,6) = ".." - │ ├── then_keyword_loc: ∅ - │ ├── statements: ∅ - │ ├── subsequent: ∅ - │ └── end_keyword_loc: (1,10)-(1,13) = "end" - ├── @ IfNode (location: (2,0)-(2,12)) - │ ├── flags: newline - │ ├── if_keyword_loc: (2,0)-(2,2) = "if" - │ ├── predicate: - │ │ @ FlipFlopNode (location: (2,3)-(2,6)) - │ │ ├── flags: static_literal - │ │ ├── left: ∅ - │ │ ├── right: - │ │ │ @ IntegerNode (location: (2,5)-(2,6)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── operator_loc: (2,3)-(2,5) = ".." - │ ├── then_keyword_loc: ∅ - │ ├── statements: ∅ - │ ├── subsequent: ∅ - │ └── end_keyword_loc: (2,9)-(2,12) = "end" - └── @ IfNode (location: (3,0)-(3,12)) - ├── flags: newline - ├── if_keyword_loc: (3,0)-(3,2) = "if" - ├── predicate: - │ @ FlipFlopNode (location: (3,3)-(3,6)) - │ ├── flags: static_literal - │ ├── left: - │ │ @ IntegerNode (location: (3,3)-(3,4)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── right: ∅ - │ └── operator_loc: (3,4)-(3,6) = ".." - ├── then_keyword_loc: ∅ - ├── statements: ∅ - ├── subsequent: ∅ - └── end_keyword_loc: (3,9)-(3,12) = "end" diff --git a/test/prism/snapshots/for.txt b/test/prism/snapshots/for.txt deleted file mode 100644 index 5558209826..0000000000 --- a/test/prism/snapshots/for.txt +++ /dev/null @@ -1,219 +0,0 @@ -@ ProgramNode (location: (1,0)-(19,22)) -├── flags: ∅ -├── locals: [:i, :j, :k] -└── statements: - @ StatementsNode (location: (1,0)-(19,22)) - ├── flags: ∅ - └── body: (length: 6) - ├── @ ForNode (location: (1,0)-(3,3)) - │ ├── flags: newline - │ ├── index: - │ │ @ LocalVariableTargetNode (location: (1,4)-(1,5)) - │ │ ├── flags: ∅ - │ │ ├── name: :i - │ │ └── depth: 0 - │ ├── collection: - │ │ @ RangeNode (location: (1,9)-(1,14)) - │ │ ├── flags: static_literal - │ │ ├── left: - │ │ │ @ IntegerNode (location: (1,9)-(1,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: - │ │ │ @ IntegerNode (location: (1,12)-(1,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 10 - │ │ └── operator_loc: (1,10)-(1,12) = ".." - │ ├── statements: - │ │ @ StatementsNode (location: (2,0)-(2,1)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (2,0)-(2,1)) - │ │ ├── flags: newline - │ │ ├── name: :i - │ │ └── depth: 0 - │ ├── for_keyword_loc: (1,0)-(1,3) = "for" - │ ├── in_keyword_loc: (1,6)-(1,8) = "in" - │ ├── do_keyword_loc: ∅ - │ └── end_keyword_loc: (3,0)-(3,3) = "end" - ├── @ ForNode (location: (5,0)-(5,22)) - │ ├── flags: newline - │ ├── index: - │ │ @ LocalVariableTargetNode (location: (5,4)-(5,5)) - │ │ ├── flags: ∅ - │ │ ├── name: :i - │ │ └── depth: 0 - │ ├── collection: - │ │ @ RangeNode (location: (5,9)-(5,14)) - │ │ ├── flags: static_literal - │ │ ├── left: - │ │ │ @ IntegerNode (location: (5,9)-(5,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: - │ │ │ @ IntegerNode (location: (5,12)-(5,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 10 - │ │ └── operator_loc: (5,10)-(5,12) = ".." - │ ├── statements: - │ │ @ StatementsNode (location: (5,16)-(5,17)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (5,16)-(5,17)) - │ │ ├── flags: newline - │ │ ├── name: :i - │ │ └── depth: 0 - │ ├── for_keyword_loc: (5,0)-(5,3) = "for" - │ ├── in_keyword_loc: (5,6)-(5,8) = "in" - │ ├── do_keyword_loc: ∅ - │ └── end_keyword_loc: (5,19)-(5,22) = "end" - ├── @ ForNode (location: (7,0)-(9,3)) - │ ├── flags: newline - │ ├── index: - │ │ @ MultiTargetNode (location: (7,4)-(7,7)) - │ │ ├── flags: ∅ - │ │ ├── lefts: (length: 2) - │ │ │ ├── @ LocalVariableTargetNode (location: (7,4)-(7,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :i - │ │ │ │ └── depth: 0 - │ │ │ └── @ LocalVariableTargetNode (location: (7,6)-(7,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :j - │ │ │ └── depth: 0 - │ │ ├── rest: ∅ - │ │ ├── rights: (length: 0) - │ │ ├── lparen_loc: ∅ - │ │ └── rparen_loc: ∅ - │ ├── collection: - │ │ @ RangeNode (location: (7,11)-(7,16)) - │ │ ├── flags: static_literal - │ │ ├── left: - │ │ │ @ IntegerNode (location: (7,11)-(7,12)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: - │ │ │ @ IntegerNode (location: (7,14)-(7,16)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 10 - │ │ └── operator_loc: (7,12)-(7,14) = ".." - │ ├── statements: - │ │ @ StatementsNode (location: (8,0)-(8,1)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (8,0)-(8,1)) - │ │ ├── flags: newline - │ │ ├── name: :i - │ │ └── depth: 0 - │ ├── for_keyword_loc: (7,0)-(7,3) = "for" - │ ├── in_keyword_loc: (7,8)-(7,10) = "in" - │ ├── do_keyword_loc: ∅ - │ └── end_keyword_loc: (9,0)-(9,3) = "end" - ├── @ ForNode (location: (11,0)-(13,3)) - │ ├── flags: newline - │ ├── index: - │ │ @ MultiTargetNode (location: (11,4)-(11,9)) - │ │ ├── flags: ∅ - │ │ ├── lefts: (length: 3) - │ │ │ ├── @ LocalVariableTargetNode (location: (11,4)-(11,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :i - │ │ │ │ └── depth: 0 - │ │ │ ├── @ LocalVariableTargetNode (location: (11,6)-(11,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :j - │ │ │ │ └── depth: 0 - │ │ │ └── @ LocalVariableTargetNode (location: (11,8)-(11,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :k - │ │ │ └── depth: 0 - │ │ ├── rest: ∅ - │ │ ├── rights: (length: 0) - │ │ ├── lparen_loc: ∅ - │ │ └── rparen_loc: ∅ - │ ├── collection: - │ │ @ RangeNode (location: (11,13)-(11,18)) - │ │ ├── flags: static_literal - │ │ ├── left: - │ │ │ @ IntegerNode (location: (11,13)-(11,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: - │ │ │ @ IntegerNode (location: (11,16)-(11,18)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 10 - │ │ └── operator_loc: (11,14)-(11,16) = ".." - │ ├── statements: - │ │ @ StatementsNode (location: (12,0)-(12,1)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (12,0)-(12,1)) - │ │ ├── flags: newline - │ │ ├── name: :i - │ │ └── depth: 0 - │ ├── for_keyword_loc: (11,0)-(11,3) = "for" - │ ├── in_keyword_loc: (11,10)-(11,12) = "in" - │ ├── do_keyword_loc: ∅ - │ └── end_keyword_loc: (13,0)-(13,3) = "end" - ├── @ ForNode (location: (15,0)-(17,3)) - │ ├── flags: newline - │ ├── index: - │ │ @ LocalVariableTargetNode (location: (15,4)-(15,5)) - │ │ ├── flags: ∅ - │ │ ├── name: :i - │ │ └── depth: 0 - │ ├── collection: - │ │ @ RangeNode (location: (15,9)-(15,14)) - │ │ ├── flags: static_literal - │ │ ├── left: - │ │ │ @ IntegerNode (location: (15,9)-(15,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: - │ │ │ @ IntegerNode (location: (15,12)-(15,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 10 - │ │ └── operator_loc: (15,10)-(15,12) = ".." - │ ├── statements: - │ │ @ StatementsNode (location: (16,0)-(16,1)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (16,0)-(16,1)) - │ │ ├── flags: newline - │ │ ├── name: :i - │ │ └── depth: 0 - │ ├── for_keyword_loc: (15,0)-(15,3) = "for" - │ ├── in_keyword_loc: (15,6)-(15,8) = "in" - │ ├── do_keyword_loc: (15,15)-(15,17) = "do" - │ └── end_keyword_loc: (17,0)-(17,3) = "end" - └── @ ForNode (location: (19,0)-(19,22)) - ├── flags: newline - ├── index: - │ @ LocalVariableTargetNode (location: (19,4)-(19,5)) - │ ├── flags: ∅ - │ ├── name: :i - │ └── depth: 0 - ├── collection: - │ @ RangeNode (location: (19,9)-(19,14)) - │ ├── flags: static_literal - │ ├── left: - │ │ @ IntegerNode (location: (19,9)-(19,10)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── right: - │ │ @ IntegerNode (location: (19,12)-(19,14)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 10 - │ └── operator_loc: (19,10)-(19,12) = ".." - ├── statements: - │ @ StatementsNode (location: (19,16)-(19,17)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ LocalVariableReadNode (location: (19,16)-(19,17)) - │ ├── flags: newline - │ ├── name: :i - │ └── depth: 0 - ├── for_keyword_loc: (19,0)-(19,3) = "for" - ├── in_keyword_loc: (19,6)-(19,8) = "in" - ├── do_keyword_loc: ∅ - └── end_keyword_loc: (19,19)-(19,22) = "end" diff --git a/test/prism/snapshots/global_variables.txt b/test/prism/snapshots/global_variables.txt deleted file mode 100644 index 17b7728a32..0000000000 --- a/test/prism/snapshots/global_variables.txt +++ /dev/null @@ -1,217 +0,0 @@ -@ ProgramNode (location: (1,0)-(93,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(93,4)) - ├── flags: ∅ - └── body: (length: 47) - ├── @ GlobalVariableReadNode (location: (1,0)-(1,16)) - │ ├── flags: newline - │ └── name: :$global_variable - ├── @ GlobalVariableReadNode (location: (3,0)-(3,2)) - │ ├── flags: newline - │ └── name: :$_ - ├── @ GlobalVariableReadNode (location: (5,0)-(5,3)) - │ ├── flags: newline - │ └── name: :$-w - ├── @ GlobalVariableReadNode (location: (7,0)-(7,10)) - │ ├── flags: newline - │ └── name: :$LOAD_PATH - ├── @ GlobalVariableReadNode (location: (9,0)-(9,6)) - │ ├── flags: newline - │ └── name: :$stdin - ├── @ GlobalVariableReadNode (location: (11,0)-(11,7)) - │ ├── flags: newline - │ └── name: :$stdout - ├── @ GlobalVariableReadNode (location: (13,0)-(13,7)) - │ ├── flags: newline - │ └── name: :$stderr - ├── @ GlobalVariableReadNode (location: (15,0)-(15,2)) - │ ├── flags: newline - │ └── name: :$! - ├── @ GlobalVariableReadNode (location: (17,0)-(17,2)) - │ ├── flags: newline - │ └── name: :$? - ├── @ GlobalVariableReadNode (location: (19,0)-(19,2)) - │ ├── flags: newline - │ └── name: :$~ - ├── @ BackReferenceReadNode (location: (21,0)-(21,2)) - │ ├── flags: newline - │ └── name: :$& - ├── @ BackReferenceReadNode (location: (23,0)-(23,2)) - │ ├── flags: newline - │ └── name: :$` - ├── @ BackReferenceReadNode (location: (25,0)-(25,2)) - │ ├── flags: newline - │ └── name: :$' - ├── @ BackReferenceReadNode (location: (27,0)-(27,2)) - │ ├── flags: newline - │ └── name: :$+ - ├── @ GlobalVariableReadNode (location: (29,0)-(29,2)) - │ ├── flags: newline - │ └── name: :$: - ├── @ GlobalVariableReadNode (location: (31,0)-(31,2)) - │ ├── flags: newline - │ └── name: :$; - ├── @ GlobalVariableReadNode (location: (33,0)-(33,2)) - │ ├── flags: newline - │ └── name: :$, - ├── @ GlobalVariableReadNode (location: (35,0)-(35,6)) - │ ├── flags: newline - │ └── name: :$DEBUG - ├── @ GlobalVariableReadNode (location: (37,0)-(37,9)) - │ ├── flags: newline - │ └── name: :$FILENAME - ├── @ GlobalVariableReadNode (location: (39,0)-(39,2)) - │ ├── flags: newline - │ └── name: :$0 - ├── @ GlobalVariableReadNode (location: (41,0)-(41,3)) - │ ├── flags: newline - │ └── name: :$-0 - ├── @ GlobalVariableReadNode (location: (43,0)-(43,16)) - │ ├── flags: newline - │ └── name: :$LOADED_FEATURES - ├── @ GlobalVariableReadNode (location: (45,0)-(45,8)) - │ ├── flags: newline - │ └── name: :$VERBOSE - ├── @ GlobalVariableReadNode (location: (47,0)-(47,3)) - │ ├── flags: newline - │ └── name: :$-K - ├── @ SymbolNode (location: (49,0)-(49,17)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (49,0)-(49,1) = ":" - │ ├── value_loc: (49,1)-(49,17) = "$global_variable" - │ ├── closing_loc: ∅ - │ └── unescaped: "$global_variable" - ├── @ SymbolNode (location: (51,0)-(51,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (51,0)-(51,1) = ":" - │ ├── value_loc: (51,1)-(51,3) = "$_" - │ ├── closing_loc: ∅ - │ └── unescaped: "$_" - ├── @ SymbolNode (location: (53,0)-(53,4)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (53,0)-(53,1) = ":" - │ ├── value_loc: (53,1)-(53,4) = "$-w" - │ ├── closing_loc: ∅ - │ └── unescaped: "$-w" - ├── @ SymbolNode (location: (55,0)-(55,11)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (55,0)-(55,1) = ":" - │ ├── value_loc: (55,1)-(55,11) = "$LOAD_PATH" - │ ├── closing_loc: ∅ - │ └── unescaped: "$LOAD_PATH" - ├── @ SymbolNode (location: (57,0)-(57,7)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (57,0)-(57,1) = ":" - │ ├── value_loc: (57,1)-(57,7) = "$stdin" - │ ├── closing_loc: ∅ - │ └── unescaped: "$stdin" - ├── @ SymbolNode (location: (59,0)-(59,8)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (59,0)-(59,1) = ":" - │ ├── value_loc: (59,1)-(59,8) = "$stdout" - │ ├── closing_loc: ∅ - │ └── unescaped: "$stdout" - ├── @ SymbolNode (location: (61,0)-(61,8)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (61,0)-(61,1) = ":" - │ ├── value_loc: (61,1)-(61,8) = "$stderr" - │ ├── closing_loc: ∅ - │ └── unescaped: "$stderr" - ├── @ SymbolNode (location: (63,0)-(63,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (63,0)-(63,1) = ":" - │ ├── value_loc: (63,1)-(63,3) = "$!" - │ ├── closing_loc: ∅ - │ └── unescaped: "$!" - ├── @ SymbolNode (location: (65,0)-(65,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (65,0)-(65,1) = ":" - │ ├── value_loc: (65,1)-(65,3) = "$?" - │ ├── closing_loc: ∅ - │ └── unescaped: "$?" - ├── @ SymbolNode (location: (67,0)-(67,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (67,0)-(67,1) = ":" - │ ├── value_loc: (67,1)-(67,3) = "$~" - │ ├── closing_loc: ∅ - │ └── unescaped: "$~" - ├── @ SymbolNode (location: (69,0)-(69,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (69,0)-(69,1) = ":" - │ ├── value_loc: (69,1)-(69,3) = "$&" - │ ├── closing_loc: ∅ - │ └── unescaped: "$&" - ├── @ SymbolNode (location: (71,0)-(71,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (71,0)-(71,1) = ":" - │ ├── value_loc: (71,1)-(71,3) = "$`" - │ ├── closing_loc: ∅ - │ └── unescaped: "$`" - ├── @ SymbolNode (location: (73,0)-(73,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (73,0)-(73,1) = ":" - │ ├── value_loc: (73,1)-(73,3) = "$'" - │ ├── closing_loc: ∅ - │ └── unescaped: "$'" - ├── @ SymbolNode (location: (75,0)-(75,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (75,0)-(75,1) = ":" - │ ├── value_loc: (75,1)-(75,3) = "$+" - │ ├── closing_loc: ∅ - │ └── unescaped: "$+" - ├── @ SymbolNode (location: (77,0)-(77,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (77,0)-(77,1) = ":" - │ ├── value_loc: (77,1)-(77,3) = "$:" - │ ├── closing_loc: ∅ - │ └── unescaped: "$:" - ├── @ SymbolNode (location: (79,0)-(79,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (79,0)-(79,1) = ":" - │ ├── value_loc: (79,1)-(79,3) = "$;" - │ ├── closing_loc: ∅ - │ └── unescaped: "$;" - ├── @ SymbolNode (location: (81,0)-(81,7)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (81,0)-(81,1) = ":" - │ ├── value_loc: (81,1)-(81,7) = "$DEBUG" - │ ├── closing_loc: ∅ - │ └── unescaped: "$DEBUG" - ├── @ SymbolNode (location: (83,0)-(83,10)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (83,0)-(83,1) = ":" - │ ├── value_loc: (83,1)-(83,10) = "$FILENAME" - │ ├── closing_loc: ∅ - │ └── unescaped: "$FILENAME" - ├── @ SymbolNode (location: (85,0)-(85,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (85,0)-(85,1) = ":" - │ ├── value_loc: (85,1)-(85,3) = "$0" - │ ├── closing_loc: ∅ - │ └── unescaped: "$0" - ├── @ SymbolNode (location: (87,0)-(87,4)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (87,0)-(87,1) = ":" - │ ├── value_loc: (87,1)-(87,4) = "$-0" - │ ├── closing_loc: ∅ - │ └── unescaped: "$-0" - ├── @ SymbolNode (location: (89,0)-(89,17)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (89,0)-(89,1) = ":" - │ ├── value_loc: (89,1)-(89,17) = "$LOADED_FEATURES" - │ ├── closing_loc: ∅ - │ └── unescaped: "$LOADED_FEATURES" - ├── @ SymbolNode (location: (91,0)-(91,9)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (91,0)-(91,1) = ":" - │ ├── value_loc: (91,1)-(91,9) = "$VERBOSE" - │ ├── closing_loc: ∅ - │ └── unescaped: "$VERBOSE" - └── @ SymbolNode (location: (93,0)-(93,4)) - ├── flags: newline, static_literal, forced_us_ascii_encoding - ├── opening_loc: (93,0)-(93,1) = ":" - ├── value_loc: (93,1)-(93,4) = "$-K" - ├── closing_loc: ∅ - └── unescaped: "$-K" diff --git a/test/prism/snapshots/hashes.txt b/test/prism/snapshots/hashes.txt deleted file mode 100644 index 8462c28994..0000000000 --- a/test/prism/snapshots/hashes.txt +++ /dev/null @@ -1,422 +0,0 @@ -@ ProgramNode (location: (1,0)-(28,9)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(28,9)) - ├── flags: ∅ - └── body: (length: 10) - ├── @ HashNode (location: (1,0)-(1,2)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (1,0)-(1,1) = "{" - │ ├── elements: (length: 0) - │ └── closing_loc: (1,1)-(1,2) = "}" - ├── @ HashNode (location: (3,0)-(4,1)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (3,0)-(3,1) = "{" - │ ├── elements: (length: 0) - │ └── closing_loc: (4,0)-(4,1) = "}" - ├── @ HashNode (location: (6,0)-(6,18)) - │ ├── flags: newline - │ ├── opening_loc: (6,0)-(6,1) = "{" - │ ├── elements: (length: 2) - │ │ ├── @ AssocNode (location: (6,2)-(6,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ CallNode (location: (6,2)-(6,3)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ ├── message_loc: (6,2)-(6,3) = "a" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── value: - │ │ │ │ @ CallNode (location: (6,7)-(6,8)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── message_loc: (6,7)-(6,8) = "b" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── operator_loc: (6,4)-(6,6) = "=>" - │ │ └── @ AssocNode (location: (6,10)-(6,16)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ CallNode (location: (6,10)-(6,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :c - │ │ │ ├── message_loc: (6,10)-(6,11) = "c" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── value: - │ │ │ @ CallNode (location: (6,15)-(6,16)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :d - │ │ │ ├── message_loc: (6,15)-(6,16) = "d" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (6,12)-(6,14) = "=>" - │ └── closing_loc: (6,17)-(6,18) = "}" - ├── @ HashNode (location: (8,0)-(8,15)) - │ ├── flags: newline - │ ├── opening_loc: (8,0)-(8,1) = "{" - │ ├── elements: (length: 2) - │ │ ├── @ AssocNode (location: (8,2)-(8,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ CallNode (location: (8,2)-(8,3)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ ├── message_loc: (8,2)-(8,3) = "a" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── value: - │ │ │ │ @ CallNode (location: (8,7)-(8,8)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── message_loc: (8,7)-(8,8) = "b" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── operator_loc: (8,4)-(8,6) = "=>" - │ │ └── @ AssocSplatNode (location: (8,10)-(8,13)) - │ │ ├── flags: ∅ - │ │ ├── value: - │ │ │ @ CallNode (location: (8,12)-(8,13)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :c - │ │ │ ├── message_loc: (8,12)-(8,13) = "c" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (8,10)-(8,12) = "**" - │ └── closing_loc: (8,14)-(8,15) = "}" - ├── @ HashNode (location: (10,0)-(16,5)) - │ ├── flags: newline - │ ├── opening_loc: (10,0)-(10,1) = "{" - │ ├── elements: (length: 2) - │ │ ├── @ AssocNode (location: (11,6)-(11,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (11,6)-(11,8)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (11,6)-(11,7) = "a" - │ │ │ │ ├── closing_loc: (11,7)-(11,8) = ":" - │ │ │ │ └── unescaped: "a" - │ │ │ ├── value: - │ │ │ │ @ CallNode (location: (11,9)-(11,10)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── message_loc: (11,9)-(11,10) = "b" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── operator_loc: ∅ - │ │ └── @ AssocNode (location: (12,6)-(12,10)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ SymbolNode (location: (12,6)-(12,8)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (12,6)-(12,7) = "c" - │ │ │ ├── closing_loc: (12,7)-(12,8) = ":" - │ │ │ └── unescaped: "c" - │ │ ├── value: - │ │ │ @ CallNode (location: (12,9)-(12,10)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :d - │ │ │ ├── message_loc: (12,9)-(12,10) = "d" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: ∅ - │ └── closing_loc: (16,4)-(16,5) = "}" - ├── @ HashNode (location: (18,0)-(18,25)) - │ ├── flags: newline - │ ├── opening_loc: (18,0)-(18,1) = "{" - │ ├── elements: (length: 4) - │ │ ├── @ AssocNode (location: (18,2)-(18,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (18,2)-(18,4)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (18,2)-(18,3) = "a" - │ │ │ │ ├── closing_loc: (18,3)-(18,4) = ":" - │ │ │ │ └── unescaped: "a" - │ │ │ ├── value: - │ │ │ │ @ CallNode (location: (18,5)-(18,6)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── message_loc: (18,5)-(18,6) = "b" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── operator_loc: ∅ - │ │ ├── @ AssocNode (location: (18,8)-(18,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (18,8)-(18,10)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (18,8)-(18,9) = "c" - │ │ │ │ ├── closing_loc: (18,9)-(18,10) = ":" - │ │ │ │ └── unescaped: "c" - │ │ │ ├── value: - │ │ │ │ @ CallNode (location: (18,11)-(18,12)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :d - │ │ │ │ ├── message_loc: (18,11)-(18,12) = "d" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── operator_loc: ∅ - │ │ ├── @ AssocSplatNode (location: (18,14)-(18,17)) - │ │ │ ├── flags: ∅ - │ │ │ ├── value: - │ │ │ │ @ CallNode (location: (18,16)-(18,17)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :e - │ │ │ │ ├── message_loc: (18,16)-(18,17) = "e" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── operator_loc: (18,14)-(18,16) = "**" - │ │ └── @ AssocNode (location: (18,19)-(18,23)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ SymbolNode (location: (18,19)-(18,21)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (18,19)-(18,20) = "f" - │ │ │ ├── closing_loc: (18,20)-(18,21) = ":" - │ │ │ └── unescaped: "f" - │ │ ├── value: - │ │ │ @ CallNode (location: (18,22)-(18,23)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :g - │ │ │ ├── message_loc: (18,22)-(18,23) = "g" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: ∅ - │ └── closing_loc: (18,24)-(18,25) = "}" - ├── @ HashNode (location: (20,0)-(20,12)) - │ ├── flags: newline - │ ├── opening_loc: (20,0)-(20,1) = "{" - │ ├── elements: (length: 1) - │ │ └── @ AssocNode (location: (20,2)-(20,10)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ SymbolNode (location: (20,2)-(20,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (20,2)-(20,3) = "\"" - │ │ │ ├── value_loc: (20,3)-(20,4) = "a" - │ │ │ ├── closing_loc: (20,4)-(20,6) = "\":" - │ │ │ └── unescaped: "a" - │ │ ├── value: - │ │ │ @ CallNode (location: (20,7)-(20,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── receiver: - │ │ │ │ @ CallNode (location: (20,8)-(20,10)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :b? - │ │ │ │ ├── message_loc: (20,8)-(20,10) = "b?" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :! - │ │ │ ├── message_loc: (20,7)-(20,8) = "!" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: ∅ - │ └── closing_loc: (20,11)-(20,12) = "}" - ├── @ LocalVariableWriteNode (location: (22,0)-(22,5)) - │ ├── flags: newline - │ ├── name: :a - │ ├── depth: 0 - │ ├── name_loc: (22,0)-(22,1) = "a" - │ ├── value: - │ │ @ IntegerNode (location: (22,4)-(22,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (22,2)-(22,3) = "=" - ├── @ CallNode (location: (23,0)-(26,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (23,0)-(23,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (23,4)-(26,3)) - │ ├── flags: ∅ - │ ├── locals: [:b] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (24,2)-(25,20)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 2) - │ │ ├── @ LocalVariableWriteNode (location: (24,2)-(24,7)) - │ │ │ ├── flags: newline - │ │ │ ├── name: :b - │ │ │ ├── depth: 0 - │ │ │ ├── name_loc: (24,2)-(24,3) = "b" - │ │ │ ├── value: - │ │ │ │ @ IntegerNode (location: (24,6)-(24,7)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── operator_loc: (24,4)-(24,5) = "=" - │ │ └── @ HashNode (location: (25,2)-(25,20)) - │ │ ├── flags: newline - │ │ ├── opening_loc: (25,2)-(25,3) = "{" - │ │ ├── elements: (length: 4) - │ │ │ ├── @ AssocNode (location: (25,4)-(25,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── key: - │ │ │ │ │ @ SymbolNode (location: (25,4)-(25,6)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── value_loc: (25,4)-(25,5) = "a" - │ │ │ │ │ ├── closing_loc: (25,5)-(25,6) = ":" - │ │ │ │ │ └── unescaped: "a" - │ │ │ │ ├── value: - │ │ │ │ │ @ ImplicitNode (location: (25,4)-(25,6)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── value: - │ │ │ │ │ @ LocalVariableReadNode (location: (25,4)-(25,6)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :a - │ │ │ │ │ └── depth: 1 - │ │ │ │ └── operator_loc: ∅ - │ │ │ ├── @ AssocNode (location: (25,8)-(25,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── key: - │ │ │ │ │ @ SymbolNode (location: (25,8)-(25,10)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── value_loc: (25,8)-(25,9) = "b" - │ │ │ │ │ ├── closing_loc: (25,9)-(25,10) = ":" - │ │ │ │ │ └── unescaped: "b" - │ │ │ │ ├── value: - │ │ │ │ │ @ ImplicitNode (location: (25,8)-(25,10)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── value: - │ │ │ │ │ @ LocalVariableReadNode (location: (25,8)-(25,10)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :b - │ │ │ │ │ └── depth: 0 - │ │ │ │ └── operator_loc: ∅ - │ │ │ ├── @ AssocNode (location: (25,12)-(25,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── key: - │ │ │ │ │ @ SymbolNode (location: (25,12)-(25,14)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── value_loc: (25,12)-(25,13) = "c" - │ │ │ │ │ ├── closing_loc: (25,13)-(25,14) = ":" - │ │ │ │ │ └── unescaped: "c" - │ │ │ │ ├── value: - │ │ │ │ │ @ ImplicitNode (location: (25,12)-(25,14)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── value: - │ │ │ │ │ @ CallNode (location: (25,12)-(25,14)) - │ │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :c - │ │ │ │ │ ├── message_loc: (25,12)-(25,13) = "c" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ └── operator_loc: ∅ - │ │ │ └── @ AssocNode (location: (25,16)-(25,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (25,16)-(25,18)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (25,16)-(25,17) = "D" - │ │ │ │ ├── closing_loc: (25,17)-(25,18) = ":" - │ │ │ │ └── unescaped: "D" - │ │ │ ├── value: - │ │ │ │ @ ImplicitNode (location: (25,16)-(25,18)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── value: - │ │ │ │ @ ConstantReadNode (location: (25,16)-(25,18)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :D - │ │ │ └── operator_loc: ∅ - │ │ └── closing_loc: (25,19)-(25,20) = "}" - │ ├── opening_loc: (23,4)-(23,6) = "do" - │ └── closing_loc: (26,0)-(26,3) = "end" - └── @ HashNode (location: (28,0)-(28,9)) - ├── flags: newline, static_literal - ├── opening_loc: (28,0)-(28,1) = "{" - ├── elements: (length: 1) - │ └── @ AssocNode (location: (28,2)-(28,7)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ SymbolNode (location: (28,2)-(28,4)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (28,2)-(28,3) = "a" - │ │ ├── closing_loc: (28,3)-(28,4) = ":" - │ │ └── unescaped: "a" - │ ├── value: - │ │ @ IntegerNode (location: (28,5)-(28,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: -1 - │ └── operator_loc: ∅ - └── closing_loc: (28,8)-(28,9) = "}" diff --git a/test/prism/snapshots/heredoc.txt b/test/prism/snapshots/heredoc.txt deleted file mode 100644 index 7145f0f752..0000000000 --- a/test/prism/snapshots/heredoc.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (1,0)-(1,6)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,6) = "<<TEXT" - ├── content_loc: (2,0)-(2,0) = "" - ├── closing_loc: (2,0)-(3,0) = "TEXT\n" - └── unescaped: "" diff --git a/test/prism/snapshots/heredoc_with_carriage_returns.txt b/test/prism/snapshots/heredoc_with_carriage_returns.txt deleted file mode 100644 index 12130daa75..0000000000 --- a/test/prism/snapshots/heredoc_with_carriage_returns.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (1,0)-(1,6)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,6) = "<<TEXT" - ├── content_loc: (2,0)-(2,0) = "" - ├── closing_loc: (2,0)-(3,0) = "TEXT\r\n" - └── unescaped: "" diff --git a/test/prism/snapshots/heredoc_with_comment.txt b/test/prism/snapshots/heredoc_with_comment.txt deleted file mode 100644 index 5c244e50e4..0000000000 --- a/test/prism/snapshots/heredoc_with_comment.txt +++ /dev/null @@ -1,23 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,15)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,15)) - ├── flags: newline - ├── receiver: - │ @ StringNode (location: (1,0)-(1,9)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,0)-(1,9) = "<<-TARGET" - │ ├── content_loc: (2,0)-(3,0) = " content makes for an obvious error\r\n" - │ ├── closing_loc: (3,0)-(3,6) = "TARGET" - │ └── unescaped: " content makes for an obvious error\n" - ├── call_operator_loc: (1,9)-(1,10) = "." - ├── name: :chomp - ├── message_loc: (1,10)-(1,15) = "chomp" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/heredoc_with_escaped_newline_at_start.txt b/test/prism/snapshots/heredoc_with_escaped_newline_at_start.txt deleted file mode 100644 index d20d481e33..0000000000 --- a/test/prism/snapshots/heredoc_with_escaped_newline_at_start.txt +++ /dev/null @@ -1,69 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,25)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,25)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,25)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ StringNode (location: (1,0)-(1,9)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,0)-(1,9) = "<<-TARGET" - │ │ ├── content_loc: (2,0)-(2,0) = "" - │ │ ├── closing_loc: (2,0)-(3,0) = "TARGET\n" - │ │ └── unescaped: "" - │ ├── call_operator_loc: (1,9)-(1,10) = "." - │ ├── name: :gsub - │ ├── message_loc: (1,10)-(1,14) = "gsub" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,15)-(1,25)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ RegularExpressionNode (location: (1,15)-(1,21)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (1,15)-(1,16) = "/" - │ │ │ ├── content_loc: (1,16)-(1,20) = "^\\s{" - │ │ │ ├── closing_loc: (1,20)-(1,21) = "/" - │ │ │ └── unescaped: "^\\s{" - │ │ └── @ StringNode (location: (1,23)-(1,25)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,23)-(1,24) = "'" - │ │ ├── content_loc: (1,24)-(1,24) = "" - │ │ ├── closing_loc: (1,24)-(1,25) = "'" - │ │ └── unescaped: "" - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (5,0)-(5,25)) - ├── flags: newline - ├── receiver: - │ @ StringNode (location: (5,0)-(5,9)) - │ ├── flags: ∅ - │ ├── opening_loc: (5,0)-(5,9) = "<<-TARGET" - │ ├── content_loc: (6,0)-(6,0) = "" - │ ├── closing_loc: (6,0)-(7,0) = "TARGET\r\n" - │ └── unescaped: "" - ├── call_operator_loc: (5,9)-(5,10) = "." - ├── name: :gsub - ├── message_loc: (5,10)-(5,14) = "gsub" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (5,15)-(5,25)) - │ ├── flags: ∅ - │ └── arguments: (length: 2) - │ ├── @ RegularExpressionNode (location: (5,15)-(5,21)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (5,15)-(5,16) = "/" - │ │ ├── content_loc: (5,16)-(5,20) = "^\\s{" - │ │ ├── closing_loc: (5,20)-(5,21) = "/" - │ │ └── unescaped: "^\\s{" - │ └── @ StringNode (location: (5,23)-(5,25)) - │ ├── flags: ∅ - │ ├── opening_loc: (5,23)-(5,24) = "'" - │ ├── content_loc: (5,24)-(5,24) = "" - │ ├── closing_loc: (5,24)-(5,25) = "'" - │ └── unescaped: "" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/heredoc_with_trailing_newline.txt b/test/prism/snapshots/heredoc_with_trailing_newline.txt deleted file mode 100644 index 90061708d0..0000000000 --- a/test/prism/snapshots/heredoc_with_trailing_newline.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (1,0)-(1,6)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,6) = "<<-END" - ├── content_loc: (2,0)-(2,0) = "" - ├── closing_loc: (2,0)-(2,3) = "END" - └── unescaped: "" diff --git a/test/prism/snapshots/heredocs_leading_whitespace.txt b/test/prism/snapshots/heredocs_leading_whitespace.txt deleted file mode 100644 index 6101cd02d3..0000000000 --- a/test/prism/snapshots/heredocs_leading_whitespace.txt +++ /dev/null @@ -1,65 +0,0 @@ -@ ProgramNode (location: (1,0)-(26,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(26,10)) - ├── flags: ∅ - └── body: (length: 6) - ├── @ StringNode (location: (1,0)-(1,10)) - │ ├── flags: newline - │ ├── opening_loc: (1,0)-(1,10) = "<<-' FOO'" - │ ├── content_loc: (2,0)-(4,0) = "a\nb\n" - │ ├── closing_loc: (4,0)-(5,0) = " FOO\n" - │ └── unescaped: "a\nb\n" - ├── @ StringNode (location: (6,0)-(6,10)) - │ ├── flags: newline - │ ├── opening_loc: (6,0)-(6,10) = "<<-\" FOO\"" - │ ├── content_loc: (7,0)-(9,0) = "a\nb\n" - │ ├── closing_loc: (9,0)-(10,0) = " FOO\n" - │ └── unescaped: "a\nb\n" - ├── @ XStringNode (location: (11,0)-(11,10)) - │ ├── flags: newline - │ ├── opening_loc: (11,0)-(11,10) = "<<-` FOO`" - │ ├── content_loc: (12,0)-(14,0) = "a\nb\n" - │ ├── closing_loc: (14,0)-(15,0) = " FOO\n" - │ └── unescaped: "a\nb\n" - ├── @ StringNode (location: (16,0)-(16,10)) - │ ├── flags: newline - │ ├── opening_loc: (16,0)-(16,10) = "<<-' FOO'" - │ ├── content_loc: (17,0)-(19,0) = "a\nb\n" - │ ├── closing_loc: (19,0)-(20,0) = " FOO\n" - │ └── unescaped: "a\nb\n" - ├── @ InterpolatedStringNode (location: (21,0)-(21,10)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (21,0)-(21,10) = "<<~' FOO'" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (22,0)-(23,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (22,0)-(23,0) = "a\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a\n" - │ │ └── @ StringNode (location: (23,0)-(24,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (23,0)-(24,0) = "b\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b\n" - │ └── closing_loc: (24,0)-(25,0) = " FOO\n" - └── @ InterpolatedStringNode (location: (26,0)-(26,10)) - ├── flags: newline, static_literal - ├── opening_loc: (26,0)-(26,10) = "<<~' FOO'" - ├── parts: (length: 2) - │ ├── @ StringNode (location: (27,0)-(28,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (27,0)-(28,0) = "a\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a\n" - │ └── @ StringNode (location: (28,0)-(29,0)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (28,0)-(29,0) = "b\n" - │ ├── closing_loc: ∅ - │ └── unescaped: "b\n" - └── closing_loc: (29,0)-(30,0) = " FOO\n" diff --git a/test/prism/snapshots/heredocs_nested.txt b/test/prism/snapshots/heredocs_nested.txt deleted file mode 100644 index 08576915dc..0000000000 --- a/test/prism/snapshots/heredocs_nested.txt +++ /dev/null @@ -1,104 +0,0 @@ -@ ProgramNode (location: (1,0)-(12,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(12,4)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ InterpolatedStringNode (location: (1,0)-(1,7)) - │ ├── flags: newline, static_literal, mutable - │ ├── opening_loc: (1,0)-(1,7) = "<<~RUBY" - │ ├── parts: (length: 4) - │ │ ├── @ StringNode (location: (2,0)-(3,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (2,0)-(3,0) = "pre\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "pre\n" - │ │ ├── @ EmbeddedStatementsNode (location: (3,0)-(7,1)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (3,0)-(3,2) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (4,0)-(4,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ StringNode (location: (4,0)-(4,6)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: (4,0)-(4,6) = "<<RUBY" - │ │ │ │ ├── content_loc: (5,0)-(6,0) = " hello\n" - │ │ │ │ ├── closing_loc: (6,0)-(7,0) = "RUBY\n" - │ │ │ │ └── unescaped: " hello\n" - │ │ │ └── closing_loc: (7,0)-(7,1) = "}" - │ │ ├── @ StringNode (location: (7,1)-(8,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (7,1)-(8,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ └── @ StringNode (location: (8,0)-(9,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (8,0)-(9,0) = "post\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "post\n" - │ └── closing_loc: (9,0)-(10,0) = "RUBY\n" - └── @ InterpolatedStringNode (location: (12,0)-(12,4)) - ├── flags: newline - ├── opening_loc: (12,0)-(12,4) = "<<-A" - ├── parts: (length: 2) - │ ├── @ EmbeddedStatementsNode (location: (13,0)-(21,1)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (13,0)-(13,2) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (14,0)-(14,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ InterpolatedStringNode (location: (14,0)-(14,4)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (14,0)-(14,4) = "<<-B" - │ │ │ ├── parts: (length: 2) - │ │ │ │ ├── @ EmbeddedStatementsNode (location: (15,0)-(19,1)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── opening_loc: (15,0)-(15,2) = "\#{" - │ │ │ │ │ ├── statements: - │ │ │ │ │ │ @ StatementsNode (location: (16,0)-(16,4)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ │ └── @ InterpolatedStringNode (location: (16,0)-(16,4)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ ├── opening_loc: (16,0)-(16,4) = "<<-C" - │ │ │ │ │ │ ├── parts: (length: 2) - │ │ │ │ │ │ │ ├── @ EmbeddedStatementsNode (location: (17,0)-(17,4)) - │ │ │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ │ │ ├── opening_loc: (17,0)-(17,2) = "\#{" - │ │ │ │ │ │ │ │ ├── statements: - │ │ │ │ │ │ │ │ │ @ StatementsNode (location: (17,2)-(17,3)) - │ │ │ │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ │ │ │ │ └── @ IntegerNode (location: (17,2)-(17,3)) - │ │ │ │ │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ │ │ │ │ └── value: 3 - │ │ │ │ │ │ │ │ └── closing_loc: (17,3)-(17,4) = "}" - │ │ │ │ │ │ │ └── @ StringNode (location: (17,4)-(18,0)) - │ │ │ │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ │ │ ├── content_loc: (17,4)-(18,0) = "\n" - │ │ │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ │ │ └── unescaped: "\n" - │ │ │ │ │ │ └── closing_loc: (18,0)-(19,0) = "C\n" - │ │ │ │ │ └── closing_loc: (19,0)-(19,1) = "}" - │ │ │ │ └── @ StringNode (location: (19,1)-(20,0)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (19,1)-(20,0) = "\n" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "\n" - │ │ │ └── closing_loc: (20,0)-(21,0) = "B\n" - │ │ └── closing_loc: (21,0)-(21,1) = "}" - │ └── @ StringNode (location: (21,1)-(22,0)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (21,1)-(22,0) = "\n" - │ ├── closing_loc: ∅ - │ └── unescaped: "\n" - └── closing_loc: (22,0)-(23,0) = "A\n" diff --git a/test/prism/snapshots/heredocs_with_ignored_newlines.txt b/test/prism/snapshots/heredocs_with_ignored_newlines.txt deleted file mode 100644 index 16675029e1..0000000000 --- a/test/prism/snapshots/heredocs_with_ignored_newlines.txt +++ /dev/null @@ -1,72 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,8)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ StringNode (location: (1,0)-(1,7)) - │ ├── flags: newline - │ ├── opening_loc: (1,0)-(1,7) = "<<-HERE" - │ ├── content_loc: (2,0)-(2,0) = "" - │ ├── closing_loc: (2,0)-(3,0) = "HERE\n" - │ └── unescaped: "" - └── @ InterpolatedStringNode (location: (4,0)-(4,8)) - ├── flags: newline, static_literal - ├── opening_loc: (4,0)-(4,8) = "<<~THERE" - ├── parts: (length: 9) - │ ├── @ StringNode (location: (5,0)-(6,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (5,0)-(6,0) = " way over\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "way over\n" - │ ├── @ StringNode (location: (6,0)-(7,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (6,0)-(7,0) = " <<HERE\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "<<HERE\n" - │ ├── @ StringNode (location: (7,0)-(8,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (7,0)-(8,0) = " not here\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: " not here\n" - │ ├── @ StringNode (location: (8,0)-(9,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (8,0)-(9,0) = " HERE\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "HERE\n" - │ ├── @ StringNode (location: (9,0)-(10,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (9,0)-(10,0) = "\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\n" - │ ├── @ StringNode (location: (10,0)-(11,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (10,0)-(11,0) = " <<~BUT\\\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "<<~BUT" - │ ├── @ StringNode (location: (11,0)-(12,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (11,0)-(12,0) = " but\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: " but\n" - │ ├── @ StringNode (location: (12,0)-(13,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (12,0)-(13,0) = " BUT\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "BUT\n" - │ └── @ StringNode (location: (13,0)-(14,0)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (13,0)-(14,0) = " there\n" - │ ├── closing_loc: ∅ - │ └── unescaped: " there\n" - └── closing_loc: (14,0)-(15,0) = "THERE\n" diff --git a/test/prism/snapshots/heredocs_with_ignored_newlines_and_non_empty.txt b/test/prism/snapshots/heredocs_with_ignored_newlines_and_non_empty.txt deleted file mode 100644 index 5fd24c85c4..0000000000 --- a/test/prism/snapshots/heredocs_with_ignored_newlines_and_non_empty.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (1,0)-(1,6)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,6) = "<<-EOE" - ├── content_loc: (2,0)-(4,0) = " some\n heredocs\n" - ├── closing_loc: (4,0)-(4,3) = "EOE" - └── unescaped: " some\n heredocs\n" diff --git a/test/prism/snapshots/if.txt b/test/prism/snapshots/if.txt deleted file mode 100644 index ca39adf412..0000000000 --- a/test/prism/snapshots/if.txt +++ /dev/null @@ -1,611 +0,0 @@ -@ ProgramNode (location: (1,0)-(42,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(42,3)) - ├── flags: ∅ - └── body: (length: 13) - ├── @ IfNode (location: (1,0)-(1,15)) - │ ├── flags: newline - │ ├── if_keyword_loc: (1,0)-(1,2) = "if" - │ ├── predicate: - │ │ @ TrueNode (location: (1,3)-(1,7)) - │ │ └── flags: static_literal - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (1,9)-(1,10)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (1,9)-(1,10)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 1 - │ ├── subsequent: ∅ - │ └── end_keyword_loc: (1,12)-(1,15) = "end" - ├── @ IfNode (location: (3,0)-(4,12)) - │ ├── flags: newline - │ ├── if_keyword_loc: (3,0)-(3,2) = "if" - │ ├── predicate: - │ │ @ TrueNode (location: (3,3)-(3,7)) - │ │ └── flags: static_literal - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (4,0)-(4,1)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (4,0)-(4,1)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 1 - │ ├── subsequent: - │ │ @ ElseNode (location: (4,2)-(4,12)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (4,2)-(4,6) = "else" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (4,7)-(4,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ IntegerNode (location: (4,7)-(4,8)) - │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ └── value: 2 - │ │ └── end_keyword_loc: (4,9)-(4,12) = "end" - │ └── end_keyword_loc: (4,9)-(4,12) = "end" - ├── @ IfNode (location: (6,0)-(6,73)) - │ ├── flags: newline - │ ├── if_keyword_loc: (6,0)-(6,2) = "if" - │ ├── predicate: - │ │ @ TrueNode (location: (6,3)-(6,7)) - │ │ └── flags: static_literal - │ ├── then_keyword_loc: (6,8)-(6,12) = "then" - │ ├── statements: - │ │ @ StatementsNode (location: (6,13)-(6,17)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ TrueNode (location: (6,13)-(6,17)) - │ │ └── flags: newline, static_literal - │ ├── subsequent: - │ │ @ IfNode (location: (6,18)-(6,73)) - │ │ ├── flags: newline - │ │ ├── if_keyword_loc: (6,18)-(6,23) = "elsif" - │ │ ├── predicate: - │ │ │ @ FalseNode (location: (6,24)-(6,29)) - │ │ │ └── flags: static_literal - │ │ ├── then_keyword_loc: (6,30)-(6,34) = "then" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (6,35)-(6,40)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ FalseNode (location: (6,35)-(6,40)) - │ │ │ └── flags: newline, static_literal - │ │ ├── subsequent: - │ │ │ @ IfNode (location: (6,41)-(6,73)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (6,41)-(6,46) = "elsif" - │ │ │ ├── predicate: - │ │ │ │ @ NilNode (location: (6,47)-(6,50)) - │ │ │ │ └── flags: static_literal - │ │ │ ├── then_keyword_loc: (6,51)-(6,55) = "then" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (6,56)-(6,59)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ NilNode (location: (6,56)-(6,59)) - │ │ │ │ └── flags: newline, static_literal - │ │ │ ├── subsequent: - │ │ │ │ @ ElseNode (location: (6,60)-(6,73)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── else_keyword_loc: (6,60)-(6,64) = "else" - │ │ │ │ ├── statements: - │ │ │ │ │ @ StatementsNode (location: (6,65)-(6,69)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ SelfNode (location: (6,65)-(6,69)) - │ │ │ │ │ └── flags: newline - │ │ │ │ └── end_keyword_loc: (6,70)-(6,73) = "end" - │ │ │ └── end_keyword_loc: (6,70)-(6,73) = "end" - │ │ └── end_keyword_loc: (6,70)-(6,73) = "end" - │ └── end_keyword_loc: (6,70)-(6,73) = "end" - ├── @ IfNode (location: (8,0)-(8,9)) - │ ├── flags: newline - │ ├── if_keyword_loc: (8,2)-(8,4) = "if" - │ ├── predicate: - │ │ @ TrueNode (location: (8,5)-(8,9)) - │ │ └── flags: static_literal - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (8,0)-(8,1)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (8,0)-(8,1)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 1 - │ ├── subsequent: ∅ - │ └── end_keyword_loc: ∅ - ├── @ CallNode (location: (10,0)-(10,21)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (10,0)-(10,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (10,4)-(10,21)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (10,6)-(10,19)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IfNode (location: (10,6)-(10,19)) - │ │ ├── flags: newline - │ │ ├── if_keyword_loc: (10,12)-(10,14) = "if" - │ │ ├── predicate: - │ │ │ @ TrueNode (location: (10,15)-(10,19)) - │ │ │ └── flags: static_literal - │ │ ├── then_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (10,6)-(10,11)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ BreakNode (location: (10,6)-(10,11)) - │ │ │ ├── flags: newline - │ │ │ ├── arguments: ∅ - │ │ │ └── keyword_loc: (10,6)-(10,11) = "break" - │ │ ├── subsequent: ∅ - │ │ └── end_keyword_loc: ∅ - │ ├── opening_loc: (10,4)-(10,5) = "{" - │ └── closing_loc: (10,20)-(10,21) = "}" - ├── @ CallNode (location: (12,0)-(12,20)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (12,0)-(12,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (12,4)-(12,20)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (12,6)-(12,18)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IfNode (location: (12,6)-(12,18)) - │ │ ├── flags: newline - │ │ ├── if_keyword_loc: (12,11)-(12,13) = "if" - │ │ ├── predicate: - │ │ │ @ TrueNode (location: (12,14)-(12,18)) - │ │ │ └── flags: static_literal - │ │ ├── then_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (12,6)-(12,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ NextNode (location: (12,6)-(12,10)) - │ │ │ ├── flags: newline - │ │ │ ├── arguments: ∅ - │ │ │ └── keyword_loc: (12,6)-(12,10) = "next" - │ │ ├── subsequent: ∅ - │ │ └── end_keyword_loc: ∅ - │ ├── opening_loc: (12,4)-(12,5) = "{" - │ └── closing_loc: (12,19)-(12,20) = "}" - ├── @ IfNode (location: (14,0)-(14,14)) - │ ├── flags: newline - │ ├── if_keyword_loc: (14,7)-(14,9) = "if" - │ ├── predicate: - │ │ @ TrueNode (location: (14,10)-(14,14)) - │ │ └── flags: static_literal - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (14,0)-(14,6)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ ReturnNode (location: (14,0)-(14,6)) - │ │ ├── flags: newline - │ │ ├── keyword_loc: (14,0)-(14,6) = "return" - │ │ └── arguments: ∅ - │ ├── subsequent: ∅ - │ └── end_keyword_loc: ∅ - ├── @ CallNode (location: (16,0)-(16,38)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (16,0)-(16,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (16,4)-(16,38)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (16,6)-(16,36)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IfNode (location: (16,6)-(16,36)) - │ │ ├── flags: newline - │ │ ├── if_keyword_loc: (16,6)-(16,8) = "if" - │ │ ├── predicate: - │ │ │ @ CallNode (location: (16,9)-(16,18)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :exit_loop - │ │ │ ├── message_loc: (16,9)-(16,18) = "exit_loop" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── then_keyword_loc: (16,19)-(16,23) = "then" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (16,24)-(16,32)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ BreakNode (location: (16,24)-(16,32)) - │ │ │ ├── flags: newline - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (16,30)-(16,32)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (16,30)-(16,32)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 42 - │ │ │ └── keyword_loc: (16,24)-(16,29) = "break" - │ │ ├── subsequent: ∅ - │ │ └── end_keyword_loc: (16,33)-(16,36) = "end" - │ ├── opening_loc: (16,4)-(16,5) = "{" - │ └── closing_loc: (16,37)-(16,38) = "}" - ├── @ IfNode (location: (18,0)-(20,3)) - │ ├── flags: newline - │ ├── if_keyword_loc: (18,0)-(18,2) = "if" - │ ├── predicate: - │ │ @ CallNode (location: (18,3)-(18,6)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (18,3)-(18,6) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: (19,0)-(19,4) = "then" - │ ├── statements: - │ │ @ StatementsNode (location: (19,5)-(19,8)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (19,5)-(19,8)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (19,5)-(19,8) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── subsequent: ∅ - │ └── end_keyword_loc: (20,0)-(20,3) = "end" - ├── @ IfNode (location: (22,0)-(22,11)) - │ ├── flags: newline - │ ├── if_keyword_loc: (22,7)-(22,9) = "if" - │ ├── predicate: - │ │ @ CallNode (location: (22,10)-(22,11)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :c - │ │ ├── message_loc: (22,10)-(22,11) = "c" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (22,0)-(22,6)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IfNode (location: (22,0)-(22,6)) - │ │ ├── flags: newline - │ │ ├── if_keyword_loc: (22,2)-(22,4) = "if" - │ │ ├── predicate: - │ │ │ @ CallNode (location: (22,5)-(22,6)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (22,5)-(22,6) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── then_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (22,0)-(22,1)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (22,0)-(22,1)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (22,0)-(22,1) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── subsequent: ∅ - │ │ └── end_keyword_loc: ∅ - │ ├── subsequent: ∅ - │ └── end_keyword_loc: ∅ - ├── @ IfNode (location: (24,0)-(27,3)) - │ ├── flags: newline - │ ├── if_keyword_loc: (24,0)-(24,2) = "if" - │ ├── predicate: - │ │ @ TrueNode (location: (24,3)-(24,7)) - │ │ └── flags: static_literal - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (25,2)-(25,6)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (25,2)-(25,6)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (25,2)-(25,3) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (25,4)-(25,6)) - │ │ │ ├── flags: contains_keywords - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ KeywordHashNode (location: (25,4)-(25,6)) - │ │ │ ├── flags: symbol_keys - │ │ │ └── elements: (length: 1) - │ │ │ └── @ AssocNode (location: (25,4)-(25,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (25,4)-(25,6)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (25,4)-(25,5) = "b" - │ │ │ │ ├── closing_loc: (25,5)-(25,6) = ":" - │ │ │ │ └── unescaped: "b" - │ │ │ ├── value: - │ │ │ │ @ ImplicitNode (location: (25,4)-(25,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── value: - │ │ │ │ @ CallNode (location: (25,4)-(25,6)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── message_loc: (25,4)-(25,5) = "b" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── operator_loc: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── subsequent: - │ │ @ ElseNode (location: (26,0)-(27,3)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (26,0)-(26,4) = "else" - │ │ ├── statements: ∅ - │ │ └── end_keyword_loc: (27,0)-(27,3) = "end" - │ └── end_keyword_loc: (27,0)-(27,3) = "end" - ├── @ IfNode (location: (29,0)-(31,3)) - │ ├── flags: newline - │ ├── if_keyword_loc: (29,0)-(29,2) = "if" - │ ├── predicate: - │ │ @ MatchPredicateNode (location: (29,3)-(29,12)) - │ │ ├── flags: ∅ - │ │ ├── value: - │ │ │ @ CallNode (location: (29,3)-(29,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :type - │ │ │ ├── message_loc: (29,3)-(29,7) = "type" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── pattern: - │ │ │ @ IntegerNode (location: (29,11)-(29,12)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── operator_loc: (29,8)-(29,10) = "in" - │ ├── then_keyword_loc: ∅ - │ ├── statements: ∅ - │ ├── subsequent: - │ │ @ IfNode (location: (30,0)-(31,3)) - │ │ ├── flags: newline - │ │ ├── if_keyword_loc: (30,0)-(30,5) = "elsif" - │ │ ├── predicate: - │ │ │ @ MatchPredicateNode (location: (30,6)-(30,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── value: - │ │ │ │ @ CallNode (location: (30,6)-(30,10)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :type - │ │ │ │ ├── message_loc: (30,6)-(30,10) = "type" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── pattern: - │ │ │ │ @ ConstantReadNode (location: (30,14)-(30,15)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :B - │ │ │ └── operator_loc: (30,11)-(30,13) = "in" - │ │ ├── then_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── subsequent: ∅ - │ │ └── end_keyword_loc: (31,0)-(31,3) = "end" - │ └── end_keyword_loc: (31,0)-(31,3) = "end" - └── @ IfNode (location: (33,0)-(42,3)) - ├── flags: newline - ├── if_keyword_loc: (33,0)-(33,2) = "if" - ├── predicate: - │ @ CallNode (location: (33,3)-(33,5)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f1 - │ ├── message_loc: (33,3)-(33,5) = "f1" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── then_keyword_loc: ∅ - ├── statements: - │ @ StatementsNode (location: (34,2)-(35,5)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (34,2)-(35,5)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :lambda - │ ├── message_loc: (34,2)-(34,8) = "lambda" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (34,9)-(35,5)) - │ ├── flags: ∅ - │ ├── locals: [:_] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (34,12)-(34,15)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (34,13)-(34,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (34,13)-(34,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :_ - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (34,12)-(34,13) = "|" - │ │ └── closing_loc: (34,14)-(34,15) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (34,9)-(34,11) = "do" - │ └── closing_loc: (35,2)-(35,5) = "end" - ├── subsequent: - │ @ IfNode (location: (36,0)-(42,3)) - │ ├── flags: newline - │ ├── if_keyword_loc: (36,0)-(36,5) = "elsif" - │ ├── predicate: - │ │ @ CallNode (location: (36,6)-(36,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :f2 - │ │ ├── message_loc: (36,6)-(36,8) = "f2" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (37,2)-(38,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (37,2)-(38,5)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :lambda - │ │ ├── message_loc: (37,2)-(37,8) = "lambda" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (37,9)-(38,5)) - │ │ ├── flags: ∅ - │ │ ├── locals: [:_] - │ │ ├── parameters: - │ │ │ @ BlockParametersNode (location: (37,12)-(37,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parameters: - │ │ │ │ @ ParametersNode (location: (37,13)-(37,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── requireds: (length: 1) - │ │ │ │ │ └── @ RequiredParameterNode (location: (37,13)-(37,14)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :_ - │ │ │ │ ├── optionals: (length: 0) - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── posts: (length: 0) - │ │ │ │ ├── keywords: (length: 0) - │ │ │ │ ├── keyword_rest: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── locals: (length: 0) - │ │ │ ├── opening_loc: (37,12)-(37,13) = "|" - │ │ │ └── closing_loc: (37,14)-(37,15) = "|" - │ │ ├── body: ∅ - │ │ ├── opening_loc: (37,9)-(37,11) = "do" - │ │ └── closing_loc: (38,2)-(38,5) = "end" - │ ├── subsequent: - │ │ @ ElseNode (location: (39,0)-(42,3)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (39,0)-(39,4) = "else" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (40,2)-(41,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (40,2)-(41,5)) - │ │ │ ├── flags: newline, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :lambda - │ │ │ ├── message_loc: (40,2)-(40,8) = "lambda" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (40,9)-(41,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [:_] - │ │ │ ├── parameters: - │ │ │ │ @ BlockParametersNode (location: (40,12)-(40,15)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── parameters: - │ │ │ │ │ @ ParametersNode (location: (40,13)-(40,14)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── requireds: (length: 1) - │ │ │ │ │ │ └── @ RequiredParameterNode (location: (40,13)-(40,14)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── name: :_ - │ │ │ │ │ ├── optionals: (length: 0) - │ │ │ │ │ ├── rest: ∅ - │ │ │ │ │ ├── posts: (length: 0) - │ │ │ │ │ ├── keywords: (length: 0) - │ │ │ │ │ ├── keyword_rest: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── locals: (length: 0) - │ │ │ │ ├── opening_loc: (40,12)-(40,13) = "|" - │ │ │ │ └── closing_loc: (40,14)-(40,15) = "|" - │ │ │ ├── body: ∅ - │ │ │ ├── opening_loc: (40,9)-(40,11) = "do" - │ │ │ └── closing_loc: (41,2)-(41,5) = "end" - │ │ └── end_keyword_loc: (42,0)-(42,3) = "end" - │ └── end_keyword_loc: (42,0)-(42,3) = "end" - └── end_keyword_loc: (42,0)-(42,3) = "end" diff --git a/test/prism/snapshots/indented_file_end.txt b/test/prism/snapshots/indented_file_end.txt deleted file mode 100644 index 6160f6b51e..0000000000 --- a/test/prism/snapshots/indented_file_end.txt +++ /dev/null @@ -1,21 +0,0 @@ -@ ProgramNode (location: (1,4)-(3,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,4)-(3,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,4)-(3,7)) - ├── flags: newline - ├── name: :hi - ├── name_loc: (1,8)-(1,10) = "hi" - ├── receiver: ∅ - ├── parameters: ∅ - ├── body: ∅ - ├── locals: [] - ├── def_keyword_loc: (1,4)-(1,7) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (3,4)-(3,7) = "end" diff --git a/test/prism/snapshots/integer_operations.txt b/test/prism/snapshots/integer_operations.txt deleted file mode 100644 index 9962ccf247..0000000000 --- a/test/prism/snapshots/integer_operations.txt +++ /dev/null @@ -1,643 +0,0 @@ -@ ProgramNode (location: (1,0)-(63,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(63,7)) - ├── flags: ∅ - └── body: (length: 32) - ├── @ CallNode (location: (1,0)-(1,2)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (1,1)-(1,2)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :! - │ ├── message_loc: (1,0)-(1,1) = "!" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (3,0)-(3,2)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (3,1)-(3,2)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :~ - │ ├── message_loc: (3,0)-(3,1) = "~" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (5,0)-(5,6)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (5,0)-(5,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :!= - │ ├── message_loc: (5,2)-(5,4) = "!=" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (5,5)-(5,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (5,5)-(5,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (7,0)-(7,6)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (7,0)-(7,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :!~ - │ ├── message_loc: (7,2)-(7,4) = "!~" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (7,5)-(7,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (7,5)-(7,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (9,0)-(9,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (9,0)-(9,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :% - │ ├── message_loc: (9,2)-(9,3) = "%" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (9,4)-(9,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (9,4)-(9,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (11,0)-(11,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (11,0)-(11,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :& - │ ├── message_loc: (11,2)-(11,3) = "&" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (11,4)-(11,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (11,4)-(11,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (13,0)-(13,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (13,0)-(13,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :* - │ ├── message_loc: (13,2)-(13,3) = "*" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (13,4)-(13,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (13,4)-(13,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (15,0)-(15,4)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (15,0)-(15,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :** - │ ├── message_loc: (15,1)-(15,3) = "**" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (15,3)-(15,4)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (15,3)-(15,4)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (17,0)-(17,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (17,0)-(17,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (17,2)-(17,3) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (17,4)-(17,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (17,4)-(17,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (19,0)-(19,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (19,0)-(19,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :- - │ ├── message_loc: (19,2)-(19,3) = "-" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (19,4)-(19,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (19,4)-(19,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (21,0)-(21,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (21,0)-(21,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :/ - │ ├── message_loc: (21,2)-(21,3) = "/" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (21,4)-(21,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (21,4)-(21,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (23,0)-(23,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (23,0)-(23,3)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ IntegerNode (location: (23,0)-(23,1)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :/ - │ │ ├── message_loc: (23,1)-(23,2) = "/" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (23,2)-(23,3)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (23,2)-(23,3)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :/ - │ ├── message_loc: (23,3)-(23,4) = "/" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (23,4)-(23,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (23,4)-(23,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 3 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (25,0)-(25,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (25,0)-(25,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :< - │ ├── message_loc: (25,2)-(25,3) = "<" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (25,4)-(25,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (25,4)-(25,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (27,0)-(27,6)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (27,0)-(27,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :<< - │ ├── message_loc: (27,2)-(27,4) = "<<" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (27,5)-(27,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (27,5)-(27,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (29,0)-(29,6)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (29,0)-(29,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :<= - │ ├── message_loc: (29,2)-(29,4) = "<=" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (29,5)-(29,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (29,5)-(29,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (31,0)-(31,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (31,0)-(31,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :<=> - │ ├── message_loc: (31,2)-(31,5) = "<=>" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (31,6)-(31,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (31,6)-(31,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (33,0)-(33,6)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (33,0)-(33,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :== - │ ├── message_loc: (33,2)-(33,4) = "==" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (33,5)-(33,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (33,5)-(33,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (35,0)-(35,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (35,0)-(35,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :=== - │ ├── message_loc: (35,2)-(35,5) = "===" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (35,6)-(35,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (35,6)-(35,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (37,0)-(37,6)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (37,0)-(37,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :=~ - │ ├── message_loc: (37,2)-(37,4) = "=~" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (37,5)-(37,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (37,5)-(37,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (39,0)-(39,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (39,0)-(39,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :> - │ ├── message_loc: (39,2)-(39,3) = ">" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (39,4)-(39,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (39,4)-(39,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (41,0)-(41,6)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (41,0)-(41,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :>= - │ ├── message_loc: (41,2)-(41,4) = ">=" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (41,5)-(41,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (41,5)-(41,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (43,0)-(43,6)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (43,0)-(43,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :>> - │ ├── message_loc: (43,2)-(43,4) = ">>" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (43,5)-(43,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (43,5)-(43,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (45,0)-(45,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (45,0)-(45,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :^ - │ ├── message_loc: (45,2)-(45,3) = "^" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (45,4)-(45,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (45,4)-(45,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (47,0)-(47,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (47,0)-(47,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :| - │ ├── message_loc: (47,2)-(47,3) = "|" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (47,4)-(47,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (47,4)-(47,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ AndNode (location: (49,0)-(49,6)) - │ ├── flags: newline - │ ├── left: - │ │ @ IntegerNode (location: (49,0)-(49,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── right: - │ │ @ IntegerNode (location: (49,5)-(49,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ └── operator_loc: (49,2)-(49,4) = "&&" - ├── @ AndNode (location: (51,0)-(51,7)) - │ ├── flags: newline - │ ├── left: - │ │ @ IntegerNode (location: (51,0)-(51,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── right: - │ │ @ IntegerNode (location: (51,6)-(51,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ └── operator_loc: (51,2)-(51,5) = "and" - ├── @ CallNode (location: (53,0)-(53,10)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (53,0)-(53,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :* - │ ├── message_loc: (53,2)-(53,3) = "*" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (53,4)-(53,10)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (53,4)-(53,10)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ IntegerNode (location: (53,4)-(53,5)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :** - │ │ ├── message_loc: (53,6)-(53,8) = "**" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (53,9)-(53,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (53,9)-(53,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 3 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (55,0)-(55,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (55,0)-(55,5)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ IntegerNode (location: (55,0)-(55,1)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :* - │ │ ├── message_loc: (55,2)-(55,3) = "*" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (55,4)-(55,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (55,4)-(55,5)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (55,6)-(55,7) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (55,8)-(55,9)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (55,8)-(55,9)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 3 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ OrNode (location: (57,0)-(57,6)) - │ ├── flags: newline - │ ├── left: - │ │ @ IntegerNode (location: (57,0)-(57,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── right: - │ │ @ IntegerNode (location: (57,5)-(57,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ └── operator_loc: (57,2)-(57,4) = "or" - ├── @ OrNode (location: (59,0)-(59,6)) - │ ├── flags: newline - │ ├── left: - │ │ @ IntegerNode (location: (59,0)-(59,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── right: - │ │ @ IntegerNode (location: (59,5)-(59,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ └── operator_loc: (59,2)-(59,4) = "||" - ├── @ CallNode (location: (61,0)-(61,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (61,0)-(61,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (61,2)-(61,3) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (61,4)-(61,9)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (61,4)-(61,9)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ IntegerNode (location: (61,4)-(61,5)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :* - │ │ ├── message_loc: (61,6)-(61,7) = "*" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (61,8)-(61,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (61,8)-(61,9)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 3 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ ParenthesesNode (location: (63,0)-(63,7)) - ├── flags: newline - ├── body: - │ @ StatementsNode (location: (63,1)-(63,6)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (63,1)-(63,6)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (63,1)-(63,2)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (63,3)-(63,4) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (63,5)-(63,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (63,5)-(63,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── opening_loc: (63,0)-(63,1) = "(" - └── closing_loc: (63,6)-(63,7) = ")" diff --git a/test/prism/snapshots/keyword_method_names.txt b/test/prism/snapshots/keyword_method_names.txt deleted file mode 100644 index 6bb4d97084..0000000000 --- a/test/prism/snapshots/keyword_method_names.txt +++ /dev/null @@ -1,191 +0,0 @@ -@ ProgramNode (location: (1,0)-(29,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(29,3)) - ├── flags: ∅ - └── body: (length: 10) - ├── @ DefNode (location: (1,0)-(2,3)) - │ ├── flags: newline - │ ├── name: :def - │ ├── name_loc: (1,4)-(1,7) = "def" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (2,0)-(2,3) = "end" - ├── @ DefNode (location: (4,0)-(5,3)) - │ ├── flags: newline - │ ├── name: :ensure - │ ├── name_loc: (4,9)-(4,15) = "ensure" - │ ├── receiver: - │ │ @ SelfNode (location: (4,4)-(4,8)) - │ │ └── flags: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (4,0)-(4,3) = "def" - │ ├── operator_loc: (4,8)-(4,9) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (5,0)-(5,3) = "end" - ├── @ CallNode (location: (7,0)-(10,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :private - │ ├── message_loc: (7,0)-(7,7) = "private" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (7,8)-(10,3)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ DefNode (location: (7,8)-(10,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ ├── name_loc: (7,12)-(7,15) = "foo" - │ │ ├── receiver: ∅ - │ │ ├── parameters: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (8,2)-(9,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (8,2)-(9,5)) - │ │ │ ├── flags: newline, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (8,2)-(8,5) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (8,6)-(9,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: ∅ - │ │ │ ├── opening_loc: (8,6)-(8,8) = "do" - │ │ │ └── closing_loc: (9,2)-(9,5) = "end" - │ │ ├── locals: [] - │ │ ├── def_keyword_loc: (7,8)-(7,11) = "def" - │ │ ├── operator_loc: ∅ - │ │ ├── lparen_loc: ∅ - │ │ ├── rparen_loc: ∅ - │ │ ├── equal_loc: ∅ - │ │ └── end_keyword_loc: (10,0)-(10,3) = "end" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ DefNode (location: (12,0)-(13,3)) - │ ├── flags: newline - │ ├── name: :m - │ ├── name_loc: (12,4)-(12,5) = "m" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (12,6)-(12,14)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (12,6)-(12,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ NoKeywordsParameterNode (location: (12,9)-(12,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (12,9)-(12,11) = "**" - │ │ │ └── keyword_loc: (12,11)-(12,14) = "nil" - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:a] - │ ├── def_keyword_loc: (12,0)-(12,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (12,5)-(12,6) = "(" - │ ├── rparen_loc: (12,14)-(12,15) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (13,0)-(13,3) = "end" - ├── @ DefNode (location: (15,0)-(16,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (15,17)-(15,18) = "a" - │ ├── receiver: - │ │ @ SourceEncodingNode (location: (15,4)-(15,16)) - │ │ └── flags: static_literal - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (15,0)-(15,3) = "def" - │ ├── operator_loc: (15,16)-(15,17) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (16,0)-(16,3) = "end" - ├── @ StringNode (location: (18,0)-(18,6)) - │ ├── flags: newline - │ ├── opening_loc: (18,0)-(18,2) = "%{" - │ ├── content_loc: (18,2)-(18,5) = "abc" - │ ├── closing_loc: (18,5)-(18,6) = "}" - │ └── unescaped: "abc" - ├── @ StringNode (location: (20,0)-(20,6)) - │ ├── flags: newline - │ ├── opening_loc: (20,0)-(20,2) = "%\"" - │ ├── content_loc: (20,2)-(20,5) = "abc" - │ ├── closing_loc: (20,5)-(20,6) = "\"" - │ └── unescaped: "abc" - ├── @ DefNode (location: (22,0)-(23,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (22,13)-(22,14) = "a" - │ ├── receiver: - │ │ @ SourceFileNode (location: (22,4)-(22,12)) - │ │ ├── flags: ∅ - │ │ └── filepath: "keyword_method_names.txt" - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (22,0)-(22,3) = "def" - │ ├── operator_loc: (22,12)-(22,13) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (23,0)-(23,3) = "end" - ├── @ DefNode (location: (25,0)-(26,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (25,13)-(25,14) = "a" - │ ├── receiver: - │ │ @ SourceLineNode (location: (25,4)-(25,12)) - │ │ └── flags: static_literal - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (25,0)-(25,3) = "def" - │ ├── operator_loc: (25,12)-(25,13) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (26,0)-(26,3) = "end" - └── @ DefNode (location: (28,0)-(29,3)) - ├── flags: newline - ├── name: :a - ├── name_loc: (28,9)-(28,10) = "a" - ├── receiver: - │ @ NilNode (location: (28,4)-(28,7)) - │ └── flags: static_literal - ├── parameters: ∅ - ├── body: ∅ - ├── locals: [] - ├── def_keyword_loc: (28,0)-(28,3) = "def" - ├── operator_loc: (28,7)-(28,9) = "::" - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (29,0)-(29,3) = "end" diff --git a/test/prism/snapshots/keywords.txt b/test/prism/snapshots/keywords.txt deleted file mode 100644 index f7f0b8df09..0000000000 --- a/test/prism/snapshots/keywords.txt +++ /dev/null @@ -1,59 +0,0 @@ -@ ProgramNode (location: (1,0)-(11,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(11,8)) - ├── flags: ∅ - └── body: (length: 6) - ├── @ CallNode (location: (1,0)-(1,12)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (1,0)-(1,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (1,4)-(1,12)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,6)-(1,10)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ RedoNode (location: (1,6)-(1,10)) - │ │ └── flags: newline - │ ├── opening_loc: (1,4)-(1,5) = "{" - │ └── closing_loc: (1,11)-(1,12) = "}" - ├── @ BeginNode (location: (3,0)-(3,25)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (3,0)-(3,5) = "begin" - │ ├── statements: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (3,7)-(3,20)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (3,7)-(3,13) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (3,15)-(3,20)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ RetryNode (location: (3,15)-(3,20)) - │ │ │ └── flags: newline - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (3,22)-(3,25) = "end" - ├── @ SelfNode (location: (5,0)-(5,4)) - │ └── flags: newline - ├── @ SourceEncodingNode (location: (7,0)-(7,12)) - │ └── flags: newline, static_literal - ├── @ SourceFileNode (location: (9,0)-(9,8)) - │ ├── flags: newline - │ └── filepath: "keywords.txt" - └── @ SourceLineNode (location: (11,0)-(11,8)) - └── flags: newline, static_literal diff --git a/test/prism/snapshots/lambda.txt b/test/prism/snapshots/lambda.txt deleted file mode 100644 index 90b0b523aa..0000000000 --- a/test/prism/snapshots/lambda.txt +++ /dev/null @@ -1,221 +0,0 @@ -@ ProgramNode (location: (1,0)-(11,18)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(11,18)) - ├── flags: ∅ - └── body: (length: 5) - ├── @ LambdaNode (location: (1,0)-(3,4)) - │ ├── flags: newline - │ ├── locals: [:foo] - │ ├── operator_loc: (1,0)-(1,2) = "->" - │ ├── opening_loc: (3,2)-(3,3) = "{" - │ ├── closing_loc: (3,3)-(3,4) = "}" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (1,2)-(3,1)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (2,2)-(2,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (2,2)-(2,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :foo - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (1,2)-(1,3) = "(" - │ │ └── closing_loc: (3,0)-(3,1) = ")" - │ └── body: ∅ - ├── @ LambdaNode (location: (5,0)-(5,18)) - │ ├── flags: newline - │ ├── locals: [:x] - │ ├── operator_loc: (5,0)-(5,2) = "->" - │ ├── opening_loc: (5,15)-(5,16) = "{" - │ ├── closing_loc: (5,17)-(5,18) = "}" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (5,2)-(5,14)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (5,3)-(5,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 1) - │ │ │ │ └── @ OptionalKeywordParameterNode (location: (5,3)-(5,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :x - │ │ │ │ ├── name_loc: (5,3)-(5,5) = "x:" - │ │ │ │ └── value: - │ │ │ │ @ InterpolatedStringNode (location: (5,6)-(5,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (5,6)-(5,7) = "\"" - │ │ │ │ ├── parts: (length: 2) - │ │ │ │ │ ├── @ StringNode (location: (5,7)-(5,8)) - │ │ │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ │ ├── content_loc: (5,7)-(5,8) = "b" - │ │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ │ └── unescaped: "b" - │ │ │ │ │ └── @ EmbeddedStatementsNode (location: (5,8)-(5,12)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── opening_loc: (5,8)-(5,10) = "\#{" - │ │ │ │ │ ├── statements: - │ │ │ │ │ │ @ StatementsNode (location: (5,10)-(5,11)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ │ └── @ CallNode (location: (5,10)-(5,11)) - │ │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ │ ├── name: :a - │ │ │ │ │ │ ├── message_loc: (5,10)-(5,11) = "a" - │ │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ │ └── block: ∅ - │ │ │ │ │ └── closing_loc: (5,11)-(5,12) = "}" - │ │ │ │ └── closing_loc: (5,12)-(5,13) = "\"" - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (5,2)-(5,3) = "(" - │ │ └── closing_loc: (5,13)-(5,14) = ")" - │ └── body: ∅ - ├── @ LambdaNode (location: (7,0)-(7,15)) - │ ├── flags: newline - │ ├── locals: [:a] - │ ├── operator_loc: (7,0)-(7,2) = "->" - │ ├── opening_loc: (7,13)-(7,14) = "{" - │ ├── closing_loc: (7,14)-(7,15) = "}" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (7,2)-(7,12)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (7,3)-(7,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 1) - │ │ │ │ └── @ OptionalKeywordParameterNode (location: (7,3)-(7,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ ├── name_loc: (7,3)-(7,5) = "a:" - │ │ │ │ └── value: - │ │ │ │ @ CallNode (location: (7,6)-(7,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── receiver: - │ │ │ │ │ @ CallNode (location: (7,6)-(7,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :b - │ │ │ │ │ ├── message_loc: (7,6)-(7,7) = "b" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :* - │ │ │ │ ├── message_loc: (7,8)-(7,9) = "*" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (7,10)-(7,11)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ IntegerNode (location: (7,10)-(7,11)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 3 - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (7,2)-(7,3) = "(" - │ │ └── closing_loc: (7,11)-(7,12) = ")" - │ └── body: ∅ - ├── @ LambdaNode (location: (9,0)-(9,19)) - │ ├── flags: newline - │ ├── locals: [:foo] - │ ├── operator_loc: (9,0)-(9,2) = "->" - │ ├── opening_loc: (9,13)-(9,15) = "do" - │ ├── closing_loc: (9,16)-(9,19) = "end" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (9,3)-(9,12)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (9,3)-(9,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 1) - │ │ │ │ └── @ OptionalParameterNode (location: (9,3)-(9,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :foo - │ │ │ │ ├── name_loc: (9,3)-(9,6) = "foo" - │ │ │ │ ├── operator_loc: (9,7)-(9,8) = "=" - │ │ │ │ └── value: - │ │ │ │ @ CallNode (location: (9,9)-(9,12)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (9,9)-(9,12) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── body: ∅ - └── @ LambdaNode (location: (11,0)-(11,18)) - ├── flags: newline - ├── locals: [:foo] - ├── operator_loc: (11,0)-(11,2) = "->" - ├── opening_loc: (11,12)-(11,14) = "do" - ├── closing_loc: (11,15)-(11,18) = "end" - ├── parameters: - │ @ BlockParametersNode (location: (11,3)-(11,11)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (11,3)-(11,11)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ OptionalKeywordParameterNode (location: (11,3)-(11,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── name_loc: (11,3)-(11,7) = "foo:" - │ │ │ └── value: - │ │ │ @ CallNode (location: (11,8)-(11,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (11,8)-(11,11) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: ∅ - │ └── closing_loc: ∅ - └── body: ∅ diff --git a/test/prism/snapshots/method_calls.txt b/test/prism/snapshots/method_calls.txt deleted file mode 100644 index dbd8c3172f..0000000000 --- a/test/prism/snapshots/method_calls.txt +++ /dev/null @@ -1,2592 +0,0 @@ -@ ProgramNode (location: (1,0)-(156,19)) -├── flags: ∅ -├── locals: [:foo] -└── statements: - @ StatementsNode (location: (1,0)-(156,19)) - ├── flags: ∅ - └── body: (length: 67) - ├── @ CallNode (location: (1,0)-(1,14)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (1,0)-(1,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,0)-(1,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (1,3)-(1,4) = "." - │ ├── name: :bar - │ ├── message_loc: (1,4)-(1,7) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,8)-(1,14)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (1,8)-(1,14)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,8)-(1,10) = "%{" - │ │ ├── content_loc: (1,10)-(1,13) = "baz" - │ │ ├── closing_loc: (1,13)-(1,14) = "}" - │ │ └── unescaped: "baz" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (3,0)-(3,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (3,0)-(3,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (3,0)-(3,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (3,1)-(3,2) = "." - │ ├── name: :b - │ ├── message_loc: (3,2)-(3,3) = "b" - │ ├── opening_loc: (3,3)-(3,4) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (3,4)-(3,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (3,4)-(3,5)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :c - │ │ │ ├── message_loc: (3,4)-(3,5) = "c" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ CallNode (location: (3,7)-(3,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :d - │ │ ├── message_loc: (3,7)-(3,8) = "d" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (3,8)-(3,9) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (5,0)-(5,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (5,0)-(5,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (5,0)-(5,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (5,1)-(5,2) = "." - │ ├── name: :b - │ ├── message_loc: (5,2)-(5,3) = "b" - │ ├── opening_loc: (5,3)-(5,4) = "(" - │ ├── arguments: ∅ - │ ├── closing_loc: (5,4)-(5,5) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (7,0)-(9,7)) - │ ├── flags: newline, safe_navigation - │ ├── receiver: - │ │ @ CallNode (location: (7,0)-(8,6)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (7,0)-(7,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (7,0)-(7,3) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (8,2)-(8,3) = "." - │ │ ├── name: :bar - │ │ ├── message_loc: (8,3)-(8,6) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (9,2)-(9,4) = "&." - │ ├── name: :baz - │ ├── message_loc: (9,4)-(9,7) = "baz" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (11,0)-(11,2)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a! - │ ├── message_loc: (11,0)-(11,2) = "a!" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (13,0)-(13,4)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (13,0)-(13,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (13,0)-(13,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (13,1)-(13,2) = "." - │ ├── name: :call - │ ├── message_loc: ∅ - │ ├── opening_loc: (13,2)-(13,3) = "(" - │ ├── arguments: ∅ - │ ├── closing_loc: (13,3)-(13,4) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (15,0)-(15,11)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (15,0)-(15,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (15,0)-(15,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (15,1)-(15,2) = "." - │ ├── name: :call - │ ├── message_loc: ∅ - │ ├── opening_loc: (15,2)-(15,3) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (15,3)-(15,10)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 3) - │ │ ├── @ IntegerNode (location: (15,3)-(15,4)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── @ IntegerNode (location: (15,6)-(15,7)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── @ IntegerNode (location: (15,9)-(15,10)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 3 - │ ├── closing_loc: (15,10)-(15,11) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (17,0)-(17,4)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (17,0)-(17,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (17,0)-(17,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (17,1)-(17,3) = "::" - │ ├── name: :b - │ ├── message_loc: (17,3)-(17,4) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (19,0)-(19,6)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (19,0)-(19,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (19,0)-(19,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (19,1)-(19,3) = "::" - │ ├── name: :b - │ ├── message_loc: (19,3)-(19,4) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (19,5)-(19,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (19,5)-(19,6)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :c - │ │ ├── message_loc: (19,5)-(19,6) = "c" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (21,0)-(21,11)) - │ ├── flags: newline, attribute_write - │ ├── receiver: - │ │ @ CallNode (location: (21,0)-(21,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (21,0)-(21,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (21,3)-(21,4) = "." - │ ├── name: :bar= - │ ├── message_loc: (21,4)-(21,7) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (21,10)-(21,11)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (21,10)-(21,11)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (23,0)-(23,2)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a? - │ ├── message_loc: (23,0)-(23,2) = "a?" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (25,0)-(25,8)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (25,0)-(25,1) = "a" - │ ├── opening_loc: (25,1)-(25,2) = "(" - │ ├── arguments: ∅ - │ ├── closing_loc: (25,8)-(25,9) = ")" - │ └── block: - │ @ BlockArgumentNode (location: (25,2)-(25,8)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (25,3)-(25,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :block - │ │ ├── message_loc: (25,3)-(25,8) = "block" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (25,2)-(25,3) = "&" - ├── @ CallNode (location: (27,0)-(27,11)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (27,0)-(27,1) = "a" - │ ├── opening_loc: (27,1)-(27,2) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (27,2)-(27,10)) - │ │ ├── flags: contains_keywords, contains_keyword_splat - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (27,2)-(27,10)) - │ │ ├── flags: ∅ - │ │ └── elements: (length: 1) - │ │ └── @ AssocSplatNode (location: (27,2)-(27,10)) - │ │ ├── flags: ∅ - │ │ ├── value: - │ │ │ @ CallNode (location: (27,4)-(27,10)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :kwargs - │ │ │ ├── message_loc: (27,4)-(27,10) = "kwargs" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (27,2)-(27,4) = "**" - │ ├── closing_loc: (27,10)-(27,11) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (29,0)-(29,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (29,0)-(29,3)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (29,0)-(29,1)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (29,0)-(29,1) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (29,1)-(29,2) = "." - │ │ ├── name: :b - │ │ ├── message_loc: (29,2)-(29,3) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (29,3)-(29,4) = "." - │ ├── name: :c - │ ├── message_loc: (29,4)-(29,5) = "c" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (31,0)-(31,7)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (31,0)-(31,1) = "a" - │ ├── opening_loc: (31,1)-(31,2) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (31,2)-(31,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (31,2)-(31,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (31,2)-(31,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ CallNode (location: (31,5)-(31,6)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :c - │ │ ├── message_loc: (31,5)-(31,6) = "c" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (31,6)-(31,7) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (33,0)-(33,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (33,0)-(33,1) = "a" - │ ├── opening_loc: (33,1)-(33,2) = "(" - │ ├── arguments: ∅ - │ ├── closing_loc: (33,2)-(33,3) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (35,0)-(35,8)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (35,0)-(35,1) = "a" - │ ├── opening_loc: (35,1)-(35,2) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (35,2)-(35,7)) - │ │ ├── flags: contains_splat - │ │ └── arguments: (length: 1) - │ │ └── @ SplatNode (location: (35,2)-(35,7)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (35,2)-(35,3) = "*" - │ │ └── expression: - │ │ @ CallNode (location: (35,3)-(35,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :args - │ │ ├── message_loc: (35,3)-(35,7) = "args" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (35,7)-(35,8) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (37,0)-(37,6)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (37,0)-(37,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (37,2)-(37,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (37,2)-(37,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (37,2)-(37,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ CallNode (location: (37,5)-(37,6)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :c - │ │ ├── message_loc: (37,5)-(37,6) = "c" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (39,0)-(39,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (39,0)-(39,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (39,0)-(39,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (39,1)-(39,2) = "." - │ ├── name: :b - │ ├── message_loc: (39,2)-(39,3) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (39,4)-(39,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (39,4)-(39,5)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :c - │ │ │ ├── message_loc: (39,4)-(39,5) = "c" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ CallNode (location: (39,7)-(39,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :d - │ │ ├── message_loc: (39,7)-(39,8) = "d" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ MultiWriteNode (location: (41,0)-(41,23)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ CallTargetNode (location: (41,0)-(41,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── receiver: - │ │ │ │ @ CallNode (location: (41,0)-(41,3)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :foo - │ │ │ │ ├── message_loc: (41,0)-(41,3) = "foo" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── call_operator_loc: (41,3)-(41,4) = "." - │ │ │ ├── name: :foo= - │ │ │ └── message_loc: (41,4)-(41,7) = "foo" - │ │ └── @ CallTargetNode (location: (41,9)-(41,16)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (41,9)-(41,12)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (41,9)-(41,12) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (41,12)-(41,13) = "." - │ │ ├── name: :bar= - │ │ └── message_loc: (41,13)-(41,16) = "bar" - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (41,17)-(41,18) = "=" - │ └── value: - │ @ ArrayNode (location: (41,19)-(41,23)) - │ ├── flags: static_literal - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (41,19)-(41,20)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (41,22)-(41,23)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── opening_loc: ∅ - │ └── closing_loc: ∅ - ├── @ CallNode (location: (43,0)-(43,4)) - │ ├── flags: newline, safe_navigation - │ ├── receiver: - │ │ @ CallNode (location: (43,0)-(43,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (43,0)-(43,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (43,1)-(43,3) = "&." - │ ├── name: :b - │ ├── message_loc: (43,3)-(43,4) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (45,0)-(45,5)) - │ ├── flags: newline, safe_navigation - │ ├── receiver: - │ │ @ CallNode (location: (45,0)-(45,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (45,0)-(45,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (45,1)-(45,3) = "&." - │ ├── name: :call - │ ├── message_loc: ∅ - │ ├── opening_loc: (45,3)-(45,4) = "(" - │ ├── arguments: ∅ - │ ├── closing_loc: (45,4)-(45,5) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (47,0)-(47,7)) - │ ├── flags: newline, safe_navigation - │ ├── receiver: - │ │ @ CallNode (location: (47,0)-(47,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (47,0)-(47,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (47,1)-(47,3) = "&." - │ ├── name: :b - │ ├── message_loc: (47,3)-(47,4) = "b" - │ ├── opening_loc: (47,4)-(47,5) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (47,5)-(47,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (47,5)-(47,6)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :c - │ │ ├── message_loc: (47,5)-(47,6) = "c" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (47,6)-(47,7) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (49,0)-(49,6)) - │ ├── flags: newline, safe_navigation - │ ├── receiver: - │ │ @ CallNode (location: (49,0)-(49,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (49,0)-(49,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (49,1)-(49,3) = "&." - │ ├── name: :b - │ ├── message_loc: (49,3)-(49,4) = "b" - │ ├── opening_loc: (49,4)-(49,5) = "(" - │ ├── arguments: ∅ - │ ├── closing_loc: (49,5)-(49,6) = ")" - │ └── block: ∅ - ├── @ IfNode (location: (51,0)-(51,33)) - │ ├── flags: newline - │ ├── if_keyword_loc: (51,11)-(51,13) = "if" - │ ├── predicate: - │ │ @ AndNode (location: (51,14)-(51,33)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ OrNode (location: (51,14)-(51,25)) - │ │ │ ├── flags: ∅ - │ │ │ ├── left: - │ │ │ │ @ CallNode (location: (51,14)-(51,18)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar? - │ │ │ │ ├── message_loc: (51,14)-(51,18) = "bar?" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── right: - │ │ │ │ @ CallNode (location: (51,22)-(51,25)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ ├── message_loc: (51,22)-(51,25) = "baz" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── operator_loc: (51,19)-(51,21) = "or" - │ │ ├── right: - │ │ │ @ CallNode (location: (51,30)-(51,33)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :qux - │ │ │ ├── message_loc: (51,30)-(51,33) = "qux" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (51,26)-(51,29) = "and" - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (51,0)-(51,10)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (51,0)-(51,10)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (51,0)-(51,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (51,4)-(51,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 2) - │ │ │ ├── @ SymbolNode (location: (51,4)-(51,6)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (51,4)-(51,5) = ":" - │ │ │ │ ├── value_loc: (51,5)-(51,6) = "a" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "a" - │ │ │ └── @ SymbolNode (location: (51,8)-(51,10)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (51,8)-(51,9) = ":" - │ │ │ ├── value_loc: (51,9)-(51,10) = "b" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "b" - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── subsequent: ∅ - │ └── end_keyword_loc: ∅ - ├── @ CallNode (location: (53,0)-(56,1)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (53,0)-(53,3) = "foo" - │ ├── opening_loc: (53,3)-(53,4) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (53,4)-(55,4)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ SymbolNode (location: (53,4)-(53,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (53,4)-(53,5) = ":" - │ │ │ ├── value_loc: (53,5)-(53,6) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ └── @ SymbolNode (location: (55,2)-(55,4)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (55,2)-(55,3) = ":" - │ │ ├── value_loc: (55,3)-(55,4) = "b" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b" - │ ├── closing_loc: (56,0)-(56,1) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (58,0)-(58,10)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (58,0)-(58,3) = "foo" - │ ├── opening_loc: (58,3)-(58,4) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (58,4)-(58,9)) - │ │ ├── flags: contains_splat - │ │ └── arguments: (length: 1) - │ │ └── @ SplatNode (location: (58,4)-(58,9)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (58,4)-(58,5) = "*" - │ │ └── expression: - │ │ @ CallNode (location: (58,5)-(58,9)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :rest - │ │ ├── message_loc: (58,5)-(58,9) = "rest" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (58,9)-(58,10) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (60,0)-(60,39)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (60,0)-(60,3) = "foo" - │ ├── opening_loc: (60,3)-(60,4) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (60,4)-(60,32)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 2) - │ │ ├── @ SymbolNode (location: (60,4)-(60,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (60,4)-(60,5) = ":" - │ │ │ ├── value_loc: (60,5)-(60,6) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ └── @ KeywordHashNode (location: (60,8)-(60,32)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 2) - │ │ ├── @ AssocNode (location: (60,8)-(60,22)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (60,8)-(60,10)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (60,8)-(60,9) = ":" - │ │ │ │ ├── value_loc: (60,9)-(60,10) = "h" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "h" - │ │ │ ├── value: - │ │ │ │ @ ArrayNode (location: (60,14)-(60,22)) - │ │ │ │ ├── flags: static_literal - │ │ │ │ ├── elements: (length: 2) - │ │ │ │ │ ├── @ SymbolNode (location: (60,15)-(60,17)) - │ │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ │ ├── opening_loc: (60,15)-(60,16) = ":" - │ │ │ │ │ │ ├── value_loc: (60,16)-(60,17) = "x" - │ │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ │ └── unescaped: "x" - │ │ │ │ │ └── @ SymbolNode (location: (60,19)-(60,21)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: (60,19)-(60,20) = ":" - │ │ │ │ │ ├── value_loc: (60,20)-(60,21) = "y" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "y" - │ │ │ │ ├── opening_loc: (60,14)-(60,15) = "[" - │ │ │ │ └── closing_loc: (60,21)-(60,22) = "]" - │ │ │ └── operator_loc: (60,11)-(60,13) = "=>" - │ │ └── @ AssocNode (location: (60,24)-(60,32)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (60,24)-(60,26)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (60,24)-(60,25) = ":" - │ │ │ ├── value_loc: (60,25)-(60,26) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ ├── value: - │ │ │ @ SymbolNode (location: (60,30)-(60,32)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (60,30)-(60,31) = ":" - │ │ │ ├── value_loc: (60,31)-(60,32) = "b" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "b" - │ │ └── operator_loc: (60,27)-(60,29) = "=>" - │ ├── closing_loc: (60,39)-(60,40) = ")" - │ └── block: - │ @ BlockArgumentNode (location: (60,34)-(60,39)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ SymbolNode (location: (60,35)-(60,39)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (60,35)-(60,36) = ":" - │ │ ├── value_loc: (60,36)-(60,39) = "bar" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "bar" - │ └── operator_loc: (60,34)-(60,35) = "&" - ├── @ CallNode (location: (62,0)-(62,49)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :hi - │ ├── message_loc: (62,0)-(62,2) = "hi" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (62,3)-(62,49)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ IntegerNode (location: (62,3)-(62,6)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 123 - │ │ └── @ HashNode (location: (62,8)-(62,49)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (62,8)-(62,9) = "{" - │ │ ├── elements: (length: 3) - │ │ │ ├── @ AssocNode (location: (62,10)-(62,27)) - │ │ │ │ ├── flags: static_literal - │ │ │ │ ├── key: - │ │ │ │ │ @ SymbolNode (location: (62,10)-(62,16)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: (62,10)-(62,11) = ":" - │ │ │ │ │ ├── value_loc: (62,11)-(62,16) = "there" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "there" - │ │ │ │ ├── value: - │ │ │ │ │ @ SymbolNode (location: (62,20)-(62,27)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: (62,20)-(62,21) = ":" - │ │ │ │ │ ├── value_loc: (62,21)-(62,27) = "friend" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "friend" - │ │ │ │ └── operator_loc: (62,17)-(62,19) = "=>" - │ │ │ ├── @ AssocSplatNode (location: (62,29)-(62,33)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── value: - │ │ │ │ │ @ HashNode (location: (62,31)-(62,33)) - │ │ │ │ │ ├── flags: static_literal - │ │ │ │ │ ├── opening_loc: (62,31)-(62,32) = "{" - │ │ │ │ │ ├── elements: (length: 0) - │ │ │ │ │ └── closing_loc: (62,32)-(62,33) = "}" - │ │ │ │ └── operator_loc: (62,29)-(62,31) = "**" - │ │ │ └── @ AssocNode (location: (62,35)-(62,47)) - │ │ │ ├── flags: static_literal - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (62,35)-(62,42)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (62,35)-(62,41) = "whatup" - │ │ │ │ ├── closing_loc: (62,41)-(62,42) = ":" - │ │ │ │ └── unescaped: "whatup" - │ │ │ ├── value: - │ │ │ │ @ SymbolNode (location: (62,43)-(62,47)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (62,43)-(62,44) = ":" - │ │ │ │ ├── value_loc: (62,44)-(62,47) = "dog" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "dog" - │ │ │ └── operator_loc: ∅ - │ │ └── closing_loc: (62,48)-(62,49) = "}" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (64,0)-(64,36)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (64,0)-(64,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (64,4)-(64,15)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 2) - │ │ ├── @ SymbolNode (location: (64,4)-(64,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (64,4)-(64,5) = ":" - │ │ │ ├── value_loc: (64,5)-(64,6) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ └── @ KeywordHashNode (location: (64,8)-(64,15)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (64,8)-(64,15)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (64,8)-(64,10)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (64,8)-(64,9) = "b" - │ │ │ ├── closing_loc: (64,9)-(64,10) = ":" - │ │ │ └── unescaped: "b" - │ │ ├── value: - │ │ │ @ TrueNode (location: (64,11)-(64,15)) - │ │ │ └── flags: static_literal - │ │ └── operator_loc: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (64,16)-(64,36)) - │ ├── flags: ∅ - │ ├── locals: [:a, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (64,19)-(64,25)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (64,20)-(64,24)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 2) - │ │ │ │ ├── @ RequiredParameterNode (location: (64,20)-(64,21)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :a - │ │ │ │ └── @ RequiredParameterNode (location: (64,23)-(64,24)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :b - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (64,19)-(64,20) = "|" - │ │ └── closing_loc: (64,24)-(64,25) = "|" - │ ├── body: - │ │ @ StatementsNode (location: (64,26)-(64,32)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (64,26)-(64,32)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :puts - │ │ ├── message_loc: (64,26)-(64,30) = "puts" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (64,31)-(64,32)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ LocalVariableReadNode (location: (64,31)-(64,32)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (64,16)-(64,18) = "do" - │ └── closing_loc: (64,33)-(64,36) = "end" - ├── @ CallNode (location: (66,0)-(66,17)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :hi - │ ├── message_loc: (66,0)-(66,2) = "hi" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (66,3)-(66,17)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (66,3)-(66,17)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (66,3)-(66,17)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (66,3)-(66,9)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (66,3)-(66,8) = "there" - │ │ │ ├── closing_loc: (66,8)-(66,9) = ":" - │ │ │ └── unescaped: "there" - │ │ ├── value: - │ │ │ @ SymbolNode (location: (66,10)-(66,17)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (66,10)-(66,11) = ":" - │ │ │ ├── value_loc: (66,11)-(66,17) = "friend" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "friend" - │ │ └── operator_loc: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (68,0)-(68,40)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :hi - │ ├── message_loc: (68,0)-(68,2) = "hi" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (68,3)-(68,40)) - │ │ ├── flags: contains_keywords, contains_keyword_splat - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (68,3)-(68,40)) - │ │ ├── flags: ∅ - │ │ └── elements: (length: 3) - │ │ ├── @ AssocNode (location: (68,3)-(68,20)) - │ │ │ ├── flags: static_literal - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (68,3)-(68,9)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (68,3)-(68,4) = ":" - │ │ │ │ ├── value_loc: (68,4)-(68,9) = "there" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "there" - │ │ │ ├── value: - │ │ │ │ @ SymbolNode (location: (68,13)-(68,20)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (68,13)-(68,14) = ":" - │ │ │ │ ├── value_loc: (68,14)-(68,20) = "friend" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "friend" - │ │ │ └── operator_loc: (68,10)-(68,12) = "=>" - │ │ ├── @ AssocSplatNode (location: (68,22)-(68,26)) - │ │ │ ├── flags: ∅ - │ │ │ ├── value: - │ │ │ │ @ HashNode (location: (68,24)-(68,26)) - │ │ │ │ ├── flags: static_literal - │ │ │ │ ├── opening_loc: (68,24)-(68,25) = "{" - │ │ │ │ ├── elements: (length: 0) - │ │ │ │ └── closing_loc: (68,25)-(68,26) = "}" - │ │ │ └── operator_loc: (68,22)-(68,24) = "**" - │ │ └── @ AssocNode (location: (68,28)-(68,40)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (68,28)-(68,35)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (68,28)-(68,34) = "whatup" - │ │ │ ├── closing_loc: (68,34)-(68,35) = ":" - │ │ │ └── unescaped: "whatup" - │ │ ├── value: - │ │ │ @ SymbolNode (location: (68,36)-(68,40)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (68,36)-(68,37) = ":" - │ │ │ ├── value_loc: (68,37)-(68,40) = "dog" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "dog" - │ │ └── operator_loc: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (70,0)-(70,41)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :hi - │ ├── message_loc: (70,0)-(70,2) = "hi" - │ ├── opening_loc: (70,2)-(70,3) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (70,3)-(70,40)) - │ │ ├── flags: contains_keywords, contains_keyword_splat - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (70,3)-(70,40)) - │ │ ├── flags: ∅ - │ │ └── elements: (length: 3) - │ │ ├── @ AssocNode (location: (70,3)-(70,20)) - │ │ │ ├── flags: static_literal - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (70,3)-(70,9)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (70,3)-(70,4) = ":" - │ │ │ │ ├── value_loc: (70,4)-(70,9) = "there" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "there" - │ │ │ ├── value: - │ │ │ │ @ SymbolNode (location: (70,13)-(70,20)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (70,13)-(70,14) = ":" - │ │ │ │ ├── value_loc: (70,14)-(70,20) = "friend" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "friend" - │ │ │ └── operator_loc: (70,10)-(70,12) = "=>" - │ │ ├── @ AssocSplatNode (location: (70,22)-(70,26)) - │ │ │ ├── flags: ∅ - │ │ │ ├── value: - │ │ │ │ @ HashNode (location: (70,24)-(70,26)) - │ │ │ │ ├── flags: static_literal - │ │ │ │ ├── opening_loc: (70,24)-(70,25) = "{" - │ │ │ │ ├── elements: (length: 0) - │ │ │ │ └── closing_loc: (70,25)-(70,26) = "}" - │ │ │ └── operator_loc: (70,22)-(70,24) = "**" - │ │ └── @ AssocNode (location: (70,28)-(70,40)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (70,28)-(70,35)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (70,28)-(70,34) = "whatup" - │ │ │ ├── closing_loc: (70,34)-(70,35) = ":" - │ │ │ └── unescaped: "whatup" - │ │ ├── value: - │ │ │ @ SymbolNode (location: (70,36)-(70,40)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (70,36)-(70,37) = ":" - │ │ │ ├── value_loc: (70,37)-(70,40) = "dog" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "dog" - │ │ └── operator_loc: ∅ - │ ├── closing_loc: (70,40)-(70,41) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (72,0)-(72,35)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (72,0)-(72,3) = "foo" - │ ├── opening_loc: (72,3)-(72,4) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (72,4)-(72,26)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ HashNode (location: (72,4)-(72,26)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (72,4)-(72,5) = "{" - │ │ ├── elements: (length: 2) - │ │ │ ├── @ AssocNode (location: (72,6)-(72,13)) - │ │ │ │ ├── flags: static_literal - │ │ │ │ ├── key: - │ │ │ │ │ @ SymbolNode (location: (72,6)-(72,8)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── value_loc: (72,6)-(72,7) = "a" - │ │ │ │ │ ├── closing_loc: (72,7)-(72,8) = ":" - │ │ │ │ │ └── unescaped: "a" - │ │ │ │ ├── value: - │ │ │ │ │ @ TrueNode (location: (72,9)-(72,13)) - │ │ │ │ │ └── flags: static_literal - │ │ │ │ └── operator_loc: ∅ - │ │ │ └── @ AssocNode (location: (72,15)-(72,23)) - │ │ │ ├── flags: static_literal - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (72,15)-(72,17)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (72,15)-(72,16) = "b" - │ │ │ │ ├── closing_loc: (72,16)-(72,17) = ":" - │ │ │ │ └── unescaped: "b" - │ │ │ ├── value: - │ │ │ │ @ FalseNode (location: (72,18)-(72,23)) - │ │ │ │ └── flags: static_literal - │ │ │ └── operator_loc: ∅ - │ │ └── closing_loc: (72,25)-(72,26) = "}" - │ ├── closing_loc: (72,35)-(72,36) = ")" - │ └── block: - │ @ BlockArgumentNode (location: (72,28)-(72,35)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ SymbolNode (location: (72,29)-(72,35)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (72,29)-(72,30) = ":" - │ │ ├── value_loc: (72,30)-(72,35) = "block" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "block" - │ └── operator_loc: (72,28)-(72,29) = "&" - ├── @ CallNode (location: (74,0)-(74,20)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :hi - │ ├── message_loc: (74,0)-(74,2) = "hi" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (74,3)-(74,20)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (74,3)-(74,20)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (74,3)-(74,20)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (74,3)-(74,9)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (74,3)-(74,4) = ":" - │ │ │ ├── value_loc: (74,4)-(74,9) = "there" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "there" - │ │ ├── value: - │ │ │ @ SymbolNode (location: (74,13)-(74,20)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (74,13)-(74,14) = ":" - │ │ │ ├── value_loc: (74,14)-(74,20) = "friend" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "friend" - │ │ └── operator_loc: (74,10)-(74,12) = "=>" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (76,0)-(78,1)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (76,0)-(76,3) = "foo" - │ ├── opening_loc: (76,3)-(76,4) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (76,4)-(77,2)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ SymbolNode (location: (76,4)-(76,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (76,4)-(76,5) = ":" - │ │ │ ├── value_loc: (76,5)-(76,6) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ └── @ SymbolNode (location: (77,0)-(77,2)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (77,0)-(77,1) = ":" - │ │ ├── value_loc: (77,1)-(77,2) = "b" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b" - │ ├── closing_loc: (78,0)-(78,1) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (80,0)-(83,1)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (80,0)-(80,3) = "foo" - │ ├── opening_loc: (80,3)-(80,4) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (81,0)-(82,5)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 2) - │ │ ├── @ SymbolNode (location: (81,0)-(81,2)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (81,0)-(81,1) = ":" - │ │ │ ├── value_loc: (81,1)-(81,2) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ └── @ KeywordHashNode (location: (82,0)-(82,5)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (82,0)-(82,5)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (82,0)-(82,2)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (82,0)-(82,1) = "b" - │ │ │ ├── closing_loc: (82,1)-(82,2) = ":" - │ │ │ └── unescaped: "b" - │ │ ├── value: - │ │ │ @ SymbolNode (location: (82,3)-(82,5)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (82,3)-(82,4) = ":" - │ │ │ ├── value_loc: (82,4)-(82,5) = "c" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "c" - │ │ └── operator_loc: ∅ - │ ├── closing_loc: (83,0)-(83,1) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (85,0)-(85,11)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (85,0)-(85,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockArgumentNode (location: (85,4)-(85,11)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ SymbolNode (location: (85,5)-(85,11)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (85,5)-(85,6) = ":" - │ │ ├── value_loc: (85,6)-(85,11) = "block" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "block" - │ └── operator_loc: (85,4)-(85,5) = "&" - ├── @ CallNode (location: (87,0)-(87,30)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (87,0)-(87,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (87,4)-(87,21)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (87,4)-(87,21)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 2) - │ │ ├── @ AssocNode (location: (87,4)-(87,11)) - │ │ │ ├── flags: static_literal - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (87,4)-(87,6)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (87,4)-(87,5) = "a" - │ │ │ │ ├── closing_loc: (87,5)-(87,6) = ":" - │ │ │ │ └── unescaped: "a" - │ │ │ ├── value: - │ │ │ │ @ TrueNode (location: (87,7)-(87,11)) - │ │ │ │ └── flags: static_literal - │ │ │ └── operator_loc: ∅ - │ │ └── @ AssocNode (location: (87,13)-(87,21)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (87,13)-(87,15)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (87,13)-(87,14) = "b" - │ │ │ ├── closing_loc: (87,14)-(87,15) = ":" - │ │ │ └── unescaped: "b" - │ │ ├── value: - │ │ │ @ FalseNode (location: (87,16)-(87,21)) - │ │ │ └── flags: static_literal - │ │ └── operator_loc: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockArgumentNode (location: (87,23)-(87,30)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ SymbolNode (location: (87,24)-(87,30)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (87,24)-(87,25) = ":" - │ │ ├── value_loc: (87,25)-(87,30) = "block" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "block" - │ └── operator_loc: (87,23)-(87,24) = "&" - ├── @ CallNode (location: (89,0)-(89,21)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :some_func - │ ├── message_loc: (89,0)-(89,9) = "some_func" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (89,10)-(89,21)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 2) - │ │ ├── @ IntegerNode (location: (89,10)-(89,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ KeywordHashNode (location: (89,13)-(89,21)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (89,13)-(89,21)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (89,13)-(89,19)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (89,13)-(89,18) = "kwarg" - │ │ │ ├── closing_loc: (89,18)-(89,19) = ":" - │ │ │ └── unescaped: "kwarg" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (89,20)-(89,21)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── operator_loc: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (91,0)-(91,18)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (91,0)-(91,6)) - │ │ ├── flags: ∅ - │ │ └── name: :Kernel - │ ├── call_operator_loc: (91,6)-(91,7) = "." - │ ├── name: :Integer - │ ├── message_loc: (91,7)-(91,14) = "Integer" - │ ├── opening_loc: (91,14)-(91,15) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (91,15)-(91,17)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (91,15)-(91,17)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 10 - │ ├── closing_loc: (91,17)-(91,18) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (93,0)-(93,10)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (93,0)-(93,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :x - │ │ ├── message_loc: (93,0)-(93,1) = "x" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (93,1)-(93,2) = "." - │ ├── name: :each - │ ├── message_loc: (93,2)-(93,6) = "each" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (93,7)-(93,10)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (93,7)-(93,8) = "{" - │ └── closing_loc: (93,9)-(93,10) = "}" - ├── @ CallNode (location: (95,0)-(95,14)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (95,0)-(95,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (95,0)-(95,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (95,3)-(95,4) = "." - │ ├── name: :map - │ ├── message_loc: (95,4)-(95,7) = "map" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (95,8)-(95,14)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (95,10)-(95,12)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ BackReferenceReadNode (location: (95,10)-(95,12)) - │ │ ├── flags: newline - │ │ └── name: :$& - │ ├── opening_loc: (95,8)-(95,9) = "{" - │ └── closing_loc: (95,13)-(95,14) = "}" - ├── @ CallNode (location: (97,0)-(97,12)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantPathNode (location: (97,0)-(97,4)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ ConstantReadNode (location: (97,0)-(97,1)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :A - │ │ ├── name: :B - │ │ ├── delimiter_loc: (97,1)-(97,3) = "::" - │ │ └── name_loc: (97,3)-(97,4) = "B" - │ ├── call_operator_loc: (97,4)-(97,6) = "::" - │ ├── name: :C - │ ├── message_loc: (97,6)-(97,7) = "C" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (97,8)-(97,12)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ SymbolNode (location: (97,8)-(97,12)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (97,8)-(97,9) = ":" - │ │ ├── value_loc: (97,9)-(97,12) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (99,0)-(99,13)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantPathNode (location: (99,0)-(99,4)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ ConstantReadNode (location: (99,0)-(99,1)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :A - │ │ ├── name: :B - │ │ ├── delimiter_loc: (99,1)-(99,3) = "::" - │ │ └── name_loc: (99,3)-(99,4) = "B" - │ ├── call_operator_loc: (99,4)-(99,6) = "::" - │ ├── name: :C - │ ├── message_loc: (99,6)-(99,7) = "C" - │ ├── opening_loc: (99,7)-(99,8) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (99,8)-(99,12)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ SymbolNode (location: (99,8)-(99,12)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (99,8)-(99,9) = ":" - │ │ ├── value_loc: (99,9)-(99,12) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ ├── closing_loc: (99,12)-(99,13) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (101,0)-(101,17)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantPathNode (location: (101,0)-(101,4)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ ConstantReadNode (location: (101,0)-(101,1)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :A - │ │ ├── name: :B - │ │ ├── delimiter_loc: (101,1)-(101,3) = "::" - │ │ └── name_loc: (101,3)-(101,4) = "B" - │ ├── call_operator_loc: (101,4)-(101,6) = "::" - │ ├── name: :C - │ ├── message_loc: (101,6)-(101,7) = "C" - │ ├── opening_loc: (101,7)-(101,8) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (101,8)-(101,12)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ SymbolNode (location: (101,8)-(101,12)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (101,8)-(101,9) = ":" - │ │ ├── value_loc: (101,9)-(101,12) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ ├── closing_loc: (101,12)-(101,13) = ")" - │ └── block: - │ @ BlockNode (location: (101,14)-(101,17)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (101,14)-(101,15) = "{" - │ └── closing_loc: (101,16)-(101,17) = "}" - ├── @ CallNode (location: (103,0)-(103,12)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (103,0)-(103,3) = "foo" - │ ├── opening_loc: (103,3)-(103,4) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (103,4)-(103,11)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (103,4)-(103,11)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (103,4)-(103,11)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (103,4)-(103,8)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (103,4)-(103,5) = "\"" - │ │ │ ├── value_loc: (103,5)-(103,6) = "a" - │ │ │ ├── closing_loc: (103,6)-(103,8) = "\":" - │ │ │ └── unescaped: "a" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (103,9)-(103,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: -1 - │ │ └── operator_loc: ∅ - │ ├── closing_loc: (103,11)-(103,12) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (105,0)-(105,28)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (105,0)-(105,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (105,4)-(105,28)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (105,4)-(105,28)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (105,4)-(105,28)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ SymbolNode (location: (105,4)-(105,8)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (105,4)-(105,7) = "bar" - │ │ │ ├── closing_loc: (105,7)-(105,8) = ":" - │ │ │ └── unescaped: "bar" - │ │ ├── value: - │ │ │ @ HashNode (location: (105,9)-(105,28)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (105,9)-(105,10) = "{" - │ │ │ ├── elements: (length: 1) - │ │ │ │ └── @ AssocNode (location: (105,11)-(105,26)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── key: - │ │ │ │ │ @ SymbolNode (location: (105,11)-(105,15)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── value_loc: (105,11)-(105,14) = "baz" - │ │ │ │ │ ├── closing_loc: (105,14)-(105,15) = ":" - │ │ │ │ │ └── unescaped: "baz" - │ │ │ │ ├── value: - │ │ │ │ │ @ CallNode (location: (105,16)-(105,26)) - │ │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :qux - │ │ │ │ │ ├── message_loc: (105,16)-(105,19) = "qux" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: - │ │ │ │ │ @ BlockNode (location: (105,20)-(105,26)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── locals: [] - │ │ │ │ │ ├── parameters: ∅ - │ │ │ │ │ ├── body: ∅ - │ │ │ │ │ ├── opening_loc: (105,20)-(105,22) = "do" - │ │ │ │ │ └── closing_loc: (105,23)-(105,26) = "end" - │ │ │ │ └── operator_loc: ∅ - │ │ │ └── closing_loc: (105,27)-(105,28) = "}" - │ │ └── operator_loc: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (107,0)-(107,24)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (107,0)-(107,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (107,4)-(107,24)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (107,4)-(107,24)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (107,4)-(107,24)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ SymbolNode (location: (107,4)-(107,8)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (107,4)-(107,7) = "bar" - │ │ │ ├── closing_loc: (107,7)-(107,8) = ":" - │ │ │ └── unescaped: "bar" - │ │ ├── value: - │ │ │ @ HashNode (location: (107,9)-(107,24)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (107,9)-(107,10) = "{" - │ │ │ ├── elements: (length: 1) - │ │ │ │ └── @ AssocSplatNode (location: (107,11)-(107,22)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── value: - │ │ │ │ │ @ CallNode (location: (107,13)-(107,22)) - │ │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :kw - │ │ │ │ │ ├── message_loc: (107,13)-(107,15) = "kw" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: - │ │ │ │ │ @ BlockNode (location: (107,16)-(107,22)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── locals: [] - │ │ │ │ │ ├── parameters: ∅ - │ │ │ │ │ ├── body: ∅ - │ │ │ │ │ ├── opening_loc: (107,16)-(107,18) = "do" - │ │ │ │ │ └── closing_loc: (107,19)-(107,22) = "end" - │ │ │ │ └── operator_loc: (107,11)-(107,13) = "**" - │ │ │ └── closing_loc: (107,23)-(107,24) = "}" - │ │ └── operator_loc: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (109,0)-(109,36)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (109,0)-(109,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (109,4)-(109,29)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (109,4)-(109,29)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (109,4)-(109,5) = "\"" - │ │ ├── parts: (length: 1) - │ │ │ └── @ EmbeddedStatementsNode (location: (109,5)-(109,28)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (109,5)-(109,7) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (109,7)-(109,27)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (109,7)-(109,27)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── receiver: - │ │ │ │ │ @ CallNode (location: (109,7)-(109,10)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :bar - │ │ │ │ │ ├── message_loc: (109,7)-(109,10) = "bar" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── call_operator_loc: (109,10)-(109,11) = "." - │ │ │ │ ├── name: :map - │ │ │ │ ├── message_loc: (109,11)-(109,14) = "map" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: - │ │ │ │ @ BlockNode (location: (109,15)-(109,27)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── locals: [] - │ │ │ │ ├── parameters: ∅ - │ │ │ │ ├── body: - │ │ │ │ │ @ StatementsNode (location: (109,18)-(109,23)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ StringNode (location: (109,18)-(109,23)) - │ │ │ │ │ ├── flags: newline - │ │ │ │ │ ├── opening_loc: (109,18)-(109,19) = "\"" - │ │ │ │ │ ├── content_loc: (109,19)-(109,22) = "baz" - │ │ │ │ │ ├── closing_loc: (109,22)-(109,23) = "\"" - │ │ │ │ │ └── unescaped: "baz" - │ │ │ │ ├── opening_loc: (109,15)-(109,17) = "do" - │ │ │ │ └── closing_loc: (109,24)-(109,27) = "end" - │ │ │ └── closing_loc: (109,27)-(109,28) = "}" - │ │ └── closing_loc: (109,28)-(109,29) = "\"" - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (109,30)-(109,36)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (109,30)-(109,32) = "do" - │ └── closing_loc: (109,33)-(109,36) = "end" - ├── @ CallNode (location: (111,0)-(111,28)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (111,0)-(111,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (111,4)-(111,28)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ ClassNode (location: (111,4)-(111,28)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── class_keyword_loc: (111,4)-(111,9) = "class" - │ │ ├── constant_path: - │ │ │ @ ConstantReadNode (location: (111,10)-(111,13)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Bar - │ │ ├── inheritance_operator_loc: ∅ - │ │ ├── superclass: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (111,14)-(111,24)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (111,14)-(111,24)) - │ │ │ ├── flags: newline, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (111,14)-(111,17) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (111,18)-(111,24)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: ∅ - │ │ │ ├── opening_loc: (111,18)-(111,20) = "do" - │ │ │ └── closing_loc: (111,21)-(111,24) = "end" - │ │ ├── end_keyword_loc: (111,25)-(111,28) = "end" - │ │ └── name: :Bar - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (113,0)-(113,29)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (113,0)-(113,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (113,4)-(113,29)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ ModuleNode (location: (113,4)-(113,29)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── module_keyword_loc: (113,4)-(113,10) = "module" - │ │ ├── constant_path: - │ │ │ @ ConstantReadNode (location: (113,11)-(113,14)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Bar - │ │ ├── body: - │ │ │ @ StatementsNode (location: (113,15)-(113,25)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (113,15)-(113,25)) - │ │ │ ├── flags: newline, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (113,15)-(113,18) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (113,19)-(113,25)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: ∅ - │ │ │ ├── opening_loc: (113,19)-(113,21) = "do" - │ │ │ └── closing_loc: (113,22)-(113,25) = "end" - │ │ ├── end_keyword_loc: (113,26)-(113,29) = "end" - │ │ └── name: :Bar - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (115,0)-(115,16)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (115,0)-(115,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (115,4)-(115,16)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ ArrayNode (location: (115,4)-(115,16)) - │ │ ├── flags: ∅ - │ │ ├── elements: (length: 1) - │ │ │ └── @ CallNode (location: (115,5)-(115,15)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (115,5)-(115,8) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (115,9)-(115,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: ∅ - │ │ │ ├── opening_loc: (115,9)-(115,11) = "do" - │ │ │ └── closing_loc: (115,12)-(115,15) = "end" - │ │ ├── opening_loc: (115,4)-(115,5) = "[" - │ │ └── closing_loc: (115,15)-(115,16) = "]" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (117,0)-(117,28)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :p - │ ├── message_loc: (117,0)-(117,1) = "p" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (117,2)-(117,28)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ BeginNode (location: (117,2)-(117,28)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: (117,2)-(117,7) = "begin" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (117,8)-(117,24)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (117,8)-(117,24)) - │ │ │ ├── flags: newline - │ │ │ ├── receiver: - │ │ │ │ @ IntegerNode (location: (117,8)-(117,9)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── call_operator_loc: (117,9)-(117,10) = "." - │ │ │ ├── name: :times - │ │ │ ├── message_loc: (117,10)-(117,15) = "times" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (117,16)-(117,24)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (117,19)-(117,20)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (117,19)-(117,20)) - │ │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── opening_loc: (117,16)-(117,18) = "do" - │ │ │ └── closing_loc: (117,21)-(117,24) = "end" - │ │ ├── rescue_clause: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: ∅ - │ │ └── end_keyword_loc: (117,25)-(117,28) = "end" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (119,0)-(124,5)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (119,0)-(119,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (119,4)-(124,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ SymbolNode (location: (119,4)-(119,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (119,4)-(119,5) = ":" - │ │ │ ├── value_loc: (119,5)-(119,6) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ └── @ IfNode (location: (120,2)-(124,5)) - │ │ ├── flags: newline - │ │ ├── if_keyword_loc: (120,2)-(120,4) = "if" - │ │ ├── predicate: - │ │ │ @ CallNode (location: (120,5)-(120,6)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :x - │ │ │ ├── message_loc: (120,5)-(120,6) = "x" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── then_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (121,4)-(123,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (121,4)-(123,7)) - │ │ │ ├── flags: newline, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (121,4)-(121,7) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (121,8)-(123,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [:a] - │ │ │ ├── parameters: - │ │ │ │ @ BlockParametersNode (location: (121,11)-(121,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── parameters: - │ │ │ │ │ @ ParametersNode (location: (121,12)-(121,13)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── requireds: (length: 1) - │ │ │ │ │ │ └── @ RequiredParameterNode (location: (121,12)-(121,13)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── name: :a - │ │ │ │ │ ├── optionals: (length: 0) - │ │ │ │ │ ├── rest: ∅ - │ │ │ │ │ ├── posts: (length: 0) - │ │ │ │ │ ├── keywords: (length: 0) - │ │ │ │ │ ├── keyword_rest: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── locals: (length: 0) - │ │ │ │ ├── opening_loc: (121,11)-(121,12) = "|" - │ │ │ │ └── closing_loc: (121,13)-(121,14) = "|" - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (122,6)-(122,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ LocalVariableReadNode (location: (122,6)-(122,7)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── name: :a - │ │ │ │ └── depth: 0 - │ │ │ ├── opening_loc: (121,8)-(121,10) = "do" - │ │ │ └── closing_loc: (123,4)-(123,7) = "end" - │ │ ├── subsequent: ∅ - │ │ └── end_keyword_loc: (124,2)-(124,5) = "end" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (126,0)-(135,5)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (126,0)-(126,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (126,4)-(135,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 3) - │ │ ├── @ SymbolNode (location: (126,4)-(126,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (126,4)-(126,5) = ":" - │ │ │ ├── value_loc: (126,5)-(126,6) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ ├── @ WhileNode (location: (127,2)-(131,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (127,2)-(127,7) = "while" - │ │ │ ├── closing_loc: (131,2)-(131,5) = "end" - │ │ │ ├── predicate: - │ │ │ │ @ CallNode (location: (127,8)-(127,9)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :x - │ │ │ │ ├── message_loc: (127,8)-(127,9) = "x" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── statements: - │ │ │ @ StatementsNode (location: (128,4)-(130,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (128,4)-(130,7)) - │ │ │ ├── flags: newline, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (128,4)-(128,7) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (128,8)-(130,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [:a] - │ │ │ ├── parameters: - │ │ │ │ @ BlockParametersNode (location: (128,11)-(128,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── parameters: - │ │ │ │ │ @ ParametersNode (location: (128,12)-(128,13)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── requireds: (length: 1) - │ │ │ │ │ │ └── @ RequiredParameterNode (location: (128,12)-(128,13)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── name: :a - │ │ │ │ │ ├── optionals: (length: 0) - │ │ │ │ │ ├── rest: ∅ - │ │ │ │ │ ├── posts: (length: 0) - │ │ │ │ │ ├── keywords: (length: 0) - │ │ │ │ │ ├── keyword_rest: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── locals: (length: 0) - │ │ │ │ ├── opening_loc: (128,11)-(128,12) = "|" - │ │ │ │ └── closing_loc: (128,13)-(128,14) = "|" - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (129,6)-(129,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ LocalVariableReadNode (location: (129,6)-(129,7)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── name: :a - │ │ │ │ └── depth: 0 - │ │ │ ├── opening_loc: (128,8)-(128,10) = "do" - │ │ │ └── closing_loc: (130,4)-(130,7) = "end" - │ │ └── @ UntilNode (location: (132,2)-(135,5)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (132,2)-(132,7) = "until" - │ │ ├── closing_loc: (135,2)-(135,5) = "end" - │ │ ├── predicate: - │ │ │ @ CallNode (location: (132,8)-(132,9)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :x - │ │ │ ├── message_loc: (132,8)-(132,9) = "x" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── statements: - │ │ @ StatementsNode (location: (133,4)-(134,7)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (133,4)-(134,7)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (133,4)-(133,7) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (133,8)-(134,7)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (133,8)-(133,10) = "do" - │ │ └── closing_loc: (134,4)-(134,7) = "end" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (137,0)-(137,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ HashNode (location: (137,0)-(137,2)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (137,0)-(137,1) = "{" - │ │ ├── elements: (length: 0) - │ │ └── closing_loc: (137,1)-(137,2) = "}" - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (137,3)-(137,4) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (137,5)-(137,9)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (137,5)-(137,9)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :A - │ │ ├── message_loc: (137,5)-(137,6) = "A" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (137,7)-(137,9)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (137,7)-(137,8) = "{" - │ │ └── closing_loc: (137,8)-(137,9) = "}" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (139,0)-(139,16)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ HashNode (location: (139,0)-(139,2)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (139,0)-(139,1) = "{" - │ │ ├── elements: (length: 0) - │ │ └── closing_loc: (139,1)-(139,2) = "}" - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (139,3)-(139,4) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (139,5)-(139,16)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (139,5)-(139,16)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :A - │ │ ├── message_loc: (139,5)-(139,6) = "A" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (139,7)-(139,16)) - │ │ ├── flags: ∅ - │ │ ├── locals: [:a] - │ │ ├── parameters: - │ │ │ @ BlockParametersNode (location: (139,9)-(139,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parameters: - │ │ │ │ @ ParametersNode (location: (139,10)-(139,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── requireds: (length: 1) - │ │ │ │ │ └── @ RequiredParameterNode (location: (139,10)-(139,11)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :a - │ │ │ │ ├── optionals: (length: 0) - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── posts: (length: 0) - │ │ │ │ ├── keywords: (length: 0) - │ │ │ │ ├── keyword_rest: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── locals: (length: 0) - │ │ │ ├── opening_loc: (139,9)-(139,10) = "|" - │ │ │ └── closing_loc: (139,11)-(139,12) = "|" - │ │ ├── body: - │ │ │ @ StatementsNode (location: (139,13)-(139,14)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ LocalVariableReadNode (location: (139,13)-(139,14)) - │ │ │ ├── flags: newline - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ ├── opening_loc: (139,7)-(139,8) = "{" - │ │ └── closing_loc: (139,15)-(139,16) = "}" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (141,0)-(141,11)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (141,0)-(141,4)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :A - │ │ ├── message_loc: (141,0)-(141,1) = "A" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (141,2)-(141,4)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (141,2)-(141,3) = "{" - │ │ └── closing_loc: (141,3)-(141,4) = "}" - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (141,5)-(141,6) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (141,7)-(141,11)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (141,7)-(141,11)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :A - │ │ ├── message_loc: (141,7)-(141,8) = "A" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (141,9)-(141,11)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (141,9)-(141,10) = "{" - │ │ └── closing_loc: (141,10)-(141,11) = "}" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (143,0)-(143,11)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (143,0)-(143,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :lst - │ │ ├── message_loc: (143,0)-(143,3) = "lst" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :<< - │ ├── message_loc: (143,4)-(143,6) = "<<" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (143,7)-(143,11)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (143,7)-(143,11)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :A - │ │ ├── message_loc: (143,7)-(143,8) = "A" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (143,9)-(143,11)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (143,9)-(143,10) = "{" - │ │ └── closing_loc: (143,10)-(143,11) = "}" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ InterpolatedStringNode (location: (145,0)-(145,17)) - │ ├── flags: newline - │ ├── opening_loc: (145,0)-(145,1) = "\"" - │ ├── parts: (length: 1) - │ │ └── @ EmbeddedStatementsNode (location: (145,1)-(145,16)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (145,1)-(145,3) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (145,4)-(145,14)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (145,4)-(145,14)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :join - │ │ │ ├── message_loc: (145,4)-(145,8) = "join" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (145,9)-(145,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ ParenthesesNode (location: (145,9)-(145,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── body: - │ │ │ │ │ @ StatementsNode (location: (145,10)-(145,13)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ StringNode (location: (145,10)-(145,13)) - │ │ │ │ │ ├── flags: newline - │ │ │ │ │ ├── opening_loc: (145,10)-(145,11) = "\"" - │ │ │ │ │ ├── content_loc: (145,11)-(145,12) = " " - │ │ │ │ │ ├── closing_loc: (145,12)-(145,13) = "\"" - │ │ │ │ │ └── unescaped: " " - │ │ │ │ ├── opening_loc: (145,9)-(145,10) = "(" - │ │ │ │ └── closing_loc: (145,13)-(145,14) = ")" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── closing_loc: (145,15)-(145,16) = "}" - │ └── closing_loc: (145,16)-(145,17) = "\"" - ├── @ InterpolatedStringNode (location: (147,0)-(147,8)) - │ ├── flags: newline - │ ├── opening_loc: (147,0)-(147,1) = "\"" - │ ├── parts: (length: 1) - │ │ └── @ EmbeddedStatementsNode (location: (147,1)-(147,7)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (147,1)-(147,3) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (147,3)-(147,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ ParenthesesNode (location: (147,3)-(147,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (147,4)-(147,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (147,4)-(147,5)) - │ │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :v - │ │ │ │ ├── message_loc: (147,4)-(147,5) = "v" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── opening_loc: (147,3)-(147,4) = "(" - │ │ │ └── closing_loc: (147,5)-(147,6) = ")" - │ │ └── closing_loc: (147,6)-(147,7) = "}" - │ └── closing_loc: (147,7)-(147,8) = "\"" - ├── @ DefNode (location: (149,0)-(149,18)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (149,4)-(149,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (149,6)-(149,7)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (149,6)-(149,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: ∅ - │ │ │ ├── name_loc: ∅ - │ │ │ └── operator_loc: (149,6)-(149,7) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (149,10)-(149,13)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (149,10)-(149,13)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :p - │ │ ├── message_loc: (149,10)-(149,11) = "p" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (149,12)-(149,13)) - │ │ │ ├── flags: contains_splat - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ SplatNode (location: (149,12)-(149,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (149,12)-(149,13) = "*" - │ │ │ └── expression: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (149,0)-(149,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (149,5)-(149,6) = "(" - │ ├── rparen_loc: (149,7)-(149,8) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (149,15)-(149,18) = "end" - ├── @ CallNode (location: (151,0)-(151,16)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (151,0)-(151,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (151,4)-(151,16)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ IntegerNode (location: (151,4)-(151,5)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ CallNode (location: (151,7)-(151,16)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :Bar - │ │ ├── message_loc: (151,7)-(151,10) = "Bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (151,11)-(151,16)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (151,13)-(151,14)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ IntegerNode (location: (151,13)-(151,14)) - │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── opening_loc: (151,11)-(151,12) = "{" - │ │ └── closing_loc: (151,15)-(151,16) = "}" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ LocalVariableWriteNode (location: (153,0)-(153,7)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── depth: 0 - │ ├── name_loc: (153,0)-(153,3) = "foo" - │ ├── value: - │ │ @ IntegerNode (location: (153,6)-(153,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (153,4)-(153,5) = "=" - ├── @ CallNode (location: (154,0)-(154,6)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (154,0)-(154,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (154,4)-(154,6)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (154,4)-(154,5) = "{" - │ └── closing_loc: (154,5)-(154,6) = "}" - └── @ CallNode (location: (156,0)-(156,19)) - ├── flags: newline - ├── receiver: - │ @ InstanceVariableReadNode (location: (156,0)-(156,2)) - │ ├── flags: ∅ - │ └── name: :@a - ├── call_operator_loc: (156,2)-(156,3) = "." - ├── name: :b - ├── message_loc: (156,3)-(156,4) = "b" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (156,5)-(156,19)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 1) - │ └── @ KeywordHashNode (location: (156,5)-(156,19)) - │ ├── flags: ∅ - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (156,5)-(156,19)) - │ ├── flags: ∅ - │ ├── key: - │ │ @ InterpolatedSymbolNode (location: (156,5)-(156,16)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (156,5)-(156,6) = "\"" - │ │ ├── parts: (length: 2) - │ │ │ ├── @ StringNode (location: (156,6)-(156,7)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (156,6)-(156,7) = "c" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "c" - │ │ │ └── @ EmbeddedStatementsNode (location: (156,7)-(156,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (156,7)-(156,9) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (156,9)-(156,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (156,9)-(156,13)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :name - │ │ │ │ ├── message_loc: (156,9)-(156,13) = "name" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── closing_loc: (156,13)-(156,14) = "}" - │ │ └── closing_loc: (156,14)-(156,16) = "\":" - │ ├── value: - │ │ @ IntegerNode (location: (156,17)-(156,19)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 42 - │ └── operator_loc: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/methods.txt b/test/prism/snapshots/methods.txt deleted file mode 100644 index 0780999142..0000000000 --- a/test/prism/snapshots/methods.txt +++ /dev/null @@ -1,2245 +0,0 @@ -@ ProgramNode (location: (1,0)-(183,37)) -├── flags: ∅ -├── locals: [:a, :c, :foo] -└── statements: - @ StatementsNode (location: (1,0)-(183,37)) - ├── flags: ∅ - └── body: (length: 69) - ├── @ DefNode (location: (1,0)-(2,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (1,4)-(1,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,8)-(1,18)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ MultiTargetNode (location: (1,8)-(1,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 2) - │ │ │ │ ├── @ RequiredParameterNode (location: (1,9)-(1,12)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :bar - │ │ │ │ └── @ RequiredParameterNode (location: (1,14)-(1,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :baz - │ │ │ ├── rest: ∅ - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: (1,8)-(1,9) = "(" - │ │ │ └── rparen_loc: (1,17)-(1,18) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:bar, :baz] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (1,7)-(1,8) = "(" - │ ├── rparen_loc: (1,18)-(1,19) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (2,0)-(2,3) = "end" - ├── @ DefNode (location: (4,0)-(5,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (4,4)-(4,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (4,8)-(4,44)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ MultiTargetNode (location: (4,8)-(4,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 2) - │ │ │ │ ├── @ RequiredParameterNode (location: (4,9)-(4,12)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :bar - │ │ │ │ └── @ RequiredParameterNode (location: (4,14)-(4,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :baz - │ │ │ ├── rest: ∅ - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: (4,8)-(4,9) = "(" - │ │ │ └── rparen_loc: (4,17)-(4,18) = ")" - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (4,20)-(4,32)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :optional - │ │ │ ├── name_loc: (4,20)-(4,28) = "optional" - │ │ │ ├── operator_loc: (4,29)-(4,30) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (4,31)-(4,32)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 1) - │ │ │ └── @ MultiTargetNode (location: (4,34)-(4,44)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 2) - │ │ │ │ ├── @ RequiredParameterNode (location: (4,35)-(4,38)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :bin - │ │ │ │ └── @ RequiredParameterNode (location: (4,40)-(4,43)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :bag - │ │ │ ├── rest: ∅ - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: (4,34)-(4,35) = "(" - │ │ │ └── rparen_loc: (4,43)-(4,44) = ")" - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:bar, :baz, :optional, :bin, :bag] - │ ├── def_keyword_loc: (4,0)-(4,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (4,7)-(4,8) = "(" - │ ├── rparen_loc: (4,44)-(4,45) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (5,0)-(5,3) = "end" - ├── @ DefNode (location: (8,0)-(8,18)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (8,4)-(8,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ BeginNode (location: (8,0)-(8,18)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── rescue_clause: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: - │ │ │ @ EnsureNode (location: (8,7)-(8,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── ensure_keyword_loc: (8,7)-(8,13) = "ensure" - │ │ │ ├── statements: ∅ - │ │ │ └── end_keyword_loc: (8,15)-(8,18) = "end" - │ │ └── end_keyword_loc: (8,15)-(8,18) = "end" - │ ├── locals: [] - │ ├── def_keyword_loc: (8,0)-(8,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (8,15)-(8,18) = "end" - ├── @ DefNode (location: (10,0)-(11,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (10,8)-(10,9) = "a" - │ ├── receiver: - │ │ @ ParenthesesNode (location: (10,4)-(10,7)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ CallNode (location: (10,5)-(10,6)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (10,5)-(10,6) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (10,4)-(10,5) = "(" - │ │ └── closing_loc: (10,6)-(10,7) = ")" - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (10,0)-(10,3) = "def" - │ ├── operator_loc: (10,7)-(10,8) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (11,0)-(11,3) = "end" - ├── @ DefNode (location: (13,0)-(14,3)) - │ ├── flags: newline - │ ├── name: :b - │ ├── name_loc: (13,9)-(13,10) = "b" - │ ├── receiver: - │ │ @ ParenthesesNode (location: (13,4)-(13,7)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ CallNode (location: (13,5)-(13,6)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (13,5)-(13,6) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (13,4)-(13,5) = "(" - │ │ └── closing_loc: (13,6)-(13,7) = ")" - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (13,0)-(13,3) = "def" - │ ├── operator_loc: (13,7)-(13,9) = "::" - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (14,0)-(14,3) = "end" - ├── @ DefNode (location: (16,0)-(17,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (16,10)-(16,11) = "a" - │ ├── receiver: - │ │ @ FalseNode (location: (16,4)-(16,9)) - │ │ └── flags: static_literal - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (16,0)-(16,3) = "def" - │ ├── operator_loc: (16,9)-(16,10) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (17,0)-(17,3) = "end" - ├── @ DefNode (location: (19,0)-(20,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (19,4)-(19,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (19,6)-(19,9)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ ForwardingParameterNode (location: (19,6)-(19,9)) - │ │ │ └── flags: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (19,0)-(19,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (19,5)-(19,6) = "(" - │ ├── rparen_loc: (19,9)-(19,10) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (20,0)-(20,3) = "end" - ├── @ DefNode (location: (22,0)-(23,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (22,9)-(22,10) = "a" - │ ├── receiver: - │ │ @ GlobalVariableReadNode (location: (22,4)-(22,8)) - │ │ ├── flags: ∅ - │ │ └── name: :$var - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (22,0)-(22,3) = "def" - │ ├── operator_loc: (22,8)-(22,9) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (23,0)-(23,3) = "end" - ├── @ DefNode (location: (25,0)-(26,3)) - │ ├── flags: newline - │ ├── name: :b - │ ├── name_loc: (25,6)-(25,7) = "b" - │ ├── receiver: - │ │ @ CallNode (location: (25,4)-(25,5)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (25,4)-(25,5) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (25,0)-(25,3) = "def" - │ ├── operator_loc: (25,5)-(25,6) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (26,0)-(26,3) = "end" - ├── @ DefNode (location: (28,0)-(29,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (28,9)-(28,10) = "a" - │ ├── receiver: - │ │ @ InstanceVariableReadNode (location: (28,4)-(28,8)) - │ │ ├── flags: ∅ - │ │ └── name: :@var - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (28,0)-(28,3) = "def" - │ ├── operator_loc: (28,8)-(28,9) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (29,0)-(29,3) = "end" - ├── @ DefNode (location: (31,0)-(31,13)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (31,4)-(31,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (31,6)-(31,8)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ RequiredKeywordParameterNode (location: (31,6)-(31,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ └── name_loc: (31,6)-(31,8) = "b:" - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:b] - │ ├── def_keyword_loc: (31,0)-(31,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (31,10)-(31,13) = "end" - ├── @ StringNode (location: (33,0)-(33,6)) - │ ├── flags: newline - │ ├── opening_loc: (33,0)-(33,2) = "%," - │ ├── content_loc: (33,2)-(33,5) = "abc" - │ ├── closing_loc: (33,5)-(33,6) = "," - │ └── unescaped: "abc" - ├── @ DefNode (location: (35,0)-(36,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (35,4)-(35,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (35,6)-(35,8)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ RequiredKeywordParameterNode (location: (35,6)-(35,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ └── name_loc: (35,6)-(35,8) = "b:" - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:b] - │ ├── def_keyword_loc: (35,0)-(35,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (35,5)-(35,6) = "(" - │ ├── rparen_loc: (35,8)-(35,9) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (36,0)-(36,3) = "end" - ├── @ DefNode (location: (38,0)-(39,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (38,4)-(38,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (38,6)-(38,9)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ KeywordRestParameterNode (location: (38,6)-(38,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (38,8)-(38,9) = "b" - │ │ │ └── operator_loc: (38,6)-(38,8) = "**" - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:b] - │ ├── def_keyword_loc: (38,0)-(38,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (38,5)-(38,6) = "(" - │ ├── rparen_loc: (38,9)-(38,10) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (39,0)-(39,3) = "end" - ├── @ DefNode (location: (41,0)-(42,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (41,4)-(41,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (41,6)-(41,8)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ KeywordRestParameterNode (location: (41,6)-(41,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: ∅ - │ │ │ ├── name_loc: ∅ - │ │ │ └── operator_loc: (41,6)-(41,8) = "**" - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (41,0)-(41,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (41,5)-(41,6) = "(" - │ ├── rparen_loc: (41,8)-(41,9) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (42,0)-(42,3) = "end" - ├── @ LocalVariableWriteNode (location: (44,0)-(44,5)) - │ ├── flags: newline - │ ├── name: :a - │ ├── depth: 0 - │ ├── name_loc: (44,0)-(44,1) = "a" - │ ├── value: - │ │ @ IntegerNode (location: (44,4)-(44,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (44,2)-(44,3) = "=" - ├── @ DefNode (location: (44,7)-(45,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (44,11)-(44,12) = "a" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (44,7)-(44,10) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (45,0)-(45,3) = "end" - ├── @ DefNode (location: (47,0)-(48,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (47,4)-(47,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (47,6)-(47,13)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 3) - │ │ │ ├── @ RequiredParameterNode (location: (47,6)-(47,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :b - │ │ │ ├── @ RequiredParameterNode (location: (47,9)-(47,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :c - │ │ │ └── @ RequiredParameterNode (location: (47,12)-(47,13)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :d - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:b, :c, :d] - │ ├── def_keyword_loc: (47,0)-(47,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (48,0)-(48,3) = "end" - ├── @ DefNode (location: (50,0)-(51,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (50,8)-(50,9) = "a" - │ ├── receiver: - │ │ @ NilNode (location: (50,4)-(50,7)) - │ │ └── flags: static_literal - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (50,0)-(50,3) = "def" - │ ├── operator_loc: (50,7)-(50,8) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (51,0)-(51,3) = "end" - ├── @ DefNode (location: (53,0)-(54,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (53,4)-(53,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (53,6)-(53,14)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 2) - │ │ │ ├── @ RequiredKeywordParameterNode (location: (53,6)-(53,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ └── name_loc: (53,6)-(53,8) = "b:" - │ │ │ └── @ OptionalKeywordParameterNode (location: (53,10)-(53,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ ├── name_loc: (53,10)-(53,12) = "c:" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (53,13)-(53,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:b, :c] - │ ├── def_keyword_loc: (53,0)-(53,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (54,0)-(54,3) = "end" - ├── @ DefNode (location: (56,0)-(57,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (56,4)-(56,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (56,6)-(56,14)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 2) - │ │ │ ├── @ RequiredKeywordParameterNode (location: (56,6)-(56,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ └── name_loc: (56,6)-(56,8) = "b:" - │ │ │ └── @ OptionalKeywordParameterNode (location: (56,10)-(56,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ ├── name_loc: (56,10)-(56,12) = "c:" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (56,13)-(56,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:b, :c] - │ ├── def_keyword_loc: (56,0)-(56,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (56,5)-(56,6) = "(" - │ ├── rparen_loc: (56,14)-(56,15) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (57,0)-(57,3) = "end" - ├── @ DefNode (location: (59,0)-(61,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (59,4)-(59,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (59,6)-(60,7)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 2) - │ │ │ ├── @ OptionalKeywordParameterNode (location: (59,6)-(60,3)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── name_loc: (59,6)-(59,8) = "b:" - │ │ │ │ └── value: - │ │ │ │ @ IntegerNode (location: (60,2)-(60,3)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── @ RequiredKeywordParameterNode (location: (60,5)-(60,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ └── name_loc: (60,5)-(60,7) = "c:" - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:b, :c] - │ ├── def_keyword_loc: (59,0)-(59,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (59,5)-(59,6) = "(" - │ ├── rparen_loc: (60,7)-(60,8) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (61,0)-(61,3) = "end" - ├── @ StringNode (location: (63,0)-(63,6)) - │ ├── flags: newline - │ ├── opening_loc: (63,0)-(63,2) = "%." - │ ├── content_loc: (63,2)-(63,5) = "abc" - │ ├── closing_loc: (63,5)-(63,6) = "." - │ └── unescaped: "abc" - ├── @ DefNode (location: (65,0)-(66,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (65,4)-(65,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (65,6)-(65,18)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 2) - │ │ │ ├── @ OptionalParameterNode (location: (65,6)-(65,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── name_loc: (65,6)-(65,7) = "b" - │ │ │ │ ├── operator_loc: (65,8)-(65,9) = "=" - │ │ │ │ └── value: - │ │ │ │ @ IntegerNode (location: (65,10)-(65,11)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── @ OptionalParameterNode (location: (65,13)-(65,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ ├── name_loc: (65,13)-(65,14) = "c" - │ │ │ ├── operator_loc: (65,15)-(65,16) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (65,17)-(65,18)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:b, :c] - │ ├── def_keyword_loc: (65,0)-(65,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (66,0)-(66,3) = "end" - ├── @ DefNode (location: (68,0)-(69,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (68,4)-(68,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (68,0)-(68,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (68,5)-(68,6) = "(" - │ ├── rparen_loc: (68,6)-(68,7) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (69,0)-(69,3) = "end" - ├── @ DefNode (location: (71,0)-(72,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (71,4)-(71,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (71,6)-(71,14)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (71,6)-(71,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :b - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (71,9)-(71,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ ├── name_loc: (71,9)-(71,10) = "c" - │ │ │ ├── operator_loc: (71,11)-(71,12) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (71,13)-(71,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:b, :c] - │ ├── def_keyword_loc: (71,0)-(71,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (72,0)-(72,3) = "end" - ├── @ DefNode (location: (74,0)-(75,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (74,4)-(74,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (74,6)-(74,7)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (74,6)-(74,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :b - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:b] - │ ├── def_keyword_loc: (74,0)-(74,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (75,0)-(75,3) = "end" - ├── @ DefNode (location: (77,0)-(77,32)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (77,4)-(77,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ BeginNode (location: (77,0)-(77,32)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── rescue_clause: - │ │ │ @ RescueNode (location: (77,7)-(77,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (77,7)-(77,13) = "rescue" - │ │ │ ├── exceptions: (length: 0) - │ │ │ ├── operator_loc: ∅ - │ │ │ ├── reference: ∅ - │ │ │ ├── statements: ∅ - │ │ │ └── subsequent: ∅ - │ │ ├── else_clause: - │ │ │ @ ElseNode (location: (77,15)-(77,27)) - │ │ │ ├── flags: ∅ - │ │ │ ├── else_keyword_loc: (77,15)-(77,19) = "else" - │ │ │ ├── statements: ∅ - │ │ │ └── end_keyword_loc: (77,21)-(77,27) = "ensure" - │ │ ├── ensure_clause: - │ │ │ @ EnsureNode (location: (77,21)-(77,32)) - │ │ │ ├── flags: ∅ - │ │ │ ├── ensure_keyword_loc: (77,21)-(77,27) = "ensure" - │ │ │ ├── statements: ∅ - │ │ │ └── end_keyword_loc: (77,29)-(77,32) = "end" - │ │ └── end_keyword_loc: (77,29)-(77,32) = "end" - │ ├── locals: [] - │ ├── def_keyword_loc: (77,0)-(77,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (77,29)-(77,32) = "end" - ├── @ DefNode (location: (79,0)-(80,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (79,4)-(79,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (79,6)-(79,8)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (79,6)-(79,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (79,7)-(79,8) = "b" - │ │ │ └── operator_loc: (79,6)-(79,7) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:b] - │ ├── def_keyword_loc: (79,0)-(79,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (80,0)-(80,3) = "end" - ├── @ DefNode (location: (82,0)-(83,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (82,4)-(82,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (82,6)-(82,7)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (82,6)-(82,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: ∅ - │ │ │ ├── name_loc: ∅ - │ │ │ └── operator_loc: (82,6)-(82,7) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (82,0)-(82,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (82,5)-(82,6) = "(" - │ ├── rparen_loc: (82,7)-(82,8) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (83,0)-(83,3) = "end" - ├── @ DefNode (location: (85,0)-(87,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (85,4)-(85,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (86,0)-(86,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableWriteNode (location: (86,0)-(86,5)) - │ │ ├── flags: newline - │ │ ├── name: :b - │ │ ├── depth: 0 - │ │ ├── name_loc: (86,0)-(86,1) = "b" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (86,4)-(86,5)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── operator_loc: (86,2)-(86,3) = "=" - │ ├── locals: [:b] - │ ├── def_keyword_loc: (85,0)-(85,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (87,0)-(87,3) = "end" - ├── @ DefNode (location: (89,0)-(90,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (89,9)-(89,10) = "a" - │ ├── receiver: - │ │ @ SelfNode (location: (89,4)-(89,8)) - │ │ └── flags: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (89,0)-(89,3) = "def" - │ ├── operator_loc: (89,8)-(89,9) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (90,0)-(90,3) = "end" - ├── @ DefNode (location: (92,0)-(93,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (92,9)-(92,10) = "a" - │ ├── receiver: - │ │ @ TrueNode (location: (92,4)-(92,8)) - │ │ └── flags: static_literal - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (92,0)-(92,3) = "def" - │ ├── operator_loc: (92,8)-(92,9) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (93,0)-(93,3) = "end" - ├── @ DefNode (location: (95,0)-(96,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (95,4)-(95,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (95,0)-(95,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (96,0)-(96,3) = "end" - ├── @ DefNode (location: (98,0)-(101,3)) - │ ├── flags: newline - │ ├── name: :hi - │ ├── name_loc: (98,4)-(98,6) = "hi" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (99,0)-(100,4)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 2) - │ │ ├── @ IfNode (location: (99,0)-(99,18)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (99,11)-(99,13) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ TrueNode (location: (99,14)-(99,18)) - │ │ │ │ └── flags: static_literal - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (99,0)-(99,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ ReturnNode (location: (99,0)-(99,10)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── keyword_loc: (99,0)-(99,6) = "return" - │ │ │ │ └── arguments: - │ │ │ │ @ ArgumentsNode (location: (99,7)-(99,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ SymbolNode (location: (99,7)-(99,10)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (99,7)-(99,8) = ":" - │ │ │ │ ├── value_loc: (99,8)-(99,10) = "hi" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "hi" - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ └── @ SymbolNode (location: (100,0)-(100,4)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (100,0)-(100,1) = ":" - │ │ ├── value_loc: (100,1)-(100,4) = "bye" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "bye" - │ ├── locals: [] - │ ├── def_keyword_loc: (98,0)-(98,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (101,0)-(101,3) = "end" - ├── @ DefNode (location: (103,0)-(103,11)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (103,4)-(103,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (103,10)-(103,11)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (103,10)-(103,11)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── locals: [] - │ ├── def_keyword_loc: (103,0)-(103,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: (103,8)-(103,9) = "=" - │ └── end_keyword_loc: ∅ - ├── @ DefNode (location: (104,0)-(104,11)) - │ ├── flags: newline - │ ├── name: :bar - │ ├── name_loc: (104,4)-(104,7) = "bar" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (104,10)-(104,11)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (104,10)-(104,11)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── locals: [] - │ ├── def_keyword_loc: (104,0)-(104,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: (104,8)-(104,9) = "=" - │ └── end_keyword_loc: ∅ - ├── @ DefNode (location: (106,0)-(106,18)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (106,4)-(106,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (106,8)-(106,11)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (106,8)-(106,11)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :bar - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (106,15)-(106,18)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (106,15)-(106,18)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 123 - │ ├── locals: [:bar] - │ ├── def_keyword_loc: (106,0)-(106,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (106,7)-(106,8) = "(" - │ ├── rparen_loc: (106,11)-(106,12) = ")" - │ ├── equal_loc: (106,13)-(106,14) = "=" - │ └── end_keyword_loc: ∅ - ├── @ DefNode (location: (108,0)-(108,13)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (108,4)-(108,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (108,10)-(108,13)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (108,10)-(108,13)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 123 - │ ├── locals: [] - │ ├── def_keyword_loc: (108,0)-(108,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: (108,8)-(108,9) = "=" - │ └── end_keyword_loc: ∅ - ├── @ DefNode (location: (110,0)-(110,19)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (110,4)-(110,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (110,6)-(110,7)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (110,6)-(110,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: ∅ - │ │ │ ├── name_loc: ∅ - │ │ │ └── operator_loc: (110,6)-(110,7) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (110,10)-(110,14)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (110,10)-(110,14)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (110,10)-(110,11) = "b" - │ │ ├── opening_loc: (110,11)-(110,12) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (110,12)-(110,13)) - │ │ │ ├── flags: contains_splat - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ SplatNode (location: (110,12)-(110,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (110,12)-(110,13) = "*" - │ │ │ └── expression: ∅ - │ │ ├── closing_loc: (110,13)-(110,14) = ")" - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (110,0)-(110,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (110,5)-(110,6) = "(" - │ ├── rparen_loc: (110,7)-(110,8) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (110,16)-(110,19) = "end" - ├── @ DefNode (location: (112,0)-(112,23)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (112,4)-(112,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (112,6)-(112,9)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ ForwardingParameterNode (location: (112,6)-(112,9)) - │ │ │ └── flags: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (112,12)-(112,18)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (112,12)-(112,18)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (112,12)-(112,13) = "b" - │ │ ├── opening_loc: (112,13)-(112,14) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (112,14)-(112,17)) - │ │ │ ├── flags: contains_forwarding - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ ForwardingArgumentsNode (location: (112,14)-(112,17)) - │ │ │ └── flags: ∅ - │ │ ├── closing_loc: (112,17)-(112,18) = ")" - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (112,0)-(112,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (112,5)-(112,6) = "(" - │ ├── rparen_loc: (112,9)-(112,10) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (112,20)-(112,23) = "end" - ├── @ DefNode (location: (114,0)-(114,29)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (114,4)-(114,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (114,6)-(114,9)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ ForwardingParameterNode (location: (114,6)-(114,9)) - │ │ │ └── flags: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (114,12)-(114,24)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (114,12)-(114,24)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (114,12)-(114,13) = "b" - │ │ ├── opening_loc: (114,13)-(114,14) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (114,14)-(114,23)) - │ │ │ ├── flags: contains_forwarding - │ │ │ └── arguments: (length: 3) - │ │ │ ├── @ IntegerNode (location: (114,14)-(114,15)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── @ IntegerNode (location: (114,17)-(114,18)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ └── @ ForwardingArgumentsNode (location: (114,20)-(114,23)) - │ │ │ └── flags: ∅ - │ │ ├── closing_loc: (114,23)-(114,24) = ")" - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (114,0)-(114,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (114,5)-(114,6) = "(" - │ ├── rparen_loc: (114,9)-(114,10) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (114,26)-(114,29) = "end" - ├── @ DefNode (location: (116,0)-(117,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (116,12)-(116,13) = "a" - │ ├── receiver: - │ │ @ ParenthesesNode (location: (116,4)-(116,11)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ LocalVariableWriteNode (location: (116,5)-(116,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ ├── depth: 0 - │ │ │ ├── name_loc: (116,5)-(116,6) = "c" - │ │ │ ├── value: - │ │ │ │ @ CallNode (location: (116,9)-(116,10)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── message_loc: (116,9)-(116,10) = "b" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── operator_loc: (116,7)-(116,8) = "=" - │ │ ├── opening_loc: (116,4)-(116,5) = "(" - │ │ └── closing_loc: (116,10)-(116,11) = ")" - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (116,0)-(116,3) = "def" - │ ├── operator_loc: (116,11)-(116,12) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (117,0)-(117,3) = "end" - ├── @ DefNode (location: (119,0)-(120,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (119,4)-(119,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (119,6)-(119,8)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (119,6)-(119,8)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (119,7)-(119,8) = "b" - │ │ └── operator_loc: (119,6)-(119,7) = "&" - │ ├── body: ∅ - │ ├── locals: [:b] - │ ├── def_keyword_loc: (119,0)-(119,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (120,0)-(120,3) = "end" - ├── @ DefNode (location: (122,0)-(123,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (122,4)-(122,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (122,6)-(122,7)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (122,6)-(122,7)) - │ │ ├── flags: ∅ - │ │ ├── name: ∅ - │ │ ├── name_loc: ∅ - │ │ └── operator_loc: (122,6)-(122,7) = "&" - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (122,0)-(122,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (122,5)-(122,6) = "(" - │ ├── rparen_loc: (122,7)-(122,8) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (123,0)-(123,3) = "end" - ├── @ DefNode (location: (125,0)-(126,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (125,10)-(125,11) = "a" - │ ├── receiver: - │ │ @ ClassVariableReadNode (location: (125,4)-(125,9)) - │ │ ├── flags: ∅ - │ │ └── name: :@@var - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (125,0)-(125,3) = "def" - │ ├── operator_loc: (125,9)-(125,10) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (126,0)-(126,3) = "end" - ├── @ DefNode (location: (128,0)-(129,3)) - │ ├── flags: newline - │ ├── name: :C - │ ├── name_loc: (128,12)-(128,13) = "C" - │ ├── receiver: - │ │ @ ParenthesesNode (location: (128,4)-(128,11)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ LocalVariableWriteNode (location: (128,5)-(128,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ ├── depth: 0 - │ │ │ ├── name_loc: (128,5)-(128,6) = "a" - │ │ │ ├── value: - │ │ │ │ @ CallNode (location: (128,9)-(128,10)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── message_loc: (128,9)-(128,10) = "b" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── operator_loc: (128,7)-(128,8) = "=" - │ │ ├── opening_loc: (128,4)-(128,5) = "(" - │ │ └── closing_loc: (128,10)-(128,11) = ")" - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (128,0)-(128,3) = "def" - │ ├── operator_loc: (128,11)-(128,12) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (129,0)-(129,3) = "end" - ├── @ DefNode (location: (131,0)-(131,28)) - │ ├── flags: newline - │ ├── name: :Array_function - │ ├── name_loc: (131,9)-(131,23) = "Array_function" - │ ├── receiver: - │ │ @ SelfNode (location: (131,4)-(131,8)) - │ │ └── flags: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (131,0)-(131,3) = "def" - │ ├── operator_loc: (131,8)-(131,9) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (131,25)-(131,28) = "end" - ├── @ ConstantWriteNode (location: (133,0)-(133,9)) - │ ├── flags: newline - │ ├── name: :Const - │ ├── name_loc: (133,0)-(133,5) = "Const" - │ ├── value: - │ │ @ IntegerNode (location: (133,8)-(133,9)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (133,6)-(133,7) = "=" - ├── @ DefNode (location: (133,11)-(134,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (133,21)-(133,22) = "a" - │ ├── receiver: - │ │ @ ConstantReadNode (location: (133,15)-(133,20)) - │ │ ├── flags: ∅ - │ │ └── name: :Const - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (133,11)-(133,14) = "def" - │ ├── operator_loc: (133,20)-(133,21) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (134,0)-(134,3) = "end" - ├── @ DefNode (location: (136,0)-(136,31)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (136,4)-(136,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (136,6)-(136,9)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ ForwardingParameterNode (location: (136,6)-(136,9)) - │ │ │ └── flags: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (136,12)-(136,26)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (136,12)-(136,26)) - │ │ ├── flags: newline - │ │ ├── opening_loc: (136,12)-(136,13) = "\"" - │ │ ├── parts: (length: 2) - │ │ │ ├── @ StringNode (location: (136,13)-(136,16)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (136,13)-(136,16) = "foo" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "foo" - │ │ │ └── @ EmbeddedStatementsNode (location: (136,16)-(136,25)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (136,16)-(136,18) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (136,18)-(136,24)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (136,18)-(136,24)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── message_loc: (136,18)-(136,19) = "b" - │ │ │ │ ├── opening_loc: (136,19)-(136,20) = "(" - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (136,20)-(136,23)) - │ │ │ │ │ ├── flags: contains_forwarding - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ ForwardingArgumentsNode (location: (136,20)-(136,23)) - │ │ │ │ │ └── flags: ∅ - │ │ │ │ ├── closing_loc: (136,23)-(136,24) = ")" - │ │ │ │ └── block: ∅ - │ │ │ └── closing_loc: (136,24)-(136,25) = "}" - │ │ └── closing_loc: (136,25)-(136,26) = "\"" - │ ├── locals: [] - │ ├── def_keyword_loc: (136,0)-(136,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (136,5)-(136,6) = "(" - │ ├── rparen_loc: (136,9)-(136,10) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (136,28)-(136,31) = "end" - ├── @ DefNode (location: (138,0)-(140,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (138,4)-(138,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (139,2)-(139,30)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (139,2)-(139,30)) - │ │ ├── flags: newline - │ │ ├── receiver: - │ │ │ @ HashNode (location: (139,2)-(139,4)) - │ │ │ ├── flags: static_literal - │ │ │ ├── opening_loc: (139,2)-(139,3) = "{" - │ │ │ ├── elements: (length: 0) - │ │ │ └── closing_loc: (139,3)-(139,4) = "}" - │ │ ├── call_operator_loc: (139,4)-(139,5) = "." - │ │ ├── name: :merge - │ │ ├── message_loc: (139,5)-(139,10) = "merge" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (139,11)-(139,30)) - │ │ │ ├── flags: contains_keywords, contains_keyword_splat - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ KeywordHashNode (location: (139,11)-(139,30)) - │ │ │ ├── flags: ∅ - │ │ │ └── elements: (length: 3) - │ │ │ ├── @ AssocSplatNode (location: (139,11)-(139,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── value: - │ │ │ │ │ @ CallNode (location: (139,13)-(139,16)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :bar - │ │ │ │ │ ├── message_loc: (139,13)-(139,16) = "bar" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ └── operator_loc: (139,11)-(139,13) = "**" - │ │ │ ├── @ AssocSplatNode (location: (139,18)-(139,23)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── value: - │ │ │ │ │ @ CallNode (location: (139,20)-(139,23)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :baz - │ │ │ │ │ ├── message_loc: (139,20)-(139,23) = "baz" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ └── operator_loc: (139,18)-(139,20) = "**" - │ │ │ └── @ AssocSplatNode (location: (139,25)-(139,30)) - │ │ │ ├── flags: ∅ - │ │ │ ├── value: - │ │ │ │ @ CallNode (location: (139,27)-(139,30)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :qux - │ │ │ │ ├── message_loc: (139,27)-(139,30) = "qux" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── operator_loc: (139,25)-(139,27) = "**" - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (138,0)-(138,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (140,0)-(140,3) = "end" - ├── @ DefNode (location: (142,0)-(143,3)) - │ ├── flags: newline - │ ├── name: :bar - │ ├── name_loc: (142,4)-(142,7) = "bar" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (142,8)-(142,19)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ OptionalKeywordParameterNode (location: (142,8)-(142,19)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ ├── name_loc: (142,8)-(142,10) = "a:" - │ │ │ └── value: - │ │ │ @ ParenthesesNode (location: (142,11)-(142,19)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (142,12)-(142,18)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ RangeNode (location: (142,12)-(142,18)) - │ │ │ │ ├── flags: newline, static_literal, exclude_end - │ │ │ │ ├── left: - │ │ │ │ │ @ IntegerNode (location: (142,12)-(142,13)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ ├── right: - │ │ │ │ │ @ IntegerNode (location: (142,16)-(142,18)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 10 - │ │ │ │ └── operator_loc: (142,13)-(142,16) = "..." - │ │ │ ├── opening_loc: (142,11)-(142,12) = "(" - │ │ │ └── closing_loc: (142,18)-(142,19) = ")" - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:a] - │ ├── def_keyword_loc: (142,0)-(142,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (142,7)-(142,8) = "(" - │ ├── rparen_loc: (142,19)-(142,20) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (143,0)-(143,3) = "end" - ├── @ DefNode (location: (145,0)-(146,3)) - │ ├── flags: newline - │ ├── name: :bar - │ ├── name_loc: (145,4)-(145,7) = "bar" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (145,8)-(145,18)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ OptionalKeywordParameterNode (location: (145,8)-(145,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ ├── name_loc: (145,8)-(145,10) = "a:" - │ │ │ └── value: - │ │ │ @ ParenthesesNode (location: (145,11)-(145,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (145,12)-(145,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ RangeNode (location: (145,12)-(145,17)) - │ │ │ │ ├── flags: newline, static_literal, exclude_end - │ │ │ │ ├── left: ∅ - │ │ │ │ ├── right: - │ │ │ │ │ @ IntegerNode (location: (145,15)-(145,17)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 10 - │ │ │ │ └── operator_loc: (145,12)-(145,15) = "..." - │ │ │ ├── opening_loc: (145,11)-(145,12) = "(" - │ │ │ └── closing_loc: (145,17)-(145,18) = ")" - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:a] - │ ├── def_keyword_loc: (145,0)-(145,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (145,7)-(145,8) = "(" - │ ├── rparen_loc: (145,18)-(145,19) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (146,0)-(146,3) = "end" - ├── @ DefNode (location: (148,0)-(149,3)) - │ ├── flags: newline - │ ├── name: :bar - │ ├── name_loc: (148,4)-(148,7) = "bar" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (148,8)-(148,17)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ OptionalKeywordParameterNode (location: (148,8)-(148,17)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ ├── name_loc: (148,8)-(148,10) = "a:" - │ │ │ └── value: - │ │ │ @ ParenthesesNode (location: (148,11)-(148,17)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (148,12)-(148,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ RangeNode (location: (148,12)-(148,16)) - │ │ │ │ ├── flags: newline, static_literal, exclude_end - │ │ │ │ ├── left: - │ │ │ │ │ @ IntegerNode (location: (148,12)-(148,13)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ ├── right: ∅ - │ │ │ │ └── operator_loc: (148,13)-(148,16) = "..." - │ │ │ ├── opening_loc: (148,11)-(148,12) = "(" - │ │ │ └── closing_loc: (148,16)-(148,17) = ")" - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:a] - │ ├── def_keyword_loc: (148,0)-(148,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (148,7)-(148,8) = "(" - │ ├── rparen_loc: (148,17)-(148,18) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (149,0)-(149,3) = "end" - ├── @ DefNode (location: (151,0)-(152,3)) - │ ├── flags: newline - │ ├── name: :bar - │ ├── name_loc: (151,4)-(151,7) = "bar" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (151,8)-(151,20)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (151,8)-(151,20)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ ├── name_loc: (151,8)-(151,9) = "a" - │ │ │ ├── operator_loc: (151,10)-(151,11) = "=" - │ │ │ └── value: - │ │ │ @ ParenthesesNode (location: (151,12)-(151,20)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (151,13)-(151,19)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ RangeNode (location: (151,13)-(151,19)) - │ │ │ │ ├── flags: newline, static_literal, exclude_end - │ │ │ │ ├── left: - │ │ │ │ │ @ IntegerNode (location: (151,13)-(151,14)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ ├── right: - │ │ │ │ │ @ IntegerNode (location: (151,17)-(151,19)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 10 - │ │ │ │ └── operator_loc: (151,14)-(151,17) = "..." - │ │ │ ├── opening_loc: (151,12)-(151,13) = "(" - │ │ │ └── closing_loc: (151,19)-(151,20) = ")" - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:a] - │ ├── def_keyword_loc: (151,0)-(151,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (151,7)-(151,8) = "(" - │ ├── rparen_loc: (151,20)-(151,21) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (152,0)-(152,3) = "end" - ├── @ DefNode (location: (154,0)-(155,3)) - │ ├── flags: newline - │ ├── name: :bar - │ ├── name_loc: (154,4)-(154,7) = "bar" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (154,8)-(154,19)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (154,8)-(154,19)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ ├── name_loc: (154,8)-(154,9) = "a" - │ │ │ ├── operator_loc: (154,10)-(154,11) = "=" - │ │ │ └── value: - │ │ │ @ ParenthesesNode (location: (154,12)-(154,19)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (154,13)-(154,18)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ RangeNode (location: (154,13)-(154,18)) - │ │ │ │ ├── flags: newline, static_literal, exclude_end - │ │ │ │ ├── left: ∅ - │ │ │ │ ├── right: - │ │ │ │ │ @ IntegerNode (location: (154,16)-(154,18)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 10 - │ │ │ │ └── operator_loc: (154,13)-(154,16) = "..." - │ │ │ ├── opening_loc: (154,12)-(154,13) = "(" - │ │ │ └── closing_loc: (154,18)-(154,19) = ")" - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:a] - │ ├── def_keyword_loc: (154,0)-(154,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (154,7)-(154,8) = "(" - │ ├── rparen_loc: (154,19)-(154,20) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (155,0)-(155,3) = "end" - ├── @ DefNode (location: (157,0)-(158,3)) - │ ├── flags: newline - │ ├── name: :bar - │ ├── name_loc: (157,4)-(157,7) = "bar" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (157,8)-(157,18)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (157,8)-(157,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ ├── name_loc: (157,8)-(157,9) = "a" - │ │ │ ├── operator_loc: (157,10)-(157,11) = "=" - │ │ │ └── value: - │ │ │ @ ParenthesesNode (location: (157,12)-(157,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (157,13)-(157,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ RangeNode (location: (157,13)-(157,17)) - │ │ │ │ ├── flags: newline, static_literal, exclude_end - │ │ │ │ ├── left: - │ │ │ │ │ @ IntegerNode (location: (157,13)-(157,14)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ ├── right: ∅ - │ │ │ │ └── operator_loc: (157,14)-(157,17) = "..." - │ │ │ ├── opening_loc: (157,12)-(157,13) = "(" - │ │ │ └── closing_loc: (157,17)-(157,18) = ")" - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:a] - │ ├── def_keyword_loc: (157,0)-(157,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (157,7)-(157,8) = "(" - │ ├── rparen_loc: (157,18)-(157,19) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (158,0)-(158,3) = "end" - ├── @ DefNode (location: (160,0)-(162,3)) - │ ├── flags: newline - │ ├── name: :method - │ ├── name_loc: (160,4)-(160,10) = "method" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (160,11)-(160,12)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (160,11)-(160,12)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (161,2)-(161,14)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (161,2)-(161,14)) - │ │ ├── flags: newline - │ │ ├── receiver: - │ │ │ @ CallNode (location: (161,2)-(161,6)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :item - │ │ │ ├── message_loc: (161,2)-(161,6) = "item" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :>> - │ │ ├── message_loc: (161,7)-(161,9) = ">>" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (161,10)-(161,14)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ CallNode (location: (161,10)-(161,14)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (161,10)-(161,11) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (161,12)-(161,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: ∅ - │ │ │ ├── opening_loc: (161,12)-(161,13) = "{" - │ │ │ └── closing_loc: (161,13)-(161,14) = "}" - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [:a] - │ ├── def_keyword_loc: (160,0)-(160,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (160,10)-(160,11) = "(" - │ ├── rparen_loc: (160,12)-(160,13) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (162,0)-(162,3) = "end" - ├── @ LocalVariableWriteNode (location: (164,0)-(164,7)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── depth: 0 - │ ├── name_loc: (164,0)-(164,3) = "foo" - │ ├── value: - │ │ @ IntegerNode (location: (164,6)-(164,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (164,4)-(164,5) = "=" - ├── @ DefNode (location: (165,0)-(165,16)) - │ ├── flags: newline - │ ├── name: :bar - │ ├── name_loc: (165,8)-(165,11) = "bar" - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (165,4)-(165,7)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (165,0)-(165,3) = "def" - │ ├── operator_loc: (165,7)-(165,8) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (165,13)-(165,16) = "end" - ├── @ DefNode (location: (167,0)-(167,18)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (167,4)-(167,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (167,6)-(167,7)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (167,6)-(167,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: ∅ - │ │ │ ├── name_loc: ∅ - │ │ │ └── operator_loc: (167,6)-(167,7) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (167,10)-(167,13)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ ArrayNode (location: (167,10)-(167,13)) - │ │ ├── flags: newline, contains_splat - │ │ ├── elements: (length: 1) - │ │ │ └── @ SplatNode (location: (167,11)-(167,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (167,11)-(167,12) = "*" - │ │ │ └── expression: ∅ - │ │ ├── opening_loc: (167,10)-(167,11) = "[" - │ │ └── closing_loc: (167,12)-(167,13) = "]" - │ ├── locals: [] - │ ├── def_keyword_loc: (167,0)-(167,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (167,5)-(167,6) = "(" - │ ├── rparen_loc: (167,7)-(167,8) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (167,15)-(167,18) = "end" - ├── @ DefNode (location: (169,0)-(169,15)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (169,4)-(169,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (169,6)-(169,10)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ OptionalKeywordParameterNode (location: (169,6)-(169,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :x - │ │ │ ├── name_loc: (169,6)-(169,8) = "x:" - │ │ │ └── value: - │ │ │ @ CallNode (location: (169,8)-(169,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── receiver: - │ │ │ │ @ CallNode (location: (169,9)-(169,10)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ ├── message_loc: (169,9)-(169,10) = "a" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :-@ - │ │ │ ├── message_loc: (169,8)-(169,9) = "-" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:x] - │ ├── def_keyword_loc: (169,0)-(169,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (169,12)-(169,15) = "end" - ├── @ DefNode (location: (171,0)-(171,15)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (171,4)-(171,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (171,6)-(171,10)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ OptionalKeywordParameterNode (location: (171,6)-(171,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :x - │ │ │ ├── name_loc: (171,6)-(171,8) = "x:" - │ │ │ └── value: - │ │ │ @ CallNode (location: (171,8)-(171,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── receiver: - │ │ │ │ @ CallNode (location: (171,9)-(171,10)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ ├── message_loc: (171,9)-(171,10) = "a" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :+@ - │ │ │ ├── message_loc: (171,8)-(171,9) = "+" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:x] - │ ├── def_keyword_loc: (171,0)-(171,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (171,12)-(171,15) = "end" - ├── @ DefNode (location: (173,0)-(173,15)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (173,4)-(173,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (173,6)-(173,10)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ OptionalKeywordParameterNode (location: (173,6)-(173,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :x - │ │ │ ├── name_loc: (173,6)-(173,8) = "x:" - │ │ │ └── value: - │ │ │ @ CallNode (location: (173,8)-(173,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── receiver: - │ │ │ │ @ CallNode (location: (173,9)-(173,10)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ ├── message_loc: (173,9)-(173,10) = "a" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :! - │ │ │ ├── message_loc: (173,8)-(173,9) = "!" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:x] - │ ├── def_keyword_loc: (173,0)-(173,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (173,12)-(173,15) = "end" - ├── @ DefNode (location: (175,0)-(175,20)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (175,4)-(175,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (175,8)-(175,15)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ OptionalKeywordParameterNode (location: (175,8)-(175,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :x - │ │ │ ├── name_loc: (175,8)-(175,10) = "x:" - │ │ │ └── value: - │ │ │ @ StringNode (location: (175,10)-(175,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (175,10)-(175,12) = "%(" - │ │ │ ├── content_loc: (175,12)-(175,14) = "xx" - │ │ │ ├── closing_loc: (175,14)-(175,15) = ")" - │ │ │ └── unescaped: "xx" - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:x] - │ ├── def_keyword_loc: (175,0)-(175,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (175,17)-(175,20) = "end" - ├── @ DefNode (location: (177,0)-(179,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (177,4)-(177,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (177,8)-(177,11)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ ForwardingParameterNode (location: (177,8)-(177,11)) - │ │ │ └── flags: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (178,2)-(178,10)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (178,2)-(178,10)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (178,2)-(178,5) = "bar" - │ │ ├── opening_loc: (178,5)-(178,6) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (178,6)-(178,9)) - │ │ │ ├── flags: contains_forwarding - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ ForwardingArgumentsNode (location: (178,6)-(178,9)) - │ │ │ └── flags: ∅ - │ │ ├── closing_loc: (178,9)-(178,10) = ")" - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (177,0)-(177,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (177,7)-(177,8) = "(" - │ ├── rparen_loc: (177,11)-(177,12) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (179,0)-(179,3) = "end" - ├── @ DefNode (location: (181,0)-(181,42)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (181,4)-(181,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (181,8)-(181,37)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (181,8)-(181,37)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── name_loc: (181,8)-(181,11) = "bar" - │ │ │ ├── operator_loc: (181,12)-(181,13) = "=" - │ │ │ └── value: - │ │ │ @ ParenthesesNode (location: (181,14)-(181,37)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (181,15)-(181,36)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 2) - │ │ │ │ ├── @ DefNode (location: (181,15)-(181,33)) - │ │ │ │ │ ├── flags: newline - │ │ │ │ │ ├── name: :baz - │ │ │ │ │ ├── name_loc: (181,19)-(181,22) = "baz" - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── parameters: - │ │ │ │ │ │ @ ParametersNode (location: (181,23)-(181,26)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ ├── requireds: (length: 1) - │ │ │ │ │ │ │ └── @ RequiredParameterNode (location: (181,23)-(181,26)) - │ │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ │ └── name: :bar - │ │ │ │ │ │ ├── optionals: (length: 0) - │ │ │ │ │ │ ├── rest: ∅ - │ │ │ │ │ │ ├── posts: (length: 0) - │ │ │ │ │ │ ├── keywords: (length: 0) - │ │ │ │ │ │ ├── keyword_rest: ∅ - │ │ │ │ │ │ └── block: ∅ - │ │ │ │ │ ├── body: - │ │ │ │ │ │ @ StatementsNode (location: (181,30)-(181,33)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ │ └── @ LocalVariableReadNode (location: (181,30)-(181,33)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ ├── name: :bar - │ │ │ │ │ │ └── depth: 0 - │ │ │ │ │ ├── locals: [:bar] - │ │ │ │ │ ├── def_keyword_loc: (181,15)-(181,18) = "def" - │ │ │ │ │ ├── operator_loc: ∅ - │ │ │ │ │ ├── lparen_loc: (181,22)-(181,23) = "(" - │ │ │ │ │ ├── rparen_loc: (181,26)-(181,27) = ")" - │ │ │ │ │ ├── equal_loc: (181,28)-(181,29) = "=" - │ │ │ │ │ └── end_keyword_loc: ∅ - │ │ │ │ └── @ IntegerNode (location: (181,35)-(181,36)) - │ │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── opening_loc: (181,14)-(181,15) = "(" - │ │ │ └── closing_loc: (181,36)-(181,37) = ")" - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (181,41)-(181,42)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (181,41)-(181,42)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── locals: [:bar] - │ ├── def_keyword_loc: (181,0)-(181,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (181,7)-(181,8) = "(" - │ ├── rparen_loc: (181,37)-(181,38) = ")" - │ ├── equal_loc: (181,39)-(181,40) = "=" - │ └── end_keyword_loc: ∅ - └── @ DefNode (location: (183,0)-(183,37)) - ├── flags: newline - ├── name: :foo - ├── name_loc: (183,21)-(183,24) = "foo" - ├── receiver: - │ @ ParenthesesNode (location: (183,4)-(183,20)) - │ ├── flags: ∅ - │ ├── body: - │ │ @ ClassNode (location: (183,5)-(183,19)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── class_keyword_loc: (183,5)-(183,10) = "class" - │ │ ├── constant_path: - │ │ │ @ ConstantReadNode (location: (183,11)-(183,14)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Foo - │ │ ├── inheritance_operator_loc: ∅ - │ │ ├── superclass: ∅ - │ │ ├── body: ∅ - │ │ ├── end_keyword_loc: (183,16)-(183,19) = "end" - │ │ └── name: :Foo - │ ├── opening_loc: (183,4)-(183,5) = "(" - │ └── closing_loc: (183,19)-(183,20) = ")" - ├── parameters: - │ @ ParametersNode (location: (183,25)-(183,32)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 1) - │ │ └── @ OptionalParameterNode (location: (183,25)-(183,32)) - │ │ ├── flags: ∅ - │ │ ├── name: :bar - │ │ ├── name_loc: (183,25)-(183,28) = "bar" - │ │ ├── operator_loc: (183,29)-(183,30) = "=" - │ │ └── value: - │ │ @ IntegerNode (location: (183,31)-(183,32)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (183,36)-(183,37)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ IntegerNode (location: (183,36)-(183,37)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── locals: [:bar] - ├── def_keyword_loc: (183,0)-(183,3) = "def" - ├── operator_loc: (183,20)-(183,21) = "." - ├── lparen_loc: (183,24)-(183,25) = "(" - ├── rparen_loc: (183,32)-(183,33) = ")" - ├── equal_loc: (183,34)-(183,35) = "=" - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/modules.txt b/test/prism/snapshots/modules.txt deleted file mode 100644 index 5e00122901..0000000000 --- a/test/prism/snapshots/modules.txt +++ /dev/null @@ -1,204 +0,0 @@ -@ ProgramNode (location: (1,0)-(18,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(18,3)) - ├── flags: ∅ - └── body: (length: 7) - ├── @ ModuleNode (location: (1,0)-(1,18)) - │ ├── flags: newline - │ ├── locals: [:a] - │ ├── module_keyword_loc: (1,0)-(1,6) = "module" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (1,7)-(1,8)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── body: - │ │ @ StatementsNode (location: (1,9)-(1,14)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableWriteNode (location: (1,9)-(1,14)) - │ │ ├── flags: newline - │ │ ├── name: :a - │ │ ├── depth: 0 - │ │ ├── name_loc: (1,9)-(1,10) = "a" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (1,13)-(1,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── operator_loc: (1,11)-(1,12) = "=" - │ ├── end_keyword_loc: (1,15)-(1,18) = "end" - │ └── name: :A - ├── @ InterpolatedStringNode (location: (3,0)-(3,18)) - │ ├── flags: newline - │ ├── opening_loc: (3,0)-(3,3) = "%Q{" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (3,3)-(3,7)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (3,3)-(3,7) = "aaa " - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "aaa " - │ │ ├── @ EmbeddedStatementsNode (location: (3,7)-(3,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (3,7)-(3,9) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (3,9)-(3,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (3,9)-(3,12)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bbb - │ │ │ │ ├── message_loc: (3,9)-(3,12) = "bbb" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── closing_loc: (3,12)-(3,13) = "}" - │ │ └── @ StringNode (location: (3,13)-(3,17)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (3,13)-(3,17) = " ccc" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: " ccc" - │ └── closing_loc: (3,17)-(3,18) = "}" - ├── @ ModuleNode (location: (5,0)-(6,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── module_keyword_loc: (5,0)-(5,6) = "module" - │ ├── constant_path: - │ │ @ ConstantPathNode (location: (5,7)-(5,11)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ CallNode (location: (5,7)-(5,8)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :m - │ │ │ ├── message_loc: (5,7)-(5,8) = "m" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── name: :M - │ │ ├── delimiter_loc: (5,8)-(5,10) = "::" - │ │ └── name_loc: (5,10)-(5,11) = "M" - │ ├── body: ∅ - │ ├── end_keyword_loc: (6,0)-(6,3) = "end" - │ └── name: :M - ├── @ ModuleNode (location: (8,0)-(9,19)) - │ ├── flags: newline - │ ├── locals: [:x] - │ ├── module_keyword_loc: (8,0)-(8,6) = "module" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (8,7)-(8,8)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── body: - │ │ @ BeginNode (location: (8,0)-(9,19)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (9,1)-(9,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ LocalVariableWriteNode (location: (9,1)-(9,6)) - │ │ │ ├── flags: newline - │ │ │ ├── name: :x - │ │ │ ├── depth: 0 - │ │ │ ├── name_loc: (9,1)-(9,2) = "x" - │ │ │ ├── value: - │ │ │ │ @ IntegerNode (location: (9,5)-(9,6)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── operator_loc: (9,3)-(9,4) = "=" - │ │ ├── rescue_clause: - │ │ │ @ RescueNode (location: (9,8)-(9,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (9,8)-(9,14) = "rescue" - │ │ │ ├── exceptions: (length: 0) - │ │ │ ├── operator_loc: ∅ - │ │ │ ├── reference: ∅ - │ │ │ ├── statements: ∅ - │ │ │ └── subsequent: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: ∅ - │ │ └── end_keyword_loc: (9,16)-(9,19) = "end" - │ ├── end_keyword_loc: (9,16)-(9,19) = "end" - │ └── name: :A - ├── @ ModuleNode (location: (11,0)-(12,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── module_keyword_loc: (11,0)-(11,6) = "module" - │ ├── constant_path: - │ │ @ ConstantPathNode (location: (11,7)-(11,10)) - │ │ ├── flags: ∅ - │ │ ├── parent: ∅ - │ │ ├── name: :A - │ │ ├── delimiter_loc: (11,7)-(11,9) = "::" - │ │ └── name_loc: (11,9)-(11,10) = "A" - │ ├── body: ∅ - │ ├── end_keyword_loc: (12,0)-(12,3) = "end" - │ └── name: :A - ├── @ ModuleNode (location: (14,0)-(15,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── module_keyword_loc: (14,0)-(14,6) = "module" - │ ├── constant_path: - │ │ @ ConstantPathNode (location: (14,7)-(14,13)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ CallNode (location: (14,7)-(14,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── receiver: - │ │ │ │ @ ConstantReadNode (location: (14,7)-(14,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :A - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :[] - │ │ │ ├── message_loc: (14,8)-(14,10) = "[]" - │ │ │ ├── opening_loc: (14,8)-(14,9) = "[" - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: (14,9)-(14,10) = "]" - │ │ │ └── block: ∅ - │ │ ├── name: :B - │ │ ├── delimiter_loc: (14,10)-(14,12) = "::" - │ │ └── name_loc: (14,12)-(14,13) = "B" - │ ├── body: ∅ - │ ├── end_keyword_loc: (15,0)-(15,3) = "end" - │ └── name: :B - └── @ ModuleNode (location: (17,0)-(18,3)) - ├── flags: newline - ├── locals: [] - ├── module_keyword_loc: (17,0)-(17,6) = "module" - ├── constant_path: - │ @ ConstantPathNode (location: (17,7)-(17,14)) - │ ├── flags: ∅ - │ ├── parent: - │ │ @ CallNode (location: (17,7)-(17,11)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ ConstantReadNode (location: (17,7)-(17,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :A - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :[] - │ │ ├── message_loc: (17,8)-(17,11) = "[1]" - │ │ ├── opening_loc: (17,8)-(17,9) = "[" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (17,9)-(17,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (17,9)-(17,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: (17,10)-(17,11) = "]" - │ │ └── block: ∅ - │ ├── name: :B - │ ├── delimiter_loc: (17,11)-(17,13) = "::" - │ └── name_loc: (17,13)-(17,14) = "B" - ├── body: ∅ - ├── end_keyword_loc: (18,0)-(18,3) = "end" - └── name: :B diff --git a/test/prism/snapshots/multi_write.txt b/test/prism/snapshots/multi_write.txt deleted file mode 100644 index fa36f50423..0000000000 --- a/test/prism/snapshots/multi_write.txt +++ /dev/null @@ -1,111 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,26)) -├── flags: ∅ -├── locals: [:foo, :bar] -└── statements: - @ StatementsNode (location: (1,0)-(4,26)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ LocalVariableWriteNode (location: (1,0)-(1,18)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── depth: 0 - │ ├── name_loc: (1,0)-(1,3) = "foo" - │ ├── value: - │ │ @ RescueModifierNode (location: (1,6)-(1,18)) - │ │ ├── flags: ∅ - │ │ ├── expression: - │ │ │ @ IntegerNode (location: (1,6)-(1,7)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── keyword_loc: (1,8)-(1,14) = "rescue" - │ │ └── rescue_expression: - │ │ @ NilNode (location: (1,15)-(1,18)) - │ │ └── flags: static_literal - │ └── operator_loc: (1,4)-(1,5) = "=" - ├── @ MultiWriteNode (location: (2,0)-(2,23)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ LocalVariableTargetNode (location: (2,0)-(2,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :foo - │ │ │ └── depth: 0 - │ │ └── @ LocalVariableTargetNode (location: (2,5)-(2,8)) - │ │ ├── flags: ∅ - │ │ ├── name: :bar - │ │ └── depth: 0 - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (2,9)-(2,10) = "=" - │ └── value: - │ @ RescueModifierNode (location: (2,11)-(2,23)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ IntegerNode (location: (2,11)-(2,12)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── keyword_loc: (2,13)-(2,19) = "rescue" - │ └── rescue_expression: - │ @ NilNode (location: (2,20)-(2,23)) - │ └── flags: static_literal - ├── @ RescueModifierNode (location: (3,0)-(3,21)) - │ ├── flags: newline - │ ├── expression: - │ │ @ LocalVariableWriteNode (location: (3,0)-(3,10)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ ├── depth: 0 - │ │ ├── name_loc: (3,0)-(3,3) = "foo" - │ │ ├── value: - │ │ │ @ ArrayNode (location: (3,6)-(3,10)) - │ │ │ ├── flags: static_literal - │ │ │ ├── elements: (length: 2) - │ │ │ │ ├── @ IntegerNode (location: (3,6)-(3,7)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ └── @ IntegerNode (location: (3,9)-(3,10)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ ├── opening_loc: ∅ - │ │ │ └── closing_loc: ∅ - │ │ └── operator_loc: (3,4)-(3,5) = "=" - │ ├── keyword_loc: (3,11)-(3,17) = "rescue" - │ └── rescue_expression: - │ @ NilNode (location: (3,18)-(3,21)) - │ └── flags: static_literal - └── @ MultiWriteNode (location: (4,0)-(4,26)) - ├── flags: newline - ├── lefts: (length: 2) - │ ├── @ LocalVariableTargetNode (location: (4,0)-(4,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ └── @ LocalVariableTargetNode (location: (4,5)-(4,8)) - │ ├── flags: ∅ - │ ├── name: :bar - │ └── depth: 0 - ├── rest: ∅ - ├── rights: (length: 0) - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (4,9)-(4,10) = "=" - └── value: - @ RescueModifierNode (location: (4,11)-(4,26)) - ├── flags: ∅ - ├── expression: - │ @ ArrayNode (location: (4,11)-(4,15)) - │ ├── flags: static_literal - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (4,11)-(4,12)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (4,14)-(4,15)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── opening_loc: ∅ - │ └── closing_loc: ∅ - ├── keyword_loc: (4,16)-(4,22) = "rescue" - └── rescue_expression: - @ NilNode (location: (4,23)-(4,26)) - └── flags: static_literal diff --git a/test/prism/snapshots/newline_terminated.txt b/test/prism/snapshots/newline_terminated.txt deleted file mode 100644 index 85e996fa5a..0000000000 --- a/test/prism/snapshots/newline_terminated.txt +++ /dev/null @@ -1,109 +0,0 @@ -@ ProgramNode (location: (3,0)-(41,0)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (3,0)-(41,0)) - ├── flags: ∅ - └── body: (length: 17) - ├── @ StringNode (location: (3,0)-(3,6)) - │ ├── flags: newline - │ ├── opening_loc: (3,0)-(3,2) = "% " - │ ├── content_loc: (3,2)-(3,5) = "abc" - │ ├── closing_loc: (3,5)-(3,6) = " " - │ └── unescaped: "abc" - ├── @ StringNode (location: (4,0)-(4,6)) - │ ├── flags: newline - │ ├── opening_loc: (4,0)-(4,2) = "%\t" - │ ├── content_loc: (4,2)-(4,5) = "abc" - │ ├── closing_loc: (4,5)-(4,6) = "\t" - │ └── unescaped: "abc" - ├── @ StringNode (location: (5,0)-(5,6)) - │ ├── flags: newline - │ ├── opening_loc: (5,0)-(5,2) = "%\v" - │ ├── content_loc: (5,2)-(5,5) = "abc" - │ ├── closing_loc: (5,5)-(5,6) = "\v" - │ └── unescaped: "abc" - ├── @ StringNode (location: (6,0)-(6,6)) - │ ├── flags: newline - │ ├── opening_loc: (6,0)-(6,2) = "%\r" - │ ├── content_loc: (6,2)-(6,5) = "abc" - │ ├── closing_loc: (6,5)-(6,6) = "\r" - │ └── unescaped: "abc" - ├── @ StringNode (location: (7,0)-(9,0)) - │ ├── flags: newline - │ ├── opening_loc: (7,0)-(8,0) = "%\n" - │ ├── content_loc: (8,0)-(8,3) = "abc" - │ ├── closing_loc: (8,3)-(9,0) = "\n" - │ └── unescaped: "abc" - ├── @ StringNode (location: (10,0)-(10,6)) - │ ├── flags: newline - │ ├── opening_loc: (10,0)-(10,2) = "%\u0000" - │ ├── content_loc: (10,2)-(10,5) = "abc" - │ ├── closing_loc: (10,5)-(10,6) = "\u0000" - │ └── unescaped: "abc" - ├── @ StringNode (location: (11,0)-(13,0)) - │ ├── flags: newline - │ ├── opening_loc: (11,0)-(12,0) = "%\n" - │ ├── content_loc: (12,0)-(12,3) = "abc" - │ ├── closing_loc: (12,3)-(13,0) = "\n" - │ └── unescaped: "abc" - ├── @ StringNode (location: (14,0)-(16,0)) - │ ├── flags: newline - │ ├── opening_loc: (14,0)-(15,0) = "%\n" - │ ├── content_loc: (15,0)-(15,4) = "\rabc" - │ ├── closing_loc: (15,4)-(16,0) = "\n" - │ └── unescaped: "\rabc" - ├── @ StringNode (location: (17,0)-(19,0)) - │ ├── flags: newline - │ ├── opening_loc: (17,0)-(18,0) = "%\n" - │ ├── content_loc: (18,0)-(18,4) = "\rabc" - │ ├── closing_loc: (18,4)-(19,0) = "\n" - │ └── unescaped: "\rabc" - ├── @ StringNode (location: (20,0)-(22,0)) - │ ├── flags: newline - │ ├── opening_loc: (20,0)-(21,0) = "%\n" - │ ├── content_loc: (21,0)-(21,3) = "abc" - │ ├── closing_loc: (21,3)-(22,0) = "\n" - │ └── unescaped: "abc" - ├── @ StringNode (location: (23,0)-(23,6)) - │ ├── flags: newline - │ ├── opening_loc: (23,0)-(23,2) = "%\r" - │ ├── content_loc: (23,2)-(23,5) = "abc" - │ ├── closing_loc: (23,5)-(23,6) = "\r" - │ └── unescaped: "abc" - ├── @ StringNode (location: (24,0)-(26,0)) - │ ├── flags: newline - │ ├── opening_loc: (24,0)-(25,0) = "%\n" - │ ├── content_loc: (25,0)-(25,3) = "abc" - │ ├── closing_loc: (25,3)-(26,0) = "\n" - │ └── unescaped: "abc" - ├── @ StringNode (location: (27,0)-(29,0)) - │ ├── flags: newline - │ ├── opening_loc: (27,0)-(28,0) = "%\n" - │ ├── content_loc: (28,0)-(28,3) = "abc" - │ ├── closing_loc: (28,3)-(29,0) = "\n" - │ └── unescaped: "abc" - ├── @ StringNode (location: (30,0)-(32,0)) - │ ├── flags: newline - │ ├── opening_loc: (30,0)-(31,0) = "%\n" - │ ├── content_loc: (31,0)-(31,3) = "foo" - │ ├── closing_loc: (31,3)-(32,0) = "\n" - │ └── unescaped: "foo" - ├── @ StringNode (location: (33,0)-(35,0)) - │ ├── flags: newline - │ ├── opening_loc: (33,0)-(34,0) = "%q\n" - │ ├── content_loc: (34,0)-(34,3) = "foo" - │ ├── closing_loc: (34,3)-(35,0) = "\n" - │ └── unescaped: "foo" - ├── @ StringNode (location: (36,0)-(38,0)) - │ ├── flags: newline - │ ├── opening_loc: (36,0)-(37,0) = "%Q\n" - │ ├── content_loc: (37,0)-(37,3) = "foo" - │ ├── closing_loc: (37,3)-(38,0) = "\n" - │ └── unescaped: "foo" - └── @ RegularExpressionNode (location: (39,0)-(41,0)) - ├── flags: newline, static_literal, forced_us_ascii_encoding - ├── opening_loc: (39,0)-(40,0) = "%r\n" - ├── content_loc: (40,0)-(40,3) = "foo" - ├── closing_loc: (40,3)-(41,0) = "\n" - └── unescaped: "foo" diff --git a/test/prism/snapshots/next.txt b/test/prism/snapshots/next.txt deleted file mode 100644 index 5b0becea1c..0000000000 --- a/test/prism/snapshots/next.txt +++ /dev/null @@ -1,372 +0,0 @@ -@ ProgramNode (location: (1,0)-(24,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(24,15)) - ├── flags: ∅ - └── body: (length: 10) - ├── @ CallNode (location: (1,0)-(1,12)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (1,0)-(1,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (1,4)-(1,12)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,6)-(1,10)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ NextNode (location: (1,6)-(1,10)) - │ │ ├── flags: newline - │ │ ├── arguments: ∅ - │ │ └── keyword_loc: (1,6)-(1,10) = "next" - │ ├── opening_loc: (1,4)-(1,5) = "{" - │ └── closing_loc: (1,11)-(1,12) = "}" - ├── @ CallNode (location: (3,0)-(3,26)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (3,0)-(3,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (3,4)-(3,26)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (3,6)-(3,24)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ NextNode (location: (3,6)-(3,24)) - │ │ ├── flags: newline - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (3,11)-(3,24)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 3) - │ │ │ ├── @ ParenthesesNode (location: (3,11)-(3,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── body: - │ │ │ │ │ @ StatementsNode (location: (3,12)-(3,13)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ IntegerNode (location: (3,12)-(3,13)) - │ │ │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ ├── opening_loc: (3,11)-(3,12) = "(" - │ │ │ │ └── closing_loc: (3,13)-(3,14) = ")" - │ │ │ ├── @ ParenthesesNode (location: (3,16)-(3,19)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── body: - │ │ │ │ │ @ StatementsNode (location: (3,17)-(3,18)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ IntegerNode (location: (3,17)-(3,18)) - │ │ │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ │ │ └── value: 2 - │ │ │ │ ├── opening_loc: (3,16)-(3,17) = "(" - │ │ │ │ └── closing_loc: (3,18)-(3,19) = ")" - │ │ │ └── @ ParenthesesNode (location: (3,21)-(3,24)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (3,22)-(3,23)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (3,22)-(3,23)) - │ │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ │ └── value: 3 - │ │ │ ├── opening_loc: (3,21)-(3,22) = "(" - │ │ │ └── closing_loc: (3,23)-(3,24) = ")" - │ │ └── keyword_loc: (3,6)-(3,10) = "next" - │ ├── opening_loc: (3,4)-(3,5) = "{" - │ └── closing_loc: (3,25)-(3,26) = "}" - ├── @ CallNode (location: (5,0)-(5,14)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (5,0)-(5,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (5,4)-(5,14)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (5,6)-(5,12)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ NextNode (location: (5,6)-(5,12)) - │ │ ├── flags: newline - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (5,11)-(5,12)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (5,11)-(5,12)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── keyword_loc: (5,6)-(5,10) = "next" - │ ├── opening_loc: (5,4)-(5,5) = "{" - │ └── closing_loc: (5,13)-(5,14) = "}" - ├── @ CallNode (location: (7,0)-(8,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (7,0)-(7,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (7,4)-(8,3)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (7,6)-(8,1)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ NextNode (location: (7,6)-(8,1)) - │ │ ├── flags: newline - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (7,11)-(8,1)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 3) - │ │ │ ├── @ IntegerNode (location: (7,11)-(7,12)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── @ IntegerNode (location: (7,14)-(7,15)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ └── @ IntegerNode (location: (8,0)-(8,1)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 3 - │ │ └── keyword_loc: (7,6)-(7,10) = "next" - │ ├── opening_loc: (7,4)-(7,5) = "{" - │ └── closing_loc: (8,2)-(8,3) = "}" - ├── @ CallNode (location: (10,0)-(10,20)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (10,0)-(10,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (10,4)-(10,20)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (10,6)-(10,18)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ NextNode (location: (10,6)-(10,18)) - │ │ ├── flags: newline - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (10,11)-(10,18)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 3) - │ │ │ ├── @ IntegerNode (location: (10,11)-(10,12)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── @ IntegerNode (location: (10,14)-(10,15)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ └── @ IntegerNode (location: (10,17)-(10,18)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 3 - │ │ └── keyword_loc: (10,6)-(10,10) = "next" - │ ├── opening_loc: (10,4)-(10,5) = "{" - │ └── closing_loc: (10,19)-(10,20) = "}" - ├── @ CallNode (location: (12,0)-(12,22)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (12,0)-(12,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (12,4)-(12,22)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (12,6)-(12,20)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ NextNode (location: (12,6)-(12,20)) - │ │ ├── flags: newline - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (12,11)-(12,20)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ ArrayNode (location: (12,11)-(12,20)) - │ │ │ ├── flags: static_literal - │ │ │ ├── elements: (length: 3) - │ │ │ │ ├── @ IntegerNode (location: (12,12)-(12,13)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ ├── @ IntegerNode (location: (12,15)-(12,16)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 2 - │ │ │ │ └── @ IntegerNode (location: (12,18)-(12,19)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 3 - │ │ │ ├── opening_loc: (12,11)-(12,12) = "[" - │ │ │ └── closing_loc: (12,19)-(12,20) = "]" - │ │ └── keyword_loc: (12,6)-(12,10) = "next" - │ ├── opening_loc: (12,4)-(12,5) = "{" - │ └── closing_loc: (12,21)-(12,22) = "}" - ├── @ CallNode (location: (14,0)-(17,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (14,0)-(14,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (14,4)-(17,3)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (14,6)-(17,1)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ NextNode (location: (14,6)-(17,1)) - │ │ ├── flags: newline - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (14,10)-(17,1)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ ParenthesesNode (location: (14,10)-(17,1)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (15,2)-(16,3)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 2) - │ │ │ │ ├── @ IntegerNode (location: (15,2)-(15,3)) - │ │ │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ └── @ IntegerNode (location: (16,2)-(16,3)) - │ │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ ├── opening_loc: (14,10)-(14,11) = "(" - │ │ │ └── closing_loc: (17,0)-(17,1) = ")" - │ │ └── keyword_loc: (14,6)-(14,10) = "next" - │ ├── opening_loc: (14,4)-(14,5) = "{" - │ └── closing_loc: (17,2)-(17,3) = "}" - ├── @ CallNode (location: (19,0)-(20,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (19,0)-(19,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (19,4)-(20,3)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (19,6)-(20,1)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 2) - │ │ ├── @ NextNode (location: (19,6)-(19,10)) - │ │ │ ├── flags: newline - │ │ │ ├── arguments: ∅ - │ │ │ └── keyword_loc: (19,6)-(19,10) = "next" - │ │ └── @ IntegerNode (location: (20,0)-(20,1)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 1 - │ ├── opening_loc: (19,4)-(19,5) = "{" - │ └── closing_loc: (20,2)-(20,3) = "}" - ├── @ CallNode (location: (22,0)-(22,14)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (22,0)-(22,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (22,4)-(22,14)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (22,6)-(22,12)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ NextNode (location: (22,6)-(22,12)) - │ │ ├── flags: newline - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (22,10)-(22,12)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ ParenthesesNode (location: (22,10)-(22,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: ∅ - │ │ │ ├── opening_loc: (22,10)-(22,11) = "(" - │ │ │ └── closing_loc: (22,11)-(22,12) = ")" - │ │ └── keyword_loc: (22,6)-(22,10) = "next" - │ ├── opening_loc: (22,4)-(22,5) = "{" - │ └── closing_loc: (22,13)-(22,14) = "}" - └── @ CallNode (location: (24,0)-(24,15)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :tap - ├── message_loc: (24,0)-(24,3) = "tap" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (24,4)-(24,15)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (24,6)-(24,13)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ NextNode (location: (24,6)-(24,13)) - │ ├── flags: newline - │ ├── arguments: - │ │ @ ArgumentsNode (location: (24,10)-(24,13)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ ParenthesesNode (location: (24,10)-(24,13)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (24,11)-(24,12)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ IntegerNode (location: (24,11)-(24,12)) - │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── opening_loc: (24,10)-(24,11) = "(" - │ │ └── closing_loc: (24,12)-(24,13) = ")" - │ └── keyword_loc: (24,6)-(24,10) = "next" - ├── opening_loc: (24,4)-(24,5) = "{" - └── closing_loc: (24,14)-(24,15) = "}" diff --git a/test/prism/snapshots/nils.txt b/test/prism/snapshots/nils.txt deleted file mode 100644 index 275bc373a5..0000000000 --- a/test/prism/snapshots/nils.txt +++ /dev/null @@ -1,43 +0,0 @@ -@ ProgramNode (location: (1,0)-(12,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(12,11)) - ├── flags: ∅ - └── body: (length: 5) - ├── @ NilNode (location: (1,0)-(1,3)) - │ └── flags: newline, static_literal - ├── @ ParenthesesNode (location: (3,0)-(3,2)) - │ ├── flags: newline - │ ├── body: ∅ - │ ├── opening_loc: (3,0)-(3,1) = "(" - │ └── closing_loc: (3,1)-(3,2) = ")" - ├── @ ParenthesesNode (location: (5,0)-(8,1)) - │ ├── flags: newline - │ ├── body: ∅ - │ ├── opening_loc: (5,0)-(5,1) = "(" - │ └── closing_loc: (8,0)-(8,1) = ")" - ├── @ PostExecutionNode (location: (10,0)-(10,9)) - │ ├── flags: newline - │ ├── statements: - │ │ @ StatementsNode (location: (10,6)-(10,7)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (10,6)-(10,7)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 1 - │ ├── keyword_loc: (10,0)-(10,3) = "END" - │ ├── opening_loc: (10,4)-(10,5) = "{" - │ └── closing_loc: (10,8)-(10,9) = "}" - └── @ PreExecutionNode (location: (12,0)-(12,11)) - ├── flags: newline - ├── statements: - │ @ StatementsNode (location: (12,8)-(12,9)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ IntegerNode (location: (12,8)-(12,9)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 1 - ├── keyword_loc: (12,0)-(12,5) = "BEGIN" - ├── opening_loc: (12,6)-(12,7) = "{" - └── closing_loc: (12,10)-(12,11) = "}" diff --git a/test/prism/snapshots/non_alphanumeric_methods.txt b/test/prism/snapshots/non_alphanumeric_methods.txt deleted file mode 100644 index 2d29d365e4..0000000000 --- a/test/prism/snapshots/non_alphanumeric_methods.txt +++ /dev/null @@ -1,545 +0,0 @@ -@ ProgramNode (location: (1,0)-(105,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(105,3)) - ├── flags: ∅ - └── body: (length: 36) - ├── @ DefNode (location: (1,0)-(2,3)) - │ ├── flags: newline - │ ├── name: :! - │ ├── name_loc: (1,4)-(1,5) = "!" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (2,0)-(2,3) = "end" - ├── @ DefNode (location: (4,0)-(5,3)) - │ ├── flags: newline - │ ├── name: :!= - │ ├── name_loc: (4,4)-(4,6) = "!=" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (4,0)-(4,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (5,0)-(5,3) = "end" - ├── @ DefNode (location: (7,0)-(8,3)) - │ ├── flags: newline - │ ├── name: :!~ - │ ├── name_loc: (7,4)-(7,6) = "!~" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (7,0)-(7,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (8,0)-(8,3) = "end" - ├── @ DefNode (location: (10,0)-(11,3)) - │ ├── flags: newline - │ ├── name: :% - │ ├── name_loc: (10,4)-(10,5) = "%" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (10,0)-(10,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (11,0)-(11,3) = "end" - ├── @ DefNode (location: (13,0)-(14,3)) - │ ├── flags: newline - │ ├── name: :+ - │ ├── name_loc: (13,9)-(13,10) = "+" - │ ├── receiver: - │ │ @ SelfNode (location: (13,4)-(13,8)) - │ │ └── flags: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (13,0)-(13,3) = "def" - │ ├── operator_loc: (13,8)-(13,9) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (14,0)-(14,3) = "end" - ├── @ DefNode (location: (16,0)-(17,3)) - │ ├── flags: newline - │ ├── name: :& - │ ├── name_loc: (16,4)-(16,5) = "&" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (16,0)-(16,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (17,0)-(17,3) = "end" - ├── @ DefNode (location: (19,0)-(20,3)) - │ ├── flags: newline - │ ├── name: :* - │ ├── name_loc: (19,4)-(19,5) = "*" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (19,0)-(19,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (20,0)-(20,3) = "end" - ├── @ DefNode (location: (22,0)-(23,3)) - │ ├── flags: newline - │ ├── name: :** - │ ├── name_loc: (22,4)-(22,6) = "**" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (22,0)-(22,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (23,0)-(23,3) = "end" - ├── @ StringNode (location: (25,0)-(25,6)) - │ ├── flags: newline - │ ├── opening_loc: (25,0)-(25,2) = "%|" - │ ├── content_loc: (25,2)-(25,5) = "abc" - │ ├── closing_loc: (25,5)-(25,6) = "|" - │ └── unescaped: "abc" - ├── @ DefNode (location: (27,0)-(28,3)) - │ ├── flags: newline - │ ├── name: :+ - │ ├── name_loc: (27,4)-(27,5) = "+" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (27,6)-(27,9)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ KeywordRestParameterNode (location: (27,6)-(27,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (27,8)-(27,9) = "b" - │ │ │ └── operator_loc: (27,6)-(27,8) = "**" - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:b] - │ ├── def_keyword_loc: (27,0)-(27,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (28,0)-(28,3) = "end" - ├── @ DefNode (location: (30,0)-(31,3)) - │ ├── flags: newline - │ ├── name: :+ - │ ├── name_loc: (30,4)-(30,5) = "+" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (30,0)-(30,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (30,5)-(30,6) = "(" - │ ├── rparen_loc: (30,6)-(30,7) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (31,0)-(31,3) = "end" - ├── @ DefNode (location: (33,0)-(34,3)) - │ ├── flags: newline - │ ├── name: :+ - │ ├── name_loc: (33,4)-(33,5) = "+" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (33,6)-(33,7)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (33,6)-(33,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :b - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:b] - │ ├── def_keyword_loc: (33,0)-(33,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (34,0)-(34,3) = "end" - ├── @ DefNode (location: (36,0)-(37,3)) - │ ├── flags: newline - │ ├── name: :+ - │ ├── name_loc: (36,9)-(36,10) = "+" - │ ├── receiver: - │ │ @ SelfNode (location: (36,4)-(36,8)) - │ │ └── flags: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (36,0)-(36,3) = "def" - │ ├── operator_loc: (36,8)-(36,9) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (37,0)-(37,3) = "end" - ├── @ DefNode (location: (39,0)-(40,3)) - │ ├── flags: newline - │ ├── name: :+ - │ ├── name_loc: (39,4)-(39,5) = "+" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (39,0)-(39,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (40,0)-(40,3) = "end" - ├── @ DefNode (location: (42,0)-(43,3)) - │ ├── flags: newline - │ ├── name: :+@ - │ ├── name_loc: (42,4)-(42,6) = "+@" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (42,0)-(42,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (43,0)-(43,3) = "end" - ├── @ DefNode (location: (45,0)-(46,3)) - │ ├── flags: newline - │ ├── name: :- - │ ├── name_loc: (45,4)-(45,5) = "-" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (45,0)-(45,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (46,0)-(46,3) = "end" - ├── @ DefNode (location: (48,0)-(48,11)) - │ ├── flags: newline - │ ├── name: :- - │ ├── name_loc: (48,6)-(48,7) = "-" - │ ├── receiver: - │ │ @ CallNode (location: (48,4)-(48,5)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (48,4)-(48,5) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (48,0)-(48,3) = "def" - │ ├── operator_loc: (48,5)-(48,6) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (48,8)-(48,11) = "end" - ├── @ DefNode (location: (50,0)-(51,3)) - │ ├── flags: newline - │ ├── name: :-@ - │ ├── name_loc: (50,4)-(50,6) = "-@" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (50,0)-(50,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (51,0)-(51,3) = "end" - ├── @ DefNode (location: (53,0)-(54,3)) - │ ├── flags: newline - │ ├── name: :/ - │ ├── name_loc: (53,4)-(53,5) = "/" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (53,0)-(53,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (54,0)-(54,3) = "end" - ├── @ DefNode (location: (56,0)-(57,3)) - │ ├── flags: newline - │ ├── name: :< - │ ├── name_loc: (56,4)-(56,5) = "<" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (56,0)-(56,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (57,0)-(57,3) = "end" - ├── @ DefNode (location: (59,0)-(60,3)) - │ ├── flags: newline - │ ├── name: :<< - │ ├── name_loc: (59,4)-(59,6) = "<<" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (59,0)-(59,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (60,0)-(60,3) = "end" - ├── @ DefNode (location: (62,0)-(63,3)) - │ ├── flags: newline - │ ├── name: :<= - │ ├── name_loc: (62,4)-(62,6) = "<=" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (62,0)-(62,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (63,0)-(63,3) = "end" - ├── @ DefNode (location: (65,0)-(66,3)) - │ ├── flags: newline - │ ├── name: :<=> - │ ├── name_loc: (65,4)-(65,7) = "<=>" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (65,0)-(65,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (66,0)-(66,3) = "end" - ├── @ DefNode (location: (68,0)-(69,3)) - │ ├── flags: newline - │ ├── name: :== - │ ├── name_loc: (68,4)-(68,6) = "==" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (68,0)-(68,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (69,0)-(69,3) = "end" - ├── @ DefNode (location: (71,0)-(72,3)) - │ ├── flags: newline - │ ├── name: :=== - │ ├── name_loc: (71,4)-(71,7) = "===" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (71,0)-(71,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (72,0)-(72,3) = "end" - ├── @ DefNode (location: (74,0)-(75,3)) - │ ├── flags: newline - │ ├── name: :=~ - │ ├── name_loc: (74,4)-(74,6) = "=~" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (74,0)-(74,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (75,0)-(75,3) = "end" - ├── @ DefNode (location: (77,0)-(78,3)) - │ ├── flags: newline - │ ├── name: :> - │ ├── name_loc: (77,4)-(77,5) = ">" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (77,0)-(77,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (78,0)-(78,3) = "end" - ├── @ DefNode (location: (80,0)-(81,3)) - │ ├── flags: newline - │ ├── name: :>= - │ ├── name_loc: (80,4)-(80,6) = ">=" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (80,0)-(80,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (81,0)-(81,3) = "end" - ├── @ DefNode (location: (83,0)-(84,3)) - │ ├── flags: newline - │ ├── name: :>> - │ ├── name_loc: (83,4)-(83,6) = ">>" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (83,0)-(83,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (84,0)-(84,3) = "end" - ├── @ DefNode (location: (86,0)-(87,3)) - │ ├── flags: newline - │ ├── name: :[] - │ ├── name_loc: (86,4)-(86,6) = "[]" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (86,0)-(86,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (87,0)-(87,3) = "end" - ├── @ DefNode (location: (89,0)-(90,3)) - │ ├── flags: newline - │ ├── name: :[]= - │ ├── name_loc: (89,4)-(89,7) = "[]=" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (89,0)-(89,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (90,0)-(90,3) = "end" - ├── @ DefNode (location: (92,0)-(93,3)) - │ ├── flags: newline - │ ├── name: :^ - │ ├── name_loc: (92,4)-(92,5) = "^" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (92,0)-(92,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (93,0)-(93,3) = "end" - ├── @ DefNode (location: (95,0)-(96,3)) - │ ├── flags: newline - │ ├── name: :` - │ ├── name_loc: (95,4)-(95,5) = "`" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (95,0)-(95,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (96,0)-(96,3) = "end" - ├── @ DefNode (location: (98,0)-(99,3)) - │ ├── flags: newline - │ ├── name: :` - │ ├── name_loc: (98,9)-(98,10) = "`" - │ ├── receiver: - │ │ @ SelfNode (location: (98,4)-(98,8)) - │ │ └── flags: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (98,0)-(98,3) = "def" - │ ├── operator_loc: (98,8)-(98,9) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (99,0)-(99,3) = "end" - ├── @ DefNode (location: (101,0)-(102,3)) - │ ├── flags: newline - │ ├── name: :| - │ ├── name_loc: (101,4)-(101,5) = "|" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (101,0)-(101,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (102,0)-(102,3) = "end" - └── @ DefNode (location: (104,0)-(105,3)) - ├── flags: newline - ├── name: :~ - ├── name_loc: (104,4)-(104,5) = "~" - ├── receiver: ∅ - ├── parameters: ∅ - ├── body: ∅ - ├── locals: [] - ├── def_keyword_loc: (104,0)-(104,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (105,0)-(105,3) = "end" diff --git a/test/prism/snapshots/not.txt b/test/prism/snapshots/not.txt deleted file mode 100644 index e164b18813..0000000000 --- a/test/prism/snapshots/not.txt +++ /dev/null @@ -1,360 +0,0 @@ -@ ProgramNode (location: (1,0)-(37,16)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(37,16)) - ├── flags: ∅ - └── body: (length: 10) - ├── @ AndNode (location: (1,0)-(1,19)) - │ ├── flags: newline - │ ├── left: - │ │ @ CallNode (location: (1,0)-(1,7)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (1,4)-(1,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (1,4)-(1,7) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :! - │ │ ├── message_loc: (1,0)-(1,3) = "not" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── right: - │ │ @ CallNode (location: (1,12)-(1,19)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (1,16)-(1,19)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (1,16)-(1,19) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :! - │ │ ├── message_loc: (1,12)-(1,15) = "not" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (1,8)-(1,11) = "and" - ├── @ CallNode (location: (3,0)-(3,16)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ AndNode (location: (3,4)-(3,15)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ CallNode (location: (3,4)-(3,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (3,4)-(3,7) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── right: - │ │ │ @ CallNode (location: (3,12)-(3,15)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (3,12)-(3,15) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (3,8)-(3,11) = "and" - │ ├── call_operator_loc: ∅ - │ ├── name: :! - │ ├── message_loc: (3,0)-(3,3) = "not" - │ ├── opening_loc: (3,3)-(3,4) = "(" - │ ├── arguments: ∅ - │ ├── closing_loc: (3,15)-(3,16) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (5,0)-(5,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (5,4)-(5,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (5,4)-(5,7) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :! - │ ├── message_loc: (5,0)-(5,3) = "not" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ AndNode (location: (7,0)-(8,5)) - │ ├── flags: newline - │ ├── left: - │ │ @ CallNode (location: (7,0)-(7,7)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (7,4)-(7,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (7,4)-(7,7) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :! - │ │ ├── message_loc: (7,0)-(7,3) = "not" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── right: - │ │ @ CallNode (location: (7,12)-(8,5)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (8,2)-(8,5)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (8,2)-(8,5) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :! - │ │ ├── message_loc: (7,12)-(7,15) = "not" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (7,8)-(7,11) = "and" - ├── @ AndNode (location: (11,0)-(13,5)) - │ ├── flags: newline - │ ├── left: - │ │ @ CallNode (location: (11,0)-(11,7)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (11,4)-(11,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (11,4)-(11,7) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :! - │ │ ├── message_loc: (11,0)-(11,3) = "not" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── right: - │ │ @ CallNode (location: (12,4)-(13,5)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (13,2)-(13,5)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (13,2)-(13,5) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :! - │ │ ├── message_loc: (12,4)-(12,7) = "not" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (11,8)-(11,11) = "and" - ├── @ AndNode (location: (16,0)-(20,5)) - │ ├── flags: newline - │ ├── left: - │ │ @ CallNode (location: (16,0)-(16,7)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (16,4)-(16,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (16,4)-(16,7) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :! - │ │ ├── message_loc: (16,0)-(16,3) = "not" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── right: - │ │ @ CallNode (location: (17,2)-(20,5)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (20,2)-(20,5)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (20,2)-(20,5) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :! - │ │ ├── message_loc: (17,2)-(17,5) = "not" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (16,8)-(16,11) = "and" - ├── @ CallNode (location: (22,0)-(25,1)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (22,4)-(22,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (22,4)-(22,7) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :! - │ ├── message_loc: (22,0)-(22,3) = "not" - │ ├── opening_loc: (22,3)-(22,4) = "(" - │ ├── arguments: ∅ - │ ├── closing_loc: (25,0)-(25,1) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (27,0)-(33,3)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (30,0)-(30,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (30,0)-(30,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :! - │ ├── message_loc: (27,0)-(27,3) = "not" - │ ├── opening_loc: (27,3)-(27,4) = "(" - │ ├── arguments: ∅ - │ ├── closing_loc: (33,2)-(33,3) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (35,0)-(35,14)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ FlipFlopNode (location: (35,4)-(35,14)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ CallNode (location: (35,4)-(35,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (35,4)-(35,7) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── right: - │ │ │ @ CallNode (location: (35,11)-(35,14)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (35,11)-(35,14) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (35,8)-(35,10) = ".." - │ ├── call_operator_loc: ∅ - │ ├── name: :! - │ ├── message_loc: (35,0)-(35,3) = "not" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (37,0)-(37,16)) - ├── flags: newline - ├── receiver: - │ @ ParenthesesNode (location: (37,4)-(37,16)) - │ ├── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (37,5)-(37,15)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ FlipFlopNode (location: (37,5)-(37,15)) - │ │ ├── flags: newline - │ │ ├── left: - │ │ │ @ CallNode (location: (37,5)-(37,8)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (37,5)-(37,8) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── right: - │ │ │ @ CallNode (location: (37,12)-(37,15)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (37,12)-(37,15) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (37,9)-(37,11) = ".." - │ ├── opening_loc: (37,4)-(37,5) = "(" - │ └── closing_loc: (37,15)-(37,16) = ")" - ├── call_operator_loc: ∅ - ├── name: :! - ├── message_loc: (37,0)-(37,3) = "not" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/numbers.txt b/test/prism/snapshots/numbers.txt deleted file mode 100644 index 4512427ef3..0000000000 --- a/test/prism/snapshots/numbers.txt +++ /dev/null @@ -1,147 +0,0 @@ -@ ProgramNode (location: (1,0)-(67,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(67,5)) - ├── flags: ∅ - └── body: (length: 34) - ├── @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 0 - ├── @ IntegerNode (location: (3,0)-(3,1)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 1 - ├── @ FloatNode (location: (5,0)-(5,3)) - │ ├── flags: newline, static_literal - │ └── value: 1.0 - ├── @ IntegerNode (location: (7,0)-(7,1)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 2 - ├── @ IntegerNode (location: (9,0)-(9,3)) - │ ├── flags: newline, static_literal, binary - │ └── value: 0 - ├── @ IntegerNode (location: (11,0)-(11,3)) - │ ├── flags: newline, static_literal, binary - │ └── value: 1 - ├── @ IntegerNode (location: (13,0)-(13,4)) - │ ├── flags: newline, static_literal, binary - │ └── value: 2 - ├── @ IntegerNode (location: (15,0)-(15,3)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 0 - ├── @ IntegerNode (location: (17,0)-(17,3)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 1 - ├── @ IntegerNode (location: (19,0)-(19,3)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 2 - ├── @ IntegerNode (location: (21,0)-(21,2)) - │ ├── flags: newline, static_literal, octal - │ └── value: 0 - ├── @ IntegerNode (location: (23,0)-(23,2)) - │ ├── flags: newline, static_literal, octal - │ └── value: 1 - ├── @ IntegerNode (location: (25,0)-(25,2)) - │ ├── flags: newline, static_literal, octal - │ └── value: 2 - ├── @ IntegerNode (location: (27,0)-(27,3)) - │ ├── flags: newline, static_literal, octal - │ └── value: 0 - ├── @ IntegerNode (location: (29,0)-(29,3)) - │ ├── flags: newline, static_literal, octal - │ └── value: 1 - ├── @ IntegerNode (location: (31,0)-(31,3)) - │ ├── flags: newline, static_literal, octal - │ └── value: 2 - ├── @ IntegerNode (location: (33,0)-(33,3)) - │ ├── flags: newline, static_literal, hexadecimal - │ └── value: 0 - ├── @ IntegerNode (location: (35,0)-(35,3)) - │ ├── flags: newline, static_literal, hexadecimal - │ └── value: 1 - ├── @ IntegerNode (location: (37,0)-(37,3)) - │ ├── flags: newline, static_literal, hexadecimal - │ └── value: 2 - ├── @ ImaginaryNode (location: (39,0)-(39,2)) - │ ├── flags: newline, static_literal - │ └── numeric: - │ @ IntegerNode (location: (39,0)-(39,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ RationalNode (location: (41,0)-(41,2)) - │ ├── flags: newline, static_literal, decimal - │ ├── numerator: 1 - │ └── denominator: 1 - ├── @ IntegerNode (location: (43,0)-(43,2)) - │ ├── flags: newline, static_literal, decimal - │ └── value: -1 - ├── @ ImaginaryNode (location: (45,0)-(45,3)) - │ ├── flags: newline, static_literal - │ └── numeric: - │ @ RationalNode (location: (45,0)-(45,2)) - │ ├── flags: static_literal, decimal - │ ├── numerator: 1 - │ └── denominator: 1 - ├── @ RationalNode (location: (47,0)-(47,4)) - │ ├── flags: newline, static_literal, decimal - │ ├── numerator: 6 - │ └── denominator: 5 - ├── @ ImaginaryNode (location: (49,0)-(49,5)) - │ ├── flags: newline, static_literal - │ └── numeric: - │ @ RationalNode (location: (49,0)-(49,4)) - │ ├── flags: static_literal, decimal - │ ├── numerator: 6 - │ └── denominator: 5 - ├── @ ImaginaryNode (location: (51,0)-(51,4)) - │ ├── flags: newline, static_literal - │ └── numeric: - │ @ RationalNode (location: (51,0)-(51,3)) - │ ├── flags: static_literal, decimal - │ ├── numerator: -1 - │ └── denominator: 1 - ├── @ RationalNode (location: (53,0)-(53,5)) - │ ├── flags: newline, static_literal, decimal - │ ├── numerator: -6 - │ └── denominator: 5 - ├── @ ImaginaryNode (location: (55,0)-(55,6)) - │ ├── flags: newline, static_literal - │ └── numeric: - │ @ RationalNode (location: (55,0)-(55,5)) - │ ├── flags: static_literal, decimal - │ ├── numerator: -6 - │ └── denominator: 5 - ├── @ RationalNode (location: (57,0)-(57,4)) - │ ├── flags: newline, static_literal, octal - │ ├── numerator: 1 - │ └── denominator: 1 - ├── @ ImaginaryNode (location: (59,0)-(59,4)) - │ ├── flags: newline, static_literal - │ └── numeric: - │ @ IntegerNode (location: (59,0)-(59,3)) - │ ├── flags: static_literal, octal - │ └── value: 1 - ├── @ ImaginaryNode (location: (61,0)-(61,5)) - │ ├── flags: newline, static_literal - │ └── numeric: - │ @ RationalNode (location: (61,0)-(61,4)) - │ ├── flags: static_literal, octal - │ ├── numerator: 1 - │ └── denominator: 1 - ├── @ RationalNode (location: (63,0)-(63,4)) - │ ├── flags: newline, static_literal, decimal - │ ├── numerator: 1 - │ └── denominator: 1 - ├── @ ImaginaryNode (location: (65,0)-(65,4)) - │ ├── flags: newline, static_literal - │ └── numeric: - │ @ IntegerNode (location: (65,0)-(65,3)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - └── @ ImaginaryNode (location: (67,0)-(67,5)) - ├── flags: newline, static_literal - └── numeric: - @ RationalNode (location: (67,0)-(67,4)) - ├── flags: static_literal, binary - ├── numerator: 1 - └── denominator: 1 diff --git a/test/prism/snapshots/patterns.txt b/test/prism/snapshots/patterns.txt deleted file mode 100644 index 1857bcd21c..0000000000 --- a/test/prism/snapshots/patterns.txt +++ /dev/null @@ -1,5570 +0,0 @@ -@ ProgramNode (location: (1,0)-(220,31)) -├── flags: ∅ -├── locals: [:bar, :baz, :qux, :b, :a, :foo, :x, :_a] -└── statements: - @ StatementsNode (location: (1,0)-(220,31)) - ├── flags: ∅ - └── body: (length: 182) - ├── @ MatchRequiredNode (location: (1,0)-(1,10)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (1,0)-(1,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,0)-(1,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ LocalVariableTargetNode (location: (1,7)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── name: :bar - │ │ └── depth: 0 - │ └── operator_loc: (1,4)-(1,6) = "=>" - ├── @ MatchRequiredNode (location: (2,0)-(2,8)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (2,0)-(2,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (2,0)-(2,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ IntegerNode (location: (2,7)-(2,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (2,4)-(2,6) = "=>" - ├── @ MatchRequiredNode (location: (3,0)-(3,10)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (3,0)-(3,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (3,0)-(3,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ FloatNode (location: (3,7)-(3,10)) - │ │ ├── flags: static_literal - │ │ └── value: 1.0 - │ └── operator_loc: (3,4)-(3,6) = "=>" - ├── @ MatchRequiredNode (location: (4,0)-(4,9)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (4,0)-(4,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (4,0)-(4,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ImaginaryNode (location: (4,7)-(4,9)) - │ │ ├── flags: static_literal - │ │ └── numeric: - │ │ @ IntegerNode (location: (4,7)-(4,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (4,4)-(4,6) = "=>" - ├── @ MatchRequiredNode (location: (5,0)-(5,9)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (5,0)-(5,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (5,0)-(5,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RationalNode (location: (5,7)-(5,9)) - │ │ ├── flags: static_literal, decimal - │ │ ├── numerator: 1 - │ │ └── denominator: 1 - │ └── operator_loc: (5,4)-(5,6) = "=>" - ├── @ MatchRequiredNode (location: (6,0)-(6,11)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (6,0)-(6,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (6,0)-(6,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ SymbolNode (location: (6,7)-(6,11)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (6,7)-(6,8) = ":" - │ │ ├── value_loc: (6,8)-(6,11) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ └── operator_loc: (6,4)-(6,6) = "=>" - ├── @ MatchRequiredNode (location: (7,0)-(7,14)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (7,0)-(7,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (7,0)-(7,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ SymbolNode (location: (7,7)-(7,14)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (7,7)-(7,10) = "%s[" - │ │ ├── value_loc: (7,10)-(7,13) = "foo" - │ │ ├── closing_loc: (7,13)-(7,14) = "]" - │ │ └── unescaped: "foo" - │ └── operator_loc: (7,4)-(7,6) = "=>" - ├── @ MatchRequiredNode (location: (8,0)-(8,13)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (8,0)-(8,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (8,0)-(8,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ SymbolNode (location: (8,7)-(8,13)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (8,7)-(8,9) = ":\"" - │ │ ├── value_loc: (8,9)-(8,12) = "foo" - │ │ ├── closing_loc: (8,12)-(8,13) = "\"" - │ │ └── unescaped: "foo" - │ └── operator_loc: (8,4)-(8,6) = "=>" - ├── @ MatchRequiredNode (location: (9,0)-(9,12)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (9,0)-(9,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (9,0)-(9,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RegularExpressionNode (location: (9,7)-(9,12)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (9,7)-(9,8) = "/" - │ │ ├── content_loc: (9,8)-(9,11) = "foo" - │ │ ├── closing_loc: (9,11)-(9,12) = "/" - │ │ └── unescaped: "foo" - │ └── operator_loc: (9,4)-(9,6) = "=>" - ├── @ MatchRequiredNode (location: (10,0)-(10,12)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (10,0)-(10,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (10,0)-(10,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ XStringNode (location: (10,7)-(10,12)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (10,7)-(10,8) = "`" - │ │ ├── content_loc: (10,8)-(10,11) = "foo" - │ │ ├── closing_loc: (10,11)-(10,12) = "`" - │ │ └── unescaped: "foo" - │ └── operator_loc: (10,4)-(10,6) = "=>" - ├── @ MatchRequiredNode (location: (11,0)-(11,14)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (11,0)-(11,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (11,0)-(11,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ XStringNode (location: (11,7)-(11,14)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (11,7)-(11,10) = "%x[" - │ │ ├── content_loc: (11,10)-(11,13) = "foo" - │ │ ├── closing_loc: (11,13)-(11,14) = "]" - │ │ └── unescaped: "foo" - │ └── operator_loc: (11,4)-(11,6) = "=>" - ├── @ MatchRequiredNode (location: (12,0)-(12,14)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (12,0)-(12,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (12,0)-(12,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayNode (location: (12,7)-(12,14)) - │ │ ├── flags: static_literal - │ │ ├── elements: (length: 1) - │ │ │ └── @ SymbolNode (location: (12,10)-(12,13)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (12,10)-(12,13) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ ├── opening_loc: (12,7)-(12,10) = "%i[" - │ │ └── closing_loc: (12,13)-(12,14) = "]" - │ └── operator_loc: (12,4)-(12,6) = "=>" - ├── @ MatchRequiredNode (location: (13,0)-(13,14)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (13,0)-(13,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (13,0)-(13,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayNode (location: (13,7)-(13,14)) - │ │ ├── flags: static_literal - │ │ ├── elements: (length: 1) - │ │ │ └── @ SymbolNode (location: (13,10)-(13,13)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (13,10)-(13,13) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ ├── opening_loc: (13,7)-(13,10) = "%I[" - │ │ └── closing_loc: (13,13)-(13,14) = "]" - │ └── operator_loc: (13,4)-(13,6) = "=>" - ├── @ MatchRequiredNode (location: (14,0)-(14,14)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (14,0)-(14,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (14,0)-(14,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayNode (location: (14,7)-(14,14)) - │ │ ├── flags: ∅ - │ │ ├── elements: (length: 1) - │ │ │ └── @ StringNode (location: (14,10)-(14,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (14,10)-(14,13) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ ├── opening_loc: (14,7)-(14,10) = "%w[" - │ │ └── closing_loc: (14,13)-(14,14) = "]" - │ └── operator_loc: (14,4)-(14,6) = "=>" - ├── @ MatchRequiredNode (location: (15,0)-(15,14)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (15,0)-(15,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (15,0)-(15,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayNode (location: (15,7)-(15,14)) - │ │ ├── flags: ∅ - │ │ ├── elements: (length: 1) - │ │ │ └── @ StringNode (location: (15,10)-(15,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (15,10)-(15,13) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ ├── opening_loc: (15,7)-(15,10) = "%W[" - │ │ └── closing_loc: (15,13)-(15,14) = "]" - │ └── operator_loc: (15,4)-(15,6) = "=>" - ├── @ MatchRequiredNode (location: (16,0)-(16,14)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (16,0)-(16,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (16,0)-(16,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ StringNode (location: (16,7)-(16,14)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (16,7)-(16,10) = "%q[" - │ │ ├── content_loc: (16,10)-(16,13) = "foo" - │ │ ├── closing_loc: (16,13)-(16,14) = "]" - │ │ └── unescaped: "foo" - │ └── operator_loc: (16,4)-(16,6) = "=>" - ├── @ MatchRequiredNode (location: (17,0)-(17,14)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (17,0)-(17,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (17,0)-(17,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ StringNode (location: (17,7)-(17,14)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (17,7)-(17,10) = "%Q[" - │ │ ├── content_loc: (17,10)-(17,13) = "foo" - │ │ ├── closing_loc: (17,13)-(17,14) = "]" - │ │ └── unescaped: "foo" - │ └── operator_loc: (17,4)-(17,6) = "=>" - ├── @ MatchRequiredNode (location: (18,0)-(18,12)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (18,0)-(18,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (18,0)-(18,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ StringNode (location: (18,7)-(18,12)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (18,7)-(18,8) = "\"" - │ │ ├── content_loc: (18,8)-(18,11) = "foo" - │ │ ├── closing_loc: (18,11)-(18,12) = "\"" - │ │ └── unescaped: "foo" - │ └── operator_loc: (18,4)-(18,6) = "=>" - ├── @ MatchRequiredNode (location: (19,0)-(19,10)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (19,0)-(19,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (19,0)-(19,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ NilNode (location: (19,7)-(19,10)) - │ │ └── flags: static_literal - │ └── operator_loc: (19,4)-(19,6) = "=>" - ├── @ MatchRequiredNode (location: (20,0)-(20,11)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (20,0)-(20,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (20,0)-(20,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ SelfNode (location: (20,7)-(20,11)) - │ │ └── flags: ∅ - │ └── operator_loc: (20,4)-(20,6) = "=>" - ├── @ MatchRequiredNode (location: (21,0)-(21,11)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (21,0)-(21,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (21,0)-(21,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ TrueNode (location: (21,7)-(21,11)) - │ │ └── flags: static_literal - │ └── operator_loc: (21,4)-(21,6) = "=>" - ├── @ MatchRequiredNode (location: (22,0)-(22,12)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (22,0)-(22,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (22,0)-(22,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ FalseNode (location: (22,7)-(22,12)) - │ │ └── flags: static_literal - │ └── operator_loc: (22,4)-(22,6) = "=>" - ├── @ MatchRequiredNode (location: (23,0)-(23,15)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (23,0)-(23,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (23,0)-(23,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ SourceFileNode (location: (23,7)-(23,15)) - │ │ ├── flags: ∅ - │ │ └── filepath: "patterns.txt" - │ └── operator_loc: (23,4)-(23,6) = "=>" - ├── @ MatchRequiredNode (location: (24,0)-(24,15)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (24,0)-(24,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (24,0)-(24,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ SourceLineNode (location: (24,7)-(24,15)) - │ │ └── flags: static_literal - │ └── operator_loc: (24,4)-(24,6) = "=>" - ├── @ MatchRequiredNode (location: (25,0)-(25,19)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (25,0)-(25,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (25,0)-(25,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ SourceEncodingNode (location: (25,7)-(25,19)) - │ │ └── flags: static_literal - │ └── operator_loc: (25,4)-(25,6) = "=>" - ├── @ MatchRequiredNode (location: (26,0)-(26,17)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (26,0)-(26,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (26,0)-(26,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ LambdaNode (location: (26,7)-(26,17)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── operator_loc: (26,7)-(26,9) = "->" - │ │ ├── opening_loc: (26,10)-(26,11) = "{" - │ │ ├── closing_loc: (26,16)-(26,17) = "}" - │ │ ├── parameters: ∅ - │ │ └── body: - │ │ @ StatementsNode (location: (26,12)-(26,15)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (26,12)-(26,15)) - │ │ ├── flags: newline - │ │ ├── name: :bar - │ │ └── depth: 1 - │ └── operator_loc: (26,4)-(26,6) = "=>" - ├── @ MatchRequiredNode (location: (28,0)-(28,13)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (28,0)-(28,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (28,0)-(28,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (28,7)-(28,13)) - │ │ ├── flags: static_literal - │ │ ├── left: - │ │ │ @ IntegerNode (location: (28,7)-(28,8)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: - │ │ │ @ IntegerNode (location: (28,12)-(28,13)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── operator_loc: (28,9)-(28,11) = ".." - │ └── operator_loc: (28,4)-(28,6) = "=>" - ├── @ MatchRequiredNode (location: (29,0)-(29,17)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (29,0)-(29,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (29,0)-(29,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (29,7)-(29,17)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ FloatNode (location: (29,7)-(29,10)) - │ │ │ ├── flags: static_literal - │ │ │ └── value: 1.0 - │ │ ├── right: - │ │ │ @ FloatNode (location: (29,14)-(29,17)) - │ │ │ ├── flags: static_literal - │ │ │ └── value: 1.0 - │ │ └── operator_loc: (29,11)-(29,13) = ".." - │ └── operator_loc: (29,4)-(29,6) = "=>" - ├── @ MatchRequiredNode (location: (30,0)-(30,15)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (30,0)-(30,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (30,0)-(30,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (30,7)-(30,15)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ ImaginaryNode (location: (30,7)-(30,9)) - │ │ │ ├── flags: static_literal - │ │ │ └── numeric: - │ │ │ @ IntegerNode (location: (30,7)-(30,8)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: - │ │ │ @ ImaginaryNode (location: (30,13)-(30,15)) - │ │ │ ├── flags: static_literal - │ │ │ └── numeric: - │ │ │ @ IntegerNode (location: (30,13)-(30,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── operator_loc: (30,10)-(30,12) = ".." - │ └── operator_loc: (30,4)-(30,6) = "=>" - ├── @ MatchRequiredNode (location: (31,0)-(31,15)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (31,0)-(31,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (31,0)-(31,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (31,7)-(31,15)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ RationalNode (location: (31,7)-(31,9)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ ├── numerator: 1 - │ │ │ └── denominator: 1 - │ │ ├── right: - │ │ │ @ RationalNode (location: (31,13)-(31,15)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ ├── numerator: 1 - │ │ │ └── denominator: 1 - │ │ └── operator_loc: (31,10)-(31,12) = ".." - │ └── operator_loc: (31,4)-(31,6) = "=>" - ├── @ MatchRequiredNode (location: (32,0)-(32,19)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (32,0)-(32,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (32,0)-(32,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (32,7)-(32,19)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ SymbolNode (location: (32,7)-(32,11)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (32,7)-(32,8) = ":" - │ │ │ ├── value_loc: (32,8)-(32,11) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ ├── right: - │ │ │ @ SymbolNode (location: (32,15)-(32,19)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (32,15)-(32,16) = ":" - │ │ │ ├── value_loc: (32,16)-(32,19) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ └── operator_loc: (32,12)-(32,14) = ".." - │ └── operator_loc: (32,4)-(32,6) = "=>" - ├── @ MatchRequiredNode (location: (33,0)-(33,25)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (33,0)-(33,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (33,0)-(33,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (33,7)-(33,25)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ SymbolNode (location: (33,7)-(33,14)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (33,7)-(33,10) = "%s[" - │ │ │ ├── value_loc: (33,10)-(33,13) = "foo" - │ │ │ ├── closing_loc: (33,13)-(33,14) = "]" - │ │ │ └── unescaped: "foo" - │ │ ├── right: - │ │ │ @ SymbolNode (location: (33,18)-(33,25)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (33,18)-(33,21) = "%s[" - │ │ │ ├── value_loc: (33,21)-(33,24) = "foo" - │ │ │ ├── closing_loc: (33,24)-(33,25) = "]" - │ │ │ └── unescaped: "foo" - │ │ └── operator_loc: (33,15)-(33,17) = ".." - │ └── operator_loc: (33,4)-(33,6) = "=>" - ├── @ MatchRequiredNode (location: (34,0)-(34,23)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (34,0)-(34,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (34,0)-(34,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (34,7)-(34,23)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ SymbolNode (location: (34,7)-(34,13)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (34,7)-(34,9) = ":\"" - │ │ │ ├── value_loc: (34,9)-(34,12) = "foo" - │ │ │ ├── closing_loc: (34,12)-(34,13) = "\"" - │ │ │ └── unescaped: "foo" - │ │ ├── right: - │ │ │ @ SymbolNode (location: (34,17)-(34,23)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (34,17)-(34,19) = ":\"" - │ │ │ ├── value_loc: (34,19)-(34,22) = "foo" - │ │ │ ├── closing_loc: (34,22)-(34,23) = "\"" - │ │ │ └── unescaped: "foo" - │ │ └── operator_loc: (34,14)-(34,16) = ".." - │ └── operator_loc: (34,4)-(34,6) = "=>" - ├── @ MatchRequiredNode (location: (35,0)-(35,21)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (35,0)-(35,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (35,0)-(35,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (35,7)-(35,21)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ RegularExpressionNode (location: (35,7)-(35,12)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (35,7)-(35,8) = "/" - │ │ │ ├── content_loc: (35,8)-(35,11) = "foo" - │ │ │ ├── closing_loc: (35,11)-(35,12) = "/" - │ │ │ └── unescaped: "foo" - │ │ ├── right: - │ │ │ @ RegularExpressionNode (location: (35,16)-(35,21)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (35,16)-(35,17) = "/" - │ │ │ ├── content_loc: (35,17)-(35,20) = "foo" - │ │ │ ├── closing_loc: (35,20)-(35,21) = "/" - │ │ │ └── unescaped: "foo" - │ │ └── operator_loc: (35,13)-(35,15) = ".." - │ └── operator_loc: (35,4)-(35,6) = "=>" - ├── @ MatchRequiredNode (location: (36,0)-(36,21)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (36,0)-(36,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (36,0)-(36,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (36,7)-(36,21)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ XStringNode (location: (36,7)-(36,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (36,7)-(36,8) = "`" - │ │ │ ├── content_loc: (36,8)-(36,11) = "foo" - │ │ │ ├── closing_loc: (36,11)-(36,12) = "`" - │ │ │ └── unescaped: "foo" - │ │ ├── right: - │ │ │ @ XStringNode (location: (36,16)-(36,21)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (36,16)-(36,17) = "`" - │ │ │ ├── content_loc: (36,17)-(36,20) = "foo" - │ │ │ ├── closing_loc: (36,20)-(36,21) = "`" - │ │ │ └── unescaped: "foo" - │ │ └── operator_loc: (36,13)-(36,15) = ".." - │ └── operator_loc: (36,4)-(36,6) = "=>" - ├── @ MatchRequiredNode (location: (37,0)-(37,25)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (37,0)-(37,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (37,0)-(37,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (37,7)-(37,25)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ XStringNode (location: (37,7)-(37,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (37,7)-(37,10) = "%x[" - │ │ │ ├── content_loc: (37,10)-(37,13) = "foo" - │ │ │ ├── closing_loc: (37,13)-(37,14) = "]" - │ │ │ └── unescaped: "foo" - │ │ ├── right: - │ │ │ @ XStringNode (location: (37,18)-(37,25)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (37,18)-(37,21) = "%x[" - │ │ │ ├── content_loc: (37,21)-(37,24) = "foo" - │ │ │ ├── closing_loc: (37,24)-(37,25) = "]" - │ │ │ └── unescaped: "foo" - │ │ └── operator_loc: (37,15)-(37,17) = ".." - │ └── operator_loc: (37,4)-(37,6) = "=>" - ├── @ MatchRequiredNode (location: (38,0)-(38,25)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (38,0)-(38,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (38,0)-(38,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (38,7)-(38,25)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ ArrayNode (location: (38,7)-(38,14)) - │ │ │ ├── flags: static_literal - │ │ │ ├── elements: (length: 1) - │ │ │ │ └── @ SymbolNode (location: (38,10)-(38,13)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (38,10)-(38,13) = "foo" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── opening_loc: (38,7)-(38,10) = "%i[" - │ │ │ └── closing_loc: (38,13)-(38,14) = "]" - │ │ ├── right: - │ │ │ @ ArrayNode (location: (38,18)-(38,25)) - │ │ │ ├── flags: static_literal - │ │ │ ├── elements: (length: 1) - │ │ │ │ └── @ SymbolNode (location: (38,21)-(38,24)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (38,21)-(38,24) = "foo" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── opening_loc: (38,18)-(38,21) = "%i[" - │ │ │ └── closing_loc: (38,24)-(38,25) = "]" - │ │ └── operator_loc: (38,15)-(38,17) = ".." - │ └── operator_loc: (38,4)-(38,6) = "=>" - ├── @ MatchRequiredNode (location: (39,0)-(39,25)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (39,0)-(39,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (39,0)-(39,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (39,7)-(39,25)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ ArrayNode (location: (39,7)-(39,14)) - │ │ │ ├── flags: static_literal - │ │ │ ├── elements: (length: 1) - │ │ │ │ └── @ SymbolNode (location: (39,10)-(39,13)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (39,10)-(39,13) = "foo" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── opening_loc: (39,7)-(39,10) = "%I[" - │ │ │ └── closing_loc: (39,13)-(39,14) = "]" - │ │ ├── right: - │ │ │ @ ArrayNode (location: (39,18)-(39,25)) - │ │ │ ├── flags: static_literal - │ │ │ ├── elements: (length: 1) - │ │ │ │ └── @ SymbolNode (location: (39,21)-(39,24)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (39,21)-(39,24) = "foo" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── opening_loc: (39,18)-(39,21) = "%I[" - │ │ │ └── closing_loc: (39,24)-(39,25) = "]" - │ │ └── operator_loc: (39,15)-(39,17) = ".." - │ └── operator_loc: (39,4)-(39,6) = "=>" - ├── @ MatchRequiredNode (location: (40,0)-(40,25)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (40,0)-(40,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (40,0)-(40,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (40,7)-(40,25)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ ArrayNode (location: (40,7)-(40,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── elements: (length: 1) - │ │ │ │ └── @ StringNode (location: (40,10)-(40,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (40,10)-(40,13) = "foo" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── opening_loc: (40,7)-(40,10) = "%w[" - │ │ │ └── closing_loc: (40,13)-(40,14) = "]" - │ │ ├── right: - │ │ │ @ ArrayNode (location: (40,18)-(40,25)) - │ │ │ ├── flags: ∅ - │ │ │ ├── elements: (length: 1) - │ │ │ │ └── @ StringNode (location: (40,21)-(40,24)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (40,21)-(40,24) = "foo" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── opening_loc: (40,18)-(40,21) = "%w[" - │ │ │ └── closing_loc: (40,24)-(40,25) = "]" - │ │ └── operator_loc: (40,15)-(40,17) = ".." - │ └── operator_loc: (40,4)-(40,6) = "=>" - ├── @ MatchRequiredNode (location: (41,0)-(41,25)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (41,0)-(41,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (41,0)-(41,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (41,7)-(41,25)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ ArrayNode (location: (41,7)-(41,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── elements: (length: 1) - │ │ │ │ └── @ StringNode (location: (41,10)-(41,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (41,10)-(41,13) = "foo" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── opening_loc: (41,7)-(41,10) = "%W[" - │ │ │ └── closing_loc: (41,13)-(41,14) = "]" - │ │ ├── right: - │ │ │ @ ArrayNode (location: (41,18)-(41,25)) - │ │ │ ├── flags: ∅ - │ │ │ ├── elements: (length: 1) - │ │ │ │ └── @ StringNode (location: (41,21)-(41,24)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (41,21)-(41,24) = "foo" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── opening_loc: (41,18)-(41,21) = "%W[" - │ │ │ └── closing_loc: (41,24)-(41,25) = "]" - │ │ └── operator_loc: (41,15)-(41,17) = ".." - │ └── operator_loc: (41,4)-(41,6) = "=>" - ├── @ MatchRequiredNode (location: (42,0)-(42,25)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (42,0)-(42,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (42,0)-(42,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (42,7)-(42,25)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ StringNode (location: (42,7)-(42,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (42,7)-(42,10) = "%q[" - │ │ │ ├── content_loc: (42,10)-(42,13) = "foo" - │ │ │ ├── closing_loc: (42,13)-(42,14) = "]" - │ │ │ └── unescaped: "foo" - │ │ ├── right: - │ │ │ @ StringNode (location: (42,18)-(42,25)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (42,18)-(42,21) = "%q[" - │ │ │ ├── content_loc: (42,21)-(42,24) = "foo" - │ │ │ ├── closing_loc: (42,24)-(42,25) = "]" - │ │ │ └── unescaped: "foo" - │ │ └── operator_loc: (42,15)-(42,17) = ".." - │ └── operator_loc: (42,4)-(42,6) = "=>" - ├── @ MatchRequiredNode (location: (43,0)-(43,25)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (43,0)-(43,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (43,0)-(43,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (43,7)-(43,25)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ StringNode (location: (43,7)-(43,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (43,7)-(43,10) = "%Q[" - │ │ │ ├── content_loc: (43,10)-(43,13) = "foo" - │ │ │ ├── closing_loc: (43,13)-(43,14) = "]" - │ │ │ └── unescaped: "foo" - │ │ ├── right: - │ │ │ @ StringNode (location: (43,18)-(43,25)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (43,18)-(43,21) = "%Q[" - │ │ │ ├── content_loc: (43,21)-(43,24) = "foo" - │ │ │ ├── closing_loc: (43,24)-(43,25) = "]" - │ │ │ └── unescaped: "foo" - │ │ └── operator_loc: (43,15)-(43,17) = ".." - │ └── operator_loc: (43,4)-(43,6) = "=>" - ├── @ MatchRequiredNode (location: (44,0)-(44,21)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (44,0)-(44,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (44,0)-(44,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (44,7)-(44,21)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ StringNode (location: (44,7)-(44,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (44,7)-(44,8) = "\"" - │ │ │ ├── content_loc: (44,8)-(44,11) = "foo" - │ │ │ ├── closing_loc: (44,11)-(44,12) = "\"" - │ │ │ └── unescaped: "foo" - │ │ ├── right: - │ │ │ @ StringNode (location: (44,16)-(44,21)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (44,16)-(44,17) = "\"" - │ │ │ ├── content_loc: (44,17)-(44,20) = "foo" - │ │ │ ├── closing_loc: (44,20)-(44,21) = "\"" - │ │ │ └── unescaped: "foo" - │ │ └── operator_loc: (44,13)-(44,15) = ".." - │ └── operator_loc: (44,4)-(44,6) = "=>" - ├── @ MatchRequiredNode (location: (45,0)-(45,17)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (45,0)-(45,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (45,0)-(45,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (45,7)-(45,17)) - │ │ ├── flags: static_literal - │ │ ├── left: - │ │ │ @ NilNode (location: (45,7)-(45,10)) - │ │ │ └── flags: static_literal - │ │ ├── right: - │ │ │ @ NilNode (location: (45,14)-(45,17)) - │ │ │ └── flags: static_literal - │ │ └── operator_loc: (45,11)-(45,13) = ".." - │ └── operator_loc: (45,4)-(45,6) = "=>" - ├── @ MatchRequiredNode (location: (46,0)-(46,19)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (46,0)-(46,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (46,0)-(46,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (46,7)-(46,19)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ SelfNode (location: (46,7)-(46,11)) - │ │ │ └── flags: ∅ - │ │ ├── right: - │ │ │ @ SelfNode (location: (46,15)-(46,19)) - │ │ │ └── flags: ∅ - │ │ └── operator_loc: (46,12)-(46,14) = ".." - │ └── operator_loc: (46,4)-(46,6) = "=>" - ├── @ MatchRequiredNode (location: (47,0)-(47,19)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (47,0)-(47,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (47,0)-(47,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (47,7)-(47,19)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ TrueNode (location: (47,7)-(47,11)) - │ │ │ └── flags: static_literal - │ │ ├── right: - │ │ │ @ TrueNode (location: (47,15)-(47,19)) - │ │ │ └── flags: static_literal - │ │ └── operator_loc: (47,12)-(47,14) = ".." - │ └── operator_loc: (47,4)-(47,6) = "=>" - ├── @ MatchRequiredNode (location: (48,0)-(48,21)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (48,0)-(48,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (48,0)-(48,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (48,7)-(48,21)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ FalseNode (location: (48,7)-(48,12)) - │ │ │ └── flags: static_literal - │ │ ├── right: - │ │ │ @ FalseNode (location: (48,16)-(48,21)) - │ │ │ └── flags: static_literal - │ │ └── operator_loc: (48,13)-(48,15) = ".." - │ └── operator_loc: (48,4)-(48,6) = "=>" - ├── @ MatchRequiredNode (location: (49,0)-(49,27)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (49,0)-(49,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (49,0)-(49,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (49,7)-(49,27)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ SourceFileNode (location: (49,7)-(49,15)) - │ │ │ ├── flags: ∅ - │ │ │ └── filepath: "patterns.txt" - │ │ ├── right: - │ │ │ @ SourceFileNode (location: (49,19)-(49,27)) - │ │ │ ├── flags: ∅ - │ │ │ └── filepath: "patterns.txt" - │ │ └── operator_loc: (49,16)-(49,18) = ".." - │ └── operator_loc: (49,4)-(49,6) = "=>" - ├── @ MatchRequiredNode (location: (50,0)-(50,27)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (50,0)-(50,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (50,0)-(50,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (50,7)-(50,27)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ SourceLineNode (location: (50,7)-(50,15)) - │ │ │ └── flags: static_literal - │ │ ├── right: - │ │ │ @ SourceLineNode (location: (50,19)-(50,27)) - │ │ │ └── flags: static_literal - │ │ └── operator_loc: (50,16)-(50,18) = ".." - │ └── operator_loc: (50,4)-(50,6) = "=>" - ├── @ MatchRequiredNode (location: (51,0)-(51,35)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (51,0)-(51,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (51,0)-(51,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (51,7)-(51,35)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ SourceEncodingNode (location: (51,7)-(51,19)) - │ │ │ └── flags: static_literal - │ │ ├── right: - │ │ │ @ SourceEncodingNode (location: (51,23)-(51,35)) - │ │ │ └── flags: static_literal - │ │ └── operator_loc: (51,20)-(51,22) = ".." - │ └── operator_loc: (51,4)-(51,6) = "=>" - ├── @ MatchRequiredNode (location: (52,0)-(52,31)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (52,0)-(52,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (52,0)-(52,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (52,7)-(52,31)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ LambdaNode (location: (52,7)-(52,17)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── operator_loc: (52,7)-(52,9) = "->" - │ │ │ ├── opening_loc: (52,10)-(52,11) = "{" - │ │ │ ├── closing_loc: (52,16)-(52,17) = "}" - │ │ │ ├── parameters: ∅ - │ │ │ └── body: - │ │ │ @ StatementsNode (location: (52,12)-(52,15)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ LocalVariableReadNode (location: (52,12)-(52,15)) - │ │ │ ├── flags: newline - │ │ │ ├── name: :bar - │ │ │ └── depth: 1 - │ │ ├── right: - │ │ │ @ LambdaNode (location: (52,21)-(52,31)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── operator_loc: (52,21)-(52,23) = "->" - │ │ │ ├── opening_loc: (52,24)-(52,25) = "{" - │ │ │ ├── closing_loc: (52,30)-(52,31) = "}" - │ │ │ ├── parameters: ∅ - │ │ │ └── body: - │ │ │ @ StatementsNode (location: (52,26)-(52,29)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ LocalVariableReadNode (location: (52,26)-(52,29)) - │ │ │ ├── flags: newline - │ │ │ ├── name: :bar - │ │ │ └── depth: 1 - │ │ └── operator_loc: (52,18)-(52,20) = ".." - │ └── operator_loc: (52,4)-(52,6) = "=>" - ├── @ LocalVariableWriteNode (location: (54,0)-(54,7)) - │ ├── flags: newline - │ ├── name: :bar - │ ├── depth: 0 - │ ├── name_loc: (54,0)-(54,3) = "bar" - │ ├── value: - │ │ @ IntegerNode (location: (54,6)-(54,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (54,4)-(54,5) = "=" - ├── @ MatchRequiredNode (location: (54,9)-(54,20)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (54,9)-(54,12)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (54,9)-(54,12) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ PinnedVariableNode (location: (54,16)-(54,20)) - │ │ ├── flags: ∅ - │ │ ├── variable: - │ │ │ @ LocalVariableReadNode (location: (54,17)-(54,20)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ └── operator_loc: (54,16)-(54,17) = "^" - │ └── operator_loc: (54,13)-(54,15) = "=>" - ├── @ MatchRequiredNode (location: (55,0)-(55,12)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (55,0)-(55,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (55,0)-(55,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ PinnedVariableNode (location: (55,7)-(55,12)) - │ │ ├── flags: ∅ - │ │ ├── variable: - │ │ │ @ InstanceVariableReadNode (location: (55,8)-(55,12)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :@bar - │ │ └── operator_loc: (55,7)-(55,8) = "^" - │ └── operator_loc: (55,4)-(55,6) = "=>" - ├── @ MatchRequiredNode (location: (56,0)-(56,13)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (56,0)-(56,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (56,0)-(56,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ PinnedVariableNode (location: (56,7)-(56,13)) - │ │ ├── flags: ∅ - │ │ ├── variable: - │ │ │ @ ClassVariableReadNode (location: (56,8)-(56,13)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :@@bar - │ │ └── operator_loc: (56,7)-(56,8) = "^" - │ └── operator_loc: (56,4)-(56,6) = "=>" - ├── @ MatchRequiredNode (location: (57,0)-(57,12)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (57,0)-(57,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (57,0)-(57,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ PinnedVariableNode (location: (57,7)-(57,12)) - │ │ ├── flags: ∅ - │ │ ├── variable: - │ │ │ @ GlobalVariableReadNode (location: (57,8)-(57,12)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :$bar - │ │ └── operator_loc: (57,7)-(57,8) = "^" - │ └── operator_loc: (57,4)-(57,6) = "=>" - ├── @ MatchRequiredNode (location: (59,0)-(59,11)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (59,0)-(59,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (59,0)-(59,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ PinnedExpressionNode (location: (59,7)-(59,11)) - │ │ ├── flags: ∅ - │ │ ├── expression: - │ │ │ @ IntegerNode (location: (59,9)-(59,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── operator_loc: (59,7)-(59,8) = "^" - │ │ ├── lparen_loc: (59,8)-(59,9) = "(" - │ │ └── rparen_loc: (59,10)-(59,11) = ")" - │ └── operator_loc: (59,4)-(59,6) = "=>" - ├── @ MatchRequiredNode (location: (60,0)-(60,13)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (60,0)-(60,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (60,0)-(60,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ PinnedExpressionNode (location: (60,7)-(60,13)) - │ │ ├── flags: ∅ - │ │ ├── expression: - │ │ │ @ NilNode (location: (60,9)-(60,12)) - │ │ │ └── flags: static_literal - │ │ ├── operator_loc: (60,7)-(60,8) = "^" - │ │ ├── lparen_loc: (60,8)-(60,9) = "(" - │ │ └── rparen_loc: (60,12)-(60,13) = ")" - │ └── operator_loc: (60,4)-(60,6) = "=>" - ├── @ MatchRequiredNode (location: (61,0)-(61,23)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (61,0)-(61,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (61,0)-(61,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ PinnedExpressionNode (location: (61,7)-(61,23)) - │ │ ├── flags: ∅ - │ │ ├── expression: - │ │ │ @ CallNode (location: (61,9)-(61,22)) - │ │ │ ├── flags: ∅ - │ │ │ ├── receiver: - │ │ │ │ @ StringNode (location: (61,9)-(61,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (61,9)-(61,10) = "\"" - │ │ │ │ ├── content_loc: (61,10)-(61,13) = "bar" - │ │ │ │ ├── closing_loc: (61,13)-(61,14) = "\"" - │ │ │ │ └── unescaped: "bar" - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :+ - │ │ │ ├── message_loc: (61,15)-(61,16) = "+" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (61,17)-(61,22)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ StringNode (location: (61,17)-(61,22)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (61,17)-(61,18) = "\"" - │ │ │ │ ├── content_loc: (61,18)-(61,21) = "baz" - │ │ │ │ ├── closing_loc: (61,21)-(61,22) = "\"" - │ │ │ │ └── unescaped: "baz" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── operator_loc: (61,7)-(61,8) = "^" - │ │ ├── lparen_loc: (61,8)-(61,9) = "(" - │ │ └── rparen_loc: (61,22)-(61,23) = ")" - │ └── operator_loc: (61,4)-(61,6) = "=>" - ├── @ MatchRequiredNode (location: (63,0)-(63,10)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (63,0)-(63,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (63,0)-(63,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ConstantReadNode (location: (63,7)-(63,10)) - │ │ ├── flags: ∅ - │ │ └── name: :Foo - │ └── operator_loc: (63,4)-(63,6) = "=>" - ├── @ MatchRequiredNode (location: (64,0)-(64,20)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (64,0)-(64,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (64,0)-(64,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ConstantPathNode (location: (64,7)-(64,20)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ ConstantPathNode (location: (64,7)-(64,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parent: - │ │ │ │ @ ConstantReadNode (location: (64,7)-(64,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :Foo - │ │ │ ├── name: :Bar - │ │ │ ├── delimiter_loc: (64,10)-(64,12) = "::" - │ │ │ └── name_loc: (64,12)-(64,15) = "Bar" - │ │ ├── name: :Baz - │ │ ├── delimiter_loc: (64,15)-(64,17) = "::" - │ │ └── name_loc: (64,17)-(64,20) = "Baz" - │ └── operator_loc: (64,4)-(64,6) = "=>" - ├── @ MatchRequiredNode (location: (65,0)-(65,12)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (65,0)-(65,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (65,0)-(65,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ConstantPathNode (location: (65,7)-(65,12)) - │ │ ├── flags: ∅ - │ │ ├── parent: ∅ - │ │ ├── name: :Foo - │ │ ├── delimiter_loc: (65,7)-(65,9) = "::" - │ │ └── name_loc: (65,9)-(65,12) = "Foo" - │ └── operator_loc: (65,4)-(65,6) = "=>" - ├── @ MatchRequiredNode (location: (66,0)-(66,22)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (66,0)-(66,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (66,0)-(66,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ConstantPathNode (location: (66,7)-(66,22)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ ConstantPathNode (location: (66,7)-(66,17)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parent: - │ │ │ │ @ ConstantPathNode (location: (66,7)-(66,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── parent: ∅ - │ │ │ │ ├── name: :Foo - │ │ │ │ ├── delimiter_loc: (66,7)-(66,9) = "::" - │ │ │ │ └── name_loc: (66,9)-(66,12) = "Foo" - │ │ │ ├── name: :Bar - │ │ │ ├── delimiter_loc: (66,12)-(66,14) = "::" - │ │ │ └── name_loc: (66,14)-(66,17) = "Bar" - │ │ ├── name: :Baz - │ │ ├── delimiter_loc: (66,17)-(66,19) = "::" - │ │ └── name_loc: (66,19)-(66,22) = "Baz" - │ └── operator_loc: (66,4)-(66,6) = "=>" - ├── @ MatchRequiredNode (location: (68,0)-(68,12)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (68,0)-(68,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (68,0)-(68,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (68,7)-(68,12)) - │ │ ├── flags: ∅ - │ │ ├── constant: - │ │ │ @ ConstantReadNode (location: (68,7)-(68,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Foo - │ │ ├── requireds: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (68,10)-(68,11) = "(" - │ │ └── closing_loc: (68,11)-(68,12) = ")" - │ └── operator_loc: (68,4)-(68,6) = "=>" - ├── @ MatchRequiredNode (location: (69,0)-(69,13)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (69,0)-(69,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (69,0)-(69,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (69,7)-(69,13)) - │ │ ├── flags: ∅ - │ │ ├── constant: - │ │ │ @ ConstantReadNode (location: (69,7)-(69,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Foo - │ │ ├── requireds: (length: 1) - │ │ │ └── @ IntegerNode (location: (69,11)-(69,12)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (69,10)-(69,11) = "(" - │ │ └── closing_loc: (69,12)-(69,13) = ")" - │ └── operator_loc: (69,4)-(69,6) = "=>" - ├── @ MatchRequiredNode (location: (70,0)-(70,19)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (70,0)-(70,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (70,0)-(70,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (70,7)-(70,19)) - │ │ ├── flags: ∅ - │ │ ├── constant: - │ │ │ @ ConstantReadNode (location: (70,7)-(70,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Foo - │ │ ├── requireds: (length: 3) - │ │ │ ├── @ IntegerNode (location: (70,11)-(70,12)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── @ IntegerNode (location: (70,14)-(70,15)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ └── @ IntegerNode (location: (70,17)-(70,18)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 3 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (70,10)-(70,11) = "(" - │ │ └── closing_loc: (70,18)-(70,19) = ")" - │ └── operator_loc: (70,4)-(70,6) = "=>" - ├── @ MatchRequiredNode (location: (71,0)-(71,15)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (71,0)-(71,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (71,0)-(71,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (71,7)-(71,15)) - │ │ ├── flags: ∅ - │ │ ├── constant: - │ │ │ @ ConstantReadNode (location: (71,7)-(71,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Foo - │ │ ├── requireds: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (71,11)-(71,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (71,10)-(71,11) = "(" - │ │ └── closing_loc: (71,14)-(71,15) = ")" - │ └── operator_loc: (71,4)-(71,6) = "=>" - ├── @ MatchRequiredNode (location: (72,0)-(72,21)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (72,0)-(72,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (72,0)-(72,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (72,7)-(72,21)) - │ │ ├── flags: ∅ - │ │ ├── constant: - │ │ │ @ ConstantReadNode (location: (72,7)-(72,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Foo - │ │ ├── requireds: (length: 0) - │ │ ├── rest: - │ │ │ @ SplatNode (location: (72,11)-(72,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (72,11)-(72,12) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (72,12)-(72,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── posts: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (72,17)-(72,20)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :baz - │ │ │ └── depth: 0 - │ │ ├── opening_loc: (72,10)-(72,11) = "(" - │ │ └── closing_loc: (72,20)-(72,21) = ")" - │ └── operator_loc: (72,4)-(72,6) = "=>" - ├── @ MatchRequiredNode (location: (73,0)-(73,21)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (73,0)-(73,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (73,0)-(73,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (73,7)-(73,21)) - │ │ ├── flags: ∅ - │ │ ├── constant: - │ │ │ @ ConstantReadNode (location: (73,7)-(73,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Foo - │ │ ├── requireds: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (73,11)-(73,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── rest: - │ │ │ @ SplatNode (location: (73,16)-(73,20)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (73,16)-(73,17) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (73,17)-(73,20)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :baz - │ │ │ └── depth: 0 - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (73,10)-(73,11) = "(" - │ │ └── closing_loc: (73,20)-(73,21) = ")" - │ └── operator_loc: (73,4)-(73,6) = "=>" - ├── @ MatchRequiredNode (location: (74,0)-(74,27)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (74,0)-(74,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (74,0)-(74,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ FindPatternNode (location: (74,7)-(74,27)) - │ │ ├── flags: ∅ - │ │ ├── constant: - │ │ │ @ ConstantReadNode (location: (74,7)-(74,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Foo - │ │ ├── left: - │ │ │ @ SplatNode (location: (74,11)-(74,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (74,11)-(74,12) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (74,12)-(74,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── requireds: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (74,17)-(74,20)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :baz - │ │ │ └── depth: 0 - │ │ ├── right: - │ │ │ @ SplatNode (location: (74,22)-(74,26)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (74,22)-(74,23) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (74,23)-(74,26)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :qux - │ │ │ └── depth: 0 - │ │ ├── opening_loc: (74,10)-(74,11) = "(" - │ │ └── closing_loc: (74,26)-(74,27) = ")" - │ └── operator_loc: (74,4)-(74,6) = "=>" - ├── @ MatchRequiredNode (location: (76,0)-(76,12)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (76,0)-(76,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (76,0)-(76,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (76,7)-(76,12)) - │ │ ├── flags: ∅ - │ │ ├── constant: - │ │ │ @ ConstantReadNode (location: (76,7)-(76,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Foo - │ │ ├── requireds: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (76,10)-(76,11) = "[" - │ │ └── closing_loc: (76,11)-(76,12) = "]" - │ └── operator_loc: (76,4)-(76,6) = "=>" - ├── @ MatchRequiredNode (location: (77,0)-(77,13)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (77,0)-(77,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (77,0)-(77,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (77,7)-(77,13)) - │ │ ├── flags: ∅ - │ │ ├── constant: - │ │ │ @ ConstantReadNode (location: (77,7)-(77,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Foo - │ │ ├── requireds: (length: 1) - │ │ │ └── @ IntegerNode (location: (77,11)-(77,12)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (77,10)-(77,11) = "[" - │ │ └── closing_loc: (77,12)-(77,13) = "]" - │ └── operator_loc: (77,4)-(77,6) = "=>" - ├── @ MatchRequiredNode (location: (78,0)-(78,19)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (78,0)-(78,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (78,0)-(78,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (78,7)-(78,19)) - │ │ ├── flags: ∅ - │ │ ├── constant: - │ │ │ @ ConstantReadNode (location: (78,7)-(78,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Foo - │ │ ├── requireds: (length: 3) - │ │ │ ├── @ IntegerNode (location: (78,11)-(78,12)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── @ IntegerNode (location: (78,14)-(78,15)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ └── @ IntegerNode (location: (78,17)-(78,18)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 3 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (78,10)-(78,11) = "[" - │ │ └── closing_loc: (78,18)-(78,19) = "]" - │ └── operator_loc: (78,4)-(78,6) = "=>" - ├── @ MatchRequiredNode (location: (79,0)-(79,17)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (79,0)-(79,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (79,0)-(79,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (79,7)-(79,17)) - │ │ ├── flags: ∅ - │ │ ├── constant: - │ │ │ @ ConstantReadNode (location: (79,7)-(79,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Foo - │ │ ├── requireds: (length: 1) - │ │ │ └── @ ArrayPatternNode (location: (79,11)-(79,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── constant: - │ │ │ │ @ ConstantReadNode (location: (79,11)-(79,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :Foo - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── opening_loc: (79,14)-(79,15) = "[" - │ │ │ └── closing_loc: (79,15)-(79,16) = "]" - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (79,10)-(79,11) = "[" - │ │ └── closing_loc: (79,16)-(79,17) = "]" - │ └── operator_loc: (79,4)-(79,6) = "=>" - ├── @ MatchRequiredNode (location: (80,0)-(80,15)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (80,0)-(80,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (80,0)-(80,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (80,7)-(80,15)) - │ │ ├── flags: ∅ - │ │ ├── constant: - │ │ │ @ ConstantReadNode (location: (80,7)-(80,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Foo - │ │ ├── requireds: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (80,11)-(80,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (80,10)-(80,11) = "[" - │ │ └── closing_loc: (80,14)-(80,15) = "]" - │ └── operator_loc: (80,4)-(80,6) = "=>" - ├── @ MatchRequiredNode (location: (81,0)-(81,21)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (81,0)-(81,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (81,0)-(81,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (81,7)-(81,21)) - │ │ ├── flags: ∅ - │ │ ├── constant: - │ │ │ @ ConstantReadNode (location: (81,7)-(81,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Foo - │ │ ├── requireds: (length: 0) - │ │ ├── rest: - │ │ │ @ SplatNode (location: (81,11)-(81,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (81,11)-(81,12) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (81,12)-(81,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── posts: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (81,17)-(81,20)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :baz - │ │ │ └── depth: 0 - │ │ ├── opening_loc: (81,10)-(81,11) = "[" - │ │ └── closing_loc: (81,20)-(81,21) = "]" - │ └── operator_loc: (81,4)-(81,6) = "=>" - ├── @ MatchRequiredNode (location: (82,0)-(82,21)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (82,0)-(82,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (82,0)-(82,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (82,7)-(82,21)) - │ │ ├── flags: ∅ - │ │ ├── constant: - │ │ │ @ ConstantReadNode (location: (82,7)-(82,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Foo - │ │ ├── requireds: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (82,11)-(82,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── rest: - │ │ │ @ SplatNode (location: (82,16)-(82,20)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (82,16)-(82,17) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (82,17)-(82,20)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :baz - │ │ │ └── depth: 0 - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (82,10)-(82,11) = "[" - │ │ └── closing_loc: (82,20)-(82,21) = "]" - │ └── operator_loc: (82,4)-(82,6) = "=>" - ├── @ MatchRequiredNode (location: (83,0)-(83,27)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (83,0)-(83,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (83,0)-(83,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ FindPatternNode (location: (83,7)-(83,27)) - │ │ ├── flags: ∅ - │ │ ├── constant: - │ │ │ @ ConstantReadNode (location: (83,7)-(83,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Foo - │ │ ├── left: - │ │ │ @ SplatNode (location: (83,11)-(83,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (83,11)-(83,12) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (83,12)-(83,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── requireds: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (83,17)-(83,20)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :baz - │ │ │ └── depth: 0 - │ │ ├── right: - │ │ │ @ SplatNode (location: (83,22)-(83,26)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (83,22)-(83,23) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (83,23)-(83,26)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :qux - │ │ │ └── depth: 0 - │ │ ├── opening_loc: (83,10)-(83,11) = "[" - │ │ └── closing_loc: (83,26)-(83,27) = "]" - │ └── operator_loc: (83,4)-(83,6) = "=>" - ├── @ MatchRequiredNode (location: (85,0)-(85,11)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (85,0)-(85,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (85,0)-(85,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (85,7)-(85,11)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── rest: - │ │ │ @ SplatNode (location: (85,7)-(85,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (85,7)-(85,8) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (85,8)-(85,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (85,4)-(85,6) = "=>" - ├── @ MatchRequiredNode (location: (86,0)-(86,21)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (86,0)-(86,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (86,0)-(86,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (86,7)-(86,21)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── rest: - │ │ │ @ SplatNode (location: (86,7)-(86,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (86,7)-(86,8) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (86,8)-(86,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── posts: (length: 2) - │ │ │ ├── @ LocalVariableTargetNode (location: (86,13)-(86,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ └── @ LocalVariableTargetNode (location: (86,18)-(86,21)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :qux - │ │ │ └── depth: 0 - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (86,4)-(86,6) = "=>" - ├── @ MatchRequiredNode (location: (87,0)-(87,21)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (87,0)-(87,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (87,0)-(87,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (87,7)-(87,21)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (87,7)-(87,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── rest: - │ │ │ @ SplatNode (location: (87,12)-(87,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (87,12)-(87,13) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (87,13)-(87,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :baz - │ │ │ └── depth: 0 - │ │ ├── posts: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (87,18)-(87,21)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :qux - │ │ │ └── depth: 0 - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (87,4)-(87,6) = "=>" - ├── @ MatchRequiredNode (location: (88,0)-(88,21)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (88,0)-(88,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (88,0)-(88,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (88,7)-(88,21)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ LocalVariableTargetNode (location: (88,7)-(88,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ └── depth: 0 - │ │ │ └── @ LocalVariableTargetNode (location: (88,12)-(88,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :baz - │ │ │ └── depth: 0 - │ │ ├── rest: - │ │ │ @ SplatNode (location: (88,17)-(88,21)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (88,17)-(88,18) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (88,18)-(88,21)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :qux - │ │ │ └── depth: 0 - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (88,4)-(88,6) = "=>" - ├── @ MatchRequiredNode (location: (89,0)-(89,22)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (89,0)-(89,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (89,0)-(89,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ FindPatternNode (location: (89,7)-(89,22)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── left: - │ │ │ @ SplatNode (location: (89,7)-(89,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (89,7)-(89,8) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (89,8)-(89,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── requireds: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (89,13)-(89,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :baz - │ │ │ └── depth: 0 - │ │ ├── right: - │ │ │ @ SplatNode (location: (89,18)-(89,22)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (89,18)-(89,19) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (89,19)-(89,22)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :qux - │ │ │ └── depth: 0 - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (89,4)-(89,6) = "=>" - ├── @ MatchRequiredNode (location: (91,0)-(91,11)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (91,0)-(91,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (91,0)-(91,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (91,7)-(91,11)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (91,7)-(91,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── rest: - │ │ │ @ ImplicitRestNode (location: (91,10)-(91,11)) - │ │ │ └── flags: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (91,4)-(91,6) = "=>" - ├── @ MatchRequiredNode (location: (95,0)-(95,9)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (95,0)-(95,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (95,0)-(95,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (95,7)-(95,9)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (95,7)-(95,8) = "[" - │ │ └── closing_loc: (95,8)-(95,9) = "]" - │ └── operator_loc: (95,4)-(95,6) = "=>" - ├── @ MatchRequiredNode (location: (96,0)-(96,17)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (96,0)-(96,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (96,0)-(96,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (96,7)-(96,17)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ ArrayPatternNode (location: (96,8)-(96,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── constant: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ ArrayPatternNode (location: (96,9)-(96,15)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── constant: ∅ - │ │ │ │ ├── requireds: (length: 1) - │ │ │ │ │ └── @ ArrayPatternNode (location: (96,10)-(96,14)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── constant: ∅ - │ │ │ │ │ ├── requireds: (length: 1) - │ │ │ │ │ │ └── @ ArrayPatternNode (location: (96,11)-(96,13)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ ├── constant: ∅ - │ │ │ │ │ │ ├── requireds: (length: 0) - │ │ │ │ │ │ ├── rest: ∅ - │ │ │ │ │ │ ├── posts: (length: 0) - │ │ │ │ │ │ ├── opening_loc: (96,11)-(96,12) = "[" - │ │ │ │ │ │ └── closing_loc: (96,12)-(96,13) = "]" - │ │ │ │ │ ├── rest: ∅ - │ │ │ │ │ ├── posts: (length: 0) - │ │ │ │ │ ├── opening_loc: (96,10)-(96,11) = "[" - │ │ │ │ │ └── closing_loc: (96,13)-(96,14) = "]" - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── posts: (length: 0) - │ │ │ │ ├── opening_loc: (96,9)-(96,10) = "[" - │ │ │ │ └── closing_loc: (96,14)-(96,15) = "]" - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── opening_loc: (96,8)-(96,9) = "[" - │ │ │ └── closing_loc: (96,15)-(96,16) = "]" - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (96,7)-(96,8) = "[" - │ │ └── closing_loc: (96,16)-(96,17) = "]" - │ └── operator_loc: (96,4)-(96,6) = "=>" - ├── @ MatchRequiredNode (location: (98,0)-(98,13)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (98,0)-(98,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (98,0)-(98,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (98,7)-(98,13)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── rest: - │ │ │ @ SplatNode (location: (98,8)-(98,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (98,8)-(98,9) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (98,9)-(98,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (98,7)-(98,8) = "[" - │ │ └── closing_loc: (98,12)-(98,13) = "]" - │ └── operator_loc: (98,4)-(98,6) = "=>" - ├── @ MatchRequiredNode (location: (99,0)-(99,23)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (99,0)-(99,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (99,0)-(99,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (99,7)-(99,23)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── rest: - │ │ │ @ SplatNode (location: (99,8)-(99,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (99,8)-(99,9) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (99,9)-(99,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── posts: (length: 2) - │ │ │ ├── @ LocalVariableTargetNode (location: (99,14)-(99,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ └── @ LocalVariableTargetNode (location: (99,19)-(99,22)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :qux - │ │ │ └── depth: 0 - │ │ ├── opening_loc: (99,7)-(99,8) = "[" - │ │ └── closing_loc: (99,22)-(99,23) = "]" - │ └── operator_loc: (99,4)-(99,6) = "=>" - ├── @ MatchRequiredNode (location: (100,0)-(100,23)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (100,0)-(100,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (100,0)-(100,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (100,7)-(100,23)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (100,8)-(100,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── rest: - │ │ │ @ SplatNode (location: (100,13)-(100,17)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (100,13)-(100,14) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (100,14)-(100,17)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :baz - │ │ │ └── depth: 0 - │ │ ├── posts: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (100,19)-(100,22)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :qux - │ │ │ └── depth: 0 - │ │ ├── opening_loc: (100,7)-(100,8) = "[" - │ │ └── closing_loc: (100,22)-(100,23) = "]" - │ └── operator_loc: (100,4)-(100,6) = "=>" - ├── @ MatchRequiredNode (location: (101,0)-(101,23)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (101,0)-(101,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (101,0)-(101,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (101,7)-(101,23)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ LocalVariableTargetNode (location: (101,8)-(101,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ └── depth: 0 - │ │ │ └── @ LocalVariableTargetNode (location: (101,13)-(101,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :baz - │ │ │ └── depth: 0 - │ │ ├── rest: - │ │ │ @ SplatNode (location: (101,18)-(101,22)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (101,18)-(101,19) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (101,19)-(101,22)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :qux - │ │ │ └── depth: 0 - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (101,7)-(101,8) = "[" - │ │ └── closing_loc: (101,22)-(101,23) = "]" - │ └── operator_loc: (101,4)-(101,6) = "=>" - ├── @ MatchRequiredNode (location: (102,0)-(102,24)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (102,0)-(102,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (102,0)-(102,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ FindPatternNode (location: (102,7)-(102,24)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── left: - │ │ │ @ SplatNode (location: (102,8)-(102,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (102,8)-(102,9) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (102,9)-(102,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── requireds: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (102,14)-(102,17)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :baz - │ │ │ └── depth: 0 - │ │ ├── right: - │ │ │ @ SplatNode (location: (102,19)-(102,23)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (102,19)-(102,20) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (102,20)-(102,23)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :qux - │ │ │ └── depth: 0 - │ │ ├── opening_loc: (102,7)-(102,8) = "[" - │ │ └── closing_loc: (102,23)-(102,24) = "]" - │ └── operator_loc: (102,4)-(102,6) = "=>" - ├── @ MatchPredicateNode (location: (104,0)-(104,10)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (104,0)-(104,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (104,0)-(104,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ LocalVariableTargetNode (location: (104,7)-(104,10)) - │ │ ├── flags: ∅ - │ │ ├── name: :bar - │ │ └── depth: 0 - │ └── operator_loc: (104,4)-(104,6) = "in" - ├── @ MatchPredicateNode (location: (105,0)-(105,8)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (105,0)-(105,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (105,0)-(105,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ IntegerNode (location: (105,7)-(105,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (105,4)-(105,6) = "in" - ├── @ MatchPredicateNode (location: (106,0)-(106,10)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (106,0)-(106,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (106,0)-(106,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ FloatNode (location: (106,7)-(106,10)) - │ │ ├── flags: static_literal - │ │ └── value: 1.0 - │ └── operator_loc: (106,4)-(106,6) = "in" - ├── @ MatchPredicateNode (location: (107,0)-(107,9)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (107,0)-(107,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (107,0)-(107,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ImaginaryNode (location: (107,7)-(107,9)) - │ │ ├── flags: static_literal - │ │ └── numeric: - │ │ @ IntegerNode (location: (107,7)-(107,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (107,4)-(107,6) = "in" - ├── @ MatchPredicateNode (location: (108,0)-(108,9)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (108,0)-(108,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (108,0)-(108,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RationalNode (location: (108,7)-(108,9)) - │ │ ├── flags: static_literal, decimal - │ │ ├── numerator: 1 - │ │ └── denominator: 1 - │ └── operator_loc: (108,4)-(108,6) = "in" - ├── @ MatchPredicateNode (location: (109,0)-(109,11)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (109,0)-(109,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (109,0)-(109,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ SymbolNode (location: (109,7)-(109,11)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (109,7)-(109,8) = ":" - │ │ ├── value_loc: (109,8)-(109,11) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ └── operator_loc: (109,4)-(109,6) = "in" - ├── @ MatchPredicateNode (location: (110,0)-(110,14)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (110,0)-(110,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (110,0)-(110,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ SymbolNode (location: (110,7)-(110,14)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (110,7)-(110,10) = "%s[" - │ │ ├── value_loc: (110,10)-(110,13) = "foo" - │ │ ├── closing_loc: (110,13)-(110,14) = "]" - │ │ └── unescaped: "foo" - │ └── operator_loc: (110,4)-(110,6) = "in" - ├── @ MatchPredicateNode (location: (111,0)-(111,13)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (111,0)-(111,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (111,0)-(111,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ SymbolNode (location: (111,7)-(111,13)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (111,7)-(111,9) = ":\"" - │ │ ├── value_loc: (111,9)-(111,12) = "foo" - │ │ ├── closing_loc: (111,12)-(111,13) = "\"" - │ │ └── unescaped: "foo" - │ └── operator_loc: (111,4)-(111,6) = "in" - ├── @ MatchPredicateNode (location: (112,0)-(112,12)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (112,0)-(112,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (112,0)-(112,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ RegularExpressionNode (location: (112,7)-(112,12)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (112,7)-(112,8) = "/" - │ │ ├── content_loc: (112,8)-(112,11) = "foo" - │ │ ├── closing_loc: (112,11)-(112,12) = "/" - │ │ └── unescaped: "foo" - │ └── operator_loc: (112,4)-(112,6) = "in" - ├── @ MatchPredicateNode (location: (113,0)-(113,12)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (113,0)-(113,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (113,0)-(113,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ XStringNode (location: (113,7)-(113,12)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (113,7)-(113,8) = "`" - │ │ ├── content_loc: (113,8)-(113,11) = "foo" - │ │ ├── closing_loc: (113,11)-(113,12) = "`" - │ │ └── unescaped: "foo" - │ └── operator_loc: (113,4)-(113,6) = "in" - ├── @ MatchPredicateNode (location: (114,0)-(114,14)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (114,0)-(114,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (114,0)-(114,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ XStringNode (location: (114,7)-(114,14)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (114,7)-(114,10) = "%x[" - │ │ ├── content_loc: (114,10)-(114,13) = "foo" - │ │ ├── closing_loc: (114,13)-(114,14) = "]" - │ │ └── unescaped: "foo" - │ └── operator_loc: (114,4)-(114,6) = "in" - ├── @ MatchPredicateNode (location: (115,0)-(115,14)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (115,0)-(115,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (115,0)-(115,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayNode (location: (115,7)-(115,14)) - │ │ ├── flags: static_literal - │ │ ├── elements: (length: 1) - │ │ │ └── @ SymbolNode (location: (115,10)-(115,13)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (115,10)-(115,13) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ ├── opening_loc: (115,7)-(115,10) = "%i[" - │ │ └── closing_loc: (115,13)-(115,14) = "]" - │ └── operator_loc: (115,4)-(115,6) = "in" - ├── @ MatchPredicateNode (location: (116,0)-(116,14)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (116,0)-(116,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (116,0)-(116,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayNode (location: (116,7)-(116,14)) - │ │ ├── flags: static_literal - │ │ ├── elements: (length: 1) - │ │ │ └── @ SymbolNode (location: (116,10)-(116,13)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (116,10)-(116,13) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ ├── opening_loc: (116,7)-(116,10) = "%I[" - │ │ └── closing_loc: (116,13)-(116,14) = "]" - │ └── operator_loc: (116,4)-(116,6) = "in" - ├── @ MatchPredicateNode (location: (117,0)-(117,14)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (117,0)-(117,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (117,0)-(117,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayNode (location: (117,7)-(117,14)) - │ │ ├── flags: ∅ - │ │ ├── elements: (length: 1) - │ │ │ └── @ StringNode (location: (117,10)-(117,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (117,10)-(117,13) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ ├── opening_loc: (117,7)-(117,10) = "%w[" - │ │ └── closing_loc: (117,13)-(117,14) = "]" - │ └── operator_loc: (117,4)-(117,6) = "in" - ├── @ MatchPredicateNode (location: (118,0)-(118,14)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (118,0)-(118,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (118,0)-(118,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayNode (location: (118,7)-(118,14)) - │ │ ├── flags: ∅ - │ │ ├── elements: (length: 1) - │ │ │ └── @ StringNode (location: (118,10)-(118,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (118,10)-(118,13) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ ├── opening_loc: (118,7)-(118,10) = "%W[" - │ │ └── closing_loc: (118,13)-(118,14) = "]" - │ └── operator_loc: (118,4)-(118,6) = "in" - ├── @ MatchPredicateNode (location: (119,0)-(119,14)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (119,0)-(119,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (119,0)-(119,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ StringNode (location: (119,7)-(119,14)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (119,7)-(119,10) = "%q[" - │ │ ├── content_loc: (119,10)-(119,13) = "foo" - │ │ ├── closing_loc: (119,13)-(119,14) = "]" - │ │ └── unescaped: "foo" - │ └── operator_loc: (119,4)-(119,6) = "in" - ├── @ MatchPredicateNode (location: (120,0)-(120,14)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (120,0)-(120,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (120,0)-(120,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ StringNode (location: (120,7)-(120,14)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (120,7)-(120,10) = "%Q[" - │ │ ├── content_loc: (120,10)-(120,13) = "foo" - │ │ ├── closing_loc: (120,13)-(120,14) = "]" - │ │ └── unescaped: "foo" - │ └── operator_loc: (120,4)-(120,6) = "in" - ├── @ MatchPredicateNode (location: (121,0)-(121,12)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (121,0)-(121,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (121,0)-(121,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ StringNode (location: (121,7)-(121,12)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (121,7)-(121,8) = "\"" - │ │ ├── content_loc: (121,8)-(121,11) = "foo" - │ │ ├── closing_loc: (121,11)-(121,12) = "\"" - │ │ └── unescaped: "foo" - │ └── operator_loc: (121,4)-(121,6) = "in" - ├── @ MatchPredicateNode (location: (122,0)-(122,10)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (122,0)-(122,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (122,0)-(122,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ NilNode (location: (122,7)-(122,10)) - │ │ └── flags: static_literal - │ └── operator_loc: (122,4)-(122,6) = "in" - ├── @ MatchPredicateNode (location: (123,0)-(123,11)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (123,0)-(123,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (123,0)-(123,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ SelfNode (location: (123,7)-(123,11)) - │ │ └── flags: ∅ - │ └── operator_loc: (123,4)-(123,6) = "in" - ├── @ MatchPredicateNode (location: (124,0)-(124,11)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (124,0)-(124,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (124,0)-(124,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ TrueNode (location: (124,7)-(124,11)) - │ │ └── flags: static_literal - │ └── operator_loc: (124,4)-(124,6) = "in" - ├── @ MatchPredicateNode (location: (125,0)-(125,12)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (125,0)-(125,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (125,0)-(125,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ FalseNode (location: (125,7)-(125,12)) - │ │ └── flags: static_literal - │ └── operator_loc: (125,4)-(125,6) = "in" - ├── @ MatchPredicateNode (location: (126,0)-(126,15)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (126,0)-(126,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (126,0)-(126,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ SourceFileNode (location: (126,7)-(126,15)) - │ │ ├── flags: ∅ - │ │ └── filepath: "patterns.txt" - │ └── operator_loc: (126,4)-(126,6) = "in" - ├── @ MatchPredicateNode (location: (127,0)-(127,15)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (127,0)-(127,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (127,0)-(127,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ SourceLineNode (location: (127,7)-(127,15)) - │ │ └── flags: static_literal - │ └── operator_loc: (127,4)-(127,6) = "in" - ├── @ MatchPredicateNode (location: (128,0)-(128,19)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (128,0)-(128,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (128,0)-(128,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ SourceEncodingNode (location: (128,7)-(128,19)) - │ │ └── flags: static_literal - │ └── operator_loc: (128,4)-(128,6) = "in" - ├── @ MatchPredicateNode (location: (129,0)-(129,17)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (129,0)-(129,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (129,0)-(129,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ LambdaNode (location: (129,7)-(129,17)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── operator_loc: (129,7)-(129,9) = "->" - │ │ ├── opening_loc: (129,10)-(129,11) = "{" - │ │ ├── closing_loc: (129,16)-(129,17) = "}" - │ │ ├── parameters: ∅ - │ │ └── body: - │ │ @ StatementsNode (location: (129,12)-(129,15)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (129,12)-(129,15)) - │ │ ├── flags: newline - │ │ ├── name: :bar - │ │ └── depth: 1 - │ └── operator_loc: (129,4)-(129,6) = "in" - ├── @ MatchPredicateNode (location: (131,0)-(131,11)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (131,0)-(131,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (131,0)-(131,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (131,7)-(131,11)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (131,7)-(131,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── rest: - │ │ │ @ ImplicitRestNode (location: (131,10)-(131,11)) - │ │ │ └── flags: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (131,4)-(131,6) = "in" - ├── @ CaseMatchNode (location: (135,0)-(135,25)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (135,5)-(135,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (135,5)-(135,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (135,10)-(135,21)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ LocalVariableTargetNode (location: (135,13)-(135,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── statements: ∅ - │ │ ├── in_loc: (135,10)-(135,12) = "in" - │ │ └── then_loc: (135,17)-(135,21) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (135,0)-(135,4) = "case" - │ └── end_keyword_loc: (135,22)-(135,25) = "end" - ├── @ CaseMatchNode (location: (136,0)-(136,23)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (136,5)-(136,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (136,5)-(136,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (136,10)-(136,19)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IntegerNode (location: (136,13)-(136,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── statements: ∅ - │ │ ├── in_loc: (136,10)-(136,12) = "in" - │ │ └── then_loc: (136,15)-(136,19) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (136,0)-(136,4) = "case" - │ └── end_keyword_loc: (136,20)-(136,23) = "end" - ├── @ CaseMatchNode (location: (137,0)-(137,25)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (137,5)-(137,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (137,5)-(137,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (137,10)-(137,21)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ FloatNode (location: (137,13)-(137,16)) - │ │ │ ├── flags: static_literal - │ │ │ └── value: 1.0 - │ │ ├── statements: ∅ - │ │ ├── in_loc: (137,10)-(137,12) = "in" - │ │ └── then_loc: (137,17)-(137,21) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (137,0)-(137,4) = "case" - │ └── end_keyword_loc: (137,22)-(137,25) = "end" - ├── @ CaseMatchNode (location: (138,0)-(138,24)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (138,5)-(138,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (138,5)-(138,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (138,10)-(138,20)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ImaginaryNode (location: (138,13)-(138,15)) - │ │ │ ├── flags: static_literal - │ │ │ └── numeric: - │ │ │ @ IntegerNode (location: (138,13)-(138,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── statements: ∅ - │ │ ├── in_loc: (138,10)-(138,12) = "in" - │ │ └── then_loc: (138,16)-(138,20) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (138,0)-(138,4) = "case" - │ └── end_keyword_loc: (138,21)-(138,24) = "end" - ├── @ CaseMatchNode (location: (139,0)-(139,24)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (139,5)-(139,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (139,5)-(139,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (139,10)-(139,20)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ RationalNode (location: (139,13)-(139,15)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ ├── numerator: 1 - │ │ │ └── denominator: 1 - │ │ ├── statements: ∅ - │ │ ├── in_loc: (139,10)-(139,12) = "in" - │ │ └── then_loc: (139,16)-(139,20) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (139,0)-(139,4) = "case" - │ └── end_keyword_loc: (139,21)-(139,24) = "end" - ├── @ CaseMatchNode (location: (140,0)-(140,26)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (140,5)-(140,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (140,5)-(140,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (140,10)-(140,22)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ SymbolNode (location: (140,13)-(140,17)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (140,13)-(140,14) = ":" - │ │ │ ├── value_loc: (140,14)-(140,17) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (140,10)-(140,12) = "in" - │ │ └── then_loc: (140,18)-(140,22) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (140,0)-(140,4) = "case" - │ └── end_keyword_loc: (140,23)-(140,26) = "end" - ├── @ CaseMatchNode (location: (141,0)-(141,29)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (141,5)-(141,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (141,5)-(141,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (141,10)-(141,25)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ SymbolNode (location: (141,13)-(141,20)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (141,13)-(141,16) = "%s[" - │ │ │ ├── value_loc: (141,16)-(141,19) = "foo" - │ │ │ ├── closing_loc: (141,19)-(141,20) = "]" - │ │ │ └── unescaped: "foo" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (141,10)-(141,12) = "in" - │ │ └── then_loc: (141,21)-(141,25) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (141,0)-(141,4) = "case" - │ └── end_keyword_loc: (141,26)-(141,29) = "end" - ├── @ CaseMatchNode (location: (142,0)-(142,28)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (142,5)-(142,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (142,5)-(142,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (142,10)-(142,24)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ SymbolNode (location: (142,13)-(142,19)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (142,13)-(142,15) = ":\"" - │ │ │ ├── value_loc: (142,15)-(142,18) = "foo" - │ │ │ ├── closing_loc: (142,18)-(142,19) = "\"" - │ │ │ └── unescaped: "foo" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (142,10)-(142,12) = "in" - │ │ └── then_loc: (142,20)-(142,24) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (142,0)-(142,4) = "case" - │ └── end_keyword_loc: (142,25)-(142,28) = "end" - ├── @ CaseMatchNode (location: (143,0)-(143,27)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (143,5)-(143,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (143,5)-(143,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (143,10)-(143,23)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ RegularExpressionNode (location: (143,13)-(143,18)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (143,13)-(143,14) = "/" - │ │ │ ├── content_loc: (143,14)-(143,17) = "foo" - │ │ │ ├── closing_loc: (143,17)-(143,18) = "/" - │ │ │ └── unescaped: "foo" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (143,10)-(143,12) = "in" - │ │ └── then_loc: (143,19)-(143,23) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (143,0)-(143,4) = "case" - │ └── end_keyword_loc: (143,24)-(143,27) = "end" - ├── @ CaseMatchNode (location: (144,0)-(144,27)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (144,5)-(144,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (144,5)-(144,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (144,10)-(144,23)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ XStringNode (location: (144,13)-(144,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (144,13)-(144,14) = "`" - │ │ │ ├── content_loc: (144,14)-(144,17) = "foo" - │ │ │ ├── closing_loc: (144,17)-(144,18) = "`" - │ │ │ └── unescaped: "foo" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (144,10)-(144,12) = "in" - │ │ └── then_loc: (144,19)-(144,23) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (144,0)-(144,4) = "case" - │ └── end_keyword_loc: (144,24)-(144,27) = "end" - ├── @ CaseMatchNode (location: (145,0)-(145,29)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (145,5)-(145,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (145,5)-(145,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (145,10)-(145,25)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ XStringNode (location: (145,13)-(145,20)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (145,13)-(145,16) = "%x[" - │ │ │ ├── content_loc: (145,16)-(145,19) = "foo" - │ │ │ ├── closing_loc: (145,19)-(145,20) = "]" - │ │ │ └── unescaped: "foo" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (145,10)-(145,12) = "in" - │ │ └── then_loc: (145,21)-(145,25) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (145,0)-(145,4) = "case" - │ └── end_keyword_loc: (145,26)-(145,29) = "end" - ├── @ CaseMatchNode (location: (146,0)-(146,29)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (146,5)-(146,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (146,5)-(146,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (146,10)-(146,25)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ArrayNode (location: (146,13)-(146,20)) - │ │ │ ├── flags: static_literal - │ │ │ ├── elements: (length: 1) - │ │ │ │ └── @ SymbolNode (location: (146,16)-(146,19)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (146,16)-(146,19) = "foo" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── opening_loc: (146,13)-(146,16) = "%i[" - │ │ │ └── closing_loc: (146,19)-(146,20) = "]" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (146,10)-(146,12) = "in" - │ │ └── then_loc: (146,21)-(146,25) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (146,0)-(146,4) = "case" - │ └── end_keyword_loc: (146,26)-(146,29) = "end" - ├── @ CaseMatchNode (location: (147,0)-(147,29)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (147,5)-(147,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (147,5)-(147,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (147,10)-(147,25)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ArrayNode (location: (147,13)-(147,20)) - │ │ │ ├── flags: static_literal - │ │ │ ├── elements: (length: 1) - │ │ │ │ └── @ SymbolNode (location: (147,16)-(147,19)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (147,16)-(147,19) = "foo" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── opening_loc: (147,13)-(147,16) = "%I[" - │ │ │ └── closing_loc: (147,19)-(147,20) = "]" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (147,10)-(147,12) = "in" - │ │ └── then_loc: (147,21)-(147,25) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (147,0)-(147,4) = "case" - │ └── end_keyword_loc: (147,26)-(147,29) = "end" - ├── @ CaseMatchNode (location: (148,0)-(148,29)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (148,5)-(148,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (148,5)-(148,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (148,10)-(148,25)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ArrayNode (location: (148,13)-(148,20)) - │ │ │ ├── flags: ∅ - │ │ │ ├── elements: (length: 1) - │ │ │ │ └── @ StringNode (location: (148,16)-(148,19)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (148,16)-(148,19) = "foo" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── opening_loc: (148,13)-(148,16) = "%w[" - │ │ │ └── closing_loc: (148,19)-(148,20) = "]" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (148,10)-(148,12) = "in" - │ │ └── then_loc: (148,21)-(148,25) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (148,0)-(148,4) = "case" - │ └── end_keyword_loc: (148,26)-(148,29) = "end" - ├── @ CaseMatchNode (location: (149,0)-(149,29)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (149,5)-(149,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (149,5)-(149,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (149,10)-(149,25)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ArrayNode (location: (149,13)-(149,20)) - │ │ │ ├── flags: ∅ - │ │ │ ├── elements: (length: 1) - │ │ │ │ └── @ StringNode (location: (149,16)-(149,19)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (149,16)-(149,19) = "foo" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── opening_loc: (149,13)-(149,16) = "%W[" - │ │ │ └── closing_loc: (149,19)-(149,20) = "]" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (149,10)-(149,12) = "in" - │ │ └── then_loc: (149,21)-(149,25) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (149,0)-(149,4) = "case" - │ └── end_keyword_loc: (149,26)-(149,29) = "end" - ├── @ CaseMatchNode (location: (150,0)-(150,29)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (150,5)-(150,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (150,5)-(150,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (150,10)-(150,25)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ StringNode (location: (150,13)-(150,20)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (150,13)-(150,16) = "%q[" - │ │ │ ├── content_loc: (150,16)-(150,19) = "foo" - │ │ │ ├── closing_loc: (150,19)-(150,20) = "]" - │ │ │ └── unescaped: "foo" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (150,10)-(150,12) = "in" - │ │ └── then_loc: (150,21)-(150,25) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (150,0)-(150,4) = "case" - │ └── end_keyword_loc: (150,26)-(150,29) = "end" - ├── @ CaseMatchNode (location: (151,0)-(151,29)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (151,5)-(151,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (151,5)-(151,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (151,10)-(151,25)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ StringNode (location: (151,13)-(151,20)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (151,13)-(151,16) = "%Q[" - │ │ │ ├── content_loc: (151,16)-(151,19) = "foo" - │ │ │ ├── closing_loc: (151,19)-(151,20) = "]" - │ │ │ └── unescaped: "foo" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (151,10)-(151,12) = "in" - │ │ └── then_loc: (151,21)-(151,25) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (151,0)-(151,4) = "case" - │ └── end_keyword_loc: (151,26)-(151,29) = "end" - ├── @ CaseMatchNode (location: (152,0)-(152,27)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (152,5)-(152,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (152,5)-(152,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (152,10)-(152,23)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ StringNode (location: (152,13)-(152,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (152,13)-(152,14) = "\"" - │ │ │ ├── content_loc: (152,14)-(152,17) = "foo" - │ │ │ ├── closing_loc: (152,17)-(152,18) = "\"" - │ │ │ └── unescaped: "foo" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (152,10)-(152,12) = "in" - │ │ └── then_loc: (152,19)-(152,23) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (152,0)-(152,4) = "case" - │ └── end_keyword_loc: (152,24)-(152,27) = "end" - ├── @ CaseMatchNode (location: (153,0)-(153,25)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (153,5)-(153,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (153,5)-(153,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (153,10)-(153,21)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ NilNode (location: (153,13)-(153,16)) - │ │ │ └── flags: static_literal - │ │ ├── statements: ∅ - │ │ ├── in_loc: (153,10)-(153,12) = "in" - │ │ └── then_loc: (153,17)-(153,21) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (153,0)-(153,4) = "case" - │ └── end_keyword_loc: (153,22)-(153,25) = "end" - ├── @ CaseMatchNode (location: (154,0)-(154,26)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (154,5)-(154,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (154,5)-(154,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (154,10)-(154,22)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ SelfNode (location: (154,13)-(154,17)) - │ │ │ └── flags: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (154,10)-(154,12) = "in" - │ │ └── then_loc: (154,18)-(154,22) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (154,0)-(154,4) = "case" - │ └── end_keyword_loc: (154,23)-(154,26) = "end" - ├── @ CaseMatchNode (location: (155,0)-(155,26)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (155,5)-(155,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (155,5)-(155,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (155,10)-(155,22)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ TrueNode (location: (155,13)-(155,17)) - │ │ │ └── flags: static_literal - │ │ ├── statements: ∅ - │ │ ├── in_loc: (155,10)-(155,12) = "in" - │ │ └── then_loc: (155,18)-(155,22) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (155,0)-(155,4) = "case" - │ └── end_keyword_loc: (155,23)-(155,26) = "end" - ├── @ CaseMatchNode (location: (156,0)-(156,27)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (156,5)-(156,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (156,5)-(156,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (156,10)-(156,23)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ FalseNode (location: (156,13)-(156,18)) - │ │ │ └── flags: static_literal - │ │ ├── statements: ∅ - │ │ ├── in_loc: (156,10)-(156,12) = "in" - │ │ └── then_loc: (156,19)-(156,23) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (156,0)-(156,4) = "case" - │ └── end_keyword_loc: (156,24)-(156,27) = "end" - ├── @ CaseMatchNode (location: (157,0)-(157,30)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (157,5)-(157,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (157,5)-(157,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (157,10)-(157,26)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ SourceFileNode (location: (157,13)-(157,21)) - │ │ │ ├── flags: ∅ - │ │ │ └── filepath: "patterns.txt" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (157,10)-(157,12) = "in" - │ │ └── then_loc: (157,22)-(157,26) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (157,0)-(157,4) = "case" - │ └── end_keyword_loc: (157,27)-(157,30) = "end" - ├── @ CaseMatchNode (location: (158,0)-(158,30)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (158,5)-(158,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (158,5)-(158,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (158,10)-(158,26)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ SourceLineNode (location: (158,13)-(158,21)) - │ │ │ └── flags: static_literal - │ │ ├── statements: ∅ - │ │ ├── in_loc: (158,10)-(158,12) = "in" - │ │ └── then_loc: (158,22)-(158,26) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (158,0)-(158,4) = "case" - │ └── end_keyword_loc: (158,27)-(158,30) = "end" - ├── @ CaseMatchNode (location: (159,0)-(159,34)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (159,5)-(159,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (159,5)-(159,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (159,10)-(159,30)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ SourceEncodingNode (location: (159,13)-(159,25)) - │ │ │ └── flags: static_literal - │ │ ├── statements: ∅ - │ │ ├── in_loc: (159,10)-(159,12) = "in" - │ │ └── then_loc: (159,26)-(159,30) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (159,0)-(159,4) = "case" - │ └── end_keyword_loc: (159,31)-(159,34) = "end" - ├── @ CaseMatchNode (location: (160,0)-(160,32)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (160,5)-(160,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (160,5)-(160,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (160,10)-(160,28)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ LambdaNode (location: (160,13)-(160,23)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── operator_loc: (160,13)-(160,15) = "->" - │ │ │ ├── opening_loc: (160,16)-(160,17) = "{" - │ │ │ ├── closing_loc: (160,22)-(160,23) = "}" - │ │ │ ├── parameters: ∅ - │ │ │ └── body: - │ │ │ @ StatementsNode (location: (160,18)-(160,21)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ LocalVariableReadNode (location: (160,18)-(160,21)) - │ │ │ ├── flags: newline - │ │ │ ├── name: :bar - │ │ │ └── depth: 1 - │ │ ├── statements: ∅ - │ │ ├── in_loc: (160,10)-(160,12) = "in" - │ │ └── then_loc: (160,24)-(160,28) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (160,0)-(160,4) = "case" - │ └── end_keyword_loc: (160,29)-(160,32) = "end" - ├── @ CaseMatchNode (location: (162,0)-(162,32)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (162,5)-(162,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (162,5)-(162,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (162,10)-(162,28)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (162,13)-(162,23)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (162,17)-(162,19) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (162,20)-(162,23)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (162,13)-(162,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ LocalVariableTargetNode (location: (162,13)-(162,16)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── name: :bar - │ │ │ │ └── depth: 0 - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (162,10)-(162,12) = "in" - │ │ └── then_loc: (162,24)-(162,28) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (162,0)-(162,4) = "case" - │ └── end_keyword_loc: (162,29)-(162,32) = "end" - ├── @ CaseMatchNode (location: (163,0)-(163,30)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (163,5)-(163,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (163,5)-(163,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (163,10)-(163,26)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (163,13)-(163,21)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (163,15)-(163,17) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (163,18)-(163,21)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (163,13)-(163,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (163,13)-(163,14)) - │ │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (163,10)-(163,12) = "in" - │ │ └── then_loc: (163,22)-(163,26) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (163,0)-(163,4) = "case" - │ └── end_keyword_loc: (163,27)-(163,30) = "end" - ├── @ CaseMatchNode (location: (164,0)-(164,32)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (164,5)-(164,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (164,5)-(164,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (164,10)-(164,28)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (164,13)-(164,23)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (164,17)-(164,19) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (164,20)-(164,23)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (164,13)-(164,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ FloatNode (location: (164,13)-(164,16)) - │ │ │ │ ├── flags: newline, static_literal - │ │ │ │ └── value: 1.0 - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (164,10)-(164,12) = "in" - │ │ └── then_loc: (164,24)-(164,28) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (164,0)-(164,4) = "case" - │ └── end_keyword_loc: (164,29)-(164,32) = "end" - ├── @ CaseMatchNode (location: (165,0)-(165,31)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (165,5)-(165,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (165,5)-(165,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (165,10)-(165,27)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (165,13)-(165,22)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (165,16)-(165,18) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (165,19)-(165,22)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (165,13)-(165,15)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ ImaginaryNode (location: (165,13)-(165,15)) - │ │ │ │ ├── flags: newline, static_literal - │ │ │ │ └── numeric: - │ │ │ │ @ IntegerNode (location: (165,13)-(165,14)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (165,10)-(165,12) = "in" - │ │ └── then_loc: (165,23)-(165,27) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (165,0)-(165,4) = "case" - │ └── end_keyword_loc: (165,28)-(165,31) = "end" - ├── @ CaseMatchNode (location: (166,0)-(166,31)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (166,5)-(166,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (166,5)-(166,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (166,10)-(166,27)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (166,13)-(166,22)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (166,16)-(166,18) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (166,19)-(166,22)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (166,13)-(166,15)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ RationalNode (location: (166,13)-(166,15)) - │ │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ │ ├── numerator: 1 - │ │ │ │ └── denominator: 1 - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (166,10)-(166,12) = "in" - │ │ └── then_loc: (166,23)-(166,27) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (166,0)-(166,4) = "case" - │ └── end_keyword_loc: (166,28)-(166,31) = "end" - ├── @ CaseMatchNode (location: (167,0)-(167,33)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (167,5)-(167,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (167,5)-(167,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (167,10)-(167,29)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (167,13)-(167,24)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (167,18)-(167,20) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (167,21)-(167,24)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (167,13)-(167,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ SymbolNode (location: (167,13)-(167,17)) - │ │ │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (167,13)-(167,14) = ":" - │ │ │ │ ├── value_loc: (167,14)-(167,17) = "foo" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (167,10)-(167,12) = "in" - │ │ └── then_loc: (167,25)-(167,29) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (167,0)-(167,4) = "case" - │ └── end_keyword_loc: (167,30)-(167,33) = "end" - ├── @ CaseMatchNode (location: (168,0)-(168,36)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (168,5)-(168,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (168,5)-(168,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (168,10)-(168,32)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (168,13)-(168,27)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (168,21)-(168,23) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (168,24)-(168,27)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (168,13)-(168,20)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ SymbolNode (location: (168,13)-(168,20)) - │ │ │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (168,13)-(168,16) = "%s[" - │ │ │ │ ├── value_loc: (168,16)-(168,19) = "foo" - │ │ │ │ ├── closing_loc: (168,19)-(168,20) = "]" - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (168,10)-(168,12) = "in" - │ │ └── then_loc: (168,28)-(168,32) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (168,0)-(168,4) = "case" - │ └── end_keyword_loc: (168,33)-(168,36) = "end" - ├── @ CaseMatchNode (location: (169,0)-(169,35)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (169,5)-(169,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (169,5)-(169,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (169,10)-(169,31)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (169,13)-(169,26)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (169,20)-(169,22) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (169,23)-(169,26)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (169,13)-(169,19)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ SymbolNode (location: (169,13)-(169,19)) - │ │ │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (169,13)-(169,15) = ":\"" - │ │ │ │ ├── value_loc: (169,15)-(169,18) = "foo" - │ │ │ │ ├── closing_loc: (169,18)-(169,19) = "\"" - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (169,10)-(169,12) = "in" - │ │ └── then_loc: (169,27)-(169,31) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (169,0)-(169,4) = "case" - │ └── end_keyword_loc: (169,32)-(169,35) = "end" - ├── @ CaseMatchNode (location: (170,0)-(170,34)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (170,5)-(170,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (170,5)-(170,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (170,10)-(170,30)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (170,13)-(170,25)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (170,19)-(170,21) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (170,22)-(170,25)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (170,13)-(170,18)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ RegularExpressionNode (location: (170,13)-(170,18)) - │ │ │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (170,13)-(170,14) = "/" - │ │ │ │ ├── content_loc: (170,14)-(170,17) = "foo" - │ │ │ │ ├── closing_loc: (170,17)-(170,18) = "/" - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (170,10)-(170,12) = "in" - │ │ └── then_loc: (170,26)-(170,30) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (170,0)-(170,4) = "case" - │ └── end_keyword_loc: (170,31)-(170,34) = "end" - ├── @ CaseMatchNode (location: (171,0)-(171,34)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (171,5)-(171,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (171,5)-(171,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (171,10)-(171,30)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (171,13)-(171,25)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (171,19)-(171,21) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (171,22)-(171,25)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (171,13)-(171,18)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ XStringNode (location: (171,13)-(171,18)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── opening_loc: (171,13)-(171,14) = "`" - │ │ │ │ ├── content_loc: (171,14)-(171,17) = "foo" - │ │ │ │ ├── closing_loc: (171,17)-(171,18) = "`" - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (171,10)-(171,12) = "in" - │ │ └── then_loc: (171,26)-(171,30) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (171,0)-(171,4) = "case" - │ └── end_keyword_loc: (171,31)-(171,34) = "end" - ├── @ CaseMatchNode (location: (172,0)-(172,36)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (172,5)-(172,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (172,5)-(172,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (172,10)-(172,32)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (172,13)-(172,27)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (172,21)-(172,23) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (172,24)-(172,27)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (172,13)-(172,20)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ XStringNode (location: (172,13)-(172,20)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── opening_loc: (172,13)-(172,16) = "%x[" - │ │ │ │ ├── content_loc: (172,16)-(172,19) = "foo" - │ │ │ │ ├── closing_loc: (172,19)-(172,20) = "]" - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (172,10)-(172,12) = "in" - │ │ └── then_loc: (172,28)-(172,32) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (172,0)-(172,4) = "case" - │ └── end_keyword_loc: (172,33)-(172,36) = "end" - ├── @ CaseMatchNode (location: (173,0)-(173,36)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (173,5)-(173,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (173,5)-(173,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (173,10)-(173,32)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (173,13)-(173,27)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (173,21)-(173,23) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (173,24)-(173,27)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (173,13)-(173,20)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ ArrayNode (location: (173,13)-(173,20)) - │ │ │ │ ├── flags: newline, static_literal - │ │ │ │ ├── elements: (length: 1) - │ │ │ │ │ └── @ SymbolNode (location: (173,16)-(173,19)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── value_loc: (173,16)-(173,19) = "foo" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "foo" - │ │ │ │ ├── opening_loc: (173,13)-(173,16) = "%i[" - │ │ │ │ └── closing_loc: (173,19)-(173,20) = "]" - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (173,10)-(173,12) = "in" - │ │ └── then_loc: (173,28)-(173,32) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (173,0)-(173,4) = "case" - │ └── end_keyword_loc: (173,33)-(173,36) = "end" - ├── @ CaseMatchNode (location: (174,0)-(174,36)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (174,5)-(174,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (174,5)-(174,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (174,10)-(174,32)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (174,13)-(174,27)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (174,21)-(174,23) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (174,24)-(174,27)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (174,13)-(174,20)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ ArrayNode (location: (174,13)-(174,20)) - │ │ │ │ ├── flags: newline, static_literal - │ │ │ │ ├── elements: (length: 1) - │ │ │ │ │ └── @ SymbolNode (location: (174,16)-(174,19)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── value_loc: (174,16)-(174,19) = "foo" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "foo" - │ │ │ │ ├── opening_loc: (174,13)-(174,16) = "%I[" - │ │ │ │ └── closing_loc: (174,19)-(174,20) = "]" - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (174,10)-(174,12) = "in" - │ │ └── then_loc: (174,28)-(174,32) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (174,0)-(174,4) = "case" - │ └── end_keyword_loc: (174,33)-(174,36) = "end" - ├── @ CaseMatchNode (location: (175,0)-(175,36)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (175,5)-(175,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (175,5)-(175,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (175,10)-(175,32)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (175,13)-(175,27)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (175,21)-(175,23) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (175,24)-(175,27)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (175,13)-(175,20)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ ArrayNode (location: (175,13)-(175,20)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── elements: (length: 1) - │ │ │ │ │ └── @ StringNode (location: (175,16)-(175,19)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── content_loc: (175,16)-(175,19) = "foo" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "foo" - │ │ │ │ ├── opening_loc: (175,13)-(175,16) = "%w[" - │ │ │ │ └── closing_loc: (175,19)-(175,20) = "]" - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (175,10)-(175,12) = "in" - │ │ └── then_loc: (175,28)-(175,32) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (175,0)-(175,4) = "case" - │ └── end_keyword_loc: (175,33)-(175,36) = "end" - ├── @ CaseMatchNode (location: (176,0)-(176,36)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (176,5)-(176,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (176,5)-(176,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (176,10)-(176,32)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (176,13)-(176,27)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (176,21)-(176,23) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (176,24)-(176,27)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (176,13)-(176,20)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ ArrayNode (location: (176,13)-(176,20)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── elements: (length: 1) - │ │ │ │ │ └── @ StringNode (location: (176,16)-(176,19)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── content_loc: (176,16)-(176,19) = "foo" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "foo" - │ │ │ │ ├── opening_loc: (176,13)-(176,16) = "%W[" - │ │ │ │ └── closing_loc: (176,19)-(176,20) = "]" - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (176,10)-(176,12) = "in" - │ │ └── then_loc: (176,28)-(176,32) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (176,0)-(176,4) = "case" - │ └── end_keyword_loc: (176,33)-(176,36) = "end" - ├── @ CaseMatchNode (location: (177,0)-(177,36)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (177,5)-(177,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (177,5)-(177,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (177,10)-(177,32)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (177,13)-(177,27)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (177,21)-(177,23) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (177,24)-(177,27)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (177,13)-(177,20)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ StringNode (location: (177,13)-(177,20)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── opening_loc: (177,13)-(177,16) = "%q[" - │ │ │ │ ├── content_loc: (177,16)-(177,19) = "foo" - │ │ │ │ ├── closing_loc: (177,19)-(177,20) = "]" - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (177,10)-(177,12) = "in" - │ │ └── then_loc: (177,28)-(177,32) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (177,0)-(177,4) = "case" - │ └── end_keyword_loc: (177,33)-(177,36) = "end" - ├── @ CaseMatchNode (location: (178,0)-(178,36)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (178,5)-(178,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (178,5)-(178,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (178,10)-(178,32)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (178,13)-(178,27)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (178,21)-(178,23) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (178,24)-(178,27)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (178,13)-(178,20)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ StringNode (location: (178,13)-(178,20)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── opening_loc: (178,13)-(178,16) = "%Q[" - │ │ │ │ ├── content_loc: (178,16)-(178,19) = "foo" - │ │ │ │ ├── closing_loc: (178,19)-(178,20) = "]" - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (178,10)-(178,12) = "in" - │ │ └── then_loc: (178,28)-(178,32) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (178,0)-(178,4) = "case" - │ └── end_keyword_loc: (178,33)-(178,36) = "end" - ├── @ CaseMatchNode (location: (179,0)-(179,34)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (179,5)-(179,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (179,5)-(179,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (179,10)-(179,30)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (179,13)-(179,25)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (179,19)-(179,21) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (179,22)-(179,25)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (179,13)-(179,18)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ StringNode (location: (179,13)-(179,18)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── opening_loc: (179,13)-(179,14) = "\"" - │ │ │ │ ├── content_loc: (179,14)-(179,17) = "foo" - │ │ │ │ ├── closing_loc: (179,17)-(179,18) = "\"" - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (179,10)-(179,12) = "in" - │ │ └── then_loc: (179,26)-(179,30) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (179,0)-(179,4) = "case" - │ └── end_keyword_loc: (179,31)-(179,34) = "end" - ├── @ CaseMatchNode (location: (180,0)-(180,32)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (180,5)-(180,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (180,5)-(180,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (180,10)-(180,28)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (180,13)-(180,23)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (180,17)-(180,19) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (180,20)-(180,23)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (180,13)-(180,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ NilNode (location: (180,13)-(180,16)) - │ │ │ │ └── flags: newline, static_literal - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (180,10)-(180,12) = "in" - │ │ └── then_loc: (180,24)-(180,28) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (180,0)-(180,4) = "case" - │ └── end_keyword_loc: (180,29)-(180,32) = "end" - ├── @ CaseMatchNode (location: (181,0)-(181,33)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (181,5)-(181,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (181,5)-(181,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (181,10)-(181,29)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (181,13)-(181,24)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (181,18)-(181,20) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (181,21)-(181,24)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (181,13)-(181,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ SelfNode (location: (181,13)-(181,17)) - │ │ │ │ └── flags: newline - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (181,10)-(181,12) = "in" - │ │ └── then_loc: (181,25)-(181,29) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (181,0)-(181,4) = "case" - │ └── end_keyword_loc: (181,30)-(181,33) = "end" - ├── @ CaseMatchNode (location: (182,0)-(182,33)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (182,5)-(182,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (182,5)-(182,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (182,10)-(182,29)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (182,13)-(182,24)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (182,18)-(182,20) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (182,21)-(182,24)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (182,13)-(182,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ TrueNode (location: (182,13)-(182,17)) - │ │ │ │ └── flags: newline, static_literal - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (182,10)-(182,12) = "in" - │ │ └── then_loc: (182,25)-(182,29) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (182,0)-(182,4) = "case" - │ └── end_keyword_loc: (182,30)-(182,33) = "end" - ├── @ CaseMatchNode (location: (183,0)-(183,34)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (183,5)-(183,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (183,5)-(183,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (183,10)-(183,30)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (183,13)-(183,25)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (183,19)-(183,21) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (183,22)-(183,25)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (183,13)-(183,18)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ FalseNode (location: (183,13)-(183,18)) - │ │ │ │ └── flags: newline, static_literal - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (183,10)-(183,12) = "in" - │ │ └── then_loc: (183,26)-(183,30) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (183,0)-(183,4) = "case" - │ └── end_keyword_loc: (183,31)-(183,34) = "end" - ├── @ CaseMatchNode (location: (184,0)-(184,37)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (184,5)-(184,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (184,5)-(184,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (184,10)-(184,33)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (184,13)-(184,28)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (184,22)-(184,24) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (184,25)-(184,28)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (184,13)-(184,21)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ SourceFileNode (location: (184,13)-(184,21)) - │ │ │ │ ├── flags: newline - │ │ │ │ └── filepath: "patterns.txt" - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (184,10)-(184,12) = "in" - │ │ └── then_loc: (184,29)-(184,33) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (184,0)-(184,4) = "case" - │ └── end_keyword_loc: (184,34)-(184,37) = "end" - ├── @ CaseMatchNode (location: (185,0)-(185,37)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (185,5)-(185,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (185,5)-(185,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (185,10)-(185,33)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (185,13)-(185,28)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (185,22)-(185,24) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (185,25)-(185,28)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (185,13)-(185,21)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ SourceLineNode (location: (185,13)-(185,21)) - │ │ │ │ └── flags: newline, static_literal - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (185,10)-(185,12) = "in" - │ │ └── then_loc: (185,29)-(185,33) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (185,0)-(185,4) = "case" - │ └── end_keyword_loc: (185,34)-(185,37) = "end" - ├── @ CaseMatchNode (location: (186,0)-(186,41)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (186,5)-(186,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (186,5)-(186,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (186,10)-(186,37)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (186,13)-(186,32)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (186,26)-(186,28) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (186,29)-(186,32)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (186,13)-(186,25)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ SourceEncodingNode (location: (186,13)-(186,25)) - │ │ │ │ └── flags: newline, static_literal - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (186,10)-(186,12) = "in" - │ │ └── then_loc: (186,33)-(186,37) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (186,0)-(186,4) = "case" - │ └── end_keyword_loc: (186,38)-(186,41) = "end" - ├── @ CaseMatchNode (location: (187,0)-(187,39)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (187,5)-(187,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (187,5)-(187,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (187,10)-(187,35)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (187,13)-(187,30)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (187,24)-(187,26) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (187,27)-(187,30)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 0 - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (187,13)-(187,23)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ LambdaNode (location: (187,13)-(187,23)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── locals: [] - │ │ │ │ ├── operator_loc: (187,13)-(187,15) = "->" - │ │ │ │ ├── opening_loc: (187,16)-(187,17) = "{" - │ │ │ │ ├── closing_loc: (187,22)-(187,23) = "}" - │ │ │ │ ├── parameters: ∅ - │ │ │ │ └── body: - │ │ │ │ @ StatementsNode (location: (187,18)-(187,21)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ LocalVariableReadNode (location: (187,18)-(187,21)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── name: :bar - │ │ │ │ └── depth: 1 - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (187,10)-(187,12) = "in" - │ │ └── then_loc: (187,31)-(187,35) = "then" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (187,0)-(187,4) = "case" - │ └── end_keyword_loc: (187,36)-(187,39) = "end" - ├── @ IfNode (location: (189,0)-(190,3)) - │ ├── flags: newline - │ ├── if_keyword_loc: (189,0)-(189,2) = "if" - │ ├── predicate: - │ │ @ MatchPredicateNode (location: (189,3)-(189,10)) - │ │ ├── flags: ∅ - │ │ ├── value: - │ │ │ @ CallNode (location: (189,3)-(189,4)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (189,3)-(189,4) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── pattern: - │ │ │ @ ArrayPatternNode (location: (189,8)-(189,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── constant: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── opening_loc: (189,8)-(189,9) = "[" - │ │ │ └── closing_loc: (189,9)-(189,10) = "]" - │ │ └── operator_loc: (189,5)-(189,7) = "in" - │ ├── then_keyword_loc: ∅ - │ ├── statements: ∅ - │ ├── subsequent: ∅ - │ └── end_keyword_loc: (190,0)-(190,3) = "end" - ├── @ MatchRequiredNode (location: (192,0)-(194,1)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (192,0)-(192,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (192,0)-(192,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (192,5)-(194,1)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (193,2)-(193,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ └── depth: 0 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (192,5)-(192,6) = "[" - │ │ └── closing_loc: (194,0)-(194,1) = "]" - │ └── operator_loc: (192,2)-(192,4) = "=>" - ├── @ MatchPredicateNode (location: (196,0)-(200,1)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (196,0)-(196,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (196,0)-(196,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ HashPatternNode (location: (196,7)-(200,1)) - │ │ ├── flags: ∅ - │ │ ├── constant: - │ │ │ @ ConstantReadNode (location: (196,7)-(196,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :A - │ │ ├── elements: (length: 1) - │ │ │ └── @ AssocNode (location: (197,2)-(199,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (197,2)-(197,6)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (197,2)-(197,5) = "bar" - │ │ │ │ ├── closing_loc: (197,5)-(197,6) = ":" - │ │ │ │ └── unescaped: "bar" - │ │ │ ├── value: - │ │ │ │ @ HashPatternNode (location: (197,7)-(199,3)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── constant: - │ │ │ │ │ @ ConstantReadNode (location: (197,7)-(197,8)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :B - │ │ │ │ ├── elements: (length: 1) - │ │ │ │ │ └── @ AssocNode (location: (198,4)-(198,12)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── key: - │ │ │ │ │ │ @ SymbolNode (location: (198,4)-(198,10)) - │ │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ │ ├── value_loc: (198,4)-(198,9) = "value" - │ │ │ │ │ │ ├── closing_loc: (198,9)-(198,10) = ":" - │ │ │ │ │ │ └── unescaped: "value" - │ │ │ │ │ ├── value: - │ │ │ │ │ │ @ LocalVariableTargetNode (location: (198,11)-(198,12)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ ├── name: :a - │ │ │ │ │ │ └── depth: 0 - │ │ │ │ │ └── operator_loc: ∅ - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── opening_loc: (197,8)-(197,9) = "[" - │ │ │ │ └── closing_loc: (199,2)-(199,3) = "]" - │ │ │ └── operator_loc: ∅ - │ │ ├── rest: ∅ - │ │ ├── opening_loc: (196,8)-(196,9) = "[" - │ │ └── closing_loc: (200,0)-(200,1) = "]" - │ └── operator_loc: (196,4)-(196,6) = "in" - ├── @ MatchPredicateNode (location: (202,0)-(202,17)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (202,0)-(202,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (202,0)-(202,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ CapturePatternNode (location: (202,7)-(202,17)) - │ │ ├── flags: ∅ - │ │ ├── value: - │ │ │ @ LocalVariableTargetNode (location: (202,7)-(202,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── target: - │ │ │ @ LocalVariableTargetNode (location: (202,14)-(202,17)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :baz - │ │ │ └── depth: 0 - │ │ └── operator_loc: (202,11)-(202,13) = "=>" - │ └── operator_loc: (202,4)-(202,6) = "in" - ├── @ MatchRequiredNode (location: (203,0)-(203,17)) - │ ├── flags: newline - │ ├── value: - │ │ @ CallNode (location: (203,0)-(203,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (203,0)-(203,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ CapturePatternNode (location: (203,7)-(203,17)) - │ │ ├── flags: ∅ - │ │ ├── value: - │ │ │ @ LocalVariableTargetNode (location: (203,7)-(203,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── target: - │ │ │ @ LocalVariableTargetNode (location: (203,14)-(203,17)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :baz - │ │ │ └── depth: 0 - │ │ └── operator_loc: (203,11)-(203,13) = "=>" - │ └── operator_loc: (203,4)-(203,6) = "=>" - ├── @ MultiWriteNode (location: (205,0)-(205,20)) - │ ├── flags: newline - │ ├── lefts: (length: 3) - │ │ ├── @ LocalVariableTargetNode (location: (205,0)-(205,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :foo - │ │ │ └── depth: 0 - │ │ ├── @ LocalVariableTargetNode (location: (205,5)-(205,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ └── @ LocalVariableTargetNode (location: (205,10)-(205,13)) - │ │ ├── flags: ∅ - │ │ ├── name: :baz - │ │ └── depth: 0 - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (205,14)-(205,15) = "=" - │ └── value: - │ @ ArrayNode (location: (205,16)-(205,20)) - │ ├── flags: static_literal - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (205,16)-(205,17)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (205,19)-(205,20)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── opening_loc: ∅ - │ └── closing_loc: ∅ - ├── @ CallNode (location: (206,0)-(208,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (206,0)-(206,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (206,4)-(208,3)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (207,2)-(207,29)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ MatchRequiredNode (location: (207,2)-(207,29)) - │ │ ├── flags: newline - │ │ ├── value: - │ │ │ @ ArrayNode (location: (207,2)-(207,8)) - │ │ │ ├── flags: static_literal - │ │ │ ├── elements: (length: 2) - │ │ │ │ ├── @ IntegerNode (location: (207,3)-(207,4)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ └── @ IntegerNode (location: (207,6)-(207,7)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ ├── opening_loc: (207,2)-(207,3) = "[" - │ │ │ └── closing_loc: (207,7)-(207,8) = "]" - │ │ ├── pattern: - │ │ │ @ CapturePatternNode (location: (207,12)-(207,29)) - │ │ │ ├── flags: ∅ - │ │ │ ├── value: - │ │ │ │ @ ArrayPatternNode (location: (207,12)-(207,22)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── constant: ∅ - │ │ │ │ ├── requireds: (length: 2) - │ │ │ │ │ ├── @ LocalVariableTargetNode (location: (207,13)-(207,16)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ ├── name: :foo - │ │ │ │ │ │ └── depth: 1 - │ │ │ │ │ └── @ LocalVariableTargetNode (location: (207,18)-(207,21)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :bar - │ │ │ │ │ └── depth: 1 - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── posts: (length: 0) - │ │ │ │ ├── opening_loc: (207,12)-(207,13) = "[" - │ │ │ │ └── closing_loc: (207,21)-(207,22) = "]" - │ │ │ ├── target: - │ │ │ │ @ LocalVariableTargetNode (location: (207,26)-(207,29)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ └── depth: 1 - │ │ │ └── operator_loc: (207,23)-(207,25) = "=>" - │ │ └── operator_loc: (207,9)-(207,11) = "=>" - │ ├── opening_loc: (206,4)-(206,6) = "do" - │ └── closing_loc: (208,0)-(208,3) = "end" - ├── @ MatchRequiredNode (location: (210,0)-(210,19)) - │ ├── flags: newline - │ ├── value: - │ │ @ LocalVariableReadNode (location: (210,0)-(210,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (210,7)-(210,19)) - │ │ ├── flags: ∅ - │ │ ├── constant: - │ │ │ @ ConstantReadNode (location: (210,7)-(210,13)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Object - │ │ ├── requireds: (length: 1) - │ │ │ └── @ HashPatternNode (location: (210,14)-(210,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── constant: ∅ - │ │ │ ├── elements: (length: 1) - │ │ │ │ └── @ AssocNode (location: (210,15)-(210,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── key: - │ │ │ │ │ @ SymbolNode (location: (210,15)-(210,17)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── value_loc: (210,15)-(210,16) = "x" - │ │ │ │ │ ├── closing_loc: (210,16)-(210,17) = ":" - │ │ │ │ │ └── unescaped: "x" - │ │ │ │ ├── value: - │ │ │ │ │ @ ImplicitNode (location: (210,15)-(210,16)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── value: - │ │ │ │ │ @ LocalVariableTargetNode (location: (210,15)-(210,16)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :x - │ │ │ │ │ └── depth: 0 - │ │ │ │ └── operator_loc: ∅ - │ │ │ ├── rest: ∅ - │ │ │ ├── opening_loc: (210,14)-(210,15) = "{" - │ │ │ └── closing_loc: (210,17)-(210,18) = "}" - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (210,13)-(210,14) = "[" - │ │ └── closing_loc: (210,18)-(210,19) = "]" - │ └── operator_loc: (210,4)-(210,6) = "=>" - ├── @ CallNode (location: (212,0)-(212,19)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (212,0)-(212,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: (212,1)-(212,2) = "." - │ ├── name: :then - │ ├── message_loc: (212,2)-(212,6) = "then" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (212,7)-(212,19)) - │ ├── flags: ∅ - │ ├── locals: [:_1] - │ ├── parameters: - │ │ @ NumberedParametersNode (location: (212,7)-(212,19)) - │ │ ├── flags: ∅ - │ │ └── maximum: 1 - │ ├── body: - │ │ @ StatementsNode (location: (212,9)-(212,17)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ MatchPredicateNode (location: (212,9)-(212,17)) - │ │ ├── flags: newline - │ │ ├── value: - │ │ │ @ IntegerNode (location: (212,9)-(212,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── pattern: - │ │ │ @ PinnedVariableNode (location: (212,14)-(212,17)) - │ │ │ ├── flags: ∅ - │ │ │ ├── variable: - │ │ │ │ @ LocalVariableReadNode (location: (212,15)-(212,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :_1 - │ │ │ │ └── depth: 0 - │ │ │ └── operator_loc: (212,14)-(212,15) = "^" - │ │ └── operator_loc: (212,11)-(212,13) = "in" - │ ├── opening_loc: (212,7)-(212,8) = "{" - │ └── closing_loc: (212,18)-(212,19) = "}" - ├── @ MultiWriteNode (location: (214,0)-(217,5)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ LocalVariableTargetNode (location: (215,2)-(215,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ └── @ LocalVariableTargetNode (location: (216,2)-(216,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ └── depth: 0 - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: (214,0)-(214,1) = "(" - │ ├── rparen_loc: (217,0)-(217,1) = ")" - │ ├── operator_loc: (217,2)-(217,3) = "=" - │ └── value: - │ @ CallNode (location: (217,4)-(217,5)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :c - │ ├── message_loc: (217,4)-(217,5) = "c" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CaseMatchNode (location: (219,0)-(219,25)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ ParenthesesNode (location: (219,5)-(219,7)) - │ │ ├── flags: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (219,5)-(219,6) = "(" - │ │ └── closing_loc: (219,6)-(219,7) = ")" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (219,9)-(219,20)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ArrayPatternNode (location: (219,12)-(219,20)) - │ │ │ ├── flags: ∅ - │ │ │ ├── constant: ∅ - │ │ │ ├── requireds: (length: 2) - │ │ │ │ ├── @ LocalVariableTargetNode (location: (219,13)-(219,15)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :_a - │ │ │ │ │ └── depth: 0 - │ │ │ │ └── @ LocalVariableTargetNode (location: (219,17)-(219,19)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :_a - │ │ │ │ └── depth: 0 - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── opening_loc: (219,12)-(219,13) = "[" - │ │ │ └── closing_loc: (219,19)-(219,20) = "]" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (219,9)-(219,11) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (219,0)-(219,4) = "case" - │ └── end_keyword_loc: (219,22)-(219,25) = "end" - └── @ CaseMatchNode (location: (220,0)-(220,31)) - ├── flags: newline - ├── predicate: - │ @ ParenthesesNode (location: (220,5)-(220,7)) - │ ├── flags: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (220,5)-(220,6) = "(" - │ └── closing_loc: (220,6)-(220,7) = ")" - ├── conditions: (length: 1) - │ └── @ InNode (location: (220,9)-(220,26)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (220,12)-(220,26)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ HashPatternNode (location: (220,13)-(220,18)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── constant: ∅ - │ │ │ │ ├── elements: (length: 1) - │ │ │ │ │ └── @ AssocNode (location: (220,14)-(220,17)) - │ │ │ │ │ ├── flags: static_literal - │ │ │ │ │ ├── key: - │ │ │ │ │ │ @ SymbolNode (location: (220,14)-(220,16)) - │ │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ │ ├── value_loc: (220,14)-(220,15) = "a" - │ │ │ │ │ │ ├── closing_loc: (220,15)-(220,16) = ":" - │ │ │ │ │ │ └── unescaped: "a" - │ │ │ │ │ ├── value: - │ │ │ │ │ │ @ IntegerNode (location: (220,16)-(220,17)) - │ │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ │ └── value: 1 - │ │ │ │ │ └── operator_loc: ∅ - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── opening_loc: (220,13)-(220,14) = "{" - │ │ │ │ └── closing_loc: (220,17)-(220,18) = "}" - │ │ │ └── @ HashPatternNode (location: (220,20)-(220,25)) - │ │ │ ├── flags: ∅ - │ │ │ ├── constant: ∅ - │ │ │ ├── elements: (length: 1) - │ │ │ │ └── @ AssocNode (location: (220,21)-(220,24)) - │ │ │ │ ├── flags: static_literal - │ │ │ │ ├── key: - │ │ │ │ │ @ SymbolNode (location: (220,21)-(220,23)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── value_loc: (220,21)-(220,22) = "a" - │ │ │ │ │ ├── closing_loc: (220,22)-(220,23) = ":" - │ │ │ │ │ └── unescaped: "a" - │ │ │ │ ├── value: - │ │ │ │ │ @ IntegerNode (location: (220,23)-(220,24)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 2 - │ │ │ │ └── operator_loc: ∅ - │ │ │ ├── rest: ∅ - │ │ │ ├── opening_loc: (220,20)-(220,21) = "{" - │ │ │ └── closing_loc: (220,24)-(220,25) = "}" - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (220,12)-(220,13) = "[" - │ │ └── closing_loc: (220,25)-(220,26) = "]" - │ ├── statements: ∅ - │ ├── in_loc: (220,9)-(220,11) = "in" - │ └── then_loc: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (220,0)-(220,4) = "case" - └── end_keyword_loc: (220,28)-(220,31) = "end" diff --git a/test/prism/snapshots/procs.txt b/test/prism/snapshots/procs.txt deleted file mode 100644 index 91a53e98f6..0000000000 --- a/test/prism/snapshots/procs.txt +++ /dev/null @@ -1,451 +0,0 @@ -@ ProgramNode (location: (1,0)-(27,19)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(27,19)) - ├── flags: ∅ - └── body: (length: 10) - ├── @ LambdaNode (location: (1,0)-(1,21)) - │ ├── flags: newline - │ ├── locals: [:a, :b, :c, :d] - │ ├── operator_loc: (1,0)-(1,2) = "->" - │ ├── opening_loc: (1,16)-(1,17) = "{" - │ ├── closing_loc: (1,20)-(1,21) = "}" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (1,3)-(1,15)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (1,4)-(1,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (1,4)-(1,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 3) - │ │ │ ├── @ BlockLocalVariableNode (location: (1,7)-(1,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :b - │ │ │ ├── @ BlockLocalVariableNode (location: (1,10)-(1,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :c - │ │ │ └── @ BlockLocalVariableNode (location: (1,13)-(1,14)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :d - │ │ ├── opening_loc: (1,3)-(1,4) = "(" - │ │ └── closing_loc: (1,14)-(1,15) = ")" - │ └── body: - │ @ StatementsNode (location: (1,18)-(1,19)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ LocalVariableReadNode (location: (1,18)-(1,19)) - │ ├── flags: newline - │ ├── name: :b - │ └── depth: 0 - ├── @ LambdaNode (location: (3,0)-(5,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── operator_loc: (3,0)-(3,2) = "->" - │ ├── opening_loc: (3,3)-(3,5) = "do" - │ ├── closing_loc: (5,0)-(5,3) = "end" - │ ├── parameters: ∅ - │ └── body: - │ @ BeginNode (location: (3,3)-(5,3)) - │ ├── flags: ∅ - │ ├── begin_keyword_loc: ∅ - │ ├── statements: ∅ - │ ├── rescue_clause: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: - │ │ @ EnsureNode (location: (4,0)-(5,3)) - │ │ ├── flags: ∅ - │ │ ├── ensure_keyword_loc: (4,0)-(4,6) = "ensure" - │ │ ├── statements: ∅ - │ │ └── end_keyword_loc: (5,0)-(5,3) = "end" - │ └── end_keyword_loc: (5,0)-(5,3) = "end" - ├── @ LambdaNode (location: (7,0)-(11,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── operator_loc: (7,0)-(7,2) = "->" - │ ├── opening_loc: (7,3)-(7,5) = "do" - │ ├── closing_loc: (11,0)-(11,3) = "end" - │ ├── parameters: ∅ - │ └── body: - │ @ BeginNode (location: (7,3)-(11,3)) - │ ├── flags: ∅ - │ ├── begin_keyword_loc: ∅ - │ ├── statements: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (8,0)-(8,6)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (8,0)-(8,6) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: - │ │ @ ElseNode (location: (9,0)-(10,6)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (9,0)-(9,4) = "else" - │ │ ├── statements: ∅ - │ │ └── end_keyword_loc: (10,0)-(10,6) = "ensure" - │ ├── ensure_clause: - │ │ @ EnsureNode (location: (10,0)-(11,3)) - │ │ ├── flags: ∅ - │ │ ├── ensure_keyword_loc: (10,0)-(10,6) = "ensure" - │ │ ├── statements: ∅ - │ │ └── end_keyword_loc: (11,0)-(11,3) = "end" - │ └── end_keyword_loc: (11,0)-(11,3) = "end" - ├── @ LambdaNode (location: (13,0)-(13,10)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── operator_loc: (13,0)-(13,2) = "->" - │ ├── opening_loc: (13,3)-(13,4) = "{" - │ ├── closing_loc: (13,9)-(13,10) = "}" - │ ├── parameters: ∅ - │ └── body: - │ @ StatementsNode (location: (13,5)-(13,8)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (13,5)-(13,8)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (13,5)-(13,8) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ LambdaNode (location: (15,0)-(15,15)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── operator_loc: (15,0)-(15,2) = "->" - │ ├── opening_loc: (15,3)-(15,5) = "do" - │ ├── closing_loc: (15,12)-(15,15) = "end" - │ ├── parameters: ∅ - │ └── body: - │ @ StatementsNode (location: (15,7)-(15,10)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (15,7)-(15,10)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (15,7)-(15,10) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ LambdaNode (location: (17,0)-(17,29)) - │ ├── flags: newline - │ ├── locals: [:a, :b, :c, :d, :e] - │ ├── operator_loc: (17,0)-(17,2) = "->" - │ ├── opening_loc: (17,24)-(17,25) = "{" - │ ├── closing_loc: (17,28)-(17,29) = "}" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (17,3)-(17,23)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (17,3)-(17,23)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (17,3)-(17,4)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 1) - │ │ │ │ └── @ OptionalParameterNode (location: (17,6)-(17,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── name_loc: (17,6)-(17,7) = "b" - │ │ │ │ ├── operator_loc: (17,8)-(17,9) = "=" - │ │ │ │ └── value: - │ │ │ │ @ IntegerNode (location: (17,10)-(17,11)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 2) - │ │ │ │ ├── @ RequiredKeywordParameterNode (location: (17,13)-(17,15)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :c - │ │ │ │ │ └── name_loc: (17,13)-(17,15) = "c:" - │ │ │ │ └── @ RequiredKeywordParameterNode (location: (17,17)-(17,19)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :d - │ │ │ │ └── name_loc: (17,17)-(17,19) = "d:" - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: - │ │ │ @ BlockParameterNode (location: (17,21)-(17,23)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :e - │ │ │ ├── name_loc: (17,22)-(17,23) = "e" - │ │ │ └── operator_loc: (17,21)-(17,22) = "&" - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── body: - │ @ StatementsNode (location: (17,26)-(17,27)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ LocalVariableReadNode (location: (17,26)-(17,27)) - │ ├── flags: newline - │ ├── name: :a - │ └── depth: 0 - ├── @ LambdaNode (location: (19,0)-(19,40)) - │ ├── flags: newline - │ ├── locals: [:a, :b, :c, :d, :e, :f, :g] - │ ├── operator_loc: (19,0)-(19,2) = "->" - │ ├── opening_loc: (19,35)-(19,36) = "{" - │ ├── closing_loc: (19,39)-(19,40) = "}" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (19,3)-(19,34)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (19,4)-(19,33)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (19,4)-(19,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 1) - │ │ │ │ └── @ OptionalParameterNode (location: (19,7)-(19,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── name_loc: (19,7)-(19,8) = "b" - │ │ │ │ ├── operator_loc: (19,9)-(19,10) = "=" - │ │ │ │ └── value: - │ │ │ │ @ IntegerNode (location: (19,11)-(19,12)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── rest: - │ │ │ │ @ RestParameterNode (location: (19,14)-(19,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── name_loc: (19,15)-(19,16) = "c" - │ │ │ │ └── operator_loc: (19,14)-(19,15) = "*" - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 2) - │ │ │ │ ├── @ RequiredKeywordParameterNode (location: (19,18)-(19,20)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ └── name_loc: (19,18)-(19,20) = "d:" - │ │ │ │ └── @ RequiredKeywordParameterNode (location: (19,22)-(19,24)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :e - │ │ │ │ └── name_loc: (19,22)-(19,24) = "e:" - │ │ │ ├── keyword_rest: - │ │ │ │ @ KeywordRestParameterNode (location: (19,26)-(19,29)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :f - │ │ │ │ ├── name_loc: (19,28)-(19,29) = "f" - │ │ │ │ └── operator_loc: (19,26)-(19,28) = "**" - │ │ │ └── block: - │ │ │ @ BlockParameterNode (location: (19,31)-(19,33)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :g - │ │ │ ├── name_loc: (19,32)-(19,33) = "g" - │ │ │ └── operator_loc: (19,31)-(19,32) = "&" - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (19,3)-(19,4) = "(" - │ │ └── closing_loc: (19,33)-(19,34) = ")" - │ └── body: - │ @ StatementsNode (location: (19,37)-(19,38)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ LocalVariableReadNode (location: (19,37)-(19,38)) - │ ├── flags: newline - │ ├── name: :a - │ └── depth: 0 - ├── @ LambdaNode (location: (21,0)-(23,3)) - │ ├── flags: newline - │ ├── locals: [:a, :b, :c, :d, :e, :f, :g] - │ ├── operator_loc: (21,0)-(21,2) = "->" - │ ├── opening_loc: (21,35)-(21,37) = "do" - │ ├── closing_loc: (23,0)-(23,3) = "end" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (21,3)-(21,34)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (21,4)-(21,33)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (21,4)-(21,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 1) - │ │ │ │ └── @ OptionalParameterNode (location: (21,7)-(21,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── name_loc: (21,7)-(21,8) = "b" - │ │ │ │ ├── operator_loc: (21,9)-(21,10) = "=" - │ │ │ │ └── value: - │ │ │ │ @ IntegerNode (location: (21,11)-(21,12)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── rest: - │ │ │ │ @ RestParameterNode (location: (21,14)-(21,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── name_loc: (21,15)-(21,16) = "c" - │ │ │ │ └── operator_loc: (21,14)-(21,15) = "*" - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 2) - │ │ │ │ ├── @ RequiredKeywordParameterNode (location: (21,18)-(21,20)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ └── name_loc: (21,18)-(21,20) = "d:" - │ │ │ │ └── @ RequiredKeywordParameterNode (location: (21,22)-(21,24)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :e - │ │ │ │ └── name_loc: (21,22)-(21,24) = "e:" - │ │ │ ├── keyword_rest: - │ │ │ │ @ KeywordRestParameterNode (location: (21,26)-(21,29)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :f - │ │ │ │ ├── name_loc: (21,28)-(21,29) = "f" - │ │ │ │ └── operator_loc: (21,26)-(21,28) = "**" - │ │ │ └── block: - │ │ │ @ BlockParameterNode (location: (21,31)-(21,33)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :g - │ │ │ ├── name_loc: (21,32)-(21,33) = "g" - │ │ │ └── operator_loc: (21,31)-(21,32) = "&" - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (21,3)-(21,4) = "(" - │ │ └── closing_loc: (21,33)-(21,34) = ")" - │ └── body: - │ @ StatementsNode (location: (22,2)-(22,3)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ LocalVariableReadNode (location: (22,2)-(22,3)) - │ ├── flags: newline - │ ├── name: :a - │ └── depth: 0 - ├── @ LambdaNode (location: (25,0)-(25,25)) - │ ├── flags: newline - │ ├── locals: [:a] - │ ├── operator_loc: (25,0)-(25,2) = "->" - │ ├── opening_loc: (25,7)-(25,8) = "{" - │ ├── closing_loc: (25,24)-(25,25) = "}" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (25,3)-(25,6)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (25,4)-(25,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (25,4)-(25,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (25,3)-(25,4) = "(" - │ │ └── closing_loc: (25,5)-(25,6) = ")" - │ └── body: - │ @ StatementsNode (location: (25,9)-(25,23)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ LambdaNode (location: (25,9)-(25,23)) - │ ├── flags: newline - │ ├── locals: [:b] - │ ├── operator_loc: (25,9)-(25,11) = "->" - │ ├── opening_loc: (25,14)-(25,15) = "{" - │ ├── closing_loc: (25,22)-(25,23) = "}" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (25,12)-(25,13)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (25,12)-(25,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (25,12)-(25,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :b - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── body: - │ @ StatementsNode (location: (25,16)-(25,21)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (25,16)-(25,21)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (25,16)-(25,17)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :* - │ ├── message_loc: (25,18)-(25,19) = "*" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (25,20)-(25,21)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (25,20)-(25,21)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ └── depth: 0 - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ LambdaNode (location: (27,0)-(27,19)) - ├── flags: newline - ├── locals: [:a, :b, :c] - ├── operator_loc: (27,0)-(27,2) = "->" - ├── opening_loc: (27,16)-(27,17) = "{" - ├── closing_loc: (27,18)-(27,19) = "}" - ├── parameters: - │ @ BlockParametersNode (location: (27,3)-(27,15)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (27,4)-(27,14)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ MultiTargetNode (location: (27,4)-(27,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 2) - │ │ │ │ ├── @ RequiredParameterNode (location: (27,5)-(27,6)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :a - │ │ │ │ └── @ RequiredParameterNode (location: (27,8)-(27,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :b - │ │ │ ├── rest: ∅ - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: (27,4)-(27,5) = "(" - │ │ │ └── rparen_loc: (27,9)-(27,10) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (27,12)-(27,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ ├── name_loc: (27,13)-(27,14) = "c" - │ │ │ └── operator_loc: (27,12)-(27,13) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (27,3)-(27,4) = "(" - │ └── closing_loc: (27,14)-(27,15) = ")" - └── body: ∅ diff --git a/test/prism/snapshots/range_begin_open_exclusive.txt b/test/prism/snapshots/range_begin_open_exclusive.txt deleted file mode 100644 index e4ca315fc2..0000000000 --- a/test/prism/snapshots/range_begin_open_exclusive.txt +++ /dev/null @@ -1,15 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ RangeNode (location: (1,0)-(1,4)) - ├── flags: newline, static_literal, exclude_end - ├── left: ∅ - ├── right: - │ @ IntegerNode (location: (1,3)-(1,4)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - └── operator_loc: (1,0)-(1,3) = "..." diff --git a/test/prism/snapshots/range_begin_open_inclusive.txt b/test/prism/snapshots/range_begin_open_inclusive.txt deleted file mode 100644 index 45aa88a5d1..0000000000 --- a/test/prism/snapshots/range_begin_open_inclusive.txt +++ /dev/null @@ -1,15 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ RangeNode (location: (1,0)-(1,3)) - ├── flags: newline, static_literal - ├── left: ∅ - ├── right: - │ @ IntegerNode (location: (1,2)-(1,3)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - └── operator_loc: (1,0)-(1,2) = ".." diff --git a/test/prism/snapshots/range_end_open_exclusive.txt b/test/prism/snapshots/range_end_open_exclusive.txt deleted file mode 100644 index d0d3f810a3..0000000000 --- a/test/prism/snapshots/range_end_open_exclusive.txt +++ /dev/null @@ -1,15 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ RangeNode (location: (1,0)-(1,4)) - ├── flags: newline, static_literal, exclude_end - ├── left: - │ @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── right: ∅ - └── operator_loc: (1,1)-(1,4) = "..." diff --git a/test/prism/snapshots/range_end_open_inclusive.txt b/test/prism/snapshots/range_end_open_inclusive.txt deleted file mode 100644 index 8bfee649a3..0000000000 --- a/test/prism/snapshots/range_end_open_inclusive.txt +++ /dev/null @@ -1,15 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ RangeNode (location: (1,0)-(1,3)) - ├── flags: newline, static_literal - ├── left: - │ @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── right: ∅ - └── operator_loc: (1,1)-(1,3) = ".." diff --git a/test/prism/snapshots/ranges.txt b/test/prism/snapshots/ranges.txt deleted file mode 100644 index 81dbe3d901..0000000000 --- a/test/prism/snapshots/ranges.txt +++ /dev/null @@ -1,548 +0,0 @@ -@ ProgramNode (location: (1,0)-(49,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(49,7)) - ├── flags: ∅ - └── body: (length: 25) - ├── @ ParenthesesNode (location: (1,0)-(1,6)) - │ ├── flags: newline - │ ├── body: - │ │ @ StatementsNode (location: (1,1)-(1,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ RangeNode (location: (1,1)-(1,5)) - │ │ ├── flags: newline, static_literal, exclude_end - │ │ ├── left: ∅ - │ │ ├── right: - │ │ │ @ IntegerNode (location: (1,4)-(1,5)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── operator_loc: (1,1)-(1,4) = "..." - │ ├── opening_loc: (1,0)-(1,1) = "(" - │ └── closing_loc: (1,5)-(1,6) = ")" - ├── @ ParenthesesNode (location: (3,0)-(3,5)) - │ ├── flags: newline - │ ├── body: - │ │ @ StatementsNode (location: (3,1)-(3,4)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ RangeNode (location: (3,1)-(3,4)) - │ │ ├── flags: newline, static_literal - │ │ ├── left: ∅ - │ │ ├── right: - │ │ │ @ IntegerNode (location: (3,3)-(3,4)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── operator_loc: (3,1)-(3,3) = ".." - │ ├── opening_loc: (3,0)-(3,1) = "(" - │ └── closing_loc: (3,4)-(3,5) = ")" - ├── @ RangeNode (location: (5,0)-(5,5)) - │ ├── flags: newline, static_literal, exclude_end - │ ├── left: - │ │ @ IntegerNode (location: (5,0)-(5,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── right: - │ │ @ IntegerNode (location: (5,4)-(5,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ └── operator_loc: (5,1)-(5,4) = "..." - ├── @ CallNode (location: (7,0)-(7,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (7,0)-(7,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (7,0)-(7,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :[] - │ ├── message_loc: (7,3)-(7,9) = "[...2]" - │ ├── opening_loc: (7,3)-(7,4) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (7,4)-(7,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ RangeNode (location: (7,4)-(7,8)) - │ │ ├── flags: static_literal, exclude_end - │ │ ├── left: ∅ - │ │ ├── right: - │ │ │ @ IntegerNode (location: (7,7)-(7,8)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── operator_loc: (7,4)-(7,7) = "..." - │ ├── closing_loc: (7,8)-(7,9) = "]" - │ └── block: ∅ - ├── @ HashNode (location: (9,0)-(9,15)) - │ ├── flags: newline - │ ├── opening_loc: (9,0)-(9,1) = "{" - │ ├── elements: (length: 1) - │ │ └── @ AssocNode (location: (9,2)-(9,13)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ SymbolNode (location: (9,2)-(9,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (9,2)-(9,5) = "foo" - │ │ │ ├── closing_loc: (9,5)-(9,6) = ":" - │ │ │ └── unescaped: "foo" - │ │ ├── value: - │ │ │ @ RangeNode (location: (9,7)-(9,13)) - │ │ │ ├── flags: exclude_end - │ │ │ ├── left: ∅ - │ │ │ ├── right: - │ │ │ │ @ CallNode (location: (9,10)-(9,13)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (9,10)-(9,13) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── operator_loc: (9,7)-(9,10) = "..." - │ │ └── operator_loc: ∅ - │ └── closing_loc: (9,14)-(9,15) = "}" - ├── @ ParenthesesNode (location: (11,0)-(11,6)) - │ ├── flags: newline - │ ├── body: - │ │ @ StatementsNode (location: (11,1)-(11,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ RangeNode (location: (11,1)-(11,5)) - │ │ ├── flags: newline, static_literal, exclude_end - │ │ ├── left: - │ │ │ @ IntegerNode (location: (11,1)-(11,2)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: ∅ - │ │ └── operator_loc: (11,2)-(11,5) = "..." - │ ├── opening_loc: (11,0)-(11,1) = "(" - │ └── closing_loc: (11,5)-(11,6) = ")" - ├── @ RangeNode (location: (13,0)-(13,4)) - │ ├── flags: newline, static_literal - │ ├── left: - │ │ @ IntegerNode (location: (13,0)-(13,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── right: - │ │ @ IntegerNode (location: (13,3)-(13,4)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ └── operator_loc: (13,1)-(13,3) = ".." - ├── @ HashNode (location: (15,0)-(15,14)) - │ ├── flags: newline - │ ├── opening_loc: (15,0)-(15,1) = "{" - │ ├── elements: (length: 1) - │ │ └── @ AssocNode (location: (15,2)-(15,12)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ SymbolNode (location: (15,2)-(15,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (15,2)-(15,5) = "foo" - │ │ │ ├── closing_loc: (15,5)-(15,6) = ":" - │ │ │ └── unescaped: "foo" - │ │ ├── value: - │ │ │ @ RangeNode (location: (15,7)-(15,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── left: ∅ - │ │ │ ├── right: - │ │ │ │ @ CallNode (location: (15,9)-(15,12)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (15,9)-(15,12) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── operator_loc: (15,7)-(15,9) = ".." - │ │ └── operator_loc: ∅ - │ └── closing_loc: (15,13)-(15,14) = "}" - ├── @ ParenthesesNode (location: (17,0)-(17,5)) - │ ├── flags: newline - │ ├── body: - │ │ @ StatementsNode (location: (17,1)-(17,4)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ RangeNode (location: (17,1)-(17,4)) - │ │ ├── flags: newline, static_literal - │ │ ├── left: - │ │ │ @ IntegerNode (location: (17,1)-(17,2)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: ∅ - │ │ └── operator_loc: (17,2)-(17,4) = ".." - │ ├── opening_loc: (17,0)-(17,1) = "(" - │ └── closing_loc: (17,4)-(17,5) = ")" - ├── @ RangeNode (location: (19,0)-(19,8)) - │ ├── flags: newline - │ ├── left: - │ │ @ IntegerNode (location: (19,0)-(19,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── right: - │ │ @ RangeNode (location: (19,5)-(19,8)) - │ │ ├── flags: static_literal - │ │ ├── left: ∅ - │ │ ├── right: - │ │ │ @ IntegerNode (location: (19,7)-(19,8)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── operator_loc: (19,5)-(19,7) = ".." - │ └── operator_loc: (19,2)-(19,4) = ".." - ├── @ AndNode (location: (21,0)-(21,8)) - │ ├── flags: newline - │ ├── left: - │ │ @ RangeNode (location: (21,0)-(21,3)) - │ │ ├── flags: static_literal - │ │ ├── left: - │ │ │ @ IntegerNode (location: (21,0)-(21,1)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: ∅ - │ │ └── operator_loc: (21,1)-(21,3) = ".." - │ ├── right: - │ │ @ IntegerNode (location: (21,7)-(21,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ └── operator_loc: (21,4)-(21,6) = "&&" - ├── @ CallNode (location: (23,0)-(23,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ RangeNode (location: (23,0)-(23,3)) - │ │ ├── flags: static_literal - │ │ ├── left: - │ │ │ @ IntegerNode (location: (23,0)-(23,1)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: ∅ - │ │ └── operator_loc: (23,1)-(23,3) = ".." - │ ├── call_operator_loc: ∅ - │ ├── name: :== - │ ├── message_loc: (23,4)-(23,6) = "==" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (23,7)-(23,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (23,7)-(23,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (25,0)-(25,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ RangeNode (location: (25,0)-(25,3)) - │ │ ├── flags: static_literal - │ │ ├── left: - │ │ │ @ IntegerNode (location: (25,0)-(25,1)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: ∅ - │ │ └── operator_loc: (25,1)-(25,3) = ".." - │ ├── call_operator_loc: ∅ - │ ├── name: :!= - │ ├── message_loc: (25,4)-(25,6) = "!=" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (25,7)-(25,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (25,7)-(25,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (27,0)-(27,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ RangeNode (location: (27,0)-(27,3)) - │ │ ├── flags: static_literal - │ │ ├── left: - │ │ │ @ IntegerNode (location: (27,0)-(27,1)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: ∅ - │ │ └── operator_loc: (27,1)-(27,3) = ".." - │ ├── call_operator_loc: ∅ - │ ├── name: :=== - │ ├── message_loc: (27,4)-(27,7) = "===" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (27,8)-(27,9)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (27,8)-(27,9)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (29,0)-(29,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ RangeNode (location: (29,0)-(29,3)) - │ │ ├── flags: static_literal - │ │ ├── left: - │ │ │ @ IntegerNode (location: (29,0)-(29,1)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: ∅ - │ │ └── operator_loc: (29,1)-(29,3) = ".." - │ ├── call_operator_loc: ∅ - │ ├── name: :<=> - │ ├── message_loc: (29,4)-(29,7) = "<=>" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (29,8)-(29,9)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (29,8)-(29,9)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (31,0)-(31,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ RangeNode (location: (31,0)-(31,3)) - │ │ ├── flags: static_literal - │ │ ├── left: - │ │ │ @ IntegerNode (location: (31,0)-(31,1)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: ∅ - │ │ └── operator_loc: (31,1)-(31,3) = ".." - │ ├── call_operator_loc: ∅ - │ ├── name: :=~ - │ ├── message_loc: (31,4)-(31,6) = "=~" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (31,7)-(31,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (31,7)-(31,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (33,0)-(33,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ RangeNode (location: (33,0)-(33,3)) - │ │ ├── flags: static_literal - │ │ ├── left: - │ │ │ @ IntegerNode (location: (33,0)-(33,1)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: ∅ - │ │ └── operator_loc: (33,1)-(33,3) = ".." - │ ├── call_operator_loc: ∅ - │ ├── name: :!~ - │ ├── message_loc: (33,4)-(33,6) = "!~" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (33,7)-(33,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (33,7)-(33,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (35,0)-(35,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ RangeNode (location: (35,0)-(35,3)) - │ │ ├── flags: static_literal - │ │ ├── left: - │ │ │ @ IntegerNode (location: (35,0)-(35,1)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: ∅ - │ │ └── operator_loc: (35,1)-(35,3) = ".." - │ ├── call_operator_loc: ∅ - │ ├── name: :< - │ ├── message_loc: (35,4)-(35,5) = "<" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (35,6)-(35,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (35,6)-(35,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (37,0)-(37,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ RangeNode (location: (37,0)-(37,3)) - │ │ ├── flags: static_literal - │ │ ├── left: - │ │ │ @ IntegerNode (location: (37,0)-(37,1)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: ∅ - │ │ └── operator_loc: (37,1)-(37,3) = ".." - │ ├── call_operator_loc: ∅ - │ ├── name: :> - │ ├── message_loc: (37,4)-(37,5) = ">" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (37,6)-(37,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (37,6)-(37,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (39,0)-(39,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ RangeNode (location: (39,0)-(39,3)) - │ │ ├── flags: static_literal - │ │ ├── left: - │ │ │ @ IntegerNode (location: (39,0)-(39,1)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: ∅ - │ │ └── operator_loc: (39,1)-(39,3) = ".." - │ ├── call_operator_loc: ∅ - │ ├── name: :<= - │ ├── message_loc: (39,4)-(39,6) = "<=" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (39,7)-(39,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (39,7)-(39,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (41,0)-(41,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ RangeNode (location: (41,0)-(41,3)) - │ │ ├── flags: static_literal - │ │ ├── left: - │ │ │ @ IntegerNode (location: (41,0)-(41,1)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: ∅ - │ │ └── operator_loc: (41,1)-(41,3) = ".." - │ ├── call_operator_loc: ∅ - │ ├── name: :>= - │ ├── message_loc: (41,4)-(41,6) = ">=" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (41,7)-(41,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (41,7)-(41,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (43,0)-(43,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ RangeNode (location: (43,0)-(43,3)) - │ │ ├── flags: static_literal - │ │ ├── left: - │ │ │ @ IntegerNode (location: (43,0)-(43,1)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: ∅ - │ │ └── operator_loc: (43,1)-(43,3) = ".." - │ ├── call_operator_loc: ∅ - │ ├── name: :<< - │ ├── message_loc: (43,4)-(43,6) = "<<" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (43,7)-(43,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (43,7)-(43,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (45,0)-(45,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ RangeNode (location: (45,0)-(45,3)) - │ │ ├── flags: static_literal - │ │ ├── left: - │ │ │ @ IntegerNode (location: (45,0)-(45,1)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: ∅ - │ │ └── operator_loc: (45,1)-(45,3) = ".." - │ ├── call_operator_loc: ∅ - │ ├── name: :>> - │ ├── message_loc: (45,4)-(45,6) = ">>" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (45,7)-(45,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (45,7)-(45,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ RangeNode (location: (47,0)-(47,7)) - │ ├── flags: newline - │ ├── left: - │ │ @ IntegerNode (location: (47,0)-(47,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── right: - │ │ @ CallNode (location: (47,4)-(47,7)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ IntegerNode (location: (47,6)-(47,7)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :+@ - │ │ ├── message_loc: (47,4)-(47,5) = "+" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (47,1)-(47,3) = ".." - └── @ RangeNode (location: (49,0)-(49,7)) - ├── flags: newline - ├── left: - │ @ IntegerNode (location: (49,0)-(49,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── right: - │ @ CallNode (location: (49,4)-(49,7)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ IntegerNode (location: (49,6)-(49,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── call_operator_loc: ∅ - │ ├── name: :-@ - │ ├── message_loc: (49,4)-(49,5) = "-" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── operator_loc: (49,1)-(49,3) = ".." diff --git a/test/prism/snapshots/regex.txt b/test/prism/snapshots/regex.txt deleted file mode 100644 index c90e689760..0000000000 --- a/test/prism/snapshots/regex.txt +++ /dev/null @@ -1,545 +0,0 @@ -@ ProgramNode (location: (1,0)-(48,10)) -├── flags: ∅ -├── locals: [:foo, :ab, :abc, :a] -└── statements: - @ StatementsNode (location: (1,0)-(48,10)) - ├── flags: ∅ - └── body: (length: 26) - ├── @ CallNode (location: (1,0)-(1,9)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,0)-(1,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,4)-(1,9)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ RegularExpressionNode (location: (1,4)-(1,9)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,4)-(1,5) = "/" - │ │ ├── content_loc: (1,5)-(1,8) = "bar" - │ │ ├── closing_loc: (1,8)-(1,9) = "/" - │ │ └── unescaped: "bar" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ RegularExpressionNode (location: (3,0)-(3,8)) - │ ├── flags: newline, static_literal, ignore_case, forced_us_ascii_encoding - │ ├── opening_loc: (3,0)-(3,3) = "%r{" - │ ├── content_loc: (3,3)-(3,6) = "abc" - │ ├── closing_loc: (3,6)-(3,8) = "}i" - │ └── unescaped: "abc" - ├── @ RegularExpressionNode (location: (5,0)-(5,5)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (5,0)-(5,1) = "/" - │ ├── content_loc: (5,1)-(5,4) = "a\\b" - │ ├── closing_loc: (5,4)-(5,5) = "/" - │ └── unescaped: "a\\b" - ├── @ InterpolatedRegularExpressionNode (location: (7,0)-(7,11)) - │ ├── flags: newline - │ ├── opening_loc: (7,0)-(7,1) = "/" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (7,1)-(7,5)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (7,1)-(7,5) = "aaa " - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "aaa " - │ │ └── @ EmbeddedVariableNode (location: (7,5)-(7,10)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (7,5)-(7,6) = "#" - │ │ └── variable: - │ │ @ GlobalVariableReadNode (location: (7,6)-(7,10)) - │ │ ├── flags: ∅ - │ │ └── name: :$bbb - │ └── closing_loc: (7,10)-(7,11) = "/" - ├── @ InterpolatedRegularExpressionNode (location: (9,0)-(9,16)) - │ ├── flags: newline - │ ├── opening_loc: (9,0)-(9,1) = "/" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (9,1)-(9,5)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (9,1)-(9,5) = "aaa " - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "aaa " - │ │ ├── @ EmbeddedStatementsNode (location: (9,5)-(9,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (9,5)-(9,7) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (9,7)-(9,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (9,7)-(9,10)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bbb - │ │ │ │ ├── message_loc: (9,7)-(9,10) = "bbb" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── closing_loc: (9,10)-(9,11) = "}" - │ │ └── @ StringNode (location: (9,11)-(9,15)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (9,11)-(9,15) = " ccc" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: " ccc" - │ └── closing_loc: (9,15)-(9,16) = "/" - ├── @ ArrayNode (location: (11,0)-(11,27)) - │ ├── flags: newline - │ ├── elements: (length: 2) - │ │ ├── @ MatchWriteNode (location: (11,1)-(11,21)) - │ │ │ ├── flags: ∅ - │ │ │ ├── call: - │ │ │ │ @ CallNode (location: (11,1)-(11,21)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── receiver: - │ │ │ │ │ @ RegularExpressionNode (location: (11,1)-(11,14)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: (11,1)-(11,2) = "/" - │ │ │ │ │ ├── content_loc: (11,2)-(11,13) = "(?<foo>bar)" - │ │ │ │ │ ├── closing_loc: (11,13)-(11,14) = "/" - │ │ │ │ │ └── unescaped: "(?<foo>bar)" - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :=~ - │ │ │ │ ├── message_loc: (11,15)-(11,17) = "=~" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (11,18)-(11,21)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (11,18)-(11,21)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :baz - │ │ │ │ │ ├── message_loc: (11,18)-(11,21) = "baz" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── targets: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (11,5)-(11,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :foo - │ │ │ └── depth: 0 - │ │ └── @ LocalVariableReadNode (location: (11,23)-(11,26)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── opening_loc: (11,0)-(11,1) = "[" - │ └── closing_loc: (11,26)-(11,27) = "]" - ├── @ RegularExpressionNode (location: (13,0)-(13,6)) - │ ├── flags: newline, static_literal, ignore_case, forced_us_ascii_encoding - │ ├── opening_loc: (13,0)-(13,1) = "/" - │ ├── content_loc: (13,1)-(13,4) = "abc" - │ ├── closing_loc: (13,4)-(13,6) = "/i" - │ └── unescaped: "abc" - ├── @ RegularExpressionNode (location: (15,0)-(15,26)) - │ ├── flags: newline, static_literal, ignore_case, forced_us_ascii_encoding - │ ├── opening_loc: (15,0)-(15,3) = "%r/" - │ ├── content_loc: (15,3)-(15,24) = "[a-z$._?][\\w$.?\#@~]*:" - │ ├── closing_loc: (15,24)-(15,26) = "/i" - │ └── unescaped: "[a-z$._?][\\w$.?\#@~]*:" - ├── @ RegularExpressionNode (location: (17,0)-(17,37)) - │ ├── flags: newline, static_literal, ignore_case, forced_us_ascii_encoding - │ ├── opening_loc: (17,0)-(17,3) = "%r/" - │ ├── content_loc: (17,3)-(17,35) = "([a-z$._?][\\w$.?\#@~]*)(\\s+)(equ)" - │ ├── closing_loc: (17,35)-(17,37) = "/i" - │ └── unescaped: "([a-z$._?][\\w$.?\#@~]*)(\\s+)(equ)" - ├── @ RegularExpressionNode (location: (19,0)-(19,25)) - │ ├── flags: newline, static_literal, ignore_case, forced_us_ascii_encoding - │ ├── opening_loc: (19,0)-(19,3) = "%r/" - │ ├── content_loc: (19,3)-(19,23) = "[a-z$._?][\\w$.?\#@~]*" - │ ├── closing_loc: (19,23)-(19,25) = "/i" - │ └── unescaped: "[a-z$._?][\\w$.?\#@~]*" - ├── @ RegularExpressionNode (location: (21,0)-(24,1)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (21,0)-(21,3) = "%r(" - │ ├── content_loc: (21,3)-(24,0) = "\n(?:[\#$%_']|\\(\\)|\\(,\\)|\\[\\]|[0-9])*\n (?:[\#$%_']+)\n" - │ ├── closing_loc: (24,0)-(24,1) = ")" - │ └── unescaped: "\n(?:[\#$%_']|\\(\\)|\\(,\\)|\\[\\]|[0-9])*\n (?:[\#$%_']+)\n" - ├── @ CallNode (location: (26,0)-(26,16)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ RegularExpressionNode (location: (26,0)-(26,8)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (26,0)-(26,1) = "/" - │ │ ├── content_loc: (26,1)-(26,7) = "(?#\\))" - │ │ ├── closing_loc: (26,7)-(26,8) = "/" - │ │ └── unescaped: "(?#\\))" - │ ├── call_operator_loc: ∅ - │ ├── name: :=~ - │ ├── message_loc: (26,9)-(26,11) = "=~" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (26,12)-(26,16)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (26,12)-(26,16)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (26,12)-(26,13) = "\"" - │ │ ├── content_loc: (26,13)-(26,15) = "hi" - │ │ ├── closing_loc: (26,15)-(26,16) = "\"" - │ │ └── unescaped: "hi" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ RegularExpressionNode (location: (28,0)-(28,9)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (28,0)-(28,3) = "%r#" - │ ├── content_loc: (28,3)-(28,8) = "pound" - │ ├── closing_loc: (28,8)-(28,9) = "#" - │ └── unescaped: "pound" - ├── @ InterpolatedRegularExpressionNode (location: (30,0)-(30,13)) - │ ├── flags: newline, once - │ ├── opening_loc: (30,0)-(30,1) = "/" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (30,1)-(30,5)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (30,1)-(30,5) = "aaa " - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "aaa " - │ │ └── @ EmbeddedStatementsNode (location: (30,5)-(30,11)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (30,5)-(30,7) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (30,7)-(30,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (30,7)-(30,10)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bbb - │ │ │ ├── message_loc: (30,7)-(30,10) = "bbb" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── closing_loc: (30,10)-(30,11) = "}" - │ └── closing_loc: (30,11)-(30,13) = "/o" - ├── @ MatchWriteNode (location: (32,0)-(33,10)) - │ ├── flags: newline - │ ├── call: - │ │ @ CallNode (location: (32,0)-(33,10)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ RegularExpressionNode (location: (32,0)-(33,4)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (32,0)-(32,1) = "/" - │ │ │ ├── content_loc: (32,1)-(33,3) = "(?<a\\\nb>)" - │ │ │ ├── closing_loc: (33,3)-(33,4) = "/" - │ │ │ └── unescaped: "(?<ab>)" - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :=~ - │ │ ├── message_loc: (33,5)-(33,7) = "=~" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (33,8)-(33,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ StringNode (location: (33,8)-(33,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (33,8)-(33,9) = "\"" - │ │ │ ├── content_loc: (33,9)-(33,9) = "" - │ │ │ ├── closing_loc: (33,9)-(33,10) = "\"" - │ │ │ └── unescaped: "" - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── targets: (length: 1) - │ └── @ LocalVariableTargetNode (location: (32,0)-(33,4)) - │ ├── flags: ∅ - │ ├── name: :ab - │ └── depth: 0 - ├── @ LocalVariableReadNode (location: (33,12)-(33,14)) - │ ├── flags: newline - │ ├── name: :ab - │ └── depth: 0 - ├── @ MatchWriteNode (location: (35,0)-(35,24)) - │ ├── flags: newline - │ ├── call: - │ │ @ CallNode (location: (35,0)-(35,24)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ RegularExpressionNode (location: (35,0)-(35,18)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (35,0)-(35,1) = "/" - │ │ │ ├── content_loc: (35,1)-(35,17) = "(?<abc>)(?<abc>)" - │ │ │ ├── closing_loc: (35,17)-(35,18) = "/" - │ │ │ └── unescaped: "(?<abc>)(?<abc>)" - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :=~ - │ │ ├── message_loc: (35,19)-(35,21) = "=~" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (35,22)-(35,24)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ StringNode (location: (35,22)-(35,24)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (35,22)-(35,23) = "\"" - │ │ │ ├── content_loc: (35,23)-(35,23) = "" - │ │ │ ├── closing_loc: (35,23)-(35,24) = "\"" - │ │ │ └── unescaped: "" - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── targets: (length: 1) - │ └── @ LocalVariableTargetNode (location: (35,4)-(35,7)) - │ ├── flags: ∅ - │ ├── name: :abc - │ └── depth: 0 - ├── @ LocalVariableReadNode (location: (35,26)-(35,29)) - │ ├── flags: newline - │ ├── name: :abc - │ └── depth: 0 - ├── @ CallNode (location: (37,0)-(37,16)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ RegularExpressionNode (location: (37,0)-(37,10)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (37,0)-(37,1) = "/" - │ │ ├── content_loc: (37,1)-(37,9) = "(?<a b>)" - │ │ ├── closing_loc: (37,9)-(37,10) = "/" - │ │ └── unescaped: "(?<a b>)" - │ ├── call_operator_loc: ∅ - │ ├── name: :=~ - │ ├── message_loc: (37,11)-(37,13) = "=~" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (37,14)-(37,16)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (37,14)-(37,16)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (37,14)-(37,15) = "\"" - │ │ ├── content_loc: (37,15)-(37,15) = "" - │ │ ├── closing_loc: (37,15)-(37,16) = "\"" - │ │ └── unescaped: "" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ LocalVariableWriteNode (location: (39,0)-(39,5)) - │ ├── flags: newline - │ ├── name: :a - │ ├── depth: 0 - │ ├── name_loc: (39,0)-(39,1) = "a" - │ ├── value: - │ │ @ IntegerNode (location: (39,4)-(39,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (39,2)-(39,3) = "=" - ├── @ CallNode (location: (40,0)-(40,24)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (40,0)-(40,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (40,4)-(40,24)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (40,6)-(40,22)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ MatchWriteNode (location: (40,6)-(40,22)) - │ │ ├── flags: newline - │ │ ├── call: - │ │ │ @ CallNode (location: (40,6)-(40,22)) - │ │ │ ├── flags: ∅ - │ │ │ ├── receiver: - │ │ │ │ @ RegularExpressionNode (location: (40,6)-(40,14)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (40,6)-(40,7) = "/" - │ │ │ │ ├── content_loc: (40,7)-(40,13) = "(?<a>)" - │ │ │ │ ├── closing_loc: (40,13)-(40,14) = "/" - │ │ │ │ └── unescaped: "(?<a>)" - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :=~ - │ │ │ ├── message_loc: (40,15)-(40,17) = "=~" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (40,18)-(40,22)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (40,18)-(40,22)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :to_s - │ │ │ │ ├── message_loc: (40,18)-(40,22) = "to_s" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── targets: (length: 1) - │ │ └── @ LocalVariableTargetNode (location: (40,10)-(40,11)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 1 - │ ├── opening_loc: (40,4)-(40,5) = "{" - │ └── closing_loc: (40,23)-(40,24) = "}" - ├── @ MatchWriteNode (location: (42,0)-(42,16)) - │ ├── flags: newline - │ ├── call: - │ │ @ CallNode (location: (42,0)-(42,16)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ RegularExpressionNode (location: (42,0)-(42,10)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (42,0)-(42,1) = "/" - │ │ │ ├── content_loc: (42,1)-(42,9) = "(?<foo>)" - │ │ │ ├── closing_loc: (42,9)-(42,10) = "/" - │ │ │ └── unescaped: "(?<foo>)" - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :=~ - │ │ ├── message_loc: (42,11)-(42,13) = "=~" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (42,14)-(42,16)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ StringNode (location: (42,14)-(42,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (42,14)-(42,15) = "\"" - │ │ │ ├── content_loc: (42,15)-(42,15) = "" - │ │ │ ├── closing_loc: (42,15)-(42,16) = "\"" - │ │ │ └── unescaped: "" - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── targets: (length: 1) - │ └── @ LocalVariableTargetNode (location: (42,4)-(42,7)) - │ ├── flags: ∅ - │ ├── name: :foo - │ └── depth: 0 - ├── @ CallNode (location: (43,0)-(43,16)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ RegularExpressionNode (location: (43,0)-(43,10)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (43,0)-(43,1) = "/" - │ │ ├── content_loc: (43,1)-(43,9) = "(?<Foo>)" - │ │ ├── closing_loc: (43,9)-(43,10) = "/" - │ │ └── unescaped: "(?<Foo>)" - │ ├── call_operator_loc: ∅ - │ ├── name: :=~ - │ ├── message_loc: (43,11)-(43,13) = "=~" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (43,14)-(43,16)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (43,14)-(43,16)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (43,14)-(43,15) = "\"" - │ │ ├── content_loc: (43,15)-(43,15) = "" - │ │ ├── closing_loc: (43,15)-(43,16) = "\"" - │ │ └── unescaped: "" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (45,0)-(45,16)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ RegularExpressionNode (location: (45,0)-(45,10)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (45,0)-(45,1) = "/" - │ │ ├── content_loc: (45,1)-(45,9) = "(?<nil>)" - │ │ ├── closing_loc: (45,9)-(45,10) = "/" - │ │ └── unescaped: "(?<nil>)" - │ ├── call_operator_loc: ∅ - │ ├── name: :=~ - │ ├── message_loc: (45,11)-(45,13) = "=~" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (45,14)-(45,16)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (45,14)-(45,16)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (45,14)-(45,15) = "\"" - │ │ ├── content_loc: (45,15)-(45,15) = "" - │ │ ├── closing_loc: (45,15)-(45,16) = "\"" - │ │ └── unescaped: "" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ DefNode (location: (46,0)-(46,32)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (46,4)-(46,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (46,8)-(46,12)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ RequiredKeywordParameterNode (location: (46,8)-(46,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :nil - │ │ │ └── name_loc: (46,8)-(46,12) = "nil:" - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (46,16)-(46,32)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ MatchWriteNode (location: (46,16)-(46,32)) - │ │ ├── flags: ∅ - │ │ ├── call: - │ │ │ @ CallNode (location: (46,16)-(46,32)) - │ │ │ ├── flags: ∅ - │ │ │ ├── receiver: - │ │ │ │ @ RegularExpressionNode (location: (46,16)-(46,26)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (46,16)-(46,17) = "/" - │ │ │ │ ├── content_loc: (46,17)-(46,25) = "(?<nil>)" - │ │ │ │ ├── closing_loc: (46,25)-(46,26) = "/" - │ │ │ │ └── unescaped: "(?<nil>)" - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :=~ - │ │ │ ├── message_loc: (46,27)-(46,29) = "=~" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (46,30)-(46,32)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ StringNode (location: (46,30)-(46,32)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (46,30)-(46,31) = "\"" - │ │ │ │ ├── content_loc: (46,31)-(46,31) = "" - │ │ │ │ ├── closing_loc: (46,31)-(46,32) = "\"" - │ │ │ │ └── unescaped: "" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── targets: (length: 1) - │ │ └── @ LocalVariableTargetNode (location: (46,20)-(46,23)) - │ │ ├── flags: ∅ - │ │ ├── name: :nil - │ │ └── depth: 0 - │ ├── locals: [:nil] - │ ├── def_keyword_loc: (46,0)-(46,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (46,7)-(46,8) = "(" - │ ├── rparen_loc: (46,12)-(46,13) = ")" - │ ├── equal_loc: (46,14)-(46,15) = "=" - │ └── end_keyword_loc: ∅ - └── @ RegularExpressionNode (location: (48,0)-(48,10)) - ├── flags: newline, static_literal, extended, forced_us_ascii_encoding - ├── opening_loc: (48,0)-(48,1) = "/" - ├── content_loc: (48,1)-(48,8) = "(?-x:#)" - ├── closing_loc: (48,8)-(48,10) = "/x" - └── unescaped: "(?-x:#)" diff --git a/test/prism/snapshots/regex_char_width.txt b/test/prism/snapshots/regex_char_width.txt deleted file mode 100644 index 664e4e8850..0000000000 --- a/test/prism/snapshots/regex_char_width.txt +++ /dev/null @@ -1,57 +0,0 @@ -@ ProgramNode (location: (2,0)-(3,6)) -├── flags: ∅ -├── locals: [:a, :b] -└── statements: - @ StatementsNode (location: (2,0)-(3,6)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ MatchWriteNode (location: (2,0)-(2,36)) - │ ├── flags: newline - │ ├── call: - │ │ @ CallNode (location: (2,0)-(2,36)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ RegularExpressionNode (location: (2,0)-(2,22)) - │ │ │ ├── flags: static_literal - │ │ │ ├── opening_loc: (2,0)-(2,1) = "/" - │ │ │ ├── content_loc: (2,1)-(2,21) = "\x{E285}\xA7(?<a>.)\x{E285}\xA9(?<b>.)" - │ │ │ ├── closing_loc: (2,21)-(2,22) = "/" - │ │ │ └── unescaped: "\x{E285}\xA7(?<a>.)\x{E285}\xA9(?<b>.)" - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :=~ - │ │ ├── message_loc: (2,23)-(2,25) = "=~" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (2,26)-(2,36)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ StringNode (location: (2,26)-(2,36)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (2,26)-(2,27) = "'" - │ │ │ ├── content_loc: (2,27)-(2,35) = "\x{E285}\xA7a\x{E285}\xA9b" - │ │ │ ├── closing_loc: (2,35)-(2,36) = "'" - │ │ │ └── unescaped: "\x{E285}\xA7a\x{E285}\xA9b" - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── targets: (length: 2) - │ ├── @ LocalVariableTargetNode (location: (2,7)-(2,8)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ └── @ LocalVariableTargetNode (location: (2,17)-(2,18)) - │ ├── flags: ∅ - │ ├── name: :b - │ └── depth: 0 - └── @ ArrayNode (location: (3,0)-(3,6)) - ├── flags: newline - ├── elements: (length: 2) - │ ├── @ LocalVariableReadNode (location: (3,1)-(3,2)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ └── @ LocalVariableReadNode (location: (3,4)-(3,5)) - │ ├── flags: ∅ - │ ├── name: :b - │ └── depth: 0 - ├── opening_loc: (3,0)-(3,1) = "[" - └── closing_loc: (3,5)-(3,6) = "]" diff --git a/test/prism/snapshots/repeat_parameters.txt b/test/prism/snapshots/repeat_parameters.txt deleted file mode 100644 index 1dbf120e9c..0000000000 --- a/test/prism/snapshots/repeat_parameters.txt +++ /dev/null @@ -1,509 +0,0 @@ -@ ProgramNode (location: (1,0)-(38,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(38,3)) - ├── flags: ∅ - └── body: (length: 13) - ├── @ DefNode (location: (1,0)-(2,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (1,4)-(1,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,8)-(1,12)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ RequiredParameterNode (location: (1,8)-(1,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ └── @ RequiredParameterNode (location: (1,11)-(1,12)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :_ - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:a, :_] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (1,7)-(1,8) = "(" - │ ├── rparen_loc: (1,12)-(1,13) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (2,0)-(2,3) = "end" - ├── @ DefNode (location: (4,0)-(5,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (4,4)-(4,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (4,8)-(4,15)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 3) - │ │ │ ├── @ RequiredParameterNode (location: (4,8)-(4,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── @ RequiredParameterNode (location: (4,11)-(4,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :_ - │ │ │ └── @ RequiredParameterNode (location: (4,14)-(4,15)) - │ │ │ ├── flags: repeated_parameter - │ │ │ └── name: :_ - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:a, :_] - │ ├── def_keyword_loc: (4,0)-(4,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (4,7)-(4,8) = "(" - │ ├── rparen_loc: (4,15)-(4,16) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (5,0)-(5,3) = "end" - ├── @ DefNode (location: (7,0)-(8,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (7,4)-(7,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (7,8)-(7,19)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 4) - │ │ │ ├── @ RequiredParameterNode (location: (7,8)-(7,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── @ RequiredParameterNode (location: (7,11)-(7,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :_ - │ │ │ ├── @ RequiredParameterNode (location: (7,14)-(7,15)) - │ │ │ │ ├── flags: repeated_parameter - │ │ │ │ └── name: :_ - │ │ │ └── @ RequiredParameterNode (location: (7,17)-(7,19)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :_b - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:a, :_, :_b] - │ ├── def_keyword_loc: (7,0)-(7,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (7,7)-(7,8) = "(" - │ ├── rparen_loc: (7,19)-(7,20) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (8,0)-(8,3) = "end" - ├── @ DefNode (location: (10,0)-(11,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (10,4)-(10,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (10,8)-(10,23)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 5) - │ │ │ ├── @ RequiredParameterNode (location: (10,8)-(10,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── @ RequiredParameterNode (location: (10,11)-(10,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :_ - │ │ │ ├── @ RequiredParameterNode (location: (10,14)-(10,15)) - │ │ │ │ ├── flags: repeated_parameter - │ │ │ │ └── name: :_ - │ │ │ ├── @ RequiredParameterNode (location: (10,17)-(10,19)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :_b - │ │ │ └── @ RequiredParameterNode (location: (10,21)-(10,23)) - │ │ │ ├── flags: repeated_parameter - │ │ │ └── name: :_b - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:a, :_, :_b] - │ ├── def_keyword_loc: (10,0)-(10,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (10,7)-(10,8) = "(" - │ ├── rparen_loc: (10,23)-(10,24) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (11,0)-(11,3) = "end" - ├── @ DefNode (location: (13,0)-(14,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (13,4)-(13,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (13,8)-(13,35)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 3) - │ │ │ ├── @ RequiredParameterNode (location: (13,8)-(13,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── @ MultiTargetNode (location: (13,11)-(13,22)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── lefts: (length: 1) - │ │ │ │ │ └── @ RequiredParameterNode (location: (13,12)-(13,13)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :b - │ │ │ │ ├── rest: - │ │ │ │ │ @ SplatNode (location: (13,15)-(13,18)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── operator_loc: (13,15)-(13,16) = "*" - │ │ │ │ │ └── expression: - │ │ │ │ │ @ RequiredParameterNode (location: (13,16)-(13,18)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :_c - │ │ │ │ ├── rights: (length: 1) - │ │ │ │ │ └── @ RequiredParameterNode (location: (13,20)-(13,21)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :d - │ │ │ │ ├── lparen_loc: (13,11)-(13,12) = "(" - │ │ │ │ └── rparen_loc: (13,21)-(13,22) = ")" - │ │ │ └── @ MultiTargetNode (location: (13,24)-(13,35)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (13,25)-(13,26)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :e - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (13,28)-(13,31)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (13,28)-(13,29) = "*" - │ │ │ │ └── expression: - │ │ │ │ @ RequiredParameterNode (location: (13,29)-(13,31)) - │ │ │ │ ├── flags: repeated_parameter - │ │ │ │ └── name: :_c - │ │ │ ├── rights: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (13,33)-(13,34)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :f - │ │ │ ├── lparen_loc: (13,24)-(13,25) = "(" - │ │ │ └── rparen_loc: (13,34)-(13,35) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:a, :b, :_c, :d, :e, :f] - │ ├── def_keyword_loc: (13,0)-(13,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (13,7)-(13,8) = "(" - │ ├── rparen_loc: (13,35)-(13,36) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (14,0)-(14,3) = "end" - ├── @ DefNode (location: (16,0)-(17,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (16,4)-(16,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (16,8)-(16,20)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 4) - │ │ │ ├── @ RequiredParameterNode (location: (16,8)-(16,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :_a - │ │ │ ├── @ RequiredParameterNode (location: (16,12)-(16,14)) - │ │ │ │ ├── flags: repeated_parameter - │ │ │ │ └── name: :_a - │ │ │ ├── @ RequiredParameterNode (location: (16,16)-(16,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :b - │ │ │ └── @ RequiredParameterNode (location: (16,19)-(16,20)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :c - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:_a, :b, :c] - │ ├── def_keyword_loc: (16,0)-(16,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (16,7)-(16,8) = "(" - │ ├── rparen_loc: (16,20)-(16,21) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (17,0)-(17,3) = "end" - ├── @ DefNode (location: (19,0)-(20,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (19,4)-(19,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (19,8)-(19,32)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ MultiTargetNode (location: (19,8)-(19,19)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── lefts: (length: 1) - │ │ │ │ │ └── @ RequiredParameterNode (location: (19,9)-(19,10)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :a - │ │ │ │ ├── rest: - │ │ │ │ │ @ SplatNode (location: (19,12)-(19,15)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── operator_loc: (19,12)-(19,13) = "*" - │ │ │ │ │ └── expression: - │ │ │ │ │ @ RequiredParameterNode (location: (19,13)-(19,15)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :_b - │ │ │ │ ├── rights: (length: 1) - │ │ │ │ │ └── @ RequiredParameterNode (location: (19,17)-(19,18)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :c - │ │ │ │ ├── lparen_loc: (19,8)-(19,9) = "(" - │ │ │ │ └── rparen_loc: (19,18)-(19,19) = ")" - │ │ │ └── @ MultiTargetNode (location: (19,21)-(19,32)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (19,22)-(19,23)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :d - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (19,25)-(19,28)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (19,25)-(19,26) = "*" - │ │ │ │ └── expression: - │ │ │ │ @ RequiredParameterNode (location: (19,26)-(19,28)) - │ │ │ │ ├── flags: repeated_parameter - │ │ │ │ └── name: :_b - │ │ │ ├── rights: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (19,30)-(19,31)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :e - │ │ │ ├── lparen_loc: (19,21)-(19,22) = "(" - │ │ │ └── rparen_loc: (19,31)-(19,32) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:a, :_b, :c, :d, :e] - │ ├── def_keyword_loc: (19,0)-(19,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (19,7)-(19,8) = "(" - │ ├── rparen_loc: (19,32)-(19,33) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (20,0)-(20,3) = "end" - ├── @ DefNode (location: (22,0)-(23,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (22,4)-(22,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (22,8)-(22,22)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 2) - │ │ │ ├── @ OptionalParameterNode (location: (22,8)-(22,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :_a - │ │ │ │ ├── name_loc: (22,8)-(22,10) = "_a" - │ │ │ │ ├── operator_loc: (22,11)-(22,12) = "=" - │ │ │ │ └── value: - │ │ │ │ @ IntegerNode (location: (22,13)-(22,14)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── @ OptionalParameterNode (location: (22,16)-(22,22)) - │ │ │ ├── flags: repeated_parameter - │ │ │ ├── name: :_a - │ │ │ ├── name_loc: (22,16)-(22,18) = "_a" - │ │ │ ├── operator_loc: (22,19)-(22,20) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (22,21)-(22,22)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:_a] - │ ├── def_keyword_loc: (22,0)-(22,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (22,7)-(22,8) = "(" - │ ├── rparen_loc: (22,22)-(22,23) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (23,0)-(23,3) = "end" - ├── @ DefNode (location: (25,0)-(26,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (25,4)-(25,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (25,8)-(25,16)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 2) - │ │ │ ├── @ RequiredKeywordParameterNode (location: (25,8)-(25,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :_a - │ │ │ │ └── name_loc: (25,8)-(25,11) = "_a:" - │ │ │ └── @ RequiredKeywordParameterNode (location: (25,13)-(25,16)) - │ │ │ ├── flags: repeated_parameter - │ │ │ ├── name: :_a - │ │ │ └── name_loc: (25,13)-(25,16) = "_a:" - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:_a] - │ ├── def_keyword_loc: (25,0)-(25,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (25,7)-(25,8) = "(" - │ ├── rparen_loc: (25,16)-(25,17) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (26,0)-(26,3) = "end" - ├── @ DefNode (location: (28,0)-(29,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (28,4)-(28,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (28,8)-(28,20)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 2) - │ │ │ ├── @ OptionalKeywordParameterNode (location: (28,8)-(28,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :_a - │ │ │ │ ├── name_loc: (28,8)-(28,11) = "_a:" - │ │ │ │ └── value: - │ │ │ │ @ IntegerNode (location: (28,12)-(28,13)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── @ OptionalKeywordParameterNode (location: (28,15)-(28,20)) - │ │ │ ├── flags: repeated_parameter - │ │ │ ├── name: :_a - │ │ │ ├── name_loc: (28,15)-(28,18) = "_a:" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (28,19)-(28,20)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:_a] - │ ├── def_keyword_loc: (28,0)-(28,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (28,7)-(28,8) = "(" - │ ├── rparen_loc: (28,20)-(28,21) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (29,0)-(29,3) = "end" - ├── @ DefNode (location: (31,0)-(32,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (31,4)-(31,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (31,8)-(31,16)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (31,8)-(31,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :_a - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ KeywordRestParameterNode (location: (31,12)-(31,16)) - │ │ │ ├── flags: repeated_parameter - │ │ │ ├── name: :_a - │ │ │ ├── name_loc: (31,14)-(31,16) = "_a" - │ │ │ └── operator_loc: (31,12)-(31,14) = "**" - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:_a] - │ ├── def_keyword_loc: (31,0)-(31,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (31,7)-(31,8) = "(" - │ ├── rparen_loc: (31,16)-(31,17) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (32,0)-(32,3) = "end" - ├── @ DefNode (location: (34,0)-(35,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (34,4)-(34,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (34,8)-(34,15)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (34,8)-(34,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :_a - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (34,12)-(34,15)) - │ │ ├── flags: repeated_parameter - │ │ ├── name: :_a - │ │ ├── name_loc: (34,13)-(34,15) = "_a" - │ │ └── operator_loc: (34,12)-(34,13) = "&" - │ ├── body: ∅ - │ ├── locals: [:_a] - │ ├── def_keyword_loc: (34,0)-(34,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (34,7)-(34,8) = "(" - │ ├── rparen_loc: (34,15)-(34,16) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (35,0)-(35,3) = "end" - └── @ DefNode (location: (37,0)-(38,3)) - ├── flags: newline - ├── name: :foo - ├── name_loc: (37,4)-(37,7) = "foo" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (37,8)-(37,15)) - │ ├── flags: ∅ - │ ├── requireds: (length: 1) - │ │ └── @ RequiredParameterNode (location: (37,8)-(37,10)) - │ │ ├── flags: ∅ - │ │ └── name: :_a - │ ├── optionals: (length: 0) - │ ├── rest: - │ │ @ RestParameterNode (location: (37,12)-(37,15)) - │ │ ├── flags: repeated_parameter - │ │ ├── name: :_a - │ │ ├── name_loc: (37,13)-(37,15) = "_a" - │ │ └── operator_loc: (37,12)-(37,13) = "*" - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:_a] - ├── def_keyword_loc: (37,0)-(37,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (37,7)-(37,8) = "(" - ├── rparen_loc: (37,15)-(37,16) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (38,0)-(38,3) = "end" diff --git a/test/prism/snapshots/rescue.txt b/test/prism/snapshots/rescue.txt deleted file mode 100644 index 38f692bbed..0000000000 --- a/test/prism/snapshots/rescue.txt +++ /dev/null @@ -1,584 +0,0 @@ -@ ProgramNode (location: (1,0)-(35,18)) -├── flags: ∅ -├── locals: [:a, :z] -└── statements: - @ StatementsNode (location: (1,0)-(35,18)) - ├── flags: ∅ - └── body: (length: 14) - ├── @ RescueModifierNode (location: (1,0)-(1,14)) - │ ├── flags: newline - │ ├── expression: - │ │ @ CallNode (location: (1,0)-(1,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,0)-(1,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── keyword_loc: (1,4)-(1,10) = "rescue" - │ └── rescue_expression: - │ @ NilNode (location: (1,11)-(1,14)) - │ └── flags: static_literal - ├── @ RescueModifierNode (location: (3,0)-(4,3)) - │ ├── flags: newline - │ ├── expression: - │ │ @ CallNode (location: (3,0)-(3,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (3,0)-(3,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── keyword_loc: (3,4)-(3,10) = "rescue" - │ └── rescue_expression: - │ @ NilNode (location: (4,0)-(4,3)) - │ └── flags: static_literal - ├── @ CallNode (location: (6,0)-(6,24)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (6,0)-(6,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (6,4)-(6,24)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (6,6)-(6,22)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ RescueModifierNode (location: (6,6)-(6,22)) - │ │ ├── flags: newline - │ │ ├── expression: - │ │ │ @ BreakNode (location: (6,6)-(6,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ └── keyword_loc: (6,6)-(6,11) = "break" - │ │ ├── keyword_loc: (6,12)-(6,18) = "rescue" - │ │ └── rescue_expression: - │ │ @ NilNode (location: (6,19)-(6,22)) - │ │ └── flags: static_literal - │ ├── opening_loc: (6,4)-(6,5) = "{" - │ └── closing_loc: (6,23)-(6,24) = "}" - ├── @ CallNode (location: (8,0)-(8,23)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (8,0)-(8,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (8,4)-(8,23)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (8,6)-(8,21)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ RescueModifierNode (location: (8,6)-(8,21)) - │ │ ├── flags: newline - │ │ ├── expression: - │ │ │ @ NextNode (location: (8,6)-(8,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ └── keyword_loc: (8,6)-(8,10) = "next" - │ │ ├── keyword_loc: (8,11)-(8,17) = "rescue" - │ │ └── rescue_expression: - │ │ @ NilNode (location: (8,18)-(8,21)) - │ │ └── flags: static_literal - │ ├── opening_loc: (8,4)-(8,5) = "{" - │ └── closing_loc: (8,22)-(8,23) = "}" - ├── @ RescueModifierNode (location: (10,0)-(10,17)) - │ ├── flags: newline - │ ├── expression: - │ │ @ ReturnNode (location: (10,0)-(10,6)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (10,0)-(10,6) = "return" - │ │ └── arguments: ∅ - │ ├── keyword_loc: (10,7)-(10,13) = "rescue" - │ └── rescue_expression: - │ @ NilNode (location: (10,14)-(10,17)) - │ └── flags: static_literal - ├── @ RescueModifierNode (location: (12,0)-(12,19)) - │ ├── flags: newline - │ ├── expression: - │ │ @ CallNode (location: (12,0)-(12,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (12,0)-(12,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── keyword_loc: (12,4)-(12,10) = "rescue" - │ └── rescue_expression: - │ @ OrNode (location: (12,11)-(12,19)) - │ ├── flags: ∅ - │ ├── left: - │ │ @ NilNode (location: (12,11)-(12,14)) - │ │ └── flags: static_literal - │ ├── right: - │ │ @ IntegerNode (location: (12,18)-(12,19)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (12,15)-(12,17) = "||" - ├── @ RescueModifierNode (location: (14,0)-(14,22)) - │ ├── flags: newline - │ ├── expression: - │ │ @ CallNode (location: (14,0)-(14,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (14,0)-(14,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── keyword_loc: (14,4)-(14,10) = "rescue" - │ └── rescue_expression: - │ @ IfNode (location: (14,11)-(14,22)) - │ ├── flags: newline - │ ├── if_keyword_loc: ∅ - │ ├── predicate: - │ │ @ NilNode (location: (14,11)-(14,14)) - │ │ └── flags: static_literal - │ ├── then_keyword_loc: (14,15)-(14,16) = "?" - │ ├── statements: - │ │ @ StatementsNode (location: (14,17)-(14,18)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (14,17)-(14,18)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 1 - │ ├── subsequent: - │ │ @ ElseNode (location: (14,19)-(14,22)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (14,19)-(14,20) = ":" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (14,21)-(14,22)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ IntegerNode (location: (14,21)-(14,22)) - │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ └── value: 2 - │ │ └── end_keyword_loc: ∅ - │ └── end_keyword_loc: ∅ - ├── @ BeginNode (location: (16,0)-(16,24)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (16,0)-(16,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (16,7)-(16,8)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (16,7)-(16,8)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (16,7)-(16,8) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (16,10)-(16,19)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (16,10)-(16,16) = "rescue" - │ │ ├── exceptions: (length: 1) - │ │ │ └── @ SplatNode (location: (16,17)-(16,19)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (16,17)-(16,18) = "*" - │ │ │ └── expression: - │ │ │ @ CallNode (location: (16,18)-(16,19)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (16,18)-(16,19) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (16,21)-(16,24) = "end" - ├── @ CallNode (location: (18,0)-(20,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (18,0)-(18,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (18,4)-(20,3)) - │ ├── flags: ∅ - │ ├── locals: [:x] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (18,7)-(18,10)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (18,8)-(18,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (18,8)-(18,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :x - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (18,7)-(18,8) = "|" - │ │ └── closing_loc: (18,9)-(18,10) = "|" - │ ├── body: - │ │ @ StatementsNode (location: (19,2)-(19,40)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ RescueModifierNode (location: (19,2)-(19,40)) - │ │ ├── flags: newline - │ │ ├── expression: - │ │ │ @ CallNode (location: (19,2)-(19,8)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (19,2)-(19,5) = "bar" - │ │ │ ├── opening_loc: (19,5)-(19,6) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (19,6)-(19,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (19,6)-(19,7)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :y - │ │ │ │ ├── message_loc: (19,6)-(19,7) = "y" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: (19,7)-(19,8) = ")" - │ │ │ └── block: ∅ - │ │ ├── keyword_loc: (19,9)-(19,15) = "rescue" - │ │ └── rescue_expression: - │ │ @ CallNode (location: (19,16)-(19,40)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :ArgumentError - │ │ ├── message_loc: (19,16)-(19,29) = "ArgumentError" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (19,30)-(19,40)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ CallNode (location: (19,30)-(19,40)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :fail - │ │ │ ├── message_loc: (19,30)-(19,34) = "fail" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (19,35)-(19,40)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ StringNode (location: (19,35)-(19,40)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (19,35)-(19,36) = "\"" - │ │ │ │ ├── content_loc: (19,36)-(19,39) = "baz" - │ │ │ │ ├── closing_loc: (19,39)-(19,40) = "\"" - │ │ │ │ └── unescaped: "baz" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (18,4)-(18,6) = "do" - │ └── closing_loc: (20,0)-(20,3) = "end" - ├── @ IfNode (location: (22,0)-(24,3)) - │ ├── flags: newline - │ ├── if_keyword_loc: (22,0)-(22,2) = "if" - │ ├── predicate: - │ │ @ LocalVariableWriteNode (location: (22,3)-(22,21)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ ├── depth: 0 - │ │ ├── name_loc: (22,3)-(22,4) = "a" - │ │ ├── value: - │ │ │ @ RescueModifierNode (location: (22,7)-(22,21)) - │ │ │ ├── flags: ∅ - │ │ │ ├── expression: - │ │ │ │ @ CallNode (location: (22,7)-(22,10)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :foo - │ │ │ │ ├── message_loc: (22,7)-(22,10) = "foo" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── keyword_loc: (22,11)-(22,17) = "rescue" - │ │ │ └── rescue_expression: - │ │ │ @ NilNode (location: (22,18)-(22,21)) - │ │ │ └── flags: static_literal - │ │ └── operator_loc: (22,5)-(22,6) = "=" - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (23,2)-(23,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (23,2)-(23,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (23,2)-(23,5) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── subsequent: ∅ - │ └── end_keyword_loc: (24,0)-(24,3) = "end" - ├── @ DefNode (location: (26,0)-(26,44)) - │ ├── flags: newline - │ ├── name: :some_method - │ ├── name_loc: (26,4)-(26,15) = "some_method" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (26,18)-(26,44)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ RescueModifierNode (location: (26,18)-(26,44)) - │ │ ├── flags: ∅ - │ │ ├── expression: - │ │ │ @ CallNode (location: (26,18)-(26,33)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :other_method - │ │ │ ├── message_loc: (26,18)-(26,30) = "other_method" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (26,31)-(26,33)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (26,31)-(26,33)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 42 - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── keyword_loc: (26,34)-(26,40) = "rescue" - │ │ └── rescue_expression: - │ │ @ NilNode (location: (26,41)-(26,44)) - │ │ └── flags: static_literal - │ ├── locals: [] - │ ├── def_keyword_loc: (26,0)-(26,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: (26,16)-(26,17) = "=" - │ └── end_keyword_loc: ∅ - ├── @ DefNode (location: (28,0)-(31,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (28,4)-(28,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ BeginNode (location: (28,0)-(31,3)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (29,2)-(29,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (29,2)-(29,6)) - │ │ │ ├── flags: newline, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (29,2)-(29,3) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (29,4)-(29,6)) - │ │ │ │ ├── flags: contains_keywords - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ KeywordHashNode (location: (29,4)-(29,6)) - │ │ │ │ ├── flags: symbol_keys - │ │ │ │ └── elements: (length: 1) - │ │ │ │ └── @ AssocNode (location: (29,4)-(29,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── key: - │ │ │ │ │ @ SymbolNode (location: (29,4)-(29,6)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── value_loc: (29,4)-(29,5) = "b" - │ │ │ │ │ ├── closing_loc: (29,5)-(29,6) = ":" - │ │ │ │ │ └── unescaped: "b" - │ │ │ │ ├── value: - │ │ │ │ │ @ ImplicitNode (location: (29,4)-(29,6)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── value: - │ │ │ │ │ @ CallNode (location: (29,4)-(29,6)) - │ │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :b - │ │ │ │ │ ├── message_loc: (29,4)-(29,5) = "b" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ └── operator_loc: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── rescue_clause: - │ │ │ @ RescueNode (location: (30,0)-(30,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (30,0)-(30,6) = "rescue" - │ │ │ ├── exceptions: (length: 0) - │ │ │ ├── operator_loc: ∅ - │ │ │ ├── reference: ∅ - │ │ │ ├── statements: ∅ - │ │ │ └── subsequent: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: ∅ - │ │ └── end_keyword_loc: (31,0)-(31,3) = "end" - │ ├── locals: [] - │ ├── def_keyword_loc: (28,0)-(28,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (31,0)-(31,3) = "end" - ├── @ RescueModifierNode (location: (33,0)-(33,21)) - │ ├── flags: newline - │ ├── expression: - │ │ @ IfNode (location: (33,0)-(33,10)) - │ │ ├── flags: newline - │ │ ├── if_keyword_loc: (33,4)-(33,6) = "if" - │ │ ├── predicate: - │ │ │ @ CallNode (location: (33,7)-(33,10)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (33,7)-(33,10) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── then_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (33,0)-(33,3)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (33,0)-(33,3)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (33,0)-(33,3) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── subsequent: ∅ - │ │ └── end_keyword_loc: ∅ - │ ├── keyword_loc: (33,11)-(33,17) = "rescue" - │ └── rescue_expression: - │ @ CallNode (location: (33,18)-(33,21)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :baz - │ ├── message_loc: (33,18)-(33,21) = "baz" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ LocalVariableWriteNode (location: (35,0)-(35,18)) - ├── flags: newline - ├── name: :z - ├── depth: 0 - ├── name_loc: (35,0)-(35,1) = "z" - ├── value: - │ @ RescueModifierNode (location: (35,4)-(35,18)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (35,4)-(35,7)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :x - │ │ ├── message_loc: (35,4)-(35,5) = "x" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (35,6)-(35,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ CallNode (location: (35,6)-(35,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :y - │ │ │ ├── message_loc: (35,6)-(35,7) = "y" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── keyword_loc: (35,8)-(35,14) = "rescue" - │ └── rescue_expression: - │ @ CallNode (location: (35,15)-(35,18)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :c - │ ├── message_loc: (35,15)-(35,16) = "c" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (35,17)-(35,18)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (35,17)-(35,18)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :d - │ │ ├── message_loc: (35,17)-(35,18) = "d" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── operator_loc: (35,2)-(35,3) = "=" diff --git a/test/prism/snapshots/return.txt b/test/prism/snapshots/return.txt deleted file mode 100644 index fc2bd70fbc..0000000000 --- a/test/prism/snapshots/return.txt +++ /dev/null @@ -1,179 +0,0 @@ -@ ProgramNode (location: (1,0)-(23,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(23,9)) - ├── flags: ∅ - └── body: (length: 10) - ├── @ ReturnNode (location: (1,0)-(1,6)) - │ ├── flags: newline - │ ├── keyword_loc: (1,0)-(1,6) = "return" - │ └── arguments: ∅ - ├── @ ReturnNode (location: (3,0)-(3,20)) - │ ├── flags: newline - │ ├── keyword_loc: (3,0)-(3,6) = "return" - │ └── arguments: - │ @ ArgumentsNode (location: (3,7)-(3,20)) - │ ├── flags: ∅ - │ └── arguments: (length: 3) - │ ├── @ ParenthesesNode (location: (3,7)-(3,10)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (3,8)-(3,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ IntegerNode (location: (3,8)-(3,9)) - │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── opening_loc: (3,7)-(3,8) = "(" - │ │ └── closing_loc: (3,9)-(3,10) = ")" - │ ├── @ ParenthesesNode (location: (3,12)-(3,15)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (3,13)-(3,14)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ IntegerNode (location: (3,13)-(3,14)) - │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── opening_loc: (3,12)-(3,13) = "(" - │ │ └── closing_loc: (3,14)-(3,15) = ")" - │ └── @ ParenthesesNode (location: (3,17)-(3,20)) - │ ├── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (3,18)-(3,19)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (3,18)-(3,19)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 3 - │ ├── opening_loc: (3,17)-(3,18) = "(" - │ └── closing_loc: (3,19)-(3,20) = ")" - ├── @ ReturnNode (location: (5,0)-(5,9)) - │ ├── flags: newline - │ ├── keyword_loc: (5,0)-(5,6) = "return" - │ └── arguments: - │ @ ArgumentsNode (location: (5,7)-(5,9)) - │ ├── flags: contains_splat - │ └── arguments: (length: 1) - │ └── @ SplatNode (location: (5,7)-(5,9)) - │ ├── flags: ∅ - │ ├── operator_loc: (5,7)-(5,8) = "*" - │ └── expression: - │ @ IntegerNode (location: (5,8)-(5,9)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ ReturnNode (location: (7,0)-(7,8)) - │ ├── flags: newline - │ ├── keyword_loc: (7,0)-(7,6) = "return" - │ └── arguments: - │ @ ArgumentsNode (location: (7,7)-(7,8)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (7,7)-(7,8)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ ReturnNode (location: (9,0)-(10,1)) - │ ├── flags: newline - │ ├── keyword_loc: (9,0)-(9,6) = "return" - │ └── arguments: - │ @ ArgumentsNode (location: (9,7)-(10,1)) - │ ├── flags: ∅ - │ └── arguments: (length: 3) - │ ├── @ IntegerNode (location: (9,7)-(9,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── @ IntegerNode (location: (9,10)-(9,11)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ └── @ IntegerNode (location: (10,0)-(10,1)) - │ ├── flags: static_literal, decimal - │ └── value: 3 - ├── @ ReturnNode (location: (12,0)-(12,14)) - │ ├── flags: newline - │ ├── keyword_loc: (12,0)-(12,6) = "return" - │ └── arguments: - │ @ ArgumentsNode (location: (12,7)-(12,14)) - │ ├── flags: ∅ - │ └── arguments: (length: 3) - │ ├── @ IntegerNode (location: (12,7)-(12,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── @ IntegerNode (location: (12,10)-(12,11)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ └── @ IntegerNode (location: (12,13)-(12,14)) - │ ├── flags: static_literal, decimal - │ └── value: 3 - ├── @ ReturnNode (location: (14,0)-(14,16)) - │ ├── flags: newline - │ ├── keyword_loc: (14,0)-(14,6) = "return" - │ └── arguments: - │ @ ArgumentsNode (location: (14,7)-(14,16)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ ArrayNode (location: (14,7)-(14,16)) - │ ├── flags: static_literal - │ ├── elements: (length: 3) - │ │ ├── @ IntegerNode (location: (14,8)-(14,9)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── @ IntegerNode (location: (14,11)-(14,12)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── @ IntegerNode (location: (14,14)-(14,15)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 3 - │ ├── opening_loc: (14,7)-(14,8) = "[" - │ └── closing_loc: (14,15)-(14,16) = "]" - ├── @ ReturnNode (location: (16,0)-(19,1)) - │ ├── flags: newline - │ ├── keyword_loc: (16,0)-(16,6) = "return" - │ └── arguments: - │ @ ArgumentsNode (location: (16,6)-(19,1)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ ParenthesesNode (location: (16,6)-(19,1)) - │ ├── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (17,2)-(18,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 2) - │ │ ├── @ IntegerNode (location: (17,2)-(17,3)) - │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (18,2)-(18,3)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 2 - │ ├── opening_loc: (16,6)-(16,7) = "(" - │ └── closing_loc: (19,0)-(19,1) = ")" - ├── @ ReturnNode (location: (21,0)-(21,8)) - │ ├── flags: newline - │ ├── keyword_loc: (21,0)-(21,6) = "return" - │ └── arguments: - │ @ ArgumentsNode (location: (21,6)-(21,8)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ ParenthesesNode (location: (21,6)-(21,8)) - │ ├── flags: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (21,6)-(21,7) = "(" - │ └── closing_loc: (21,7)-(21,8) = ")" - └── @ ReturnNode (location: (23,0)-(23,9)) - ├── flags: newline - ├── keyword_loc: (23,0)-(23,6) = "return" - └── arguments: - @ ArgumentsNode (location: (23,6)-(23,9)) - ├── flags: ∅ - └── arguments: (length: 1) - └── @ ParenthesesNode (location: (23,6)-(23,9)) - ├── flags: ∅ - ├── body: - │ @ StatementsNode (location: (23,7)-(23,8)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ IntegerNode (location: (23,7)-(23,8)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 1 - ├── opening_loc: (23,6)-(23,7) = "(" - └── closing_loc: (23,8)-(23,9) = ")" diff --git a/test/prism/snapshots/seattlerb/BEGIN.txt b/test/prism/snapshots/seattlerb/BEGIN.txt deleted file mode 100644 index a0d73a8039..0000000000 --- a/test/prism/snapshots/seattlerb/BEGIN.txt +++ /dev/null @@ -1,19 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ PreExecutionNode (location: (1,0)-(1,12)) - ├── flags: newline - ├── statements: - │ @ StatementsNode (location: (1,8)-(1,10)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ IntegerNode (location: (1,8)-(1,10)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 42 - ├── keyword_loc: (1,0)-(1,5) = "BEGIN" - ├── opening_loc: (1,6)-(1,7) = "{" - └── closing_loc: (1,11)-(1,12) = "}" diff --git a/test/prism/snapshots/seattlerb/TestRubyParserShared.txt b/test/prism/snapshots/seattlerb/TestRubyParserShared.txt deleted file mode 100644 index 7a488a20aa..0000000000 --- a/test/prism/snapshots/seattlerb/TestRubyParserShared.txt +++ /dev/null @@ -1,398 +0,0 @@ -@ ProgramNode (location: (1,0)-(92,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(92,1)) - ├── flags: ∅ - └── body: (length: 16) - ├── @ ArrayNode (location: (1,0)-(4,1)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 0) - │ ├── opening_loc: (1,0)-(1,3) = "%I[" - │ └── closing_loc: (4,0)-(4,1) = "]" - ├── @ ArrayNode (location: (6,0)-(9,1)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 2) - │ │ ├── @ SymbolNode (location: (7,0)-(7,5)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (7,0)-(7,5) = "line2" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "line2" - │ │ └── @ SymbolNode (location: (8,0)-(8,5)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (8,0)-(8,5) = "line3" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "line3" - │ ├── opening_loc: (6,0)-(6,3) = "%I[" - │ └── closing_loc: (9,0)-(9,1) = "]" - ├── @ ArrayNode (location: (11,0)-(14,1)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 0) - │ ├── opening_loc: (11,0)-(11,3) = "%W[" - │ └── closing_loc: (14,0)-(14,1) = "]" - ├── @ ArrayNode (location: (16,0)-(19,1)) - │ ├── flags: newline - │ ├── elements: (length: 2) - │ │ ├── @ StringNode (location: (17,0)-(17,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (17,0)-(17,5) = "line2" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "line2" - │ │ └── @ StringNode (location: (18,0)-(18,5)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (18,0)-(18,5) = "line3" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "line3" - │ ├── opening_loc: (16,0)-(16,3) = "%W[" - │ └── closing_loc: (19,0)-(19,1) = "]" - ├── @ ArrayNode (location: (21,0)-(24,1)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 0) - │ ├── opening_loc: (21,0)-(21,3) = "%i[" - │ └── closing_loc: (24,0)-(24,1) = "]" - ├── @ ArrayNode (location: (26,0)-(29,1)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 2) - │ │ ├── @ SymbolNode (location: (27,0)-(27,5)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (27,0)-(27,5) = "line2" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "line2" - │ │ └── @ SymbolNode (location: (28,0)-(28,5)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (28,0)-(28,5) = "line3" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "line3" - │ ├── opening_loc: (26,0)-(26,3) = "%i[" - │ └── closing_loc: (29,0)-(29,1) = "]" - ├── @ RegularExpressionNode (location: (31,0)-(34,1)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (31,0)-(31,3) = "%r[" - │ ├── content_loc: (31,3)-(34,0) = "\n\n\n" - │ ├── closing_loc: (34,0)-(34,1) = "]" - │ └── unescaped: "\n\n\n" - ├── @ ArrayNode (location: (36,0)-(39,1)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 0) - │ ├── opening_loc: (36,0)-(36,3) = "%w[" - │ └── closing_loc: (39,0)-(39,1) = "]" - ├── @ ArrayNode (location: (41,0)-(44,1)) - │ ├── flags: newline - │ ├── elements: (length: 2) - │ │ ├── @ StringNode (location: (42,0)-(42,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (42,0)-(42,5) = "line2" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "line2" - │ │ └── @ StringNode (location: (43,0)-(43,5)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (43,0)-(43,5) = "line3" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "line3" - │ ├── opening_loc: (41,0)-(41,3) = "%w[" - │ └── closing_loc: (44,0)-(44,1) = "]" - ├── @ ArrayNode (location: (46,0)-(49,1)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 2) - │ │ ├── @ SymbolNode (location: (47,0)-(47,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (47,0)-(47,1) = ":" - │ │ │ ├── value_loc: (47,1)-(47,6) = "line2" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "line2" - │ │ └── @ SymbolNode (location: (48,0)-(48,6)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (48,0)-(48,1) = ":" - │ │ ├── value_loc: (48,1)-(48,6) = "line3" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "line3" - │ ├── opening_loc: (46,0)-(46,1) = "[" - │ └── closing_loc: (49,0)-(49,1) = "]" - ├── @ ClassNode (location: (51,0)-(56,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (51,0)-(51,5) = "class" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (51,6)-(51,7)) - │ │ ├── flags: ∅ - │ │ └── name: :X - │ ├── inheritance_operator_loc: ∅ - │ ├── superclass: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (52,2)-(55,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ DefNode (location: (52,2)-(55,5)) - │ │ ├── flags: newline - │ │ ├── name: :y - │ │ ├── name_loc: (52,11)-(52,12) = "y" - │ │ ├── receiver: - │ │ │ @ SelfNode (location: (52,6)-(52,10)) - │ │ │ └── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (52,13)-(53,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 2) - │ │ │ │ ├── @ RequiredParameterNode (location: (52,13)-(52,14)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :a - │ │ │ │ └── @ RequiredParameterNode (location: (53,8)-(53,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :b - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (54,4)-(54,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (54,4)-(54,9)) - │ │ │ ├── flags: newline - │ │ │ ├── receiver: - │ │ │ │ @ LocalVariableReadNode (location: (54,4)-(54,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ └── depth: 0 - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :+ - │ │ │ ├── message_loc: (54,6)-(54,7) = "+" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (54,8)-(54,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ LocalVariableReadNode (location: (54,8)-(54,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ └── depth: 0 - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: [:a, :b] - │ │ ├── def_keyword_loc: (52,2)-(52,5) = "def" - │ │ ├── operator_loc: (52,10)-(52,11) = "." - │ │ ├── lparen_loc: (52,12)-(52,13) = "(" - │ │ ├── rparen_loc: (53,9)-(53,10) = ")" - │ │ ├── equal_loc: ∅ - │ │ └── end_keyword_loc: (55,2)-(55,5) = "end" - │ ├── end_keyword_loc: (56,0)-(56,3) = "end" - │ └── name: :X - ├── @ ClassNode (location: (59,0)-(63,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (59,0)-(59,5) = "class" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (59,6)-(59,7)) - │ │ ├── flags: ∅ - │ │ └── name: :X - │ ├── inheritance_operator_loc: ∅ - │ ├── superclass: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (60,2)-(62,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ ClassNode (location: (60,2)-(62,5)) - │ │ ├── flags: newline - │ │ ├── locals: [] - │ │ ├── class_keyword_loc: (60,2)-(60,7) = "class" - │ │ ├── constant_path: - │ │ │ @ ConstantReadNode (location: (60,8)-(60,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Y - │ │ ├── inheritance_operator_loc: ∅ - │ │ ├── superclass: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (61,4)-(61,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ ConstantWriteNode (location: (61,4)-(61,10)) - │ │ │ ├── flags: newline - │ │ │ ├── name: :Z - │ │ │ ├── name_loc: (61,4)-(61,5) = "Z" - │ │ │ ├── value: - │ │ │ │ @ IntegerNode (location: (61,8)-(61,10)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 42 - │ │ │ └── operator_loc: (61,6)-(61,7) = "=" - │ │ ├── end_keyword_loc: (62,2)-(62,5) = "end" - │ │ └── name: :Y - │ ├── end_keyword_loc: (63,0)-(63,3) = "end" - │ └── name: :X - ├── @ ClassNode (location: (66,0)-(71,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (66,0)-(66,5) = "class" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (66,6)-(66,7)) - │ │ ├── flags: ∅ - │ │ └── name: :X - │ ├── inheritance_operator_loc: ∅ - │ ├── superclass: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (67,2)-(70,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ DefNode (location: (67,2)-(70,5)) - │ │ ├── flags: newline - │ │ ├── name: :y - │ │ ├── name_loc: (67,6)-(67,7) = "y" - │ │ ├── receiver: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (67,8)-(68,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 2) - │ │ │ │ ├── @ RequiredParameterNode (location: (67,8)-(67,9)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :a - │ │ │ │ └── @ RequiredParameterNode (location: (68,8)-(68,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :b - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (69,4)-(69,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (69,4)-(69,9)) - │ │ │ ├── flags: newline - │ │ │ ├── receiver: - │ │ │ │ @ LocalVariableReadNode (location: (69,4)-(69,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ └── depth: 0 - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :+ - │ │ │ ├── message_loc: (69,6)-(69,7) = "+" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (69,8)-(69,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ LocalVariableReadNode (location: (69,8)-(69,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ └── depth: 0 - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: [:a, :b] - │ │ ├── def_keyword_loc: (67,2)-(67,5) = "def" - │ │ ├── operator_loc: ∅ - │ │ ├── lparen_loc: (67,7)-(67,8) = "(" - │ │ ├── rparen_loc: (68,9)-(68,10) = ")" - │ │ ├── equal_loc: ∅ - │ │ └── end_keyword_loc: (70,2)-(70,5) = "end" - │ ├── end_keyword_loc: (71,0)-(71,3) = "end" - │ └── name: :X - ├── @ ModuleNode (location: (74,0)-(79,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── module_keyword_loc: (74,0)-(74,6) = "module" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (74,7)-(74,8)) - │ │ ├── flags: ∅ - │ │ └── name: :X - │ ├── body: - │ │ @ StatementsNode (location: (75,2)-(78,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ ConstantWriteNode (location: (75,2)-(78,3)) - │ │ ├── flags: newline - │ │ ├── name: :X - │ │ ├── name_loc: (75,2)-(75,3) = "X" - │ │ ├── value: - │ │ │ @ ArrayNode (location: (75,6)-(78,3)) - │ │ │ ├── flags: static_literal - │ │ │ ├── elements: (length: 2) - │ │ │ │ ├── @ SymbolNode (location: (76,4)-(76,10)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: (76,4)-(76,5) = ":" - │ │ │ │ │ ├── value_loc: (76,5)-(76,10) = "line3" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "line3" - │ │ │ │ └── @ SymbolNode (location: (77,4)-(77,10)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (77,4)-(77,5) = ":" - │ │ │ │ ├── value_loc: (77,5)-(77,10) = "line4" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "line4" - │ │ │ ├── opening_loc: (75,6)-(75,7) = "[" - │ │ │ └── closing_loc: (78,2)-(78,3) = "]" - │ │ └── operator_loc: (75,4)-(75,5) = "=" - │ ├── end_keyword_loc: (79,0)-(79,3) = "end" - │ └── name: :X - ├── @ ModuleNode (location: (82,0)-(86,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── module_keyword_loc: (82,0)-(82,6) = "module" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (82,7)-(82,8)) - │ │ ├── flags: ∅ - │ │ └── name: :X - │ ├── body: - │ │ @ StatementsNode (location: (83,2)-(85,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ ModuleNode (location: (83,2)-(85,5)) - │ │ ├── flags: newline - │ │ ├── locals: [] - │ │ ├── module_keyword_loc: (83,2)-(83,8) = "module" - │ │ ├── constant_path: - │ │ │ @ ConstantReadNode (location: (83,9)-(83,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Y - │ │ ├── body: - │ │ │ @ StatementsNode (location: (84,4)-(84,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ ConstantWriteNode (location: (84,4)-(84,10)) - │ │ │ ├── flags: newline - │ │ │ ├── name: :Z - │ │ │ ├── name_loc: (84,4)-(84,5) = "Z" - │ │ │ ├── value: - │ │ │ │ @ IntegerNode (location: (84,8)-(84,10)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 42 - │ │ │ └── operator_loc: (84,6)-(84,7) = "=" - │ │ ├── end_keyword_loc: (85,2)-(85,5) = "end" - │ │ └── name: :Y - │ ├── end_keyword_loc: (86,0)-(86,3) = "end" - │ └── name: :X - └── @ CallNode (location: (89,0)-(92,1)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :x - ├── message_loc: (89,0)-(89,1) = "x" - ├── opening_loc: (89,1)-(89,2) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (90,0)-(91,6)) - │ ├── flags: ∅ - │ └── arguments: (length: 2) - │ ├── @ SymbolNode (location: (90,0)-(90,6)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (90,0)-(90,1) = ":" - │ │ ├── value_loc: (90,1)-(90,6) = "line2" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "line2" - │ └── @ SymbolNode (location: (91,0)-(91,6)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (91,0)-(91,1) = ":" - │ ├── value_loc: (91,1)-(91,6) = "line3" - │ ├── closing_loc: ∅ - │ └── unescaped: "line3" - ├── closing_loc: (92,0)-(92,1) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/__ENCODING__.txt b/test/prism/snapshots/seattlerb/__ENCODING__.txt deleted file mode 100644 index f04dfb6cb8..0000000000 --- a/test/prism/snapshots/seattlerb/__ENCODING__.txt +++ /dev/null @@ -1,9 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ SourceEncodingNode (location: (1,0)-(1,12)) - └── flags: newline, static_literal diff --git a/test/prism/snapshots/seattlerb/alias_gvar_backref.txt b/test/prism/snapshots/seattlerb/alias_gvar_backref.txt deleted file mode 100644 index 47b0e80b64..0000000000 --- a/test/prism/snapshots/seattlerb/alias_gvar_backref.txt +++ /dev/null @@ -1,18 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,15)) - ├── flags: ∅ - └── body: (length: 1) - └── @ AliasGlobalVariableNode (location: (1,0)-(1,15)) - ├── flags: newline - ├── new_name: - │ @ GlobalVariableReadNode (location: (1,6)-(1,12)) - │ ├── flags: ∅ - │ └── name: :$MATCH - ├── old_name: - │ @ BackReferenceReadNode (location: (1,13)-(1,15)) - │ ├── flags: ∅ - │ └── name: :$& - └── keyword_loc: (1,0)-(1,5) = "alias" diff --git a/test/prism/snapshots/seattlerb/alias_resword.txt b/test/prism/snapshots/seattlerb/alias_resword.txt deleted file mode 100644 index 44a4727283..0000000000 --- a/test/prism/snapshots/seattlerb/alias_resword.txt +++ /dev/null @@ -1,24 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ AliasMethodNode (location: (1,0)-(1,12)) - ├── flags: newline - ├── new_name: - │ @ SymbolNode (location: (1,6)-(1,8)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: ∅ - │ ├── value_loc: (1,6)-(1,8) = "in" - │ ├── closing_loc: ∅ - │ └── unescaped: "in" - ├── old_name: - │ @ SymbolNode (location: (1,9)-(1,12)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: ∅ - │ ├── value_loc: (1,9)-(1,12) = "out" - │ ├── closing_loc: ∅ - │ └── unescaped: "out" - └── keyword_loc: (1,0)-(1,5) = "alias" diff --git a/test/prism/snapshots/seattlerb/and_multi.txt b/test/prism/snapshots/seattlerb/and_multi.txt deleted file mode 100644 index f98ad67e10..0000000000 --- a/test/prism/snapshots/seattlerb/and_multi.txt +++ /dev/null @@ -1,33 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ AndNode (location: (1,0)-(3,4)) - ├── flags: newline - ├── left: - │ @ AndNode (location: (1,0)-(2,9)) - │ ├── flags: ∅ - │ ├── left: - │ │ @ TrueNode (location: (1,0)-(1,4)) - │ │ └── flags: static_literal - │ ├── right: - │ │ @ CallNode (location: (2,0)-(2,9)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ FalseNode (location: (2,4)-(2,9)) - │ │ │ └── flags: static_literal - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :! - │ │ ├── message_loc: (2,0)-(2,3) = "not" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (1,5)-(1,8) = "and" - ├── right: - │ @ TrueNode (location: (3,0)-(3,4)) - │ └── flags: static_literal - └── operator_loc: (2,10)-(2,13) = "and" diff --git a/test/prism/snapshots/seattlerb/aref_args_assocs.txt b/test/prism/snapshots/seattlerb/aref_args_assocs.txt deleted file mode 100644 index cbd0792037..0000000000 --- a/test/prism/snapshots/seattlerb/aref_args_assocs.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ArrayNode (location: (1,0)-(1,8)) - ├── flags: newline - ├── elements: (length: 1) - │ └── @ KeywordHashNode (location: (1,1)-(1,7)) - │ ├── flags: ∅ - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (1,1)-(1,7)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ IntegerNode (location: (1,1)-(1,2)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── value: - │ │ @ IntegerNode (location: (1,6)-(1,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ └── operator_loc: (1,3)-(1,5) = "=>" - ├── opening_loc: (1,0)-(1,1) = "[" - └── closing_loc: (1,7)-(1,8) = "]" diff --git a/test/prism/snapshots/seattlerb/aref_args_lit_assocs.txt b/test/prism/snapshots/seattlerb/aref_args_lit_assocs.txt deleted file mode 100644 index 7302f728e3..0000000000 --- a/test/prism/snapshots/seattlerb/aref_args_lit_assocs.txt +++ /dev/null @@ -1,29 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ArrayNode (location: (1,0)-(1,11)) - ├── flags: newline - ├── elements: (length: 2) - │ ├── @ IntegerNode (location: (1,1)-(1,2)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── @ KeywordHashNode (location: (1,4)-(1,10)) - │ ├── flags: ∅ - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (1,4)-(1,10)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ IntegerNode (location: (1,4)-(1,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── value: - │ │ @ IntegerNode (location: (1,9)-(1,10)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 3 - │ └── operator_loc: (1,6)-(1,8) = "=>" - ├── opening_loc: (1,0)-(1,1) = "[" - └── closing_loc: (1,10)-(1,11) = "]" diff --git a/test/prism/snapshots/seattlerb/args_kw_block.txt b/test/prism/snapshots/seattlerb/args_kw_block.txt deleted file mode 100644 index 88081dfa14..0000000000 --- a/test/prism/snapshots/seattlerb/args_kw_block.txt +++ /dev/null @@ -1,43 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,20)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,20)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,20)) - ├── flags: newline - ├── name: :f - ├── name_loc: (1,4)-(1,5) = "f" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,14)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 1) - │ │ └── @ OptionalKeywordParameterNode (location: (1,6)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ ├── name_loc: (1,6)-(1,8) = "a:" - │ │ └── value: - │ │ @ IntegerNode (location: (1,9)-(1,10)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── keyword_rest: ∅ - │ └── block: - │ @ BlockParameterNode (location: (1,12)-(1,14)) - │ ├── flags: ∅ - │ ├── name: :b - │ ├── name_loc: (1,13)-(1,14) = "b" - │ └── operator_loc: (1,12)-(1,13) = "&" - ├── body: ∅ - ├── locals: [:a, :b] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,5)-(1,6) = "(" - ├── rparen_loc: (1,14)-(1,15) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,17)-(1,20) = "end" diff --git a/test/prism/snapshots/seattlerb/array_line_breaks.txt b/test/prism/snapshots/seattlerb/array_line_breaks.txt deleted file mode 100644 index a2d21e90ad..0000000000 --- a/test/prism/snapshots/seattlerb/array_line_breaks.txt +++ /dev/null @@ -1,27 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,1)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ ArrayNode (location: (1,0)-(3,4)) - │ ├── flags: newline - │ ├── elements: (length: 2) - │ │ ├── @ StringNode (location: (2,0)-(2,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (2,0)-(2,1) = "'" - │ │ │ ├── content_loc: (2,1)-(2,2) = "a" - │ │ │ ├── closing_loc: (2,2)-(2,3) = "'" - │ │ │ └── unescaped: "a" - │ │ └── @ StringNode (location: (3,0)-(3,3)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (3,0)-(3,1) = "'" - │ │ ├── content_loc: (3,1)-(3,2) = "b" - │ │ ├── closing_loc: (3,2)-(3,3) = "'" - │ │ └── unescaped: "b" - │ ├── opening_loc: (1,0)-(1,1) = "[" - │ └── closing_loc: (3,3)-(3,4) = "]" - └── @ IntegerNode (location: (4,0)-(4,1)) - ├── flags: newline, static_literal, decimal - └── value: 1 diff --git a/test/prism/snapshots/seattlerb/array_lits_trailing_calls.txt b/test/prism/snapshots/seattlerb/array_lits_trailing_calls.txt deleted file mode 100644 index 2de5a054a6..0000000000 --- a/test/prism/snapshots/seattlerb/array_lits_trailing_calls.txt +++ /dev/null @@ -1,37 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,4)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,6)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ArrayNode (location: (1,0)-(1,4)) - │ │ ├── flags: static_literal - │ │ ├── elements: (length: 0) - │ │ ├── opening_loc: (1,0)-(1,3) = "%w[" - │ │ └── closing_loc: (1,3)-(1,4) = "]" - │ ├── call_operator_loc: (1,4)-(1,5) = "." - │ ├── name: :b - │ ├── message_loc: (1,5)-(1,6) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (3,0)-(3,4)) - ├── flags: newline - ├── receiver: - │ @ ArrayNode (location: (3,0)-(3,2)) - │ ├── flags: static_literal - │ ├── elements: (length: 0) - │ ├── opening_loc: (3,0)-(3,1) = "[" - │ └── closing_loc: (3,1)-(3,2) = "]" - ├── call_operator_loc: (3,2)-(3,3) = "." - ├── name: :b - ├── message_loc: (3,3)-(3,4) = "b" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/assoc__bare.txt b/test/prism/snapshots/seattlerb/assoc__bare.txt deleted file mode 100644 index 530360ef66..0000000000 --- a/test/prism/snapshots/seattlerb/assoc__bare.txt +++ /dev/null @@ -1,36 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ HashNode (location: (1,0)-(1,6)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,1) = "{" - ├── elements: (length: 1) - │ └── @ AssocNode (location: (1,2)-(1,4)) - │ ├── flags: ∅ - │ ├── key: - │ │ @ SymbolNode (location: (1,2)-(1,4)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (1,2)-(1,3) = "y" - │ │ ├── closing_loc: (1,3)-(1,4) = ":" - │ │ └── unescaped: "y" - │ ├── value: - │ │ @ ImplicitNode (location: (1,2)-(1,4)) - │ │ ├── flags: ∅ - │ │ └── value: - │ │ @ CallNode (location: (1,2)-(1,4)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :y - │ │ ├── message_loc: (1,2)-(1,3) = "y" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: ∅ - └── closing_loc: (1,5)-(1,6) = "}" diff --git a/test/prism/snapshots/seattlerb/assoc_label.txt b/test/prism/snapshots/seattlerb/assoc_label.txt deleted file mode 100644 index 91b94bbc1c..0000000000 --- a/test/prism/snapshots/seattlerb/assoc_label.txt +++ /dev/null @@ -1,37 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,6)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: (1,1)-(1,2) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,5)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 1) - │ └── @ KeywordHashNode (location: (1,2)-(1,5)) - │ ├── flags: symbol_keys - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (1,2)-(1,5)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ SymbolNode (location: (1,2)-(1,4)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (1,2)-(1,3) = "b" - │ │ ├── closing_loc: (1,3)-(1,4) = ":" - │ │ └── unescaped: "b" - │ ├── value: - │ │ @ IntegerNode (location: (1,4)-(1,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: ∅ - ├── closing_loc: (1,5)-(1,6) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/attr_asgn_colon_id.txt b/test/prism/snapshots/seattlerb/attr_asgn_colon_id.txt deleted file mode 100644 index 67802fc8a4..0000000000 --- a/test/prism/snapshots/seattlerb/attr_asgn_colon_id.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,8)) - ├── flags: newline, attribute_write - ├── receiver: - │ @ ConstantReadNode (location: (1,0)-(1,1)) - │ ├── flags: ∅ - │ └── name: :A - ├── call_operator_loc: (1,1)-(1,3) = "::" - ├── name: :b= - ├── message_loc: (1,3)-(1,4) = "b" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,7)-(1,8)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,7)-(1,8)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/attrasgn_array_arg.txt b/test/prism/snapshots/seattlerb/attrasgn_array_arg.txt deleted file mode 100644 index 43853b4ef9..0000000000 --- a/test/prism/snapshots/seattlerb/attrasgn_array_arg.txt +++ /dev/null @@ -1,44 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,13)) - ├── flags: newline, attribute_write - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :[]= - ├── message_loc: (1,1)-(1,9) = "[[1, 2]]" - ├── opening_loc: (1,1)-(1,2) = "[" - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,13)) - │ ├── flags: ∅ - │ └── arguments: (length: 2) - │ ├── @ ArrayNode (location: (1,2)-(1,8)) - │ │ ├── flags: static_literal - │ │ ├── elements: (length: 2) - │ │ │ ├── @ IntegerNode (location: (1,3)-(1,4)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── @ IntegerNode (location: (1,6)-(1,7)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── opening_loc: (1,2)-(1,3) = "[" - │ │ └── closing_loc: (1,7)-(1,8) = "]" - │ └── @ IntegerNode (location: (1,12)-(1,13)) - │ ├── flags: static_literal, decimal - │ └── value: 3 - ├── closing_loc: (1,8)-(1,9) = "]" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/attrasgn_array_lhs.txt b/test/prism/snapshots/seattlerb/attrasgn_array_lhs.txt deleted file mode 100644 index 5729407edc..0000000000 --- a/test/prism/snapshots/seattlerb/attrasgn_array_lhs.txt +++ /dev/null @@ -1,85 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,42)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,42)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,42)) - ├── flags: newline, attribute_write - ├── receiver: - │ @ ArrayNode (location: (1,0)-(1,12)) - │ ├── flags: static_literal - │ ├── elements: (length: 4) - │ │ ├── @ IntegerNode (location: (1,1)-(1,2)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── @ IntegerNode (location: (1,4)-(1,5)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── @ IntegerNode (location: (1,7)-(1,8)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 3 - │ │ └── @ IntegerNode (location: (1,10)-(1,11)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 4 - │ ├── opening_loc: (1,0)-(1,1) = "[" - │ └── closing_loc: (1,11)-(1,12) = "]" - ├── call_operator_loc: ∅ - ├── name: :[]= - ├── message_loc: (1,12)-(1,24) = "[from .. to]" - ├── opening_loc: (1,12)-(1,13) = "[" - ├── arguments: - │ @ ArgumentsNode (location: (1,13)-(1,42)) - │ ├── flags: ∅ - │ └── arguments: (length: 2) - │ ├── @ RangeNode (location: (1,13)-(1,23)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ CallNode (location: (1,13)-(1,17)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :from - │ │ │ ├── message_loc: (1,13)-(1,17) = "from" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── right: - │ │ │ @ CallNode (location: (1,21)-(1,23)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :to - │ │ │ ├── message_loc: (1,21)-(1,23) = "to" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (1,18)-(1,20) = ".." - │ └── @ ArrayNode (location: (1,27)-(1,42)) - │ ├── flags: ∅ - │ ├── elements: (length: 3) - │ │ ├── @ StringNode (location: (1,28)-(1,31)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (1,28)-(1,29) = "\"" - │ │ │ ├── content_loc: (1,29)-(1,30) = "a" - │ │ │ ├── closing_loc: (1,30)-(1,31) = "\"" - │ │ │ └── unescaped: "a" - │ │ ├── @ StringNode (location: (1,33)-(1,36)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (1,33)-(1,34) = "\"" - │ │ │ ├── content_loc: (1,34)-(1,35) = "b" - │ │ │ ├── closing_loc: (1,35)-(1,36) = "\"" - │ │ │ └── unescaped: "b" - │ │ └── @ StringNode (location: (1,38)-(1,41)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,38)-(1,39) = "\"" - │ │ ├── content_loc: (1,39)-(1,40) = "c" - │ │ ├── closing_loc: (1,40)-(1,41) = "\"" - │ │ └── unescaped: "c" - │ ├── opening_loc: (1,27)-(1,28) = "[" - │ └── closing_loc: (1,41)-(1,42) = "]" - ├── closing_loc: (1,23)-(1,24) = "]" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/attrasgn_primary_dot_constant.txt b/test/prism/snapshots/seattlerb/attrasgn_primary_dot_constant.txt deleted file mode 100644 index 2c06df2609..0000000000 --- a/test/prism/snapshots/seattlerb/attrasgn_primary_dot_constant.txt +++ /dev/null @@ -1,33 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,7)) - ├── flags: newline, attribute_write - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,1)-(1,2) = "." - ├── name: :B= - ├── message_loc: (1,2)-(1,3) = "B" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,6)-(1,7)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,6)-(1,7)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/backticks_interpolation_line.txt b/test/prism/snapshots/seattlerb/backticks_interpolation_line.txt deleted file mode 100644 index 8c6a163c48..0000000000 --- a/test/prism/snapshots/seattlerb/backticks_interpolation_line.txt +++ /dev/null @@ -1,43 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,8)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :x - ├── message_loc: (1,0)-(1,1) = "x" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,8)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ InterpolatedXStringNode (location: (1,2)-(1,8)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,2)-(1,3) = "`" - │ ├── parts: (length: 1) - │ │ └── @ EmbeddedStatementsNode (location: (1,3)-(1,7)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,3)-(1,5) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :y - │ │ │ ├── message_loc: (1,5)-(1,6) = "y" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── closing_loc: (1,6)-(1,7) = "}" - │ └── closing_loc: (1,7)-(1,8) = "`" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/bang_eq.txt b/test/prism/snapshots/seattlerb/bang_eq.txt deleted file mode 100644 index 6bbd4a6ea2..0000000000 --- a/test/prism/snapshots/seattlerb/bang_eq.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,6)) - ├── flags: newline - ├── receiver: - │ @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── call_operator_loc: ∅ - ├── name: :!= - ├── message_loc: (1,2)-(1,4) = "!=" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,5)-(1,6)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,5)-(1,6)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/bdot2.txt b/test/prism/snapshots/seattlerb/bdot2.txt deleted file mode 100644 index b1c05c0fc4..0000000000 --- a/test/prism/snapshots/seattlerb/bdot2.txt +++ /dev/null @@ -1,40 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ RangeNode (location: (1,0)-(1,4)) - │ ├── flags: newline, static_literal - │ ├── left: ∅ - │ ├── right: - │ │ @ IntegerNode (location: (1,2)-(1,4)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 10 - │ └── operator_loc: (1,0)-(1,2) = ".." - ├── @ RangeNode (location: (2,2)-(2,5)) - │ ├── flags: newline - │ ├── left: ∅ - │ ├── right: - │ │ @ CallNode (location: (2,4)-(2,5)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (2,4)-(2,5) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (2,2)-(2,4) = ".." - └── @ CallNode (location: (3,2)-(3,3)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :c - ├── message_loc: (3,2)-(3,3) = "c" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/bdot3.txt b/test/prism/snapshots/seattlerb/bdot3.txt deleted file mode 100644 index 0b35268f19..0000000000 --- a/test/prism/snapshots/seattlerb/bdot3.txt +++ /dev/null @@ -1,40 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ RangeNode (location: (1,0)-(1,5)) - │ ├── flags: newline, static_literal, exclude_end - │ ├── left: ∅ - │ ├── right: - │ │ @ IntegerNode (location: (1,3)-(1,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 10 - │ └── operator_loc: (1,0)-(1,3) = "..." - ├── @ RangeNode (location: (2,2)-(2,6)) - │ ├── flags: newline, exclude_end - │ ├── left: ∅ - │ ├── right: - │ │ @ CallNode (location: (2,5)-(2,6)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (2,5)-(2,6) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (2,2)-(2,5) = "..." - └── @ CallNode (location: (3,2)-(3,3)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :c - ├── message_loc: (3,2)-(3,3) = "c" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/begin_ensure_no_bodies.txt b/test/prism/snapshots/seattlerb/begin_ensure_no_bodies.txt deleted file mode 100644 index 6ebcc2e052..0000000000 --- a/test/prism/snapshots/seattlerb/begin_ensure_no_bodies.txt +++ /dev/null @@ -1,20 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ BeginNode (location: (1,0)-(3,3)) - ├── flags: newline - ├── begin_keyword_loc: (1,0)-(1,5) = "begin" - ├── statements: ∅ - ├── rescue_clause: ∅ - ├── else_clause: ∅ - ├── ensure_clause: - │ @ EnsureNode (location: (2,0)-(3,3)) - │ ├── flags: ∅ - │ ├── ensure_keyword_loc: (2,0)-(2,6) = "ensure" - │ ├── statements: ∅ - │ └── end_keyword_loc: (3,0)-(3,3) = "end" - └── end_keyword_loc: (3,0)-(3,3) = "end" diff --git a/test/prism/snapshots/seattlerb/begin_rescue_else_ensure_bodies.txt b/test/prism/snapshots/seattlerb/begin_rescue_else_ensure_bodies.txt deleted file mode 100644 index 9fda6c10e6..0000000000 --- a/test/prism/snapshots/seattlerb/begin_rescue_else_ensure_bodies.txt +++ /dev/null @@ -1,57 +0,0 @@ -@ ProgramNode (location: (1,0)-(9,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(9,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ BeginNode (location: (1,0)-(9,3)) - ├── flags: newline - ├── begin_keyword_loc: (1,0)-(1,5) = "begin" - ├── statements: - │ @ StatementsNode (location: (2,2)-(2,3)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ IntegerNode (location: (2,2)-(2,3)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 1 - ├── rescue_clause: - │ @ RescueNode (location: (3,0)-(4,3)) - │ ├── flags: ∅ - │ ├── keyword_loc: (3,0)-(3,6) = "rescue" - │ ├── exceptions: (length: 0) - │ ├── operator_loc: ∅ - │ ├── reference: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (4,2)-(4,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (4,2)-(4,3)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 2 - │ └── subsequent: ∅ - ├── else_clause: - │ @ ElseNode (location: (5,0)-(7,6)) - │ ├── flags: ∅ - │ ├── else_keyword_loc: (5,0)-(5,4) = "else" - │ ├── statements: - │ │ @ StatementsNode (location: (6,2)-(6,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (6,2)-(6,3)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 3 - │ └── end_keyword_loc: (7,0)-(7,6) = "ensure" - ├── ensure_clause: - │ @ EnsureNode (location: (7,0)-(9,3)) - │ ├── flags: ∅ - │ ├── ensure_keyword_loc: (7,0)-(7,6) = "ensure" - │ ├── statements: - │ │ @ StatementsNode (location: (8,2)-(8,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (8,2)-(8,3)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 4 - │ └── end_keyword_loc: (9,0)-(9,3) = "end" - └── end_keyword_loc: (9,0)-(9,3) = "end" diff --git a/test/prism/snapshots/seattlerb/begin_rescue_else_ensure_no_bodies.txt b/test/prism/snapshots/seattlerb/begin_rescue_else_ensure_no_bodies.txt deleted file mode 100644 index 356d1ea9ab..0000000000 --- a/test/prism/snapshots/seattlerb/begin_rescue_else_ensure_no_bodies.txt +++ /dev/null @@ -1,33 +0,0 @@ -@ ProgramNode (location: (1,0)-(9,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(9,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ BeginNode (location: (1,0)-(9,3)) - ├── flags: newline - ├── begin_keyword_loc: (1,0)-(1,5) = "begin" - ├── statements: ∅ - ├── rescue_clause: - │ @ RescueNode (location: (3,0)-(3,6)) - │ ├── flags: ∅ - │ ├── keyword_loc: (3,0)-(3,6) = "rescue" - │ ├── exceptions: (length: 0) - │ ├── operator_loc: ∅ - │ ├── reference: ∅ - │ ├── statements: ∅ - │ └── subsequent: ∅ - ├── else_clause: - │ @ ElseNode (location: (5,0)-(7,6)) - │ ├── flags: ∅ - │ ├── else_keyword_loc: (5,0)-(5,4) = "else" - │ ├── statements: ∅ - │ └── end_keyword_loc: (7,0)-(7,6) = "ensure" - ├── ensure_clause: - │ @ EnsureNode (location: (7,0)-(9,3)) - │ ├── flags: ∅ - │ ├── ensure_keyword_loc: (7,0)-(7,6) = "ensure" - │ ├── statements: ∅ - │ └── end_keyword_loc: (9,0)-(9,3) = "end" - └── end_keyword_loc: (9,0)-(9,3) = "end" diff --git a/test/prism/snapshots/seattlerb/begin_rescue_ensure_no_bodies.txt b/test/prism/snapshots/seattlerb/begin_rescue_ensure_no_bodies.txt deleted file mode 100644 index aa744870e7..0000000000 --- a/test/prism/snapshots/seattlerb/begin_rescue_ensure_no_bodies.txt +++ /dev/null @@ -1,28 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ BeginNode (location: (1,0)-(4,3)) - ├── flags: newline - ├── begin_keyword_loc: (1,0)-(1,5) = "begin" - ├── statements: ∅ - ├── rescue_clause: - │ @ RescueNode (location: (2,0)-(2,6)) - │ ├── flags: ∅ - │ ├── keyword_loc: (2,0)-(2,6) = "rescue" - │ ├── exceptions: (length: 0) - │ ├── operator_loc: ∅ - │ ├── reference: ∅ - │ ├── statements: ∅ - │ └── subsequent: ∅ - ├── else_clause: ∅ - ├── ensure_clause: - │ @ EnsureNode (location: (3,0)-(4,3)) - │ ├── flags: ∅ - │ ├── ensure_keyword_loc: (3,0)-(3,6) = "ensure" - │ ├── statements: ∅ - │ └── end_keyword_loc: (4,0)-(4,3) = "end" - └── end_keyword_loc: (4,0)-(4,3) = "end" diff --git a/test/prism/snapshots/seattlerb/block_arg__bare.txt b/test/prism/snapshots/seattlerb/block_arg__bare.txt deleted file mode 100644 index ceafdcebbc..0000000000 --- a/test/prism/snapshots/seattlerb/block_arg__bare.txt +++ /dev/null @@ -1,35 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,13)) - ├── flags: newline - ├── name: :x - ├── name_loc: (1,4)-(1,5) = "x" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,7)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: - │ @ BlockParameterNode (location: (1,6)-(1,7)) - │ ├── flags: ∅ - │ ├── name: ∅ - │ ├── name_loc: ∅ - │ └── operator_loc: (1,6)-(1,7) = "&" - ├── body: ∅ - ├── locals: [] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,5)-(1,6) = "(" - ├── rparen_loc: (1,7)-(1,8) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,10)-(1,13) = "end" diff --git a/test/prism/snapshots/seattlerb/block_arg_kwsplat.txt b/test/prism/snapshots/seattlerb/block_arg_kwsplat.txt deleted file mode 100644 index 20756c8378..0000000000 --- a/test/prism/snapshots/seattlerb/block_arg_kwsplat.txt +++ /dev/null @@ -1,44 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,11)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,11)) - ├── flags: ∅ - ├── locals: [:b] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,9)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,8)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ KeywordRestParameterNode (location: (1,5)-(1,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (1,7)-(1,8) = "b" - │ │ │ └── operator_loc: (1,5)-(1,7) = "**" - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,8)-(1,9) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,10)-(1,11) = "}" diff --git a/test/prism/snapshots/seattlerb/block_arg_opt_arg_block.txt b/test/prism/snapshots/seattlerb/block_arg_opt_arg_block.txt deleted file mode 100644 index dd89df907d..0000000000 --- a/test/prism/snapshots/seattlerb/block_arg_opt_arg_block.txt +++ /dev/null @@ -1,59 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,21)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,21)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,21)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,21)) - ├── flags: ∅ - ├── locals: [:b, :c, :d, :e] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,19)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,18)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :b - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,8)-(1,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ ├── name_loc: (1,8)-(1,9) = "c" - │ │ │ ├── operator_loc: (1,9)-(1,10) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,10)-(1,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,13)-(1,14)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :d - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (1,16)-(1,18)) - │ │ ├── flags: ∅ - │ │ ├── name: :e - │ │ ├── name_loc: (1,17)-(1,18) = "e" - │ │ └── operator_loc: (1,16)-(1,17) = "&" - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,18)-(1,19) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,20)-(1,21) = "}" diff --git a/test/prism/snapshots/seattlerb/block_arg_opt_splat.txt b/test/prism/snapshots/seattlerb/block_arg_opt_splat.txt deleted file mode 100644 index cefc1a8515..0000000000 --- a/test/prism/snapshots/seattlerb/block_arg_opt_splat.txt +++ /dev/null @@ -1,56 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,20)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,20)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,20)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,20)) - ├── flags: ∅ - ├── locals: [:b, :c, :d] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,18)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,17)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :b - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,8)-(1,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ ├── name_loc: (1,8)-(1,9) = "c" - │ │ │ ├── operator_loc: (1,10)-(1,11) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,12)-(1,13)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (1,15)-(1,17)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :d - │ │ │ ├── name_loc: (1,16)-(1,17) = "d" - │ │ │ └── operator_loc: (1,15)-(1,16) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,17)-(1,18) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,19)-(1,20) = "}" diff --git a/test/prism/snapshots/seattlerb/block_arg_opt_splat_arg_block_omfg.txt b/test/prism/snapshots/seattlerb/block_arg_opt_splat_arg_block_omfg.txt deleted file mode 100644 index bf66e376fd..0000000000 --- a/test/prism/snapshots/seattlerb/block_arg_opt_splat_arg_block_omfg.txt +++ /dev/null @@ -1,64 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,25)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,25)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,25)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,25)) - ├── flags: ∅ - ├── locals: [:b, :c, :d, :e, :f] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,23)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,22)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :b - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,8)-(1,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ ├── name_loc: (1,8)-(1,9) = "c" - │ │ │ ├── operator_loc: (1,9)-(1,10) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,10)-(1,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (1,13)-(1,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :d - │ │ │ ├── name_loc: (1,14)-(1,15) = "d" - │ │ │ └── operator_loc: (1,13)-(1,14) = "*" - │ │ ├── posts: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,17)-(1,18)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :e - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (1,20)-(1,22)) - │ │ ├── flags: ∅ - │ │ ├── name: :f - │ │ ├── name_loc: (1,21)-(1,22) = "f" - │ │ └── operator_loc: (1,20)-(1,21) = "&" - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,22)-(1,23) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,24)-(1,25) = "}" diff --git a/test/prism/snapshots/seattlerb/block_arg_optional.txt b/test/prism/snapshots/seattlerb/block_arg_optional.txt deleted file mode 100644 index 5fecfc31ab..0000000000 --- a/test/prism/snapshots/seattlerb/block_arg_optional.txt +++ /dev/null @@ -1,48 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,13)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,13)) - ├── flags: ∅ - ├── locals: [:b] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,11)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,5)-(1,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (1,5)-(1,6) = "b" - │ │ │ ├── operator_loc: (1,7)-(1,8) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,9)-(1,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,10)-(1,11) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,12)-(1,13) = "}" diff --git a/test/prism/snapshots/seattlerb/block_arg_scope.txt b/test/prism/snapshots/seattlerb/block_arg_scope.txt deleted file mode 100644 index e90d6445b2..0000000000 --- a/test/prism/snapshots/seattlerb/block_arg_scope.txt +++ /dev/null @@ -1,45 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,12)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,12)) - ├── flags: ∅ - ├── locals: [:b, :c] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,10)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,6)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :b - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 1) - │ │ └── @ BlockLocalVariableNode (location: (1,8)-(1,9)) - │ │ ├── flags: ∅ - │ │ └── name: :c - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,9)-(1,10) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,11)-(1,12) = "}" diff --git a/test/prism/snapshots/seattlerb/block_arg_scope2.txt b/test/prism/snapshots/seattlerb/block_arg_scope2.txt deleted file mode 100644 index c9f7242d8a..0000000000 --- a/test/prism/snapshots/seattlerb/block_arg_scope2.txt +++ /dev/null @@ -1,48 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,14)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,14)) - ├── flags: ∅ - ├── locals: [:b, :c, :d] - ├── parameters: - │ @ BlockParametersNode (location: (1,3)-(1,12)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,4)-(1,5)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,4)-(1,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :b - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 2) - │ │ ├── @ BlockLocalVariableNode (location: (1,7)-(1,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :c - │ │ └── @ BlockLocalVariableNode (location: (1,10)-(1,11)) - │ │ ├── flags: ∅ - │ │ └── name: :d - │ ├── opening_loc: (1,3)-(1,4) = "|" - │ └── closing_loc: (1,11)-(1,12) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,13)-(1,14) = "}" diff --git a/test/prism/snapshots/seattlerb/block_arg_splat_arg.txt b/test/prism/snapshots/seattlerb/block_arg_splat_arg.txt deleted file mode 100644 index 6ae1b1dade..0000000000 --- a/test/prism/snapshots/seattlerb/block_arg_splat_arg.txt +++ /dev/null @@ -1,50 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,16)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,16)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,16)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,16)) - ├── flags: ∅ - ├── locals: [:b, :c, :d] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,14)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,13)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :b - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (1,8)-(1,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ ├── name_loc: (1,9)-(1,10) = "c" - │ │ │ └── operator_loc: (1,8)-(1,9) = "*" - │ │ ├── posts: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,12)-(1,13)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :d - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,13)-(1,14) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,15)-(1,16) = "}" diff --git a/test/prism/snapshots/seattlerb/block_args_kwargs.txt b/test/prism/snapshots/seattlerb/block_args_kwargs.txt deleted file mode 100644 index 45876c6dc1..0000000000 --- a/test/prism/snapshots/seattlerb/block_args_kwargs.txt +++ /dev/null @@ -1,51 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,23)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,23)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,23)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,23)) - ├── flags: ∅ - ├── locals: [:kwargs] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,14)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,13)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ KeywordRestParameterNode (location: (1,5)-(1,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :kwargs - │ │ │ ├── name_loc: (1,7)-(1,13) = "kwargs" - │ │ │ └── operator_loc: (1,5)-(1,7) = "**" - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,13)-(1,14) = "|" - ├── body: - │ @ StatementsNode (location: (1,15)-(1,21)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ LocalVariableReadNode (location: (1,15)-(1,21)) - │ ├── flags: newline - │ ├── name: :kwargs - │ └── depth: 0 - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,22)-(1,23) = "}" diff --git a/test/prism/snapshots/seattlerb/block_args_no_kwargs.txt b/test/prism/snapshots/seattlerb/block_args_no_kwargs.txt deleted file mode 100644 index 298bc26ce0..0000000000 --- a/test/prism/snapshots/seattlerb/block_args_no_kwargs.txt +++ /dev/null @@ -1,43 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,13)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,13)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,11)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ NoKeywordsParameterNode (location: (1,5)-(1,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (1,5)-(1,7) = "**" - │ │ │ └── keyword_loc: (1,7)-(1,10) = "nil" - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,10)-(1,11) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,12)-(1,13) = "}" diff --git a/test/prism/snapshots/seattlerb/block_args_opt1.txt b/test/prism/snapshots/seattlerb/block_args_opt1.txt deleted file mode 100644 index d23bd5edce..0000000000 --- a/test/prism/snapshots/seattlerb/block_args_opt1.txt +++ /dev/null @@ -1,67 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,24)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,24)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,24)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,24)) - ├── flags: ∅ - ├── locals: [:a, :b] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,15)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,14)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,8)-(1,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (1,8)-(1,9) = "b" - │ │ │ ├── operator_loc: (1,10)-(1,11) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,12)-(1,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 42 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,14)-(1,15) = "|" - ├── body: - │ @ StatementsNode (location: (1,16)-(1,22)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ ArrayNode (location: (1,16)-(1,22)) - │ ├── flags: newline - │ ├── elements: (length: 2) - │ │ ├── @ LocalVariableReadNode (location: (1,17)-(1,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ └── @ LocalVariableReadNode (location: (1,20)-(1,21)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ └── depth: 0 - │ ├── opening_loc: (1,16)-(1,17) = "[" - │ └── closing_loc: (1,21)-(1,22) = "]" - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,23)-(1,24) = "}" diff --git a/test/prism/snapshots/seattlerb/block_args_opt2.txt b/test/prism/snapshots/seattlerb/block_args_opt2.txt deleted file mode 100644 index 7170768b1c..0000000000 --- a/test/prism/snapshots/seattlerb/block_args_opt2.txt +++ /dev/null @@ -1,57 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,18)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,18)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,18)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,18)) - ├── flags: ∅ - ├── locals: [:b, :c] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,16)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,6)-(1,14)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 2) - │ │ │ ├── @ OptionalParameterNode (location: (1,6)-(1,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── name_loc: (1,6)-(1,7) = "b" - │ │ │ │ ├── operator_loc: (1,7)-(1,8) = "=" - │ │ │ │ └── value: - │ │ │ │ @ IntegerNode (location: (1,8)-(1,9)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── @ OptionalParameterNode (location: (1,11)-(1,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ ├── name_loc: (1,11)-(1,12) = "c" - │ │ │ ├── operator_loc: (1,12)-(1,13) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,13)-(1,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,15)-(1,16) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,17)-(1,18) = "}" diff --git a/test/prism/snapshots/seattlerb/block_args_opt2_2.txt b/test/prism/snapshots/seattlerb/block_args_opt2_2.txt deleted file mode 100644 index 34d04dbe54..0000000000 --- a/test/prism/snapshots/seattlerb/block_args_opt2_2.txt +++ /dev/null @@ -1,80 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,35)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,35)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,35)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,35)) - ├── flags: ∅ - ├── locals: [:a, :b, :c] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,23)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,22)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 2) - │ │ │ ├── @ OptionalParameterNode (location: (1,8)-(1,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── name_loc: (1,8)-(1,9) = "b" - │ │ │ │ ├── operator_loc: (1,10)-(1,11) = "=" - │ │ │ │ └── value: - │ │ │ │ @ IntegerNode (location: (1,12)-(1,14)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 42 - │ │ │ └── @ OptionalParameterNode (location: (1,16)-(1,22)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ ├── name_loc: (1,16)-(1,17) = "c" - │ │ │ ├── operator_loc: (1,18)-(1,19) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,20)-(1,22)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 24 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,22)-(1,23) = "|" - ├── body: - │ @ StatementsNode (location: (1,24)-(1,33)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ ArrayNode (location: (1,24)-(1,33)) - │ ├── flags: newline - │ ├── elements: (length: 3) - │ │ ├── @ LocalVariableReadNode (location: (1,25)-(1,26)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ ├── @ LocalVariableReadNode (location: (1,28)-(1,29)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ └── depth: 0 - │ │ └── @ LocalVariableReadNode (location: (1,31)-(1,32)) - │ │ ├── flags: ∅ - │ │ ├── name: :c - │ │ └── depth: 0 - │ ├── opening_loc: (1,24)-(1,25) = "[" - │ └── closing_loc: (1,32)-(1,33) = "]" - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,34)-(1,35) = "}" diff --git a/test/prism/snapshots/seattlerb/block_args_opt3.txt b/test/prism/snapshots/seattlerb/block_args_opt3.txt deleted file mode 100644 index 508d062ce2..0000000000 --- a/test/prism/snapshots/seattlerb/block_args_opt3.txt +++ /dev/null @@ -1,89 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,42)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,42)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,42)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,42)) - ├── flags: ∅ - ├── locals: [:a, :b, :c, :d] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,27)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,26)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 2) - │ │ │ ├── @ OptionalParameterNode (location: (1,8)-(1,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── name_loc: (1,8)-(1,9) = "b" - │ │ │ │ ├── operator_loc: (1,10)-(1,11) = "=" - │ │ │ │ └── value: - │ │ │ │ @ IntegerNode (location: (1,12)-(1,14)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 42 - │ │ │ └── @ OptionalParameterNode (location: (1,16)-(1,22)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ ├── name_loc: (1,16)-(1,17) = "c" - │ │ │ ├── operator_loc: (1,18)-(1,19) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,20)-(1,22)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 24 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (1,24)-(1,26)) - │ │ ├── flags: ∅ - │ │ ├── name: :d - │ │ ├── name_loc: (1,25)-(1,26) = "d" - │ │ └── operator_loc: (1,24)-(1,25) = "&" - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,26)-(1,27) = "|" - ├── body: - │ @ StatementsNode (location: (1,28)-(1,40)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ ArrayNode (location: (1,28)-(1,40)) - │ ├── flags: newline - │ ├── elements: (length: 4) - │ │ ├── @ LocalVariableReadNode (location: (1,29)-(1,30)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ ├── @ LocalVariableReadNode (location: (1,32)-(1,33)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ └── depth: 0 - │ │ ├── @ LocalVariableReadNode (location: (1,35)-(1,36)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ └── depth: 0 - │ │ └── @ LocalVariableReadNode (location: (1,38)-(1,39)) - │ │ ├── flags: ∅ - │ │ ├── name: :d - │ │ └── depth: 0 - │ ├── opening_loc: (1,28)-(1,29) = "[" - │ └── closing_loc: (1,39)-(1,40) = "]" - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,41)-(1,42) = "}" diff --git a/test/prism/snapshots/seattlerb/block_call_defn_call_block_call.txt b/test/prism/snapshots/seattlerb/block_call_defn_call_block_call.txt deleted file mode 100644 index 4e6ad90afd..0000000000 --- a/test/prism/snapshots/seattlerb/block_call_defn_call_block_call.txt +++ /dev/null @@ -1,86 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,11)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(3,4)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,2)-(3,4)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ DefNode (location: (1,2)-(3,4)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (1,6)-(1,7) = "b" - │ │ ├── receiver: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (1,8)-(1,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (1,8)-(1,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :c - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (2,1)-(2,2)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (2,1)-(2,2)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :d - │ │ │ ├── message_loc: (2,1)-(2,2) = "d" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: [:c] - │ │ ├── def_keyword_loc: (1,2)-(1,5) = "def" - │ │ ├── operator_loc: ∅ - │ │ ├── lparen_loc: (1,7)-(1,8) = "(" - │ │ ├── rparen_loc: (1,9)-(1,10) = ")" - │ │ ├── equal_loc: ∅ - │ │ └── end_keyword_loc: (3,1)-(3,4) = "end" - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (4,1)-(4,11)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (4,1)-(4,2)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :e - │ ├── message_loc: (4,1)-(4,2) = "e" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (4,2)-(4,3) = "." - ├── name: :f - ├── message_loc: (4,3)-(4,4) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (4,5)-(4,11)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: ∅ - ├── opening_loc: (4,5)-(4,7) = "do" - └── closing_loc: (4,8)-(4,11) = "end" diff --git a/test/prism/snapshots/seattlerb/block_call_dot_op2_brace_block.txt b/test/prism/snapshots/seattlerb/block_call_dot_op2_brace_block.txt deleted file mode 100644 index 5f05b1f6ff..0000000000 --- a/test/prism/snapshots/seattlerb/block_call_dot_op2_brace_block.txt +++ /dev/null @@ -1,108 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,31)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,31)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,31)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,16)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ CallNode (location: (1,0)-(1,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (1,0)-(1,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (1,1)-(1,2) = "." - │ ├── name: :b - │ ├── message_loc: (1,2)-(1,3) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,4)-(1,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (1,4)-(1,7)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :c - │ │ ├── message_loc: (1,4)-(1,5) = "c" - │ │ ├── opening_loc: (1,5)-(1,6) = "(" - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: (1,6)-(1,7) = ")" - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (1,8)-(1,16)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,11)-(1,12)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,11)-(1,12)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :d - │ │ ├── message_loc: (1,11)-(1,12) = "d" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (1,8)-(1,10) = "do" - │ └── closing_loc: (1,13)-(1,16) = "end" - ├── call_operator_loc: (1,16)-(1,17) = "." - ├── name: :e - ├── message_loc: (1,17)-(1,18) = "e" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,19)-(1,31)) - ├── flags: ∅ - ├── locals: [:f] - ├── parameters: - │ @ BlockParametersNode (location: (1,22)-(1,25)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,23)-(1,24)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,23)-(1,24)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :f - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,22)-(1,23) = "|" - │ └── closing_loc: (1,24)-(1,25) = "|" - ├── body: - │ @ StatementsNode (location: (1,26)-(1,27)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,26)-(1,27)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :g - │ ├── message_loc: (1,26)-(1,27) = "g" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── opening_loc: (1,19)-(1,21) = "do" - └── closing_loc: (1,28)-(1,31) = "end" diff --git a/test/prism/snapshots/seattlerb/block_call_dot_op2_cmd_args_do_block.txt b/test/prism/snapshots/seattlerb/block_call_dot_op2_cmd_args_do_block.txt deleted file mode 100644 index ca141580b7..0000000000 --- a/test/prism/snapshots/seattlerb/block_call_dot_op2_cmd_args_do_block.txt +++ /dev/null @@ -1,121 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,33)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,33)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,33)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,16)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ CallNode (location: (1,0)-(1,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (1,0)-(1,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (1,1)-(1,2) = "." - │ ├── name: :b - │ ├── message_loc: (1,2)-(1,3) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,4)-(1,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (1,4)-(1,7)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :c - │ │ ├── message_loc: (1,4)-(1,5) = "c" - │ │ ├── opening_loc: (1,5)-(1,6) = "(" - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: (1,6)-(1,7) = ")" - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (1,8)-(1,16)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,11)-(1,12)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,11)-(1,12)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :d - │ │ ├── message_loc: (1,11)-(1,12) = "d" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (1,8)-(1,10) = "do" - │ └── closing_loc: (1,13)-(1,16) = "end" - ├── call_operator_loc: (1,16)-(1,17) = "." - ├── name: :e - ├── message_loc: (1,17)-(1,18) = "e" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,19)-(1,20)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (1,19)-(1,20)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (1,19)-(1,20) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,21)-(1,33)) - ├── flags: ∅ - ├── locals: [:g] - ├── parameters: - │ @ BlockParametersNode (location: (1,24)-(1,27)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,25)-(1,26)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,25)-(1,26)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :g - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,24)-(1,25) = "|" - │ └── closing_loc: (1,26)-(1,27) = "|" - ├── body: - │ @ StatementsNode (location: (1,28)-(1,29)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,28)-(1,29)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :h - │ ├── message_loc: (1,28)-(1,29) = "h" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── opening_loc: (1,21)-(1,23) = "do" - └── closing_loc: (1,30)-(1,33) = "end" diff --git a/test/prism/snapshots/seattlerb/block_call_operation_colon.txt b/test/prism/snapshots/seattlerb/block_call_operation_colon.txt deleted file mode 100644 index cecd421263..0000000000 --- a/test/prism/snapshots/seattlerb/block_call_operation_colon.txt +++ /dev/null @@ -1,57 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,15)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,15)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,12)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ CallNode (location: (1,0)-(1,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (1,0)-(1,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (1,1)-(1,2) = "." - │ ├── name: :b - │ ├── message_loc: (1,2)-(1,3) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,4)-(1,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (1,4)-(1,5)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :c - │ │ ├── message_loc: (1,4)-(1,5) = "c" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (1,6)-(1,12)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (1,6)-(1,8) = "do" - │ └── closing_loc: (1,9)-(1,12) = "end" - ├── call_operator_loc: (1,12)-(1,14) = "::" - ├── name: :d - ├── message_loc: (1,14)-(1,15) = "d" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/block_call_operation_dot.txt b/test/prism/snapshots/seattlerb/block_call_operation_dot.txt deleted file mode 100644 index 5c661fb49a..0000000000 --- a/test/prism/snapshots/seattlerb/block_call_operation_dot.txt +++ /dev/null @@ -1,57 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,14)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,12)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ CallNode (location: (1,0)-(1,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (1,0)-(1,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (1,1)-(1,2) = "." - │ ├── name: :b - │ ├── message_loc: (1,2)-(1,3) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,4)-(1,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (1,4)-(1,5)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :c - │ │ ├── message_loc: (1,4)-(1,5) = "c" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (1,6)-(1,12)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (1,6)-(1,8) = "do" - │ └── closing_loc: (1,9)-(1,12) = "end" - ├── call_operator_loc: (1,12)-(1,13) = "." - ├── name: :d - ├── message_loc: (1,13)-(1,14) = "d" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/block_call_paren_call_block_call.txt b/test/prism/snapshots/seattlerb/block_call_paren_call_block_call.txt deleted file mode 100644 index 93c4b05f9b..0000000000 --- a/test/prism/snapshots/seattlerb/block_call_paren_call_block_call.txt +++ /dev/null @@ -1,65 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,10)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,5)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,2)-(1,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ ParenthesesNode (location: (1,2)-(1,5)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (1,3)-(1,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (1,3)-(1,4)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (1,3)-(1,4) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (1,2)-(1,3) = "(" - │ │ └── closing_loc: (1,4)-(1,5) = ")" - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (2,0)-(2,10)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (2,0)-(2,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :c - │ ├── message_loc: (2,0)-(2,1) = "c" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (2,1)-(2,2) = "." - ├── name: :d - ├── message_loc: (2,2)-(2,3) = "d" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (2,4)-(2,10)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: ∅ - ├── opening_loc: (2,4)-(2,6) = "do" - └── closing_loc: (2,7)-(2,10) = "end" diff --git a/test/prism/snapshots/seattlerb/block_command_operation_colon.txt b/test/prism/snapshots/seattlerb/block_command_operation_colon.txt deleted file mode 100644 index c71fbe2f4a..0000000000 --- a/test/prism/snapshots/seattlerb/block_command_operation_colon.txt +++ /dev/null @@ -1,52 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,17)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,17)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,11)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,2)-(1,4)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ SymbolNode (location: (1,2)-(1,4)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,2)-(1,3) = ":" - │ │ ├── value_loc: (1,3)-(1,4) = "b" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b" - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (1,5)-(1,11)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (1,5)-(1,7) = "do" - │ └── closing_loc: (1,8)-(1,11) = "end" - ├── call_operator_loc: (1,11)-(1,13) = "::" - ├── name: :c - ├── message_loc: (1,13)-(1,14) = "c" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,15)-(1,17)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ SymbolNode (location: (1,15)-(1,17)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,15)-(1,16) = ":" - │ ├── value_loc: (1,16)-(1,17) = "d" - │ ├── closing_loc: ∅ - │ └── unescaped: "d" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/block_command_operation_dot.txt b/test/prism/snapshots/seattlerb/block_command_operation_dot.txt deleted file mode 100644 index 68d98c99b4..0000000000 --- a/test/prism/snapshots/seattlerb/block_command_operation_dot.txt +++ /dev/null @@ -1,52 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,16)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,16)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,16)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,11)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,2)-(1,4)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ SymbolNode (location: (1,2)-(1,4)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,2)-(1,3) = ":" - │ │ ├── value_loc: (1,3)-(1,4) = "b" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b" - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (1,5)-(1,11)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (1,5)-(1,7) = "do" - │ └── closing_loc: (1,8)-(1,11) = "end" - ├── call_operator_loc: (1,11)-(1,12) = "." - ├── name: :c - ├── message_loc: (1,12)-(1,13) = "c" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,14)-(1,16)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ SymbolNode (location: (1,14)-(1,16)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,14)-(1,15) = ":" - │ ├── value_loc: (1,15)-(1,16) = "d" - │ ├── closing_loc: ∅ - │ └── unescaped: "d" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/block_decomp_anon_splat_arg.txt b/test/prism/snapshots/seattlerb/block_decomp_anon_splat_arg.txt deleted file mode 100644 index 5628cacc97..0000000000 --- a/test/prism/snapshots/seattlerb/block_decomp_anon_splat_arg.txt +++ /dev/null @@ -1,53 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,14)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,14)) - ├── flags: ∅ - ├── locals: [:a] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,12)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,11)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ MultiTargetNode (location: (1,5)-(1,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (1,6)-(1,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (1,6)-(1,7) = "*" - │ │ │ │ └── expression: ∅ - │ │ │ ├── rights: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (1,9)-(1,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── lparen_loc: (1,5)-(1,6) = "(" - │ │ │ └── rparen_loc: (1,10)-(1,11) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,11)-(1,12) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,13)-(1,14) = "}" diff --git a/test/prism/snapshots/seattlerb/block_decomp_arg_splat.txt b/test/prism/snapshots/seattlerb/block_decomp_arg_splat.txt deleted file mode 100644 index b13e13d167..0000000000 --- a/test/prism/snapshots/seattlerb/block_decomp_arg_splat.txt +++ /dev/null @@ -1,53 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,14)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,14)) - ├── flags: ∅ - ├── locals: [:b] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,12)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,11)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ MultiTargetNode (location: (1,5)-(1,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (1,6)-(1,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :b - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (1,9)-(1,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (1,9)-(1,10) = "*" - │ │ │ │ └── expression: ∅ - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: (1,5)-(1,6) = "(" - │ │ │ └── rparen_loc: (1,10)-(1,11) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,11)-(1,12) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,13)-(1,14) = "}" diff --git a/test/prism/snapshots/seattlerb/block_decomp_arg_splat_arg.txt b/test/prism/snapshots/seattlerb/block_decomp_arg_splat_arg.txt deleted file mode 100644 index ba0a6202ce..0000000000 --- a/test/prism/snapshots/seattlerb/block_decomp_arg_splat_arg.txt +++ /dev/null @@ -1,59 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,18)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,18)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,18)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,18)) - ├── flags: ∅ - ├── locals: [:a, :b, :c] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,16)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,15)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ MultiTargetNode (location: (1,5)-(1,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (1,6)-(1,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (1,9)-(1,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (1,9)-(1,10) = "*" - │ │ │ │ └── expression: - │ │ │ │ @ RequiredParameterNode (location: (1,10)-(1,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :b - │ │ │ ├── rights: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (1,13)-(1,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :c - │ │ │ ├── lparen_loc: (1,5)-(1,6) = "(" - │ │ │ └── rparen_loc: (1,14)-(1,15) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,15)-(1,16) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,17)-(1,18) = "}" diff --git a/test/prism/snapshots/seattlerb/block_decomp_splat.txt b/test/prism/snapshots/seattlerb/block_decomp_splat.txt deleted file mode 100644 index fd8ad4bda1..0000000000 --- a/test/prism/snapshots/seattlerb/block_decomp_splat.txt +++ /dev/null @@ -1,53 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,12)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,12)) - ├── flags: ∅ - ├── locals: [:a] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,10)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,9)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ MultiTargetNode (location: (1,5)-(1,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (1,6)-(1,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (1,6)-(1,7) = "*" - │ │ │ │ └── expression: - │ │ │ │ @ RequiredParameterNode (location: (1,7)-(1,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: (1,5)-(1,6) = "(" - │ │ │ └── rparen_loc: (1,8)-(1,9) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,9)-(1,10) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,11)-(1,12) = "}" diff --git a/test/prism/snapshots/seattlerb/block_kw.txt b/test/prism/snapshots/seattlerb/block_kw.txt deleted file mode 100644 index d76998ecb6..0000000000 --- a/test/prism/snapshots/seattlerb/block_kw.txt +++ /dev/null @@ -1,47 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,15)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,15)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :blah - ├── message_loc: (1,0)-(1,4) = "blah" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,5)-(1,15)) - ├── flags: ∅ - ├── locals: [:k] - ├── parameters: - │ @ BlockParametersNode (location: (1,7)-(1,13)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,8)-(1,12)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ OptionalKeywordParameterNode (location: (1,8)-(1,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :k - │ │ │ ├── name_loc: (1,8)-(1,10) = "k:" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,10)-(1,12)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 42 - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,7)-(1,8) = "|" - │ └── closing_loc: (1,12)-(1,13) = "|" - ├── body: ∅ - ├── opening_loc: (1,5)-(1,6) = "{" - └── closing_loc: (1,14)-(1,15) = "}" diff --git a/test/prism/snapshots/seattlerb/block_kw__required.txt b/test/prism/snapshots/seattlerb/block_kw__required.txt deleted file mode 100644 index f04987d854..0000000000 --- a/test/prism/snapshots/seattlerb/block_kw__required.txt +++ /dev/null @@ -1,43 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,16)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,16)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,16)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :blah - ├── message_loc: (1,0)-(1,4) = "blah" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,5)-(1,16)) - ├── flags: ∅ - ├── locals: [:k] - ├── parameters: - │ @ BlockParametersNode (location: (1,8)-(1,12)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,9)-(1,11)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ RequiredKeywordParameterNode (location: (1,9)-(1,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :k - │ │ │ └── name_loc: (1,9)-(1,11) = "k:" - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,8)-(1,9) = "|" - │ └── closing_loc: (1,11)-(1,12) = "|" - ├── body: ∅ - ├── opening_loc: (1,5)-(1,7) = "do" - └── closing_loc: (1,13)-(1,16) = "end" diff --git a/test/prism/snapshots/seattlerb/block_kwarg_lvar.txt b/test/prism/snapshots/seattlerb/block_kwarg_lvar.txt deleted file mode 100644 index 861348f2a2..0000000000 --- a/test/prism/snapshots/seattlerb/block_kwarg_lvar.txt +++ /dev/null @@ -1,57 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,20)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,20)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,20)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :bl - ├── message_loc: (1,0)-(1,2) = "bl" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,3)-(1,20)) - ├── flags: ∅ - ├── locals: [:kw] - ├── parameters: - │ @ BlockParametersNode (location: (1,5)-(1,15)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,6)-(1,14)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ OptionalKeywordParameterNode (location: (1,6)-(1,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :kw - │ │ │ ├── name_loc: (1,6)-(1,9) = "kw:" - │ │ │ └── value: - │ │ │ @ SymbolNode (location: (1,10)-(1,14)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (1,10)-(1,11) = ":" - │ │ │ ├── value_loc: (1,11)-(1,14) = "val" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "val" - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,5)-(1,6) = "|" - │ └── closing_loc: (1,14)-(1,15) = "|" - ├── body: - │ @ StatementsNode (location: (1,16)-(1,18)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ LocalVariableReadNode (location: (1,16)-(1,18)) - │ ├── flags: newline - │ ├── name: :kw - │ └── depth: 0 - ├── opening_loc: (1,3)-(1,4) = "{" - └── closing_loc: (1,19)-(1,20) = "}" diff --git a/test/prism/snapshots/seattlerb/block_kwarg_lvar_multiple.txt b/test/prism/snapshots/seattlerb/block_kwarg_lvar_multiple.txt deleted file mode 100644 index f1c1fef8a3..0000000000 --- a/test/prism/snapshots/seattlerb/block_kwarg_lvar_multiple.txt +++ /dev/null @@ -1,68 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,33)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,33)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,33)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :bl - ├── message_loc: (1,0)-(1,2) = "bl" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,3)-(1,33)) - ├── flags: ∅ - ├── locals: [:kw, :kw2] - ├── parameters: - │ @ BlockParametersNode (location: (1,5)-(1,28)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,6)-(1,26)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 2) - │ │ │ ├── @ OptionalKeywordParameterNode (location: (1,6)-(1,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :kw - │ │ │ │ ├── name_loc: (1,6)-(1,9) = "kw:" - │ │ │ │ └── value: - │ │ │ │ @ SymbolNode (location: (1,10)-(1,14)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (1,10)-(1,11) = ":" - │ │ │ │ ├── value_loc: (1,11)-(1,14) = "val" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "val" - │ │ │ └── @ OptionalKeywordParameterNode (location: (1,16)-(1,26)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :kw2 - │ │ │ ├── name_loc: (1,16)-(1,20) = "kw2:" - │ │ │ └── value: - │ │ │ @ SymbolNode (location: (1,21)-(1,26)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (1,21)-(1,22) = ":" - │ │ │ ├── value_loc: (1,22)-(1,26) = "val2" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "val2" - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,5)-(1,6) = "|" - │ └── closing_loc: (1,27)-(1,28) = "|" - ├── body: - │ @ StatementsNode (location: (1,29)-(1,31)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ LocalVariableReadNode (location: (1,29)-(1,31)) - │ ├── flags: newline - │ ├── name: :kw - │ └── depth: 0 - ├── opening_loc: (1,3)-(1,4) = "{" - └── closing_loc: (1,32)-(1,33) = "}" diff --git a/test/prism/snapshots/seattlerb/block_opt_arg.txt b/test/prism/snapshots/seattlerb/block_opt_arg.txt deleted file mode 100644 index 39be11ac92..0000000000 --- a/test/prism/snapshots/seattlerb/block_opt_arg.txt +++ /dev/null @@ -1,51 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,14)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,14)) - ├── flags: ∅ - ├── locals: [:b, :c] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,12)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,11)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,5)-(1,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (1,5)-(1,6) = "b" - │ │ │ ├── operator_loc: (1,6)-(1,7) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,7)-(1,8)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,10)-(1,11)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :c - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,11)-(1,12) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,13)-(1,14) = "}" diff --git a/test/prism/snapshots/seattlerb/block_opt_splat.txt b/test/prism/snapshots/seattlerb/block_opt_splat.txt deleted file mode 100644 index 3898212dc0..0000000000 --- a/test/prism/snapshots/seattlerb/block_opt_splat.txt +++ /dev/null @@ -1,53 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,17)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,17)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,17)) - ├── flags: ∅ - ├── locals: [:b, :c] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,15)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,14)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,5)-(1,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (1,5)-(1,6) = "b" - │ │ │ ├── operator_loc: (1,7)-(1,8) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,9)-(1,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (1,12)-(1,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ ├── name_loc: (1,13)-(1,14) = "c" - │ │ │ └── operator_loc: (1,12)-(1,13) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,14)-(1,15) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,16)-(1,17) = "}" diff --git a/test/prism/snapshots/seattlerb/block_opt_splat_arg_block_omfg.txt b/test/prism/snapshots/seattlerb/block_opt_splat_arg_block_omfg.txt deleted file mode 100644 index ed4857ad25..0000000000 --- a/test/prism/snapshots/seattlerb/block_opt_splat_arg_block_omfg.txt +++ /dev/null @@ -1,61 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,22)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,22)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,22)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,22)) - ├── flags: ∅ - ├── locals: [:b, :c, :d, :e] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,20)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,19)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,5)-(1,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (1,5)-(1,6) = "b" - │ │ │ ├── operator_loc: (1,6)-(1,7) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,7)-(1,8)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (1,10)-(1,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ ├── name_loc: (1,11)-(1,12) = "c" - │ │ │ └── operator_loc: (1,10)-(1,11) = "*" - │ │ ├── posts: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,14)-(1,15)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :d - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (1,17)-(1,19)) - │ │ ├── flags: ∅ - │ │ ├── name: :e - │ │ ├── name_loc: (1,18)-(1,19) = "e" - │ │ └── operator_loc: (1,17)-(1,18) = "&" - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,19)-(1,20) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,21)-(1,22) = "}" diff --git a/test/prism/snapshots/seattlerb/block_optarg.txt b/test/prism/snapshots/seattlerb/block_optarg.txt deleted file mode 100644 index 2172571eb1..0000000000 --- a/test/prism/snapshots/seattlerb/block_optarg.txt +++ /dev/null @@ -1,51 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,14)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,14)) - ├── flags: ∅ - ├── locals: [:b] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,12)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,11)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,5)-(1,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (1,5)-(1,6) = "b" - │ │ │ ├── operator_loc: (1,7)-(1,8) = "=" - │ │ │ └── value: - │ │ │ @ SymbolNode (location: (1,9)-(1,11)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (1,9)-(1,10) = ":" - │ │ │ ├── value_loc: (1,10)-(1,11) = "c" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "c" - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,11)-(1,12) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,13)-(1,14) = "}" diff --git a/test/prism/snapshots/seattlerb/block_paren_splat.txt b/test/prism/snapshots/seattlerb/block_paren_splat.txt deleted file mode 100644 index b6c2da679b..0000000000 --- a/test/prism/snapshots/seattlerb/block_paren_splat.txt +++ /dev/null @@ -1,56 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,15)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,15)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,15)) - ├── flags: ∅ - ├── locals: [:b, :c] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,13)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,12)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ MultiTargetNode (location: (1,5)-(1,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (1,6)-(1,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :b - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (1,9)-(1,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (1,9)-(1,10) = "*" - │ │ │ │ └── expression: - │ │ │ │ @ RequiredParameterNode (location: (1,10)-(1,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :c - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: (1,5)-(1,6) = "(" - │ │ │ └── rparen_loc: (1,11)-(1,12) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,12)-(1,13) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,14)-(1,15) = "}" diff --git a/test/prism/snapshots/seattlerb/block_reg_optarg.txt b/test/prism/snapshots/seattlerb/block_reg_optarg.txt deleted file mode 100644 index 0173b92e8f..0000000000 --- a/test/prism/snapshots/seattlerb/block_reg_optarg.txt +++ /dev/null @@ -1,54 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,17)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,17)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,17)) - ├── flags: ∅ - ├── locals: [:b, :c] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,15)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,14)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :b - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,8)-(1,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ ├── name_loc: (1,8)-(1,9) = "c" - │ │ │ ├── operator_loc: (1,10)-(1,11) = "=" - │ │ │ └── value: - │ │ │ @ SymbolNode (location: (1,12)-(1,14)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (1,12)-(1,13) = ":" - │ │ │ ├── value_loc: (1,13)-(1,14) = "d" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "d" - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,14)-(1,15) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,16)-(1,17) = "}" diff --git a/test/prism/snapshots/seattlerb/block_return.txt b/test/prism/snapshots/seattlerb/block_return.txt deleted file mode 100644 index 0eee33c844..0000000000 --- a/test/prism/snapshots/seattlerb/block_return.txt +++ /dev/null @@ -1,62 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,27)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,27)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ReturnNode (location: (1,0)-(1,27)) - ├── flags: newline - ├── keyword_loc: (1,0)-(1,6) = "return" - └── arguments: - @ ArgumentsNode (location: (1,7)-(1,27)) - ├── flags: ∅ - └── arguments: (length: 1) - └── @ CallNode (location: (1,7)-(1,27)) - ├── flags: ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :foo - ├── message_loc: (1,7)-(1,10) = "foo" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,11)-(1,14)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (1,11)-(1,14)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :arg - │ ├── message_loc: (1,11)-(1,14) = "arg" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,15)-(1,27)) - ├── flags: ∅ - ├── locals: [:bar] - ├── parameters: - │ @ BlockParametersNode (location: (1,18)-(1,23)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,19)-(1,22)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,19)-(1,22)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :bar - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,18)-(1,19) = "|" - │ └── closing_loc: (1,22)-(1,23) = "|" - ├── body: ∅ - ├── opening_loc: (1,15)-(1,17) = "do" - └── closing_loc: (1,24)-(1,27) = "end" diff --git a/test/prism/snapshots/seattlerb/block_scope.txt b/test/prism/snapshots/seattlerb/block_scope.txt deleted file mode 100644 index ef659bb38e..0000000000 --- a/test/prism/snapshots/seattlerb/block_scope.txt +++ /dev/null @@ -1,33 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,10)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,10)) - ├── flags: ∅ - ├── locals: [:b] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,8)) - │ ├── flags: ∅ - │ ├── parameters: ∅ - │ ├── locals: (length: 1) - │ │ └── @ BlockLocalVariableNode (location: (1,6)-(1,7)) - │ │ ├── flags: ∅ - │ │ └── name: :b - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,7)-(1,8) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,9)-(1,10) = "}" diff --git a/test/prism/snapshots/seattlerb/block_splat_reg.txt b/test/prism/snapshots/seattlerb/block_splat_reg.txt deleted file mode 100644 index b5eb009c52..0000000000 --- a/test/prism/snapshots/seattlerb/block_splat_reg.txt +++ /dev/null @@ -1,47 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,13)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,13)) - ├── flags: ∅ - ├── locals: [:b, :c] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,11)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (1,5)-(1,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (1,6)-(1,7) = "b" - │ │ │ └── operator_loc: (1,5)-(1,6) = "*" - │ │ ├── posts: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,9)-(1,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :c - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,10)-(1,11) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,12)-(1,13) = "}" diff --git a/test/prism/snapshots/seattlerb/bug169.txt b/test/prism/snapshots/seattlerb/bug169.txt deleted file mode 100644 index c55df4257d..0000000000 --- a/test/prism/snapshots/seattlerb/bug169.txt +++ /dev/null @@ -1,32 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,7)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :m - ├── message_loc: (1,0)-(1,1) = "m" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,4)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ ParenthesesNode (location: (1,2)-(1,4)) - │ ├── flags: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (1,2)-(1,3) = "(" - │ └── closing_loc: (1,3)-(1,4) = ")" - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,5)-(1,7)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: ∅ - ├── opening_loc: (1,5)-(1,6) = "{" - └── closing_loc: (1,6)-(1,7) = "}" diff --git a/test/prism/snapshots/seattlerb/bug179.txt b/test/prism/snapshots/seattlerb/bug179.txt deleted file mode 100644 index 4392d5ec27..0000000000 --- a/test/prism/snapshots/seattlerb/bug179.txt +++ /dev/null @@ -1,32 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,9)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :p - ├── message_loc: (1,0)-(1,1) = "p" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,9)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ RangeNode (location: (1,2)-(1,9)) - │ ├── flags: ∅ - │ ├── left: - │ │ @ ParenthesesNode (location: (1,2)-(1,4)) - │ │ ├── flags: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (1,2)-(1,3) = "(" - │ │ └── closing_loc: (1,3)-(1,4) = ")" - │ ├── right: - │ │ @ NilNode (location: (1,6)-(1,9)) - │ │ └── flags: static_literal - │ └── operator_loc: (1,4)-(1,6) = ".." - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/bug190.txt b/test/prism/snapshots/seattlerb/bug190.txt deleted file mode 100644 index 004ca16a60..0000000000 --- a/test/prism/snapshots/seattlerb/bug190.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ RegularExpressionNode (location: (1,0)-(1,6)) - ├── flags: newline, static_literal, forced_us_ascii_encoding - ├── opening_loc: (1,0)-(1,3) = "%r'" - ├── content_loc: (1,3)-(1,5) = "\\'" - ├── closing_loc: (1,5)-(1,6) = "'" - └── unescaped: "'" diff --git a/test/prism/snapshots/seattlerb/bug191.txt b/test/prism/snapshots/seattlerb/bug191.txt deleted file mode 100644 index 27b7f97f45..0000000000 --- a/test/prism/snapshots/seattlerb/bug191.txt +++ /dev/null @@ -1,97 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,9)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ IfNode (location: (1,0)-(1,9)) - │ ├── flags: newline - │ ├── if_keyword_loc: ∅ - │ ├── predicate: - │ │ @ CallNode (location: (1,0)-(1,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (1,0)-(1,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: (1,2)-(1,3) = "?" - │ ├── statements: - │ │ @ StatementsNode (location: (1,4)-(1,6)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ StringNode (location: (1,4)-(1,6)) - │ │ ├── flags: newline - │ │ ├── opening_loc: (1,4)-(1,5) = "\"" - │ │ ├── content_loc: (1,5)-(1,5) = "" - │ │ ├── closing_loc: (1,5)-(1,6) = "\"" - │ │ └── unescaped: "" - │ ├── subsequent: - │ │ @ ElseNode (location: (1,6)-(1,9)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (1,6)-(1,7) = ":" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,8)-(1,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (1,8)-(1,9)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (1,8)-(1,9) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── end_keyword_loc: ∅ - │ └── end_keyword_loc: ∅ - └── @ IfNode (location: (3,0)-(3,9)) - ├── flags: newline - ├── if_keyword_loc: ∅ - ├── predicate: - │ @ CallNode (location: (3,0)-(3,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (3,0)-(3,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── then_keyword_loc: (3,2)-(3,3) = "?" - ├── statements: - │ @ StatementsNode (location: (3,4)-(3,6)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ StringNode (location: (3,4)-(3,6)) - │ ├── flags: newline - │ ├── opening_loc: (3,4)-(3,5) = "'" - │ ├── content_loc: (3,5)-(3,5) = "" - │ ├── closing_loc: (3,5)-(3,6) = "'" - │ └── unescaped: "" - ├── subsequent: - │ @ ElseNode (location: (3,6)-(3,9)) - │ ├── flags: ∅ - │ ├── else_keyword_loc: (3,6)-(3,7) = ":" - │ ├── statements: - │ │ @ StatementsNode (location: (3,8)-(3,9)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (3,8)-(3,9)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (3,8)-(3,9) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── end_keyword_loc: ∅ - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/seattlerb/bug202.txt b/test/prism/snapshots/seattlerb/bug202.txt deleted file mode 100644 index f907081c20..0000000000 --- a/test/prism/snapshots/seattlerb/bug202.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,10)) -├── flags: ∅ -├── locals: [:测试] -└── statements: - @ StatementsNode (location: (1,0)-(2,10)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ GlobalVariableWriteNode (location: (1,0)-(1,11)) - │ ├── flags: newline - │ ├── name: :$测试 - │ ├── name_loc: (1,0)-(1,7) = "$测试" - │ ├── value: - │ │ @ IntegerNode (location: (1,10)-(1,11)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (1,8)-(1,9) = "=" - └── @ LocalVariableWriteNode (location: (2,0)-(2,10)) - ├── flags: newline - ├── name: :测试 - ├── depth: 0 - ├── name_loc: (2,0)-(2,6) = "测试" - ├── value: - │ @ IntegerNode (location: (2,9)-(2,10)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - └── operator_loc: (2,7)-(2,8) = "=" diff --git a/test/prism/snapshots/seattlerb/bug236.txt b/test/prism/snapshots/seattlerb/bug236.txt deleted file mode 100644 index 792020dc78..0000000000 --- a/test/prism/snapshots/seattlerb/bug236.txt +++ /dev/null @@ -1,79 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,6)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,7)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :x - │ ├── message_loc: (1,0)-(1,1) = "x" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (1,1)-(1,7)) - │ ├── flags: ∅ - │ ├── locals: [:a] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (1,2)-(1,6)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (1,3)-(1,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (1,3)-(1,4)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ ImplicitRestNode (location: (1,4)-(1,5)) - │ │ │ │ └── flags: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (1,2)-(1,3) = "|" - │ │ └── closing_loc: (1,5)-(1,6) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (1,1)-(1,2) = "{" - │ └── closing_loc: (1,6)-(1,7) = "}" - └── @ CallNode (location: (3,0)-(3,6)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :x - ├── message_loc: (3,0)-(3,1) = "x" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (3,1)-(3,6)) - ├── flags: ∅ - ├── locals: [:a] - ├── parameters: - │ @ BlockParametersNode (location: (3,2)-(3,5)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (3,3)-(3,4)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (3,3)-(3,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (3,2)-(3,3) = "|" - │ └── closing_loc: (3,4)-(3,5) = "|" - ├── body: ∅ - ├── opening_loc: (3,1)-(3,2) = "{" - └── closing_loc: (3,5)-(3,6) = "}" diff --git a/test/prism/snapshots/seattlerb/bug290.txt b/test/prism/snapshots/seattlerb/bug290.txt deleted file mode 100644 index 85d75c0d16..0000000000 --- a/test/prism/snapshots/seattlerb/bug290.txt +++ /dev/null @@ -1,28 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ BeginNode (location: (1,0)-(3,3)) - ├── flags: newline - ├── begin_keyword_loc: (1,0)-(1,5) = "begin" - ├── statements: - │ @ StatementsNode (location: (2,2)-(2,5)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (2,2)-(2,5)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (2,2)-(2,5) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── rescue_clause: ∅ - ├── else_clause: ∅ - ├── ensure_clause: ∅ - └── end_keyword_loc: (3,0)-(3,3) = "end" diff --git a/test/prism/snapshots/seattlerb/bug_187.txt b/test/prism/snapshots/seattlerb/bug_187.txt deleted file mode 100644 index 6a5786e34a..0000000000 --- a/test/prism/snapshots/seattlerb/bug_187.txt +++ /dev/null @@ -1,64 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(3,3)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :private - ├── message_loc: (1,0)-(1,7) = "private" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,8)-(3,3)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ DefNode (location: (1,8)-(3,3)) - │ ├── flags: ∅ - │ ├── name: :f - │ ├── name_loc: (1,12)-(1,13) = "f" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (2,0)-(2,10)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (2,0)-(2,10)) - │ │ ├── flags: newline - │ │ ├── receiver: - │ │ │ @ CallNode (location: (2,0)-(2,1)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (2,0)-(2,1) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (2,1)-(2,2) = "." - │ │ ├── name: :b - │ │ ├── message_loc: (2,2)-(2,3) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (2,4)-(2,10)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (2,4)-(2,6) = "do" - │ │ └── closing_loc: (2,7)-(2,10) = "end" - │ ├── locals: [] - │ ├── def_keyword_loc: (1,8)-(1,11) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (3,0)-(3,3) = "end" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/bug_215.txt b/test/prism/snapshots/seattlerb/bug_215.txt deleted file mode 100644 index ee82b4f1da..0000000000 --- a/test/prism/snapshots/seattlerb/bug_215.txt +++ /dev/null @@ -1,17 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 1) - └── @ UndefNode (location: (1,0)-(1,13)) - ├── flags: newline - ├── names: (length: 1) - │ └── @ SymbolNode (location: (1,6)-(1,13)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,6)-(1,9) = "%s(" - │ ├── value_loc: (1,9)-(1,12) = "foo" - │ ├── closing_loc: (1,12)-(1,13) = ")" - │ └── unescaped: "foo" - └── keyword_loc: (1,0)-(1,5) = "undef" diff --git a/test/prism/snapshots/seattlerb/bug_249.txt b/test/prism/snapshots/seattlerb/bug_249.txt deleted file mode 100644 index 06daa80e41..0000000000 --- a/test/prism/snapshots/seattlerb/bug_249.txt +++ /dev/null @@ -1,95 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,28)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,28)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(4,28)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :mount - ├── message_loc: (1,0)-(1,5) = "mount" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,6)-(4,28)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 2) - │ ├── @ CallNode (location: (1,6)-(4,9)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ ParenthesesNode (location: (1,6)-(4,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (1,7)-(4,4)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (1,7)-(4,4)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── receiver: - │ │ │ │ │ @ ConstantReadNode (location: (1,7)-(1,12)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :Class - │ │ │ │ ├── call_operator_loc: (1,12)-(1,13) = "." - │ │ │ │ ├── name: :new - │ │ │ │ ├── message_loc: (1,13)-(1,16) = "new" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: - │ │ │ │ @ BlockNode (location: (1,17)-(4,4)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── locals: [] - │ │ │ │ ├── parameters: ∅ - │ │ │ │ ├── body: - │ │ │ │ │ @ StatementsNode (location: (2,0)-(3,3)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ DefNode (location: (2,0)-(3,3)) - │ │ │ │ │ ├── flags: newline - │ │ │ │ │ ├── name: :initialize - │ │ │ │ │ ├── name_loc: (2,4)-(2,14) = "initialize" - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── parameters: ∅ - │ │ │ │ │ ├── body: ∅ - │ │ │ │ │ ├── locals: [] - │ │ │ │ │ ├── def_keyword_loc: (2,0)-(2,3) = "def" - │ │ │ │ │ ├── operator_loc: ∅ - │ │ │ │ │ ├── lparen_loc: ∅ - │ │ │ │ │ ├── rparen_loc: ∅ - │ │ │ │ │ ├── equal_loc: ∅ - │ │ │ │ │ └── end_keyword_loc: (3,0)-(3,3) = "end" - │ │ │ │ ├── opening_loc: (1,17)-(1,19) = "do" - │ │ │ │ └── closing_loc: (4,1)-(4,4) = "end" - │ │ │ ├── opening_loc: (1,6)-(1,7) = "(" - │ │ │ └── closing_loc: (4,4)-(4,5) = ")" - │ │ ├── call_operator_loc: (4,5)-(4,6) = "." - │ │ ├── name: :new - │ │ ├── message_loc: (4,6)-(4,9) = "new" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── @ KeywordHashNode (location: (4,11)-(4,28)) - │ ├── flags: symbol_keys - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (4,11)-(4,28)) - │ ├── flags: ∅ - │ ├── key: - │ │ @ SymbolNode (location: (4,11)-(4,14)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (4,11)-(4,12) = ":" - │ │ ├── value_loc: (4,12)-(4,14) = "at" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "at" - │ ├── value: - │ │ @ StringNode (location: (4,18)-(4,28)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (4,18)-(4,19) = "'" - │ │ ├── content_loc: (4,19)-(4,27) = "endpoint" - │ │ ├── closing_loc: (4,27)-(4,28) = "'" - │ │ └── unescaped: "endpoint" - │ └── operator_loc: (4,15)-(4,17) = "=>" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/bug_and.txt b/test/prism/snapshots/seattlerb/bug_and.txt deleted file mode 100644 index 89eb403b4a..0000000000 --- a/test/prism/snapshots/seattlerb/bug_and.txt +++ /dev/null @@ -1,28 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,11)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ AndNode (location: (1,0)-(2,4)) - │ ├── flags: newline - │ ├── left: - │ │ @ TrueNode (location: (1,0)-(1,4)) - │ │ └── flags: static_literal - │ ├── right: - │ │ @ TrueNode (location: (2,0)-(2,4)) - │ │ └── flags: static_literal - │ └── operator_loc: (1,5)-(1,8) = "and" - └── @ AndNode (location: (4,0)-(4,11)) - ├── flags: newline - ├── left: - │ @ TrueNode (location: (4,0)-(4,4)) - │ └── flags: static_literal - ├── right: - │ @ ArrayNode (location: (4,9)-(4,11)) - │ ├── flags: static_literal - │ ├── elements: (length: 0) - │ ├── opening_loc: (4,9)-(4,10) = "[" - │ └── closing_loc: (4,10)-(4,11) = "]" - └── operator_loc: (4,5)-(4,8) = "and" diff --git a/test/prism/snapshots/seattlerb/bug_args__19.txt b/test/prism/snapshots/seattlerb/bug_args__19.txt deleted file mode 100644 index 5b1d897718..0000000000 --- a/test/prism/snapshots/seattlerb/bug_args__19.txt +++ /dev/null @@ -1,65 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,16)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,16)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,16)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,16)) - ├── flags: ∅ - ├── locals: [:a, :b] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,12)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,11)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ MultiTargetNode (location: (1,5)-(1,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 2) - │ │ │ │ ├── @ RequiredParameterNode (location: (1,6)-(1,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :a - │ │ │ │ └── @ RequiredParameterNode (location: (1,9)-(1,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :b - │ │ │ ├── rest: ∅ - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: (1,5)-(1,6) = "(" - │ │ │ └── rparen_loc: (1,10)-(1,11) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,11)-(1,12) = "|" - ├── body: - │ @ StatementsNode (location: (1,13)-(1,14)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,13)-(1,14)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :d - │ ├── message_loc: (1,13)-(1,14) = "d" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,15)-(1,16) = "}" diff --git a/test/prism/snapshots/seattlerb/bug_args_masgn.txt b/test/prism/snapshots/seattlerb/bug_args_masgn.txt deleted file mode 100644 index 6456d82ecc..0000000000 --- a/test/prism/snapshots/seattlerb/bug_args_masgn.txt +++ /dev/null @@ -1,55 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,17)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,17)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,17)) - ├── flags: ∅ - ├── locals: [:a, :b, :c] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,15)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,14)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ MultiTargetNode (location: (1,5)-(1,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── lefts: (length: 2) - │ │ │ │ │ ├── @ RequiredParameterNode (location: (1,6)-(1,7)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── name: :a - │ │ │ │ │ └── @ RequiredParameterNode (location: (1,9)-(1,10)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :b - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── rights: (length: 0) - │ │ │ │ ├── lparen_loc: (1,5)-(1,6) = "(" - │ │ │ │ └── rparen_loc: (1,10)-(1,11) = ")" - │ │ │ └── @ RequiredParameterNode (location: (1,13)-(1,14)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :c - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,14)-(1,15) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,16)-(1,17) = "}" diff --git a/test/prism/snapshots/seattlerb/bug_args_masgn2.txt b/test/prism/snapshots/seattlerb/bug_args_masgn2.txt deleted file mode 100644 index bd9fc61161..0000000000 --- a/test/prism/snapshots/seattlerb/bug_args_masgn2.txt +++ /dev/null @@ -1,65 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,22)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,22)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,22)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,22)) - ├── flags: ∅ - ├── locals: [:a, :b, :c, :d] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,20)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,19)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ MultiTargetNode (location: (1,5)-(1,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── lefts: (length: 2) - │ │ │ │ │ ├── @ MultiTargetNode (location: (1,6)-(1,12)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ ├── lefts: (length: 2) - │ │ │ │ │ │ │ ├── @ RequiredParameterNode (location: (1,7)-(1,8)) - │ │ │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ │ │ └── name: :a - │ │ │ │ │ │ │ └── @ RequiredParameterNode (location: (1,10)-(1,11)) - │ │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ │ └── name: :b - │ │ │ │ │ │ ├── rest: ∅ - │ │ │ │ │ │ ├── rights: (length: 0) - │ │ │ │ │ │ ├── lparen_loc: (1,6)-(1,7) = "(" - │ │ │ │ │ │ └── rparen_loc: (1,11)-(1,12) = ")" - │ │ │ │ │ └── @ RequiredParameterNode (location: (1,14)-(1,15)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :c - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── rights: (length: 0) - │ │ │ │ ├── lparen_loc: (1,5)-(1,6) = "(" - │ │ │ │ └── rparen_loc: (1,15)-(1,16) = ")" - │ │ │ └── @ RequiredParameterNode (location: (1,18)-(1,19)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :d - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,19)-(1,20) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,21)-(1,22) = "}" diff --git a/test/prism/snapshots/seattlerb/bug_args_masgn_outer_parens__19.txt b/test/prism/snapshots/seattlerb/bug_args_masgn_outer_parens__19.txt deleted file mode 100644 index ad62bd4daa..0000000000 --- a/test/prism/snapshots/seattlerb/bug_args_masgn_outer_parens__19.txt +++ /dev/null @@ -1,62 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,19)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,19)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,19)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,19)) - ├── flags: ∅ - ├── locals: [:k, :v, :i] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,17)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,16)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ MultiTargetNode (location: (1,5)-(1,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 2) - │ │ │ │ ├── @ MultiTargetNode (location: (1,6)-(1,12)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── lefts: (length: 2) - │ │ │ │ │ │ ├── @ RequiredParameterNode (location: (1,7)-(1,8)) - │ │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ │ └── name: :k - │ │ │ │ │ │ └── @ RequiredParameterNode (location: (1,10)-(1,11)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── name: :v - │ │ │ │ │ ├── rest: ∅ - │ │ │ │ │ ├── rights: (length: 0) - │ │ │ │ │ ├── lparen_loc: (1,6)-(1,7) = "(" - │ │ │ │ │ └── rparen_loc: (1,11)-(1,12) = ")" - │ │ │ │ └── @ RequiredParameterNode (location: (1,14)-(1,15)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :i - │ │ │ ├── rest: ∅ - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: (1,5)-(1,6) = "(" - │ │ │ └── rparen_loc: (1,15)-(1,16) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,16)-(1,17) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,18)-(1,19) = "}" diff --git a/test/prism/snapshots/seattlerb/bug_call_arglist_parens.txt b/test/prism/snapshots/seattlerb/bug_call_arglist_parens.txt deleted file mode 100644 index 6954854bae..0000000000 --- a/test/prism/snapshots/seattlerb/bug_call_arglist_parens.txt +++ /dev/null @@ -1,122 +0,0 @@ -@ ProgramNode (location: (1,6)-(11,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,6)-(11,9)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ DefNode (location: (1,6)-(3,9)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (1,10)-(1,11) = "f" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (2,8)-(2,17)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (2,8)-(2,17)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :g - │ │ ├── message_loc: (2,8)-(2,9) = "g" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (2,10)-(2,17)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 2) - │ │ │ ├── @ ParenthesesNode (location: (2,10)-(2,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── body: - │ │ │ │ │ @ StatementsNode (location: (2,12)-(2,13)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ IntegerNode (location: (2,12)-(2,13)) - │ │ │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ ├── opening_loc: (2,10)-(2,11) = "(" - │ │ │ │ └── closing_loc: (2,13)-(2,14) = ")" - │ │ │ └── @ IntegerNode (location: (2,16)-(2,17)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (1,6)-(1,9) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (3,6)-(3,9) = "end" - ├── @ DefNode (location: (6,6)-(8,9)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (6,10)-(6,11) = "f" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (7,8)-(7,16)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (7,8)-(7,16)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :g - │ │ ├── message_loc: (7,8)-(7,9) = "g" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (7,10)-(7,16)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 2) - │ │ │ ├── @ ParenthesesNode (location: (7,10)-(7,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── body: - │ │ │ │ │ @ StatementsNode (location: (7,11)-(7,12)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ IntegerNode (location: (7,11)-(7,12)) - │ │ │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ ├── opening_loc: (7,10)-(7,11) = "(" - │ │ │ │ └── closing_loc: (7,12)-(7,13) = ")" - │ │ │ └── @ IntegerNode (location: (7,15)-(7,16)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (6,6)-(6,9) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (6,11)-(6,12) = "(" - │ ├── rparen_loc: (6,12)-(6,13) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (8,6)-(8,9) = "end" - └── @ CallNode (location: (11,0)-(11,9)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :g - ├── message_loc: (11,0)-(11,1) = "g" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (11,2)-(11,9)) - │ ├── flags: ∅ - │ └── arguments: (length: 2) - │ ├── @ ParenthesesNode (location: (11,2)-(11,6)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (11,4)-(11,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ IntegerNode (location: (11,4)-(11,5)) - │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── opening_loc: (11,2)-(11,3) = "(" - │ │ └── closing_loc: (11,5)-(11,6) = ")" - │ └── @ IntegerNode (location: (11,8)-(11,9)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/bug_case_when_regexp.txt b/test/prism/snapshots/seattlerb/bug_case_when_regexp.txt deleted file mode 100644 index e24a170ad4..0000000000 --- a/test/prism/snapshots/seattlerb/bug_case_when_regexp.txt +++ /dev/null @@ -1,32 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,26)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,26)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(1,26)) - ├── flags: newline - ├── predicate: - │ @ SymbolNode (location: (1,5)-(1,7)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,5)-(1,6) = ":" - │ ├── value_loc: (1,6)-(1,7) = "x" - │ ├── closing_loc: ∅ - │ └── unescaped: "x" - ├── conditions: (length: 1) - │ └── @ WhenNode (location: (1,9)-(1,22)) - │ ├── flags: ∅ - │ ├── keyword_loc: (1,9)-(1,13) = "when" - │ ├── conditions: (length: 1) - │ │ └── @ RegularExpressionNode (location: (1,14)-(1,17)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,14)-(1,15) = "/" - │ │ ├── content_loc: (1,15)-(1,16) = "x" - │ │ ├── closing_loc: (1,16)-(1,17) = "/" - │ │ └── unescaped: "x" - │ ├── then_keyword_loc: (1,18)-(1,22) = "then" - │ └── statements: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (1,23)-(1,26) = "end" diff --git a/test/prism/snapshots/seattlerb/bug_comma.txt b/test/prism/snapshots/seattlerb/bug_comma.txt deleted file mode 100644 index d370ea0ac0..0000000000 --- a/test/prism/snapshots/seattlerb/bug_comma.txt +++ /dev/null @@ -1,44 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,24)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,24)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IfNode (location: (1,0)-(1,24)) - ├── flags: newline - ├── if_keyword_loc: (1,0)-(1,2) = "if" - ├── predicate: - │ @ CallNode (location: (1,3)-(1,15)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :test - │ ├── message_loc: (1,3)-(1,7) = "test" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,8)-(1,15)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ StringNode (location: (1,8)-(1,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (1,8)-(1,9) = "?" - │ │ │ ├── content_loc: (1,9)-(1,10) = "d" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "d" - │ │ └── @ CallNode (location: (1,12)-(1,15)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :dir - │ │ ├── message_loc: (1,12)-(1,15) = "dir" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── then_keyword_loc: (1,16)-(1,20) = "then" - ├── statements: ∅ - ├── subsequent: ∅ - └── end_keyword_loc: (1,21)-(1,24) = "end" diff --git a/test/prism/snapshots/seattlerb/bug_cond_pct.txt b/test/prism/snapshots/seattlerb/bug_cond_pct.txt deleted file mode 100644 index 0b96c5c44e..0000000000 --- a/test/prism/snapshots/seattlerb/bug_cond_pct.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,28)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,28)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(1,28)) - ├── flags: newline - ├── predicate: ∅ - ├── conditions: (length: 1) - │ └── @ WhenNode (location: (1,6)-(1,23)) - │ ├── flags: ∅ - │ ├── keyword_loc: (1,6)-(1,10) = "when" - │ ├── conditions: (length: 1) - │ │ └── @ RegularExpressionNode (location: (1,11)-(1,23)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,11)-(1,14) = "%r%" - │ │ ├── content_loc: (1,14)-(1,22) = "blahblah" - │ │ ├── closing_loc: (1,22)-(1,23) = "%" - │ │ └── unescaped: "blahblah" - │ ├── then_keyword_loc: ∅ - │ └── statements: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (1,25)-(1,28) = "end" diff --git a/test/prism/snapshots/seattlerb/bug_hash_args.txt b/test/prism/snapshots/seattlerb/bug_hash_args.txt deleted file mode 100644 index cd90f0ebc6..0000000000 --- a/test/prism/snapshots/seattlerb/bug_hash_args.txt +++ /dev/null @@ -1,42 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,19)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,19)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,19)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :foo - ├── message_loc: (1,0)-(1,3) = "foo" - ├── opening_loc: (1,3)-(1,4) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,18)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 2) - │ ├── @ SymbolNode (location: (1,4)-(1,8)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,4)-(1,5) = ":" - │ │ ├── value_loc: (1,5)-(1,8) = "bar" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "bar" - │ └── @ KeywordHashNode (location: (1,10)-(1,18)) - │ ├── flags: symbol_keys - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (1,10)-(1,18)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ SymbolNode (location: (1,10)-(1,14)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (1,10)-(1,13) = "baz" - │ │ ├── closing_loc: (1,13)-(1,14) = ":" - │ │ └── unescaped: "baz" - │ ├── value: - │ │ @ NilNode (location: (1,15)-(1,18)) - │ │ └── flags: static_literal - │ └── operator_loc: ∅ - ├── closing_loc: (1,18)-(1,19) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/bug_hash_args_trailing_comma.txt b/test/prism/snapshots/seattlerb/bug_hash_args_trailing_comma.txt deleted file mode 100644 index 8c06cabf1c..0000000000 --- a/test/prism/snapshots/seattlerb/bug_hash_args_trailing_comma.txt +++ /dev/null @@ -1,42 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,20)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,20)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,20)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :foo - ├── message_loc: (1,0)-(1,3) = "foo" - ├── opening_loc: (1,3)-(1,4) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,18)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 2) - │ ├── @ SymbolNode (location: (1,4)-(1,8)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,4)-(1,5) = ":" - │ │ ├── value_loc: (1,5)-(1,8) = "bar" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "bar" - │ └── @ KeywordHashNode (location: (1,10)-(1,18)) - │ ├── flags: symbol_keys - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (1,10)-(1,18)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ SymbolNode (location: (1,10)-(1,14)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (1,10)-(1,13) = "baz" - │ │ ├── closing_loc: (1,13)-(1,14) = ":" - │ │ └── unescaped: "baz" - │ ├── value: - │ │ @ NilNode (location: (1,15)-(1,18)) - │ │ └── flags: static_literal - │ └── operator_loc: ∅ - ├── closing_loc: (1,19)-(1,20) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/bug_hash_interp_array.txt b/test/prism/snapshots/seattlerb/bug_hash_interp_array.txt deleted file mode 100644 index 3d9fc56850..0000000000 --- a/test/prism/snapshots/seattlerb/bug_hash_interp_array.txt +++ /dev/null @@ -1,32 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 1) - └── @ HashNode (location: (1,0)-(1,13)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,1) = "{" - ├── elements: (length: 1) - │ └── @ AssocNode (location: (1,2)-(1,11)) - │ ├── flags: ∅ - │ ├── key: - │ │ @ InterpolatedSymbolNode (location: (1,2)-(1,8)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,2)-(1,3) = "\"" - │ │ ├── parts: (length: 1) - │ │ │ └── @ EmbeddedStatementsNode (location: (1,3)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (1,3)-(1,5) = "\#{" - │ │ │ ├── statements: ∅ - │ │ │ └── closing_loc: (1,5)-(1,6) = "}" - │ │ └── closing_loc: (1,6)-(1,8) = "\":" - │ ├── value: - │ │ @ ArrayNode (location: (1,9)-(1,11)) - │ │ ├── flags: static_literal - │ │ ├── elements: (length: 0) - │ │ ├── opening_loc: (1,9)-(1,10) = "[" - │ │ └── closing_loc: (1,10)-(1,11) = "]" - │ └── operator_loc: ∅ - └── closing_loc: (1,12)-(1,13) = "}" diff --git a/test/prism/snapshots/seattlerb/bug_masgn_right.txt b/test/prism/snapshots/seattlerb/bug_masgn_right.txt deleted file mode 100644 index e5b635d802..0000000000 --- a/test/prism/snapshots/seattlerb/bug_masgn_right.txt +++ /dev/null @@ -1,55 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,17)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,17)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,17)) - ├── flags: ∅ - ├── locals: [:a, :b, :c] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,15)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,14)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ └── @ MultiTargetNode (location: (1,8)-(1,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 2) - │ │ │ │ ├── @ RequiredParameterNode (location: (1,9)-(1,10)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :b - │ │ │ │ └── @ RequiredParameterNode (location: (1,12)-(1,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :c - │ │ │ ├── rest: ∅ - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: (1,8)-(1,9) = "(" - │ │ │ └── rparen_loc: (1,13)-(1,14) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,14)-(1,15) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,16)-(1,17) = "}" diff --git a/test/prism/snapshots/seattlerb/bug_not_parens.txt b/test/prism/snapshots/seattlerb/bug_not_parens.txt deleted file mode 100644 index 163fb79564..0000000000 --- a/test/prism/snapshots/seattlerb/bug_not_parens.txt +++ /dev/null @@ -1,27 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,6)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,4)-(1,5)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,4)-(1,5) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :! - ├── message_loc: (1,0)-(1,3) = "not" - ├── opening_loc: (1,3)-(1,4) = "(" - ├── arguments: ∅ - ├── closing_loc: (1,5)-(1,6) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/bug_op_asgn_rescue.txt b/test/prism/snapshots/seattlerb/bug_op_asgn_rescue.txt deleted file mode 100644 index 9da753aece..0000000000 --- a/test/prism/snapshots/seattlerb/bug_op_asgn_rescue.txt +++ /dev/null @@ -1,31 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,18)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(1,18)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableOrWriteNode (location: (1,0)-(1,18)) - ├── flags: newline - ├── name_loc: (1,0)-(1,1) = "a" - ├── operator_loc: (1,2)-(1,5) = "||=" - ├── value: - │ @ RescueModifierNode (location: (1,6)-(1,18)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (1,6)-(1,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (1,6)-(1,7) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── keyword_loc: (1,8)-(1,14) = "rescue" - │ └── rescue_expression: - │ @ NilNode (location: (1,15)-(1,18)) - │ └── flags: static_literal - ├── name: :a - └── depth: 0 diff --git a/test/prism/snapshots/seattlerb/call_and.txt b/test/prism/snapshots/seattlerb/call_and.txt deleted file mode 100644 index 640f355c4a..0000000000 --- a/test/prism/snapshots/seattlerb/call_and.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,5)) - ├── flags: newline - ├── receiver: - │ @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── call_operator_loc: ∅ - ├── name: :& - ├── message_loc: (1,2)-(1,3) = "&" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,5)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,4)-(1,5)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_arg_assoc.txt b/test/prism/snapshots/seattlerb/call_arg_assoc.txt deleted file mode 100644 index b8ec907031..0000000000 --- a/test/prism/snapshots/seattlerb/call_arg_assoc.txt +++ /dev/null @@ -1,37 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,10)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: (1,1)-(1,2) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,9)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 2) - │ ├── @ IntegerNode (location: (1,2)-(1,3)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── @ KeywordHashNode (location: (1,5)-(1,9)) - │ ├── flags: ∅ - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (1,5)-(1,9)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ IntegerNode (location: (1,5)-(1,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── value: - │ │ @ IntegerNode (location: (1,8)-(1,9)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 3 - │ └── operator_loc: (1,6)-(1,8) = "=>" - ├── closing_loc: (1,9)-(1,10) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_arg_assoc_kwsplat.txt b/test/prism/snapshots/seattlerb/call_arg_assoc_kwsplat.txt deleted file mode 100644 index 11142b2721..0000000000 --- a/test/prism/snapshots/seattlerb/call_arg_assoc_kwsplat.txt +++ /dev/null @@ -1,47 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,16)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,16)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,16)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: (1,1)-(1,2) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,15)) - │ ├── flags: contains_keywords, contains_keyword_splat - │ └── arguments: (length: 2) - │ ├── @ IntegerNode (location: (1,2)-(1,3)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── @ KeywordHashNode (location: (1,5)-(1,15)) - │ ├── flags: ∅ - │ └── elements: (length: 2) - │ ├── @ AssocNode (location: (1,5)-(1,10)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (1,5)-(1,8)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (1,5)-(1,7) = "kw" - │ │ │ ├── closing_loc: (1,7)-(1,8) = ":" - │ │ │ └── unescaped: "kw" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (1,9)-(1,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── operator_loc: ∅ - │ └── @ AssocSplatNode (location: (1,12)-(1,15)) - │ ├── flags: ∅ - │ ├── value: - │ │ @ IntegerNode (location: (1,14)-(1,15)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 3 - │ └── operator_loc: (1,12)-(1,14) = "**" - ├── closing_loc: (1,15)-(1,16) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_arg_kwsplat.txt b/test/prism/snapshots/seattlerb/call_arg_kwsplat.txt deleted file mode 100644 index 853f7103e3..0000000000 --- a/test/prism/snapshots/seattlerb/call_arg_kwsplat.txt +++ /dev/null @@ -1,40 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,9)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: (1,1)-(1,2) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,8)) - │ ├── flags: contains_keywords, contains_keyword_splat - │ └── arguments: (length: 2) - │ ├── @ CallNode (location: (1,2)-(1,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (1,2)-(1,3) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── @ KeywordHashNode (location: (1,5)-(1,8)) - │ ├── flags: ∅ - │ └── elements: (length: 1) - │ └── @ AssocSplatNode (location: (1,5)-(1,8)) - │ ├── flags: ∅ - │ ├── value: - │ │ @ IntegerNode (location: (1,7)-(1,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (1,5)-(1,7) = "**" - ├── closing_loc: (1,8)-(1,9) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_args_assoc_quoted.txt b/test/prism/snapshots/seattlerb/call_args_assoc_quoted.txt deleted file mode 100644 index 615bee5b4a..0000000000 --- a/test/prism/snapshots/seattlerb/call_args_assoc_quoted.txt +++ /dev/null @@ -1,114 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,8)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ CallNode (location: (1,0)-(1,11)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :x - │ ├── message_loc: (1,0)-(1,1) = "x" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,2)-(1,11)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (1,2)-(1,11)) - │ │ ├── flags: ∅ - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (1,2)-(1,11)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ InterpolatedSymbolNode (location: (1,2)-(1,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (1,2)-(1,3) = "\"" - │ │ │ ├── parts: (length: 1) - │ │ │ │ └── @ EmbeddedStatementsNode (location: (1,3)-(1,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (1,3)-(1,5) = "\#{" - │ │ │ │ ├── statements: - │ │ │ │ │ @ StatementsNode (location: (1,5)-(1,6)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (1,5)-(1,6)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :k - │ │ │ │ │ ├── message_loc: (1,5)-(1,6) = "k" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ └── closing_loc: (1,6)-(1,7) = "}" - │ │ │ └── closing_loc: (1,7)-(1,9) = "\":" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (1,9)-(1,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 42 - │ │ └── operator_loc: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (3,0)-(3,8)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :x - │ ├── message_loc: (3,0)-(3,1) = "x" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (3,2)-(3,8)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (3,2)-(3,8)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (3,2)-(3,8)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (3,2)-(3,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (3,2)-(3,3) = "\"" - │ │ │ ├── value_loc: (3,3)-(3,4) = "k" - │ │ │ ├── closing_loc: (3,4)-(3,6) = "\":" - │ │ │ └── unescaped: "k" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (3,6)-(3,8)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 42 - │ │ └── operator_loc: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (5,0)-(5,8)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :x - ├── message_loc: (5,0)-(5,1) = "x" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (5,2)-(5,8)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 1) - │ └── @ KeywordHashNode (location: (5,2)-(5,8)) - │ ├── flags: symbol_keys - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (5,2)-(5,8)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ SymbolNode (location: (5,2)-(5,6)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (5,2)-(5,3) = "'" - │ │ ├── value_loc: (5,3)-(5,4) = "k" - │ │ ├── closing_loc: (5,4)-(5,6) = "':" - │ │ └── unescaped: "k" - │ ├── value: - │ │ @ IntegerNode (location: (5,6)-(5,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 42 - │ └── operator_loc: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_args_assoc_trailing_comma.txt b/test/prism/snapshots/seattlerb/call_args_assoc_trailing_comma.txt deleted file mode 100644 index 00bc620f54..0000000000 --- a/test/prism/snapshots/seattlerb/call_args_assoc_trailing_comma.txt +++ /dev/null @@ -1,37 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,11)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: (1,1)-(1,2) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,9)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 2) - │ ├── @ IntegerNode (location: (1,2)-(1,3)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── @ KeywordHashNode (location: (1,5)-(1,9)) - │ ├── flags: ∅ - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (1,5)-(1,9)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ IntegerNode (location: (1,5)-(1,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── value: - │ │ @ IntegerNode (location: (1,8)-(1,9)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 3 - │ └── operator_loc: (1,6)-(1,8) = "=>" - ├── closing_loc: (1,10)-(1,11) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_args_command.txt b/test/prism/snapshots/seattlerb/call_args_command.txt deleted file mode 100644 index 6fe112f224..0000000000 --- a/test/prism/snapshots/seattlerb/call_args_command.txt +++ /dev/null @@ -1,56 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,9)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,1)-(1,2) = "." - ├── name: :b - ├── message_loc: (1,2)-(1,3) = "b" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,9)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (1,4)-(1,9)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ CallNode (location: (1,4)-(1,5)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :c - │ │ ├── message_loc: (1,4)-(1,5) = "c" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (1,5)-(1,6) = "." - │ ├── name: :d - │ ├── message_loc: (1,6)-(1,7) = "d" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,8)-(1,9)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (1,8)-(1,9)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_array_arg.txt b/test/prism/snapshots/seattlerb/call_array_arg.txt deleted file mode 100644 index cec613bc58..0000000000 --- a/test/prism/snapshots/seattlerb/call_array_arg.txt +++ /dev/null @@ -1,40 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,13)) - ├── flags: newline - ├── receiver: - │ @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── call_operator_loc: ∅ - ├── name: :== - ├── message_loc: (1,2)-(1,4) = "==" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,5)-(1,13)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ ArrayNode (location: (1,5)-(1,13)) - │ ├── flags: static_literal - │ ├── elements: (length: 2) - │ │ ├── @ SymbolNode (location: (1,6)-(1,8)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (1,6)-(1,7) = ":" - │ │ │ ├── value_loc: (1,7)-(1,8) = "b" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "b" - │ │ └── @ SymbolNode (location: (1,10)-(1,12)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,10)-(1,11) = ":" - │ │ ├── value_loc: (1,11)-(1,12) = "c" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "c" - │ ├── opening_loc: (1,5)-(1,6) = "[" - │ └── closing_loc: (1,12)-(1,13) = "]" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_array_block_call.txt b/test/prism/snapshots/seattlerb/call_array_block_call.txt deleted file mode 100644 index 4a044924e9..0000000000 --- a/test/prism/snapshots/seattlerb/call_array_block_call.txt +++ /dev/null @@ -1,44 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,19)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,19)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,19)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,19)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ ArrayNode (location: (1,2)-(1,19)) - │ ├── flags: ∅ - │ ├── elements: (length: 2) - │ │ ├── @ NilNode (location: (1,4)-(1,7)) - │ │ │ └── flags: static_literal - │ │ └── @ CallNode (location: (1,9)-(1,17)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (1,9)-(1,10) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (1,11)-(1,17)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (1,11)-(1,13) = "do" - │ │ └── closing_loc: (1,14)-(1,17) = "end" - │ ├── opening_loc: (1,2)-(1,3) = "[" - │ └── closing_loc: (1,18)-(1,19) = "]" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_array_lambda_block_call.txt b/test/prism/snapshots/seattlerb/call_array_lambda_block_call.txt deleted file mode 100644 index dca64e5f7b..0000000000 --- a/test/prism/snapshots/seattlerb/call_array_lambda_block_call.txt +++ /dev/null @@ -1,46 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(2,3)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,11)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ ArrayNode (location: (1,2)-(1,11)) - │ ├── flags: ∅ - │ ├── elements: (length: 1) - │ │ └── @ LambdaNode (location: (1,3)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── operator_loc: (1,3)-(1,5) = "->" - │ │ ├── opening_loc: (1,8)-(1,9) = "{" - │ │ ├── closing_loc: (1,9)-(1,10) = "}" - │ │ ├── parameters: - │ │ │ @ BlockParametersNode (location: (1,5)-(1,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parameters: ∅ - │ │ │ ├── locals: (length: 0) - │ │ │ ├── opening_loc: (1,5)-(1,6) = "(" - │ │ │ └── closing_loc: (1,6)-(1,7) = ")" - │ │ └── body: ∅ - │ ├── opening_loc: (1,2)-(1,3) = "[" - │ └── closing_loc: (1,10)-(1,11) = "]" - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,12)-(2,3)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: ∅ - ├── opening_loc: (1,12)-(1,14) = "do" - └── closing_loc: (2,0)-(2,3) = "end" diff --git a/test/prism/snapshots/seattlerb/call_array_lit_inline_hash.txt b/test/prism/snapshots/seattlerb/call_array_lit_inline_hash.txt deleted file mode 100644 index f83c7a55e5..0000000000 --- a/test/prism/snapshots/seattlerb/call_array_lit_inline_hash.txt +++ /dev/null @@ -1,48 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,16)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,16)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,16)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: (1,1)-(1,2) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,15)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ ArrayNode (location: (1,2)-(1,15)) - │ ├── flags: ∅ - │ ├── elements: (length: 2) - │ │ ├── @ SymbolNode (location: (1,3)-(1,5)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (1,3)-(1,4) = ":" - │ │ │ ├── value_loc: (1,4)-(1,5) = "b" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "b" - │ │ └── @ KeywordHashNode (location: (1,7)-(1,14)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (1,7)-(1,14)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (1,7)-(1,9)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (1,7)-(1,8) = ":" - │ │ │ ├── value_loc: (1,8)-(1,9) = "c" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "c" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (1,13)-(1,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── operator_loc: (1,10)-(1,12) = "=>" - │ ├── opening_loc: (1,2)-(1,3) = "[" - │ └── closing_loc: (1,14)-(1,15) = "]" - ├── closing_loc: (1,15)-(1,16) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_assoc.txt b/test/prism/snapshots/seattlerb/call_assoc.txt deleted file mode 100644 index a4e4512a08..0000000000 --- a/test/prism/snapshots/seattlerb/call_assoc.txt +++ /dev/null @@ -1,34 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,7)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: (1,1)-(1,2) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,6)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 1) - │ └── @ KeywordHashNode (location: (1,2)-(1,6)) - │ ├── flags: ∅ - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (1,2)-(1,6)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ IntegerNode (location: (1,2)-(1,3)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── value: - │ │ @ IntegerNode (location: (1,5)-(1,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 3 - │ └── operator_loc: (1,3)-(1,5) = "=>" - ├── closing_loc: (1,6)-(1,7) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_assoc_new.txt b/test/prism/snapshots/seattlerb/call_assoc_new.txt deleted file mode 100644 index 6cbc942a6b..0000000000 --- a/test/prism/snapshots/seattlerb/call_assoc_new.txt +++ /dev/null @@ -1,37 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,6)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: (1,1)-(1,2) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,5)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 1) - │ └── @ KeywordHashNode (location: (1,2)-(1,5)) - │ ├── flags: symbol_keys - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (1,2)-(1,5)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ SymbolNode (location: (1,2)-(1,4)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (1,2)-(1,3) = "a" - │ │ ├── closing_loc: (1,3)-(1,4) = ":" - │ │ └── unescaped: "a" - │ ├── value: - │ │ @ IntegerNode (location: (1,4)-(1,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 3 - │ └── operator_loc: ∅ - ├── closing_loc: (1,5)-(1,6) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_assoc_new_if_multiline.txt b/test/prism/snapshots/seattlerb/call_assoc_new_if_multiline.txt deleted file mode 100644 index a258b734a3..0000000000 --- a/test/prism/snapshots/seattlerb/call_assoc_new_if_multiline.txt +++ /dev/null @@ -1,65 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(5,4)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: (1,1)-(1,2) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(5,3)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 1) - │ └── @ KeywordHashNode (location: (1,2)-(5,3)) - │ ├── flags: symbol_keys - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (1,2)-(5,3)) - │ ├── flags: ∅ - │ ├── key: - │ │ @ SymbolNode (location: (1,2)-(1,4)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (1,2)-(1,3) = "b" - │ │ ├── closing_loc: (1,3)-(1,4) = ":" - │ │ └── unescaped: "b" - │ ├── value: - │ │ @ IfNode (location: (1,5)-(5,3)) - │ │ ├── flags: newline - │ │ ├── if_keyword_loc: (1,5)-(1,7) = "if" - │ │ ├── predicate: - │ │ │ @ SymbolNode (location: (1,8)-(1,10)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (1,8)-(1,9) = ":" - │ │ │ ├── value_loc: (1,9)-(1,10) = "c" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "c" - │ │ ├── then_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (2,0)-(2,1)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ IntegerNode (location: (2,0)-(2,1)) - │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── subsequent: - │ │ │ @ ElseNode (location: (3,0)-(5,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── else_keyword_loc: (3,0)-(3,4) = "else" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (4,0)-(4,1)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (4,0)-(4,1)) - │ │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ └── end_keyword_loc: (5,0)-(5,3) = "end" - │ │ └── end_keyword_loc: (5,0)-(5,3) = "end" - │ └── operator_loc: ∅ - ├── closing_loc: (5,3)-(5,4) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_assoc_trailing_comma.txt b/test/prism/snapshots/seattlerb/call_assoc_trailing_comma.txt deleted file mode 100644 index a240775d69..0000000000 --- a/test/prism/snapshots/seattlerb/call_assoc_trailing_comma.txt +++ /dev/null @@ -1,34 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,8)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: (1,1)-(1,2) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,6)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 1) - │ └── @ KeywordHashNode (location: (1,2)-(1,6)) - │ ├── flags: ∅ - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (1,2)-(1,6)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ IntegerNode (location: (1,2)-(1,3)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── value: - │ │ @ IntegerNode (location: (1,5)-(1,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ └── operator_loc: (1,3)-(1,5) = "=>" - ├── closing_loc: (1,7)-(1,8) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_bang_command_call.txt b/test/prism/snapshots/seattlerb/call_bang_command_call.txt deleted file mode 100644 index e226d65278..0000000000 --- a/test/prism/snapshots/seattlerb/call_bang_command_call.txt +++ /dev/null @@ -1,43 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,7)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,2)-(1,7)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ CallNode (location: (1,2)-(1,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (1,2)-(1,3) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (1,3)-(1,4) = "." - │ ├── name: :b - │ ├── message_loc: (1,4)-(1,5) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,6)-(1,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (1,6)-(1,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :! - ├── message_loc: (1,0)-(1,1) = "!" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_bang_squiggle.txt b/test/prism/snapshots/seattlerb/call_bang_squiggle.txt deleted file mode 100644 index 5c10841f73..0000000000 --- a/test/prism/snapshots/seattlerb/call_bang_squiggle.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,6)) - ├── flags: newline - ├── receiver: - │ @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── call_operator_loc: ∅ - ├── name: :!~ - ├── message_loc: (1,2)-(1,4) = "!~" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,5)-(1,6)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,5)-(1,6)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_begin_call_block_call.txt b/test/prism/snapshots/seattlerb/call_begin_call_block_call.txt deleted file mode 100644 index 240a3aaa76..0000000000 --- a/test/prism/snapshots/seattlerb/call_begin_call_block_call.txt +++ /dev/null @@ -1,58 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(3,3)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(3,3)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ BeginNode (location: (1,2)-(3,3)) - │ ├── flags: ∅ - │ ├── begin_keyword_loc: (1,2)-(1,7) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (2,0)-(2,10)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (2,0)-(2,10)) - │ │ ├── flags: newline - │ │ ├── receiver: - │ │ │ @ CallNode (location: (2,0)-(2,1)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (2,0)-(2,1) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (2,1)-(2,2) = "." - │ │ ├── name: :c - │ │ ├── message_loc: (2,2)-(2,3) = "c" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (2,4)-(2,10)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (2,4)-(2,6) = "do" - │ │ └── closing_loc: (2,7)-(2,10) = "end" - │ ├── rescue_clause: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (3,0)-(3,3) = "end" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_block_arg_named.txt b/test/prism/snapshots/seattlerb/call_block_arg_named.txt deleted file mode 100644 index db6fc7a059..0000000000 --- a/test/prism/snapshots/seattlerb/call_block_arg_named.txt +++ /dev/null @@ -1,31 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,6)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :x - ├── message_loc: (1,0)-(1,1) = "x" - ├── opening_loc: (1,1)-(1,2) = "(" - ├── arguments: ∅ - ├── closing_loc: (1,6)-(1,7) = ")" - └── block: - @ BlockArgumentNode (location: (1,2)-(1,6)) - ├── flags: ∅ - ├── expression: - │ @ CallNode (location: (1,3)-(1,6)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :blk - │ ├── message_loc: (1,3)-(1,6) = "blk" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── operator_loc: (1,2)-(1,3) = "&" diff --git a/test/prism/snapshots/seattlerb/call_carat.txt b/test/prism/snapshots/seattlerb/call_carat.txt deleted file mode 100644 index 88ed832aca..0000000000 --- a/test/prism/snapshots/seattlerb/call_carat.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,5)) - ├── flags: newline - ├── receiver: - │ @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── call_operator_loc: ∅ - ├── name: :^ - ├── message_loc: (1,2)-(1,3) = "^" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,5)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,4)-(1,5)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_colon2.txt b/test/prism/snapshots/seattlerb/call_colon2.txt deleted file mode 100644 index 85e39cd363..0000000000 --- a/test/prism/snapshots/seattlerb/call_colon2.txt +++ /dev/null @@ -1,20 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,4)) - ├── flags: newline - ├── receiver: - │ @ ConstantReadNode (location: (1,0)-(1,1)) - │ ├── flags: ∅ - │ └── name: :A - ├── call_operator_loc: (1,1)-(1,3) = "::" - ├── name: :b - ├── message_loc: (1,3)-(1,4) = "b" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_colon_parens.txt b/test/prism/snapshots/seattlerb/call_colon_parens.txt deleted file mode 100644 index 19141c3413..0000000000 --- a/test/prism/snapshots/seattlerb/call_colon_parens.txt +++ /dev/null @@ -1,20 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,5)) - ├── flags: newline - ├── receiver: - │ @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── call_operator_loc: (1,1)-(1,3) = "::" - ├── name: :call - ├── message_loc: ∅ - ├── opening_loc: (1,3)-(1,4) = "(" - ├── arguments: ∅ - ├── closing_loc: (1,4)-(1,5) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_div.txt b/test/prism/snapshots/seattlerb/call_div.txt deleted file mode 100644 index 55a410977c..0000000000 --- a/test/prism/snapshots/seattlerb/call_div.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,5)) - ├── flags: newline - ├── receiver: - │ @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── call_operator_loc: ∅ - ├── name: :/ - ├── message_loc: (1,2)-(1,3) = "/" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,5)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,4)-(1,5)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_dot_parens.txt b/test/prism/snapshots/seattlerb/call_dot_parens.txt deleted file mode 100644 index 29b592a960..0000000000 --- a/test/prism/snapshots/seattlerb/call_dot_parens.txt +++ /dev/null @@ -1,20 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,4)) - ├── flags: newline - ├── receiver: - │ @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── call_operator_loc: (1,1)-(1,2) = "." - ├── name: :call - ├── message_loc: ∅ - ├── opening_loc: (1,2)-(1,3) = "(" - ├── arguments: ∅ - ├── closing_loc: (1,3)-(1,4) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_env.txt b/test/prism/snapshots/seattlerb/call_env.txt deleted file mode 100644 index 933621594f..0000000000 --- a/test/prism/snapshots/seattlerb/call_env.txt +++ /dev/null @@ -1,27 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,7)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,1)-(1,2) = "." - ├── name: :happy - ├── message_loc: (1,2)-(1,7) = "happy" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_eq3.txt b/test/prism/snapshots/seattlerb/call_eq3.txt deleted file mode 100644 index 52e4b00c5c..0000000000 --- a/test/prism/snapshots/seattlerb/call_eq3.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,7)) - ├── flags: newline - ├── receiver: - │ @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── call_operator_loc: ∅ - ├── name: :=== - ├── message_loc: (1,2)-(1,5) = "===" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,6)-(1,7)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,6)-(1,7)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_gt.txt b/test/prism/snapshots/seattlerb/call_gt.txt deleted file mode 100644 index 22371dd8ca..0000000000 --- a/test/prism/snapshots/seattlerb/call_gt.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,5)) - ├── flags: newline - ├── receiver: - │ @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── call_operator_loc: ∅ - ├── name: :> - ├── message_loc: (1,2)-(1,3) = ">" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,5)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,4)-(1,5)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_kwsplat.txt b/test/prism/snapshots/seattlerb/call_kwsplat.txt deleted file mode 100644 index 17773e7693..0000000000 --- a/test/prism/snapshots/seattlerb/call_kwsplat.txt +++ /dev/null @@ -1,30 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,6)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: (1,1)-(1,2) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,5)) - │ ├── flags: contains_keywords, contains_keyword_splat - │ └── arguments: (length: 1) - │ └── @ KeywordHashNode (location: (1,2)-(1,5)) - │ ├── flags: ∅ - │ └── elements: (length: 1) - │ └── @ AssocSplatNode (location: (1,2)-(1,5)) - │ ├── flags: ∅ - │ ├── value: - │ │ @ IntegerNode (location: (1,4)-(1,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (1,2)-(1,4) = "**" - ├── closing_loc: (1,5)-(1,6) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_leading_dots.txt b/test/prism/snapshots/seattlerb/call_leading_dots.txt deleted file mode 100644 index 5562afcd70..0000000000 --- a/test/prism/snapshots/seattlerb/call_leading_dots.txt +++ /dev/null @@ -1,37 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,2)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,2)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(3,2)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(2,2)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ CallNode (location: (1,0)-(1,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (1,0)-(1,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (2,0)-(2,1) = "." - │ ├── name: :b - │ ├── message_loc: (2,1)-(2,2) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (3,0)-(3,1) = "." - ├── name: :c - ├── message_loc: (3,1)-(3,2) = "c" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_leading_dots_comment.txt b/test/prism/snapshots/seattlerb/call_leading_dots_comment.txt deleted file mode 100644 index f285e42cbf..0000000000 --- a/test/prism/snapshots/seattlerb/call_leading_dots_comment.txt +++ /dev/null @@ -1,37 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,2)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,2)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(4,2)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(2,2)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ CallNode (location: (1,0)-(1,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (1,0)-(1,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (2,0)-(2,1) = "." - │ ├── name: :b - │ ├── message_loc: (2,1)-(2,2) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (4,0)-(4,1) = "." - ├── name: :d - ├── message_loc: (4,1)-(4,2) = "d" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_lt.txt b/test/prism/snapshots/seattlerb/call_lt.txt deleted file mode 100644 index bec3deddd0..0000000000 --- a/test/prism/snapshots/seattlerb/call_lt.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,5)) - ├── flags: newline - ├── receiver: - │ @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── call_operator_loc: ∅ - ├── name: :< - ├── message_loc: (1,2)-(1,3) = "<" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,5)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,4)-(1,5)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_lte.txt b/test/prism/snapshots/seattlerb/call_lte.txt deleted file mode 100644 index a71e03ee12..0000000000 --- a/test/prism/snapshots/seattlerb/call_lte.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,6)) - ├── flags: newline - ├── receiver: - │ @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── call_operator_loc: ∅ - ├── name: :<= - ├── message_loc: (1,2)-(1,4) = "<=" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,5)-(1,6)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,5)-(1,6)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_not.txt b/test/prism/snapshots/seattlerb/call_not.txt deleted file mode 100644 index e9df80fb9f..0000000000 --- a/test/prism/snapshots/seattlerb/call_not.txt +++ /dev/null @@ -1,20 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,6)) - ├── flags: newline - ├── receiver: - │ @ IntegerNode (location: (1,4)-(1,6)) - │ ├── flags: static_literal, decimal - │ └── value: 42 - ├── call_operator_loc: ∅ - ├── name: :! - ├── message_loc: (1,0)-(1,3) = "not" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_pipe.txt b/test/prism/snapshots/seattlerb/call_pipe.txt deleted file mode 100644 index 8cf68211a9..0000000000 --- a/test/prism/snapshots/seattlerb/call_pipe.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,5)) - ├── flags: newline - ├── receiver: - │ @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── call_operator_loc: ∅ - ├── name: :| - ├── message_loc: (1,2)-(1,3) = "|" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,5)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,4)-(1,5)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_rshift.txt b/test/prism/snapshots/seattlerb/call_rshift.txt deleted file mode 100644 index 28948a044f..0000000000 --- a/test/prism/snapshots/seattlerb/call_rshift.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,6)) - ├── flags: newline - ├── receiver: - │ @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── call_operator_loc: ∅ - ├── name: :>> - ├── message_loc: (1,2)-(1,4) = ">>" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,5)-(1,6)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,5)-(1,6)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_self_brackets.txt b/test/prism/snapshots/seattlerb/call_self_brackets.txt deleted file mode 100644 index e4f5e2c413..0000000000 --- a/test/prism/snapshots/seattlerb/call_self_brackets.txt +++ /dev/null @@ -1,25 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,7)) - ├── flags: newline, ignore_visibility - ├── receiver: - │ @ SelfNode (location: (1,0)-(1,4)) - │ └── flags: ∅ - ├── call_operator_loc: ∅ - ├── name: :[] - ├── message_loc: (1,4)-(1,7) = "[1]" - ├── opening_loc: (1,4)-(1,5) = "[" - ├── arguments: - │ @ ArgumentsNode (location: (1,5)-(1,6)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,5)-(1,6)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: (1,6)-(1,7) = "]" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_spaceship.txt b/test/prism/snapshots/seattlerb/call_spaceship.txt deleted file mode 100644 index 4ea67f2e00..0000000000 --- a/test/prism/snapshots/seattlerb/call_spaceship.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,7)) - ├── flags: newline - ├── receiver: - │ @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── call_operator_loc: ∅ - ├── name: :<=> - ├── message_loc: (1,2)-(1,5) = "<=>" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,6)-(1,7)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,6)-(1,7)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_stabby_do_end_with_block.txt b/test/prism/snapshots/seattlerb/call_stabby_do_end_with_block.txt deleted file mode 100644 index 0e83d334ca..0000000000 --- a/test/prism/snapshots/seattlerb/call_stabby_do_end_with_block.txt +++ /dev/null @@ -1,47 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,22)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,22)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,22)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,13)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ LambdaNode (location: (1,2)-(1,13)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── operator_loc: (1,2)-(1,4) = "->" - │ ├── opening_loc: (1,5)-(1,7) = "do" - │ ├── closing_loc: (1,10)-(1,13) = "end" - │ ├── parameters: ∅ - │ └── body: - │ @ StatementsNode (location: (1,8)-(1,9)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ IntegerNode (location: (1,8)-(1,9)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 1 - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,14)-(1,22)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (1,17)-(1,18)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ IntegerNode (location: (1,17)-(1,18)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 2 - ├── opening_loc: (1,14)-(1,16) = "do" - └── closing_loc: (1,19)-(1,22) = "end" diff --git a/test/prism/snapshots/seattlerb/call_stabby_with_braces_block.txt b/test/prism/snapshots/seattlerb/call_stabby_with_braces_block.txt deleted file mode 100644 index 705f8b8d02..0000000000 --- a/test/prism/snapshots/seattlerb/call_stabby_with_braces_block.txt +++ /dev/null @@ -1,47 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,19)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,19)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,19)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,10)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ LambdaNode (location: (1,2)-(1,10)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── operator_loc: (1,2)-(1,4) = "->" - │ ├── opening_loc: (1,5)-(1,6) = "{" - │ ├── closing_loc: (1,9)-(1,10) = "}" - │ ├── parameters: ∅ - │ └── body: - │ @ StatementsNode (location: (1,7)-(1,8)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ IntegerNode (location: (1,7)-(1,8)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 1 - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,11)-(1,19)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (1,14)-(1,15)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ IntegerNode (location: (1,14)-(1,15)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 2 - ├── opening_loc: (1,11)-(1,13) = "do" - └── closing_loc: (1,16)-(1,19) = "end" diff --git a/test/prism/snapshots/seattlerb/call_star.txt b/test/prism/snapshots/seattlerb/call_star.txt deleted file mode 100644 index 06bee81f30..0000000000 --- a/test/prism/snapshots/seattlerb/call_star.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,5)) - ├── flags: newline - ├── receiver: - │ @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── call_operator_loc: ∅ - ├── name: :* - ├── message_loc: (1,2)-(1,3) = "*" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,5)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,4)-(1,5)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_star2.txt b/test/prism/snapshots/seattlerb/call_star2.txt deleted file mode 100644 index bd367d2e75..0000000000 --- a/test/prism/snapshots/seattlerb/call_star2.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,6)) - ├── flags: newline - ├── receiver: - │ @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── call_operator_loc: ∅ - ├── name: :** - ├── message_loc: (1,2)-(1,4) = "**" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,5)-(1,6)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,5)-(1,6)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_trailing_comma.txt b/test/prism/snapshots/seattlerb/call_trailing_comma.txt deleted file mode 100644 index 01cb77a25a..0000000000 --- a/test/prism/snapshots/seattlerb/call_trailing_comma.txt +++ /dev/null @@ -1,23 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,5)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: (1,1)-(1,2) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,3)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,2)-(1,3)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: (1,4)-(1,5) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_trailing_dots.txt b/test/prism/snapshots/seattlerb/call_trailing_dots.txt deleted file mode 100644 index 73ffd855ad..0000000000 --- a/test/prism/snapshots/seattlerb/call_trailing_dots.txt +++ /dev/null @@ -1,37 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,1)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(3,1)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(2,1)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ CallNode (location: (1,0)-(1,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (1,0)-(1,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (1,1)-(1,2) = "." - │ ├── name: :b - │ ├── message_loc: (2,0)-(2,1) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (2,1)-(2,2) = "." - ├── name: :c - ├── message_loc: (3,0)-(3,1) = "c" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/call_unary_bang.txt b/test/prism/snapshots/seattlerb/call_unary_bang.txt deleted file mode 100644 index b08f070693..0000000000 --- a/test/prism/snapshots/seattlerb/call_unary_bang.txt +++ /dev/null @@ -1,20 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,2)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,2)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,2)) - ├── flags: newline - ├── receiver: - │ @ IntegerNode (location: (1,1)-(1,2)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── call_operator_loc: ∅ - ├── name: :! - ├── message_loc: (1,0)-(1,1) = "!" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/case_in.txt b/test/prism/snapshots/seattlerb/case_in.txt deleted file mode 100644 index 929cca0d38..0000000000 --- a/test/prism/snapshots/seattlerb/case_in.txt +++ /dev/null @@ -1,1109 +0,0 @@ -@ ProgramNode (location: (1,0)-(111,3)) -├── flags: ∅ -├── locals: [:b, :_, :lhs, :x, :rhs, :c, :e] -└── statements: - @ StatementsNode (location: (1,0)-(111,3)) - ├── flags: ∅ - └── body: (length: 28) - ├── @ CaseMatchNode (location: (1,0)-(3,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (1,5)-(1,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,5)-(1,6) = ":" - │ │ ├── value_loc: (1,6)-(1,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (2,0)-(2,8)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ HashPatternNode (location: (2,4)-(2,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── constant: ∅ - │ │ │ ├── elements: (length: 1) - │ │ │ │ └── @ AssocNode (location: (2,4)-(2,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── key: - │ │ │ │ │ @ SymbolNode (location: (2,4)-(2,8)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: (2,4)-(2,5) = "\"" - │ │ │ │ │ ├── value_loc: (2,5)-(2,6) = "b" - │ │ │ │ │ ├── closing_loc: (2,6)-(2,8) = "\":" - │ │ │ │ │ └── unescaped: "b" - │ │ │ │ ├── value: - │ │ │ │ │ @ ImplicitNode (location: (2,5)-(2,6)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── value: - │ │ │ │ │ @ LocalVariableTargetNode (location: (2,5)-(2,6)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :b - │ │ │ │ │ └── depth: 0 - │ │ │ │ └── operator_loc: ∅ - │ │ │ ├── rest: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ └── closing_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (2,0)-(2,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (1,0)-(1,4) = "case" - │ └── end_keyword_loc: (3,0)-(3,3) = "end" - ├── @ CaseMatchNode (location: (5,0)-(7,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (5,5)-(5,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (5,5)-(5,6) = ":" - │ │ ├── value_loc: (5,6)-(5,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (6,0)-(6,10)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ArrayNode (location: (6,3)-(6,10)) - │ │ │ ├── flags: static_literal - │ │ │ ├── elements: (length: 2) - │ │ │ │ ├── @ SymbolNode (location: (6,6)-(6,7)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── value_loc: (6,6)-(6,7) = "a" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "a" - │ │ │ │ └── @ SymbolNode (location: (6,8)-(6,9)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (6,8)-(6,9) = "b" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "b" - │ │ │ ├── opening_loc: (6,3)-(6,6) = "%I[" - │ │ │ └── closing_loc: (6,9)-(6,10) = "]" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (6,0)-(6,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (5,0)-(5,4) = "case" - │ └── end_keyword_loc: (7,0)-(7,3) = "end" - ├── @ CaseMatchNode (location: (9,0)-(11,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (9,5)-(9,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (9,5)-(9,6) = ":" - │ │ ├── value_loc: (9,6)-(9,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (10,0)-(10,10)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ArrayNode (location: (10,3)-(10,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── elements: (length: 2) - │ │ │ │ ├── @ StringNode (location: (10,6)-(10,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── content_loc: (10,6)-(10,7) = "a" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "a" - │ │ │ │ └── @ StringNode (location: (10,8)-(10,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (10,8)-(10,9) = "b" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "b" - │ │ │ ├── opening_loc: (10,3)-(10,6) = "%W[" - │ │ │ └── closing_loc: (10,9)-(10,10) = "]" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (10,0)-(10,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (9,0)-(9,4) = "case" - │ └── end_keyword_loc: (11,0)-(11,3) = "end" - ├── @ CaseMatchNode (location: (13,0)-(15,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (13,5)-(13,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (13,5)-(13,6) = ":" - │ │ ├── value_loc: (13,6)-(13,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (14,0)-(14,10)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ArrayNode (location: (14,3)-(14,10)) - │ │ │ ├── flags: static_literal - │ │ │ ├── elements: (length: 2) - │ │ │ │ ├── @ SymbolNode (location: (14,6)-(14,7)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── value_loc: (14,6)-(14,7) = "a" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "a" - │ │ │ │ └── @ SymbolNode (location: (14,8)-(14,9)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (14,8)-(14,9) = "b" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "b" - │ │ │ ├── opening_loc: (14,3)-(14,6) = "%i[" - │ │ │ └── closing_loc: (14,9)-(14,10) = "]" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (14,0)-(14,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (13,0)-(13,4) = "case" - │ └── end_keyword_loc: (15,0)-(15,3) = "end" - ├── @ CaseMatchNode (location: (17,0)-(19,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (17,5)-(17,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (17,5)-(17,6) = ":" - │ │ ├── value_loc: (17,6)-(17,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (18,0)-(18,10)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ArrayNode (location: (18,3)-(18,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── elements: (length: 2) - │ │ │ │ ├── @ StringNode (location: (18,6)-(18,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── content_loc: (18,6)-(18,7) = "a" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "a" - │ │ │ │ └── @ StringNode (location: (18,8)-(18,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (18,8)-(18,9) = "b" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "b" - │ │ │ ├── opening_loc: (18,3)-(18,6) = "%w[" - │ │ │ └── closing_loc: (18,9)-(18,10) = "]" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (18,0)-(18,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (17,0)-(17,4) = "case" - │ └── end_keyword_loc: (19,0)-(19,3) = "end" - ├── @ CaseMatchNode (location: (21,0)-(23,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (21,5)-(21,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (21,5)-(21,6) = ":" - │ │ ├── value_loc: (21,6)-(21,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (22,0)-(22,10)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ParenthesesNode (location: (22,3)-(22,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ RangeNode (location: (22,4)-(22,9)) - │ │ │ │ ├── flags: static_literal, exclude_end - │ │ │ │ ├── left: ∅ - │ │ │ │ ├── right: - │ │ │ │ │ @ IntegerNode (location: (22,7)-(22,9)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 10 - │ │ │ │ └── operator_loc: (22,4)-(22,7) = "..." - │ │ │ ├── opening_loc: (22,3)-(22,4) = "(" - │ │ │ └── closing_loc: (22,9)-(22,10) = ")" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (22,0)-(22,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (21,0)-(21,4) = "case" - │ └── end_keyword_loc: (23,0)-(23,3) = "end" - ├── @ CaseMatchNode (location: (25,0)-(27,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (25,5)-(25,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (25,5)-(25,6) = ":" - │ │ ├── value_loc: (25,6)-(25,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (26,0)-(26,9)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ParenthesesNode (location: (26,3)-(26,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ RangeNode (location: (26,4)-(26,8)) - │ │ │ │ ├── flags: static_literal - │ │ │ │ ├── left: ∅ - │ │ │ │ ├── right: - │ │ │ │ │ @ IntegerNode (location: (26,6)-(26,8)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 10 - │ │ │ │ └── operator_loc: (26,4)-(26,6) = ".." - │ │ │ ├── opening_loc: (26,3)-(26,4) = "(" - │ │ │ └── closing_loc: (26,8)-(26,9) = ")" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (26,0)-(26,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (25,0)-(25,4) = "case" - │ └── end_keyword_loc: (27,0)-(27,3) = "end" - ├── @ CaseMatchNode (location: (29,0)-(31,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (29,5)-(29,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (29,5)-(29,6) = ":" - │ │ ├── value_loc: (29,6)-(29,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (30,0)-(30,9)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ParenthesesNode (location: (30,3)-(30,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ RangeNode (location: (30,4)-(30,8)) - │ │ │ │ ├── flags: static_literal, exclude_end - │ │ │ │ ├── left: - │ │ │ │ │ @ IntegerNode (location: (30,4)-(30,5)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ ├── right: ∅ - │ │ │ │ └── operator_loc: (30,5)-(30,8) = "..." - │ │ │ ├── opening_loc: (30,3)-(30,4) = "(" - │ │ │ └── closing_loc: (30,8)-(30,9) = ")" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (30,0)-(30,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (29,0)-(29,4) = "case" - │ └── end_keyword_loc: (31,0)-(31,3) = "end" - ├── @ CaseMatchNode (location: (33,0)-(35,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (33,5)-(33,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (33,5)-(33,6) = ":" - │ │ ├── value_loc: (33,6)-(33,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (34,0)-(34,10)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ParenthesesNode (location: (34,3)-(34,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ RangeNode (location: (34,4)-(34,9)) - │ │ │ │ ├── flags: static_literal, exclude_end - │ │ │ │ ├── left: - │ │ │ │ │ @ IntegerNode (location: (34,4)-(34,5)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ ├── right: - │ │ │ │ │ @ IntegerNode (location: (34,8)-(34,9)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 3 - │ │ │ │ └── operator_loc: (34,5)-(34,8) = "..." - │ │ │ ├── opening_loc: (34,3)-(34,4) = "(" - │ │ │ └── closing_loc: (34,9)-(34,10) = ")" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (34,0)-(34,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (33,0)-(33,4) = "case" - │ └── end_keyword_loc: (35,0)-(35,3) = "end" - ├── @ CaseMatchNode (location: (37,0)-(39,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (37,5)-(37,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (37,5)-(37,6) = ":" - │ │ ├── value_loc: (37,6)-(37,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (38,0)-(38,7)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ParenthesesNode (location: (38,3)-(38,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ IntegerNode (location: (38,4)-(38,6)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 42 - │ │ │ ├── opening_loc: (38,3)-(38,4) = "(" - │ │ │ └── closing_loc: (38,6)-(38,7) = ")" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (38,0)-(38,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (37,0)-(37,4) = "case" - │ └── end_keyword_loc: (39,0)-(39,3) = "end" - ├── @ CaseMatchNode (location: (41,0)-(43,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (41,5)-(41,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (41,5)-(41,6) = ":" - │ │ ├── value_loc: (41,6)-(41,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (42,0)-(42,8)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ HashPatternNode (location: (42,3)-(42,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── constant: ∅ - │ │ │ ├── elements: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ NoKeywordsParameterNode (location: (42,3)-(42,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (42,3)-(42,5) = "**" - │ │ │ │ └── keyword_loc: (42,5)-(42,8) = "nil" - │ │ │ ├── opening_loc: ∅ - │ │ │ └── closing_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (42,0)-(42,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (41,0)-(41,4) = "case" - │ └── end_keyword_loc: (43,0)-(43,3) = "end" - ├── @ CaseMatchNode (location: (45,0)-(47,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (45,5)-(45,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (45,5)-(45,6) = ":" - │ │ ├── value_loc: (45,6)-(45,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (46,0)-(46,11)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ RegularExpressionNode (location: (46,3)-(46,11)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (46,3)-(46,4) = "/" - │ │ │ ├── content_loc: (46,4)-(46,10) = "regexp" - │ │ │ ├── closing_loc: (46,10)-(46,11) = "/" - │ │ │ └── unescaped: "regexp" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (46,0)-(46,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (45,0)-(45,4) = "case" - │ └── end_keyword_loc: (47,0)-(47,3) = "end" - ├── @ CaseMatchNode (location: (49,0)-(51,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (49,5)-(49,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (49,5)-(49,6) = ":" - │ │ ├── value_loc: (49,6)-(49,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (50,0)-(50,13)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ArrayPatternNode (location: (50,3)-(50,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── constant: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ SymbolNode (location: (50,3)-(50,5)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (50,3)-(50,4) = ":" - │ │ │ │ ├── value_loc: (50,4)-(50,5) = "b" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "b" - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (50,7)-(50,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (50,7)-(50,8) = "*" - │ │ │ │ └── expression: - │ │ │ │ @ LocalVariableTargetNode (location: (50,8)-(50,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :_ - │ │ │ │ └── depth: 0 - │ │ │ ├── posts: (length: 1) - │ │ │ │ └── @ SymbolNode (location: (50,11)-(50,13)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (50,11)-(50,12) = ":" - │ │ │ │ ├── value_loc: (50,12)-(50,13) = "c" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "c" - │ │ │ ├── opening_loc: ∅ - │ │ │ └── closing_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (50,0)-(50,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (49,0)-(49,4) = "case" - │ └── end_keyword_loc: (51,0)-(51,3) = "end" - ├── @ CaseMatchNode (location: (53,0)-(55,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (53,5)-(53,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (53,5)-(53,6) = ":" - │ │ ├── value_loc: (53,6)-(53,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (54,0)-(54,11)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ArrayPatternNode (location: (54,3)-(54,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── constant: ∅ - │ │ │ ├── requireds: (length: 2) - │ │ │ │ ├── @ SymbolNode (location: (54,3)-(54,5)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: (54,3)-(54,4) = ":" - │ │ │ │ │ ├── value_loc: (54,4)-(54,5) = "b" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "b" - │ │ │ │ └── @ ArrayPatternNode (location: (54,7)-(54,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── constant: ∅ - │ │ │ │ ├── requireds: (length: 1) - │ │ │ │ │ └── @ SymbolNode (location: (54,8)-(54,10)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: (54,8)-(54,9) = ":" - │ │ │ │ │ ├── value_loc: (54,9)-(54,10) = "c" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "c" - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── posts: (length: 0) - │ │ │ │ ├── opening_loc: (54,7)-(54,8) = "[" - │ │ │ │ └── closing_loc: (54,10)-(54,11) = "]" - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── opening_loc: ∅ - │ │ │ └── closing_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (54,0)-(54,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (53,0)-(53,4) = "case" - │ └── end_keyword_loc: (55,0)-(55,3) = "end" - ├── @ CaseMatchNode (location: (57,0)-(59,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (57,5)-(57,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (57,5)-(57,6) = ":" - │ │ ├── value_loc: (57,6)-(57,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (58,0)-(58,11)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ArrayPatternNode (location: (58,3)-(58,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── constant: - │ │ │ │ @ ConstantReadNode (location: (58,3)-(58,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :Symbol - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── opening_loc: (58,9)-(58,10) = "(" - │ │ │ └── closing_loc: (58,10)-(58,11) = ")" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (58,0)-(58,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (57,0)-(57,4) = "case" - │ └── end_keyword_loc: (59,0)-(59,3) = "end" - ├── @ CaseMatchNode (location: (61,0)-(63,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (61,5)-(61,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (61,5)-(61,6) = ":" - │ │ ├── value_loc: (61,6)-(61,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (62,0)-(62,24)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ FindPatternNode (location: (62,3)-(62,24)) - │ │ │ ├── flags: ∅ - │ │ │ ├── constant: - │ │ │ │ @ ConstantReadNode (location: (62,3)-(62,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :Symbol - │ │ │ ├── left: - │ │ │ │ @ SplatNode (location: (62,10)-(62,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (62,10)-(62,11) = "*" - │ │ │ │ └── expression: - │ │ │ │ @ LocalVariableTargetNode (location: (62,11)-(62,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :lhs - │ │ │ │ └── depth: 0 - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ LocalVariableTargetNode (location: (62,16)-(62,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :x - │ │ │ │ └── depth: 0 - │ │ │ ├── right: - │ │ │ │ @ SplatNode (location: (62,19)-(62,23)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (62,19)-(62,20) = "*" - │ │ │ │ └── expression: - │ │ │ │ @ LocalVariableTargetNode (location: (62,20)-(62,23)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :rhs - │ │ │ │ └── depth: 0 - │ │ │ ├── opening_loc: (62,9)-(62,10) = "(" - │ │ │ └── closing_loc: (62,23)-(62,24) = ")" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (62,0)-(62,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (61,0)-(61,4) = "case" - │ └── end_keyword_loc: (63,0)-(63,3) = "end" - ├── @ CaseMatchNode (location: (65,0)-(67,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (65,5)-(65,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (65,5)-(65,6) = ":" - │ │ ├── value_loc: (65,6)-(65,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (66,0)-(66,24)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ FindPatternNode (location: (66,3)-(66,24)) - │ │ │ ├── flags: ∅ - │ │ │ ├── constant: - │ │ │ │ @ ConstantReadNode (location: (66,3)-(66,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :Symbol - │ │ │ ├── left: - │ │ │ │ @ SplatNode (location: (66,10)-(66,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (66,10)-(66,11) = "*" - │ │ │ │ └── expression: - │ │ │ │ @ LocalVariableTargetNode (location: (66,11)-(66,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :lhs - │ │ │ │ └── depth: 0 - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ LocalVariableTargetNode (location: (66,16)-(66,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :x - │ │ │ │ └── depth: 0 - │ │ │ ├── right: - │ │ │ │ @ SplatNode (location: (66,19)-(66,23)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (66,19)-(66,20) = "*" - │ │ │ │ └── expression: - │ │ │ │ @ LocalVariableTargetNode (location: (66,20)-(66,23)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :rhs - │ │ │ │ └── depth: 0 - │ │ │ ├── opening_loc: (66,9)-(66,10) = "[" - │ │ │ └── closing_loc: (66,23)-(66,24) = "]" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (66,0)-(66,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (65,0)-(65,4) = "case" - │ └── end_keyword_loc: (67,0)-(67,3) = "end" - ├── @ CaseMatchNode (location: (69,0)-(71,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (69,5)-(69,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (69,5)-(69,6) = ":" - │ │ ├── value_loc: (69,6)-(69,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (70,0)-(70,22)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ArrayPatternNode (location: (70,3)-(70,22)) - │ │ │ ├── flags: ∅ - │ │ │ ├── constant: ∅ - │ │ │ ├── requireds: (length: 2) - │ │ │ │ ├── @ LambdaNode (location: (70,4)-(70,18)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── locals: [:b] - │ │ │ │ │ ├── operator_loc: (70,4)-(70,6) = "->" - │ │ │ │ │ ├── opening_loc: (70,10)-(70,11) = "{" - │ │ │ │ │ ├── closing_loc: (70,17)-(70,18) = "}" - │ │ │ │ │ ├── parameters: - │ │ │ │ │ │ @ BlockParametersNode (location: (70,6)-(70,9)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ ├── parameters: - │ │ │ │ │ │ │ @ ParametersNode (location: (70,7)-(70,8)) - │ │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ │ ├── requireds: (length: 1) - │ │ │ │ │ │ │ │ └── @ RequiredParameterNode (location: (70,7)-(70,8)) - │ │ │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ │ │ └── name: :b - │ │ │ │ │ │ │ ├── optionals: (length: 0) - │ │ │ │ │ │ │ ├── rest: ∅ - │ │ │ │ │ │ │ ├── posts: (length: 0) - │ │ │ │ │ │ │ ├── keywords: (length: 0) - │ │ │ │ │ │ │ ├── keyword_rest: ∅ - │ │ │ │ │ │ │ └── block: ∅ - │ │ │ │ │ │ ├── locals: (length: 0) - │ │ │ │ │ │ ├── opening_loc: (70,6)-(70,7) = "(" - │ │ │ │ │ │ └── closing_loc: (70,8)-(70,9) = ")" - │ │ │ │ │ └── body: - │ │ │ │ │ @ StatementsNode (location: (70,12)-(70,16)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ TrueNode (location: (70,12)-(70,16)) - │ │ │ │ │ └── flags: newline, static_literal - │ │ │ │ └── @ LocalVariableTargetNode (location: (70,20)-(70,21)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ └── depth: 0 - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── opening_loc: (70,3)-(70,4) = "[" - │ │ │ └── closing_loc: (70,21)-(70,22) = "]" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (70,0)-(70,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (69,0)-(69,4) = "case" - │ └── end_keyword_loc: (71,0)-(71,3) = "end" - ├── @ CaseMatchNode (location: (73,0)-(75,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (73,5)-(73,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (73,5)-(73,6) = ":" - │ │ ├── value_loc: (73,6)-(73,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (74,0)-(74,28)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ArrayPatternNode (location: (74,3)-(74,28)) - │ │ │ ├── flags: ∅ - │ │ │ ├── constant: ∅ - │ │ │ ├── requireds: (length: 4) - │ │ │ │ ├── @ SymbolNode (location: (74,4)-(74,6)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: (74,4)-(74,5) = ":" - │ │ │ │ │ ├── value_loc: (74,5)-(74,6) = "a" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "a" - │ │ │ │ ├── @ LocalVariableTargetNode (location: (74,8)-(74,9)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :b - │ │ │ │ │ └── depth: 0 - │ │ │ │ ├── @ LocalVariableTargetNode (location: (74,11)-(74,12)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :c - │ │ │ │ │ └── depth: 0 - │ │ │ │ └── @ ArrayPatternNode (location: (74,14)-(74,27)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── constant: ∅ - │ │ │ │ ├── requireds: (length: 1) - │ │ │ │ │ └── @ SymbolNode (location: (74,15)-(74,17)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: (74,15)-(74,16) = ":" - │ │ │ │ │ ├── value_loc: (74,16)-(74,17) = "d" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "d" - │ │ │ │ ├── rest: - │ │ │ │ │ @ SplatNode (location: (74,19)-(74,21)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── operator_loc: (74,19)-(74,20) = "*" - │ │ │ │ │ └── expression: - │ │ │ │ │ @ LocalVariableTargetNode (location: (74,20)-(74,21)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :e - │ │ │ │ │ └── depth: 0 - │ │ │ │ ├── posts: (length: 1) - │ │ │ │ │ └── @ NilNode (location: (74,23)-(74,26)) - │ │ │ │ │ └── flags: static_literal - │ │ │ │ ├── opening_loc: (74,14)-(74,15) = "[" - │ │ │ │ └── closing_loc: (74,26)-(74,27) = "]" - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── opening_loc: (74,3)-(74,4) = "[" - │ │ │ └── closing_loc: (74,27)-(74,28) = "]" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (74,0)-(74,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (73,0)-(73,4) = "case" - │ └── end_keyword_loc: (75,0)-(75,3) = "end" - ├── @ CaseMatchNode (location: (77,0)-(79,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (77,5)-(77,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (77,5)-(77,6) = ":" - │ │ ├── value_loc: (77,6)-(77,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (78,0)-(78,12)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ArrayPatternNode (location: (78,3)-(78,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── constant: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ ConstantReadNode (location: (78,4)-(78,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :A - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (78,7)-(78,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (78,7)-(78,8) = "*" - │ │ │ │ └── expression: ∅ - │ │ │ ├── posts: (length: 1) - │ │ │ │ └── @ ConstantReadNode (location: (78,10)-(78,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :B - │ │ │ ├── opening_loc: (78,3)-(78,4) = "[" - │ │ │ └── closing_loc: (78,11)-(78,12) = "]" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (78,0)-(78,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (77,0)-(77,4) = "case" - │ └── end_keyword_loc: (79,0)-(79,3) = "end" - ├── @ CaseMatchNode (location: (81,0)-(83,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (81,5)-(81,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (81,5)-(81,6) = ":" - │ │ ├── value_loc: (81,6)-(81,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (82,0)-(82,22)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ArrayPatternNode (location: (82,3)-(82,22)) - │ │ │ ├── flags: ∅ - │ │ │ ├── constant: ∅ - │ │ │ ├── requireds: (length: 2) - │ │ │ │ ├── @ ArrayPatternNode (location: (82,4)-(82,11)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── constant: ∅ - │ │ │ │ │ ├── requireds: (length: 2) - │ │ │ │ │ │ ├── @ SymbolNode (location: (82,5)-(82,7)) - │ │ │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ │ │ ├── opening_loc: (82,5)-(82,6) = ":" - │ │ │ │ │ │ │ ├── value_loc: (82,6)-(82,7) = "b" - │ │ │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ │ │ └── unescaped: "b" - │ │ │ │ │ │ └── @ LocalVariableTargetNode (location: (82,9)-(82,10)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ ├── name: :c - │ │ │ │ │ │ └── depth: 0 - │ │ │ │ │ ├── rest: ∅ - │ │ │ │ │ ├── posts: (length: 0) - │ │ │ │ │ ├── opening_loc: (82,4)-(82,5) = "[" - │ │ │ │ │ └── closing_loc: (82,10)-(82,11) = "]" - │ │ │ │ └── @ ArrayPatternNode (location: (82,13)-(82,21)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── constant: ∅ - │ │ │ │ ├── requireds: (length: 2) - │ │ │ │ │ ├── @ SymbolNode (location: (82,14)-(82,16)) - │ │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ │ ├── opening_loc: (82,14)-(82,15) = ":" - │ │ │ │ │ │ ├── value_loc: (82,15)-(82,16) = "d" - │ │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ │ └── unescaped: "d" - │ │ │ │ │ └── @ PinnedVariableNode (location: (82,18)-(82,20)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── variable: - │ │ │ │ │ │ @ LocalVariableReadNode (location: (82,19)-(82,20)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ ├── name: :e - │ │ │ │ │ │ └── depth: 0 - │ │ │ │ │ └── operator_loc: (82,18)-(82,19) = "^" - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── posts: (length: 0) - │ │ │ │ ├── opening_loc: (82,13)-(82,14) = "[" - │ │ │ │ └── closing_loc: (82,20)-(82,21) = "]" - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── opening_loc: (82,3)-(82,4) = "[" - │ │ │ └── closing_loc: (82,21)-(82,22) = "]" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (82,0)-(82,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (81,0)-(81,4) = "case" - │ └── end_keyword_loc: (83,0)-(83,3) = "end" - ├── @ CaseMatchNode (location: (85,0)-(87,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (85,5)-(85,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (85,5)-(85,6) = ":" - │ │ ├── value_loc: (85,6)-(85,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (86,0)-(86,5)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ArrayPatternNode (location: (86,3)-(86,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── constant: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── opening_loc: (86,3)-(86,4) = "[" - │ │ │ └── closing_loc: (86,4)-(86,5) = "]" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (86,0)-(86,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (85,0)-(85,4) = "case" - │ └── end_keyword_loc: (87,0)-(87,3) = "end" - ├── @ CaseMatchNode (location: (89,0)-(91,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (89,5)-(89,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (89,5)-(89,6) = ":" - │ │ ├── value_loc: (89,6)-(89,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (90,0)-(90,9)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ArrayPatternNode (location: (90,3)-(90,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── constant: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ PinnedExpressionNode (location: (90,4)-(90,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── expression: - │ │ │ │ │ @ CallNode (location: (90,6)-(90,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :a - │ │ │ │ │ ├── message_loc: (90,6)-(90,7) = "a" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── operator_loc: (90,4)-(90,5) = "^" - │ │ │ │ ├── lparen_loc: (90,5)-(90,6) = "(" - │ │ │ │ └── rparen_loc: (90,7)-(90,8) = ")" - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── opening_loc: (90,3)-(90,4) = "[" - │ │ │ └── closing_loc: (90,8)-(90,9) = "]" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (90,0)-(90,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (89,0)-(89,4) = "case" - │ └── end_keyword_loc: (91,0)-(91,3) = "end" - ├── @ CaseMatchNode (location: (93,0)-(95,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (93,5)-(93,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (93,5)-(93,6) = ":" - │ │ ├── value_loc: (93,6)-(93,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (94,0)-(94,19)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ArrayPatternNode (location: (94,3)-(94,19)) - │ │ │ ├── flags: ∅ - │ │ │ ├── constant: ∅ - │ │ │ ├── requireds: (length: 3) - │ │ │ │ ├── @ PinnedVariableNode (location: (94,4)-(94,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── variable: - │ │ │ │ │ │ @ InstanceVariableReadNode (location: (94,5)-(94,7)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── name: :@a - │ │ │ │ │ └── operator_loc: (94,4)-(94,5) = "^" - │ │ │ │ ├── @ PinnedVariableNode (location: (94,9)-(94,12)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── variable: - │ │ │ │ │ │ @ GlobalVariableReadNode (location: (94,10)-(94,12)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── name: :$b - │ │ │ │ │ └── operator_loc: (94,9)-(94,10) = "^" - │ │ │ │ └── @ PinnedVariableNode (location: (94,14)-(94,18)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── variable: - │ │ │ │ │ @ ClassVariableReadNode (location: (94,15)-(94,18)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :@@c - │ │ │ │ └── operator_loc: (94,14)-(94,15) = "^" - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── opening_loc: (94,3)-(94,4) = "[" - │ │ │ └── closing_loc: (94,18)-(94,19) = "]" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (94,0)-(94,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (93,0)-(93,4) = "case" - │ └── end_keyword_loc: (95,0)-(95,3) = "end" - ├── @ CaseMatchNode (location: (97,0)-(99,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (97,5)-(97,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (97,5)-(97,6) = ":" - │ │ ├── value_loc: (97,6)-(97,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (98,0)-(98,12)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ XStringNode (location: (98,3)-(98,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (98,3)-(98,4) = "`" - │ │ │ ├── content_loc: (98,4)-(98,11) = "echo hi" - │ │ │ ├── closing_loc: (98,11)-(98,12) = "`" - │ │ │ └── unescaped: "echo hi" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (98,0)-(98,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (97,0)-(97,4) = "case" - │ └── end_keyword_loc: (99,0)-(99,3) = "end" - ├── @ CaseMatchNode (location: (101,0)-(103,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (101,5)-(101,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (101,5)-(101,6) = ":" - │ │ ├── value_loc: (101,6)-(101,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (102,0)-(102,16)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ArrayPatternNode (location: (102,3)-(102,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── constant: ∅ - │ │ │ ├── requireds: (length: 3) - │ │ │ │ ├── @ NilNode (location: (102,3)-(102,6)) - │ │ │ │ │ └── flags: static_literal - │ │ │ │ ├── @ NilNode (location: (102,8)-(102,11)) - │ │ │ │ │ └── flags: static_literal - │ │ │ │ └── @ NilNode (location: (102,13)-(102,16)) - │ │ │ │ └── flags: static_literal - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── opening_loc: ∅ - │ │ │ └── closing_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── in_loc: (102,0)-(102,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (101,0)-(101,4) = "case" - │ └── end_keyword_loc: (103,0)-(103,3) = "end" - ├── @ CaseMatchNode (location: (105,0)-(107,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ SymbolNode (location: (105,5)-(105,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (105,5)-(105,6) = ":" - │ │ ├── value_loc: (105,6)-(105,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (106,0)-(106,11)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ HashPatternNode (location: (106,3)-(106,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── constant: ∅ - │ │ │ ├── elements: (length: 1) - │ │ │ │ └── @ AssocNode (location: (106,5)-(106,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── key: - │ │ │ │ │ @ SymbolNode (location: (106,5)-(106,9)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: (106,5)-(106,6) = "\"" - │ │ │ │ │ ├── value_loc: (106,6)-(106,7) = "b" - │ │ │ │ │ ├── closing_loc: (106,7)-(106,9) = "\":" - │ │ │ │ │ └── unescaped: "b" - │ │ │ │ ├── value: - │ │ │ │ │ @ ImplicitNode (location: (106,6)-(106,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── value: - │ │ │ │ │ @ LocalVariableTargetNode (location: (106,6)-(106,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :b - │ │ │ │ │ └── depth: 0 - │ │ │ │ └── operator_loc: ∅ - │ │ │ ├── rest: ∅ - │ │ │ ├── opening_loc: (106,3)-(106,4) = "{" - │ │ │ └── closing_loc: (106,10)-(106,11) = "}" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (106,0)-(106,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (105,0)-(105,4) = "case" - │ └── end_keyword_loc: (107,0)-(107,3) = "end" - └── @ CaseMatchNode (location: (109,0)-(111,3)) - ├── flags: newline - ├── predicate: - │ @ SymbolNode (location: (109,5)-(109,7)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (109,5)-(109,6) = ":" - │ ├── value_loc: (109,6)-(109,7) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── conditions: (length: 1) - │ └── @ InNode (location: (110,0)-(110,5)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ HashPatternNode (location: (110,3)-(110,5)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── elements: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── opening_loc: (110,3)-(110,4) = "{" - │ │ └── closing_loc: (110,4)-(110,5) = "}" - │ ├── statements: ∅ - │ ├── in_loc: (110,0)-(110,2) = "in" - │ └── then_loc: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (109,0)-(109,4) = "case" - └── end_keyword_loc: (111,0)-(111,3) = "end" diff --git a/test/prism/snapshots/seattlerb/case_in_31.txt b/test/prism/snapshots/seattlerb/case_in_31.txt deleted file mode 100644 index 4abddbcdce..0000000000 --- a/test/prism/snapshots/seattlerb/case_in_31.txt +++ /dev/null @@ -1,57 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [:c] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(4,3)) - ├── flags: newline - ├── predicate: - │ @ SymbolNode (location: (1,5)-(1,7)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,5)-(1,6) = ":" - │ ├── value_loc: (1,6)-(1,7) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(3,4)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (2,3)-(2,11)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ SymbolNode (location: (2,4)-(2,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (2,4)-(2,5) = ":" - │ │ │ ├── value_loc: (2,5)-(2,6) = "b" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "b" - │ │ ├── rest: - │ │ │ @ SplatNode (location: (2,8)-(2,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (2,8)-(2,9) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (2,9)-(2,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ └── depth: 0 - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (2,3)-(2,4) = "[" - │ │ └── closing_loc: (2,10)-(2,11) = "]" - │ ├── statements: - │ │ @ StatementsNode (location: (3,2)-(3,4)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SymbolNode (location: (3,2)-(3,4)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (3,2)-(3,3) = ":" - │ │ ├── value_loc: (3,3)-(3,4) = "d" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "d" - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (4,0)-(4,3) = "end" diff --git a/test/prism/snapshots/seattlerb/case_in_37.txt b/test/prism/snapshots/seattlerb/case_in_37.txt deleted file mode 100644 index 5ef6d916af..0000000000 --- a/test/prism/snapshots/seattlerb/case_in_37.txt +++ /dev/null @@ -1,68 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(4,3)) - ├── flags: newline - ├── predicate: - │ @ SymbolNode (location: (1,5)-(1,7)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,5)-(1,6) = ":" - │ ├── value_loc: (1,6)-(1,7) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(3,4)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ HashPatternNode (location: (2,3)-(2,19)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── elements: (length: 1) - │ │ │ └── @ AssocNode (location: (2,5)-(2,17)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (2,5)-(2,7)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (2,5)-(2,6) = "b" - │ │ │ │ ├── closing_loc: (2,6)-(2,7) = ":" - │ │ │ │ └── unescaped: "b" - │ │ │ ├── value: - │ │ │ │ @ ArrayPatternNode (location: (2,8)-(2,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── constant: ∅ - │ │ │ │ ├── requireds: (length: 1) - │ │ │ │ │ └── @ ConstantReadNode (location: (2,9)-(2,13)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :Hash - │ │ │ │ ├── rest: - │ │ │ │ │ @ SplatNode (location: (2,15)-(2,16)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── operator_loc: (2,15)-(2,16) = "*" - │ │ │ │ │ └── expression: ∅ - │ │ │ │ ├── posts: (length: 0) - │ │ │ │ ├── opening_loc: (2,8)-(2,9) = "[" - │ │ │ │ └── closing_loc: (2,16)-(2,17) = "]" - │ │ │ └── operator_loc: ∅ - │ │ ├── rest: ∅ - │ │ ├── opening_loc: (2,3)-(2,4) = "{" - │ │ └── closing_loc: (2,18)-(2,19) = "}" - │ ├── statements: - │ │ @ StatementsNode (location: (3,2)-(3,4)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SymbolNode (location: (3,2)-(3,4)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (3,2)-(3,3) = ":" - │ │ ├── value_loc: (3,3)-(3,4) = "c" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "c" - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (4,0)-(4,3) = "end" diff --git a/test/prism/snapshots/seattlerb/case_in_42.txt b/test/prism/snapshots/seattlerb/case_in_42.txt deleted file mode 100644 index 9c6d21c68e..0000000000 --- a/test/prism/snapshots/seattlerb/case_in_42.txt +++ /dev/null @@ -1,53 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [:_] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(3,3)) - ├── flags: newline - ├── predicate: - │ @ SymbolNode (location: (1,5)-(1,7)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,5)-(1,6) = ":" - │ ├── value_loc: (1,6)-(1,7) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(2,18)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (2,3)-(2,9)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ SymbolNode (location: (2,3)-(2,5)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (2,3)-(2,4) = ":" - │ │ │ ├── value_loc: (2,4)-(2,5) = "b" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "b" - │ │ ├── rest: - │ │ │ @ SplatNode (location: (2,7)-(2,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (2,7)-(2,8) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (2,8)-(2,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :_ - │ │ │ └── depth: 0 - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (2,15)-(2,18)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ NilNode (location: (2,15)-(2,18)) - │ │ └── flags: newline, static_literal - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: (2,10)-(2,14) = "then" - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (3,0)-(3,3) = "end" diff --git a/test/prism/snapshots/seattlerb/case_in_42_2.txt b/test/prism/snapshots/seattlerb/case_in_42_2.txt deleted file mode 100644 index e16df21fa2..0000000000 --- a/test/prism/snapshots/seattlerb/case_in_42_2.txt +++ /dev/null @@ -1,50 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [:list] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(3,3)) - ├── flags: newline - ├── predicate: - │ @ SymbolNode (location: (1,5)-(1,7)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,5)-(1,6) = ":" - │ ├── value_loc: (1,6)-(1,7) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(2,20)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (2,3)-(2,11)) - │ │ ├── flags: ∅ - │ │ ├── constant: - │ │ │ @ ConstantReadNode (location: (2,3)-(2,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :A - │ │ ├── requireds: (length: 0) - │ │ ├── rest: - │ │ │ @ SplatNode (location: (2,5)-(2,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (2,5)-(2,6) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (2,6)-(2,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :list - │ │ │ └── depth: 0 - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (2,4)-(2,5) = "(" - │ │ └── closing_loc: (2,10)-(2,11) = ")" - │ ├── statements: - │ │ @ StatementsNode (location: (2,17)-(2,20)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ NilNode (location: (2,17)-(2,20)) - │ │ └── flags: newline, static_literal - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: (2,12)-(2,16) = "then" - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (3,0)-(3,3) = "end" diff --git a/test/prism/snapshots/seattlerb/case_in_47.txt b/test/prism/snapshots/seattlerb/case_in_47.txt deleted file mode 100644 index ee11204f61..0000000000 --- a/test/prism/snapshots/seattlerb/case_in_47.txt +++ /dev/null @@ -1,59 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(4,3)) - ├── flags: newline - ├── predicate: - │ @ SymbolNode (location: (1,5)-(1,7)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,5)-(1,6) = ":" - │ ├── value_loc: (1,6)-(1,7) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(3,4)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (2,3)-(2,14)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── rest: - │ │ │ @ SplatNode (location: (2,4)-(2,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (2,4)-(2,5) = "*" - │ │ │ └── expression: ∅ - │ │ ├── posts: (length: 2) - │ │ │ ├── @ SymbolNode (location: (2,7)-(2,9)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (2,7)-(2,8) = ":" - │ │ │ │ ├── value_loc: (2,8)-(2,9) = "b" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "b" - │ │ │ └── @ SymbolNode (location: (2,11)-(2,13)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (2,11)-(2,12) = ":" - │ │ │ ├── value_loc: (2,12)-(2,13) = "c" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "c" - │ │ ├── opening_loc: (2,3)-(2,4) = "[" - │ │ └── closing_loc: (2,13)-(2,14) = "]" - │ ├── statements: - │ │ @ StatementsNode (location: (3,2)-(3,4)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SymbolNode (location: (3,2)-(3,4)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (3,2)-(3,3) = ":" - │ │ ├── value_loc: (3,3)-(3,4) = "d" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "d" - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (4,0)-(4,3) = "end" diff --git a/test/prism/snapshots/seattlerb/case_in_67.txt b/test/prism/snapshots/seattlerb/case_in_67.txt deleted file mode 100644 index 103277a39d..0000000000 --- a/test/prism/snapshots/seattlerb/case_in_67.txt +++ /dev/null @@ -1,39 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(3,3)) - ├── flags: newline - ├── predicate: - │ @ SymbolNode (location: (1,5)-(1,7)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,5)-(1,6) = ":" - │ ├── value_loc: (1,6)-(1,7) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(2,15)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (2,3)-(2,6)) - │ │ ├── flags: static_literal - │ │ ├── left: - │ │ │ @ IntegerNode (location: (2,3)-(2,4)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: ∅ - │ │ └── operator_loc: (2,4)-(2,6) = ".." - │ ├── statements: - │ │ @ StatementsNode (location: (2,12)-(2,15)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ NilNode (location: (2,12)-(2,15)) - │ │ └── flags: newline, static_literal - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: (2,7)-(2,11) = "then" - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (3,0)-(3,3) = "end" diff --git a/test/prism/snapshots/seattlerb/case_in_86.txt b/test/prism/snapshots/seattlerb/case_in_86.txt deleted file mode 100644 index b163ae64e4..0000000000 --- a/test/prism/snapshots/seattlerb/case_in_86.txt +++ /dev/null @@ -1,60 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(3,3)) - ├── flags: newline - ├── predicate: - │ @ ArrayNode (location: (1,5)-(1,13)) - │ ├── flags: static_literal - │ ├── elements: (length: 2) - │ │ ├── @ SymbolNode (location: (1,6)-(1,8)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (1,6)-(1,7) = ":" - │ │ │ ├── value_loc: (1,7)-(1,8) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ └── @ SymbolNode (location: (1,10)-(1,12)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,10)-(1,11) = ":" - │ │ ├── value_loc: (1,11)-(1,12) = "b" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b" - │ ├── opening_loc: (1,5)-(1,6) = "[" - │ └── closing_loc: (1,12)-(1,13) = "]" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(2,25)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (2,3)-(2,16)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ ConstantPathNode (location: (2,3)-(2,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parent: ∅ - │ │ │ ├── name: :NilClass - │ │ │ ├── delimiter_loc: (2,3)-(2,5) = "::" - │ │ │ └── name_loc: (2,5)-(2,13) = "NilClass" - │ │ ├── rest: - │ │ │ @ SplatNode (location: (2,15)-(2,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (2,15)-(2,16) = "*" - │ │ │ └── expression: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (2,22)-(2,25)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ NilNode (location: (2,22)-(2,25)) - │ │ └── flags: newline, static_literal - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: (2,17)-(2,21) = "then" - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (3,0)-(3,3) = "end" diff --git a/test/prism/snapshots/seattlerb/case_in_86_2.txt b/test/prism/snapshots/seattlerb/case_in_86_2.txt deleted file mode 100644 index bf6b2ff53d..0000000000 --- a/test/prism/snapshots/seattlerb/case_in_86_2.txt +++ /dev/null @@ -1,60 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(3,3)) - ├── flags: newline - ├── predicate: - │ @ ArrayNode (location: (1,5)-(1,13)) - │ ├── flags: static_literal - │ ├── elements: (length: 2) - │ │ ├── @ SymbolNode (location: (1,6)-(1,8)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (1,6)-(1,7) = ":" - │ │ │ ├── value_loc: (1,7)-(1,8) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ └── @ SymbolNode (location: (1,10)-(1,12)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,10)-(1,11) = ":" - │ │ ├── value_loc: (1,11)-(1,12) = "b" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b" - │ ├── opening_loc: (1,5)-(1,6) = "[" - │ └── closing_loc: (1,12)-(1,13) = "]" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(2,25)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (2,3)-(2,16)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── rest: - │ │ │ @ SplatNode (location: (2,3)-(2,4)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (2,3)-(2,4) = "*" - │ │ │ └── expression: ∅ - │ │ ├── posts: (length: 1) - │ │ │ └── @ ConstantPathNode (location: (2,6)-(2,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parent: ∅ - │ │ │ ├── name: :NilClass - │ │ │ ├── delimiter_loc: (2,6)-(2,8) = "::" - │ │ │ └── name_loc: (2,8)-(2,16) = "NilClass" - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (2,22)-(2,25)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ NilNode (location: (2,22)-(2,25)) - │ │ └── flags: newline, static_literal - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: (2,17)-(2,21) = "then" - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (3,0)-(3,3) = "end" diff --git a/test/prism/snapshots/seattlerb/case_in_array_pat_const.txt b/test/prism/snapshots/seattlerb/case_in_array_pat_const.txt deleted file mode 100644 index c0aae6a723..0000000000 --- a/test/prism/snapshots/seattlerb/case_in_array_pat_const.txt +++ /dev/null @@ -1,50 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [:c] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(4,3)) - ├── flags: newline - ├── predicate: - │ @ SymbolNode (location: (1,5)-(1,7)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,5)-(1,6) = ":" - │ ├── value_loc: (1,6)-(1,7) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(3,4)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (2,3)-(2,7)) - │ │ ├── flags: ∅ - │ │ ├── constant: - │ │ │ @ ConstantReadNode (location: (2,3)-(2,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :B - │ │ ├── requireds: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (2,5)-(2,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ └── depth: 0 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (2,4)-(2,5) = "[" - │ │ └── closing_loc: (2,6)-(2,7) = "]" - │ ├── statements: - │ │ @ StatementsNode (location: (3,2)-(3,4)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SymbolNode (location: (3,2)-(3,4)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (3,2)-(3,3) = ":" - │ │ ├── value_loc: (3,3)-(3,4) = "d" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "d" - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (4,0)-(4,3) = "end" diff --git a/test/prism/snapshots/seattlerb/case_in_array_pat_const2.txt b/test/prism/snapshots/seattlerb/case_in_array_pat_const2.txt deleted file mode 100644 index 7739dde628..0000000000 --- a/test/prism/snapshots/seattlerb/case_in_array_pat_const2.txt +++ /dev/null @@ -1,56 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [:d] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(4,3)) - ├── flags: newline - ├── predicate: - │ @ SymbolNode (location: (1,5)-(1,7)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,5)-(1,6) = ":" - │ ├── value_loc: (1,6)-(1,7) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(3,4)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (2,3)-(2,10)) - │ │ ├── flags: ∅ - │ │ ├── constant: - │ │ │ @ ConstantPathNode (location: (2,3)-(2,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parent: - │ │ │ │ @ ConstantReadNode (location: (2,3)-(2,4)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :B - │ │ │ ├── name: :C - │ │ │ ├── delimiter_loc: (2,4)-(2,6) = "::" - │ │ │ └── name_loc: (2,6)-(2,7) = "C" - │ │ ├── requireds: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (2,8)-(2,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :d - │ │ │ └── depth: 0 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (2,7)-(2,8) = "[" - │ │ └── closing_loc: (2,9)-(2,10) = "]" - │ ├── statements: - │ │ @ StatementsNode (location: (3,2)-(3,4)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SymbolNode (location: (3,2)-(3,4)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (3,2)-(3,3) = ":" - │ │ ├── value_loc: (3,3)-(3,4) = "e" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "e" - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (4,0)-(4,3) = "end" diff --git a/test/prism/snapshots/seattlerb/case_in_array_pat_paren_assign.txt b/test/prism/snapshots/seattlerb/case_in_array_pat_paren_assign.txt deleted file mode 100644 index e34cac73c4..0000000000 --- a/test/prism/snapshots/seattlerb/case_in_array_pat_paren_assign.txt +++ /dev/null @@ -1,58 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [:d] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(4,3)) - ├── flags: newline - ├── predicate: - │ @ SymbolNode (location: (1,5)-(1,7)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,5)-(1,6) = ":" - │ ├── value_loc: (1,6)-(1,7) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(3,4)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (2,3)-(2,12)) - │ │ ├── flags: ∅ - │ │ ├── constant: - │ │ │ @ ConstantReadNode (location: (2,3)-(2,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :B - │ │ ├── requireds: (length: 1) - │ │ │ └── @ CapturePatternNode (location: (2,5)-(2,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── value: - │ │ │ │ @ ConstantReadNode (location: (2,5)-(2,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :C - │ │ │ ├── target: - │ │ │ │ @ LocalVariableTargetNode (location: (2,10)-(2,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :d - │ │ │ │ └── depth: 0 - │ │ │ └── operator_loc: (2,7)-(2,9) = "=>" - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (2,4)-(2,5) = "(" - │ │ └── closing_loc: (2,11)-(2,12) = ")" - │ ├── statements: - │ │ @ StatementsNode (location: (3,2)-(3,4)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SymbolNode (location: (3,2)-(3,4)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (3,2)-(3,3) = ":" - │ │ ├── value_loc: (3,3)-(3,4) = "d" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "d" - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (4,0)-(4,3) = "end" diff --git a/test/prism/snapshots/seattlerb/case_in_const.txt b/test/prism/snapshots/seattlerb/case_in_const.txt deleted file mode 100644 index 49097d26df..0000000000 --- a/test/prism/snapshots/seattlerb/case_in_const.txt +++ /dev/null @@ -1,35 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(4,3)) - ├── flags: newline - ├── predicate: - │ @ ConstantReadNode (location: (1,5)-(1,10)) - │ ├── flags: ∅ - │ └── name: :Array - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(3,4)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ ConstantReadNode (location: (2,3)-(2,8)) - │ │ ├── flags: ∅ - │ │ └── name: :Class - │ ├── statements: - │ │ @ StatementsNode (location: (3,2)-(3,4)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SymbolNode (location: (3,2)-(3,4)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (3,2)-(3,3) = ":" - │ │ ├── value_loc: (3,3)-(3,4) = "b" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b" - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (4,0)-(4,3) = "end" diff --git a/test/prism/snapshots/seattlerb/case_in_else.txt b/test/prism/snapshots/seattlerb/case_in_else.txt deleted file mode 100644 index e0cdf5125c..0000000000 --- a/test/prism/snapshots/seattlerb/case_in_else.txt +++ /dev/null @@ -1,49 +0,0 @@ -@ ProgramNode (location: (1,0)-(6,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(6,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(6,3)) - ├── flags: newline - ├── predicate: - │ @ ConstantReadNode (location: (1,5)-(1,10)) - │ ├── flags: ∅ - │ └── name: :Array - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(3,4)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ ConstantReadNode (location: (2,3)-(2,8)) - │ │ ├── flags: ∅ - │ │ └── name: :Class - │ ├── statements: - │ │ @ StatementsNode (location: (3,2)-(3,4)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SymbolNode (location: (3,2)-(3,4)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (3,2)-(3,3) = ":" - │ │ ├── value_loc: (3,3)-(3,4) = "b" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b" - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: ∅ - ├── else_clause: - │ @ ElseNode (location: (4,0)-(6,3)) - │ ├── flags: ∅ - │ ├── else_keyword_loc: (4,0)-(4,4) = "else" - │ ├── statements: - │ │ @ StatementsNode (location: (5,2)-(5,4)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SymbolNode (location: (5,2)-(5,4)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (5,2)-(5,3) = ":" - │ │ ├── value_loc: (5,3)-(5,4) = "c" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "c" - │ └── end_keyword_loc: (6,0)-(6,3) = "end" - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (6,0)-(6,3) = "end" diff --git a/test/prism/snapshots/seattlerb/case_in_find.txt b/test/prism/snapshots/seattlerb/case_in_find.txt deleted file mode 100644 index c6337d7c85..0000000000 --- a/test/prism/snapshots/seattlerb/case_in_find.txt +++ /dev/null @@ -1,56 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [:a, :b] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(3,3)) - ├── flags: newline - ├── predicate: - │ @ SymbolNode (location: (1,5)-(1,7)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,5)-(1,6) = ":" - │ ├── value_loc: (1,6)-(1,7) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,2)-(2,15)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ FindPatternNode (location: (2,5)-(2,15)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── left: - │ │ │ @ SplatNode (location: (2,5)-(2,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (2,5)-(2,6) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (2,6)-(2,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ ├── requireds: (length: 1) - │ │ │ └── @ SymbolNode (location: (2,9)-(2,11)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (2,9)-(2,10) = ":" - │ │ │ ├── value_loc: (2,10)-(2,11) = "+" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "+" - │ │ ├── right: - │ │ │ @ SplatNode (location: (2,13)-(2,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (2,13)-(2,14) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (2,14)-(2,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ └── depth: 0 - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ ├── statements: ∅ - │ ├── in_loc: (2,2)-(2,4) = "in" - │ └── then_loc: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (3,0)-(3,3) = "end" diff --git a/test/prism/snapshots/seattlerb/case_in_find_array.txt b/test/prism/snapshots/seattlerb/case_in_find_array.txt deleted file mode 100644 index 986925904f..0000000000 --- a/test/prism/snapshots/seattlerb/case_in_find_array.txt +++ /dev/null @@ -1,52 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [:c] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(3,3)) - ├── flags: newline - ├── predicate: - │ @ SymbolNode (location: (1,5)-(1,7)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,5)-(1,6) = ":" - │ ├── value_loc: (1,6)-(1,7) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(2,16)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ FindPatternNode (location: (2,3)-(2,16)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── left: - │ │ │ @ SplatNode (location: (2,4)-(2,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (2,4)-(2,5) = "*" - │ │ │ └── expression: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ SymbolNode (location: (2,7)-(2,9)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (2,7)-(2,8) = ":" - │ │ │ │ ├── value_loc: (2,8)-(2,9) = "b" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "b" - │ │ │ └── @ LocalVariableTargetNode (location: (2,11)-(2,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ └── depth: 0 - │ │ ├── right: - │ │ │ @ SplatNode (location: (2,14)-(2,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (2,14)-(2,15) = "*" - │ │ │ └── expression: ∅ - │ │ ├── opening_loc: (2,3)-(2,4) = "[" - │ │ └── closing_loc: (2,15)-(2,16) = "]" - │ ├── statements: ∅ - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (3,0)-(3,3) = "end" diff --git a/test/prism/snapshots/seattlerb/case_in_hash_pat.txt b/test/prism/snapshots/seattlerb/case_in_hash_pat.txt deleted file mode 100644 index e3f62d026e..0000000000 --- a/test/prism/snapshots/seattlerb/case_in_hash_pat.txt +++ /dev/null @@ -1,76 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(4,3)) - ├── flags: newline - ├── predicate: - │ @ SymbolNode (location: (1,5)-(1,7)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,5)-(1,6) = ":" - │ ├── value_loc: (1,6)-(1,7) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(3,4)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ HashPatternNode (location: (2,3)-(2,21)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── elements: (length: 2) - │ │ │ ├── @ AssocNode (location: (2,5)-(2,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── key: - │ │ │ │ │ @ SymbolNode (location: (2,5)-(2,7)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── value_loc: (2,5)-(2,6) = "b" - │ │ │ │ │ ├── closing_loc: (2,6)-(2,7) = ":" - │ │ │ │ │ └── unescaped: "b" - │ │ │ │ ├── value: - │ │ │ │ │ @ StringNode (location: (2,8)-(2,11)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── opening_loc: (2,8)-(2,9) = "'" - │ │ │ │ │ ├── content_loc: (2,9)-(2,10) = "c" - │ │ │ │ │ ├── closing_loc: (2,10)-(2,11) = "'" - │ │ │ │ │ └── unescaped: "c" - │ │ │ │ └── operator_loc: ∅ - │ │ │ └── @ AssocNode (location: (2,13)-(2,19)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (2,13)-(2,15)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (2,13)-(2,14) = "d" - │ │ │ │ ├── closing_loc: (2,14)-(2,15) = ":" - │ │ │ │ └── unescaped: "d" - │ │ │ ├── value: - │ │ │ │ @ StringNode (location: (2,16)-(2,19)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (2,16)-(2,17) = "\"" - │ │ │ │ ├── content_loc: (2,17)-(2,18) = "e" - │ │ │ │ ├── closing_loc: (2,18)-(2,19) = "\"" - │ │ │ │ └── unescaped: "e" - │ │ │ └── operator_loc: ∅ - │ │ ├── rest: ∅ - │ │ ├── opening_loc: (2,3)-(2,4) = "{" - │ │ └── closing_loc: (2,20)-(2,21) = "}" - │ ├── statements: - │ │ @ StatementsNode (location: (3,2)-(3,4)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SymbolNode (location: (3,2)-(3,4)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (3,2)-(3,3) = ":" - │ │ ├── value_loc: (3,3)-(3,4) = "f" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "f" - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: (2,22)-(2,26) = "then" - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (4,0)-(4,3) = "end" diff --git a/test/prism/snapshots/seattlerb/case_in_hash_pat_assign.txt b/test/prism/snapshots/seattlerb/case_in_hash_pat_assign.txt deleted file mode 100644 index 483c932680..0000000000 --- a/test/prism/snapshots/seattlerb/case_in_hash_pat_assign.txt +++ /dev/null @@ -1,100 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [:x, :f] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(4,3)) - ├── flags: newline - ├── predicate: - │ @ SymbolNode (location: (1,5)-(1,7)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,5)-(1,6) = ":" - │ ├── value_loc: (1,6)-(1,7) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(3,4)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ HashPatternNode (location: (2,3)-(2,34)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── elements: (length: 3) - │ │ │ ├── @ AssocNode (location: (2,5)-(2,20)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── key: - │ │ │ │ │ @ SymbolNode (location: (2,5)-(2,7)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── value_loc: (2,5)-(2,6) = "b" - │ │ │ │ │ ├── closing_loc: (2,6)-(2,7) = ":" - │ │ │ │ │ └── unescaped: "b" - │ │ │ │ ├── value: - │ │ │ │ │ @ CapturePatternNode (location: (2,8)-(2,20)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── value: - │ │ │ │ │ │ @ ConstantReadNode (location: (2,8)-(2,15)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── name: :Integer - │ │ │ │ │ ├── target: - │ │ │ │ │ │ @ LocalVariableTargetNode (location: (2,19)-(2,20)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ ├── name: :x - │ │ │ │ │ │ └── depth: 0 - │ │ │ │ │ └── operator_loc: (2,16)-(2,18) = "=>" - │ │ │ │ └── operator_loc: ∅ - │ │ │ ├── @ AssocNode (location: (2,22)-(2,28)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── key: - │ │ │ │ │ @ SymbolNode (location: (2,22)-(2,24)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── value_loc: (2,22)-(2,23) = "d" - │ │ │ │ │ ├── closing_loc: (2,23)-(2,24) = ":" - │ │ │ │ │ └── unescaped: "d" - │ │ │ │ ├── value: - │ │ │ │ │ @ StringNode (location: (2,25)-(2,28)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── opening_loc: (2,25)-(2,26) = "\"" - │ │ │ │ │ ├── content_loc: (2,26)-(2,27) = "e" - │ │ │ │ │ ├── closing_loc: (2,27)-(2,28) = "\"" - │ │ │ │ │ └── unescaped: "e" - │ │ │ │ └── operator_loc: ∅ - │ │ │ └── @ AssocNode (location: (2,30)-(2,32)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (2,30)-(2,32)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (2,30)-(2,31) = "f" - │ │ │ │ ├── closing_loc: (2,31)-(2,32) = ":" - │ │ │ │ └── unescaped: "f" - │ │ │ ├── value: - │ │ │ │ @ ImplicitNode (location: (2,30)-(2,31)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── value: - │ │ │ │ @ LocalVariableTargetNode (location: (2,30)-(2,31)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :f - │ │ │ │ └── depth: 0 - │ │ │ └── operator_loc: ∅ - │ │ ├── rest: ∅ - │ │ ├── opening_loc: (2,3)-(2,4) = "{" - │ │ └── closing_loc: (2,33)-(2,34) = "}" - │ ├── statements: - │ │ @ StatementsNode (location: (3,2)-(3,4)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SymbolNode (location: (3,2)-(3,4)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (3,2)-(3,3) = ":" - │ │ ├── value_loc: (3,3)-(3,4) = "g" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "g" - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: (2,35)-(2,39) = "then" - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (4,0)-(4,3) = "end" diff --git a/test/prism/snapshots/seattlerb/case_in_hash_pat_paren_assign.txt b/test/prism/snapshots/seattlerb/case_in_hash_pat_paren_assign.txt deleted file mode 100644 index b6e809326a..0000000000 --- a/test/prism/snapshots/seattlerb/case_in_hash_pat_paren_assign.txt +++ /dev/null @@ -1,59 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(4,3)) - ├── flags: newline - ├── predicate: - │ @ SymbolNode (location: (1,5)-(1,7)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,5)-(1,6) = ":" - │ ├── value_loc: (1,6)-(1,7) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(3,4)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ HashPatternNode (location: (2,3)-(2,11)) - │ │ ├── flags: ∅ - │ │ ├── constant: - │ │ │ @ ConstantReadNode (location: (2,3)-(2,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :B - │ │ ├── elements: (length: 1) - │ │ │ └── @ AssocNode (location: (2,5)-(2,10)) - │ │ │ ├── flags: static_literal - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (2,5)-(2,7)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (2,5)-(2,6) = "a" - │ │ │ │ ├── closing_loc: (2,6)-(2,7) = ":" - │ │ │ │ └── unescaped: "a" - │ │ │ ├── value: - │ │ │ │ @ IntegerNode (location: (2,8)-(2,10)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 42 - │ │ │ └── operator_loc: ∅ - │ │ ├── rest: ∅ - │ │ ├── opening_loc: (2,4)-(2,5) = "(" - │ │ └── closing_loc: (2,10)-(2,11) = ")" - │ ├── statements: - │ │ @ StatementsNode (location: (3,2)-(3,4)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SymbolNode (location: (3,2)-(3,4)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (3,2)-(3,3) = ":" - │ │ ├── value_loc: (3,3)-(3,4) = "d" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "d" - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (4,0)-(4,3) = "end" diff --git a/test/prism/snapshots/seattlerb/case_in_hash_pat_paren_true.txt b/test/prism/snapshots/seattlerb/case_in_hash_pat_paren_true.txt deleted file mode 100644 index a544021030..0000000000 --- a/test/prism/snapshots/seattlerb/case_in_hash_pat_paren_true.txt +++ /dev/null @@ -1,55 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(4,3)) - ├── flags: newline - ├── predicate: - │ @ SymbolNode (location: (1,5)-(1,7)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,5)-(1,6) = ":" - │ ├── value_loc: (1,6)-(1,7) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(3,4)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ HashPatternNode (location: (2,3)-(2,10)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── elements: (length: 1) - │ │ │ └── @ AssocNode (location: (2,3)-(2,10)) - │ │ │ ├── flags: static_literal - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (2,3)-(2,5)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (2,3)-(2,4) = "b" - │ │ │ │ ├── closing_loc: (2,4)-(2,5) = ":" - │ │ │ │ └── unescaped: "b" - │ │ │ ├── value: - │ │ │ │ @ TrueNode (location: (2,6)-(2,10)) - │ │ │ │ └── flags: static_literal - │ │ │ └── operator_loc: ∅ - │ │ ├── rest: ∅ - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (3,2)-(3,4)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SymbolNode (location: (3,2)-(3,4)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (3,2)-(3,3) = ":" - │ │ ├── value_loc: (3,3)-(3,4) = "c" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "c" - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: (2,11)-(2,15) = "then" - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (4,0)-(4,3) = "end" diff --git a/test/prism/snapshots/seattlerb/case_in_hash_pat_rest.txt b/test/prism/snapshots/seattlerb/case_in_hash_pat_rest.txt deleted file mode 100644 index 71f7e126bc..0000000000 --- a/test/prism/snapshots/seattlerb/case_in_hash_pat_rest.txt +++ /dev/null @@ -1,65 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [:c, :rest] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(3,3)) - ├── flags: newline - ├── predicate: - │ @ SymbolNode (location: (1,5)-(1,7)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,5)-(1,6) = ":" - │ ├── value_loc: (1,6)-(1,7) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(2,23)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ HashPatternNode (location: (2,3)-(2,15)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── elements: (length: 1) - │ │ │ └── @ AssocNode (location: (2,3)-(2,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (2,3)-(2,5)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (2,3)-(2,4) = "b" - │ │ │ │ ├── closing_loc: (2,4)-(2,5) = ":" - │ │ │ │ └── unescaped: "b" - │ │ │ ├── value: - │ │ │ │ @ LocalVariableTargetNode (location: (2,6)-(2,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ └── depth: 0 - │ │ │ └── operator_loc: ∅ - │ │ ├── rest: - │ │ │ @ AssocSplatNode (location: (2,9)-(2,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── value: - │ │ │ │ @ LocalVariableTargetNode (location: (2,11)-(2,15)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :rest - │ │ │ │ └── depth: 0 - │ │ │ └── operator_loc: (2,9)-(2,11) = "**" - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (2,21)-(2,23)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SymbolNode (location: (2,21)-(2,23)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (2,21)-(2,22) = ":" - │ │ ├── value_loc: (2,22)-(2,23) = "d" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "d" - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: (2,16)-(2,20) = "then" - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (3,0)-(3,3) = "end" diff --git a/test/prism/snapshots/seattlerb/case_in_hash_pat_rest_solo.txt b/test/prism/snapshots/seattlerb/case_in_hash_pat_rest_solo.txt deleted file mode 100644 index 01b324e086..0000000000 --- a/test/prism/snapshots/seattlerb/case_in_hash_pat_rest_solo.txt +++ /dev/null @@ -1,50 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [:rest] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(3,3)) - ├── flags: newline - ├── predicate: - │ @ SymbolNode (location: (1,5)-(1,7)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,5)-(1,6) = ":" - │ ├── value_loc: (1,6)-(1,7) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(2,17)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ HashPatternNode (location: (2,3)-(2,9)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── elements: (length: 0) - │ │ ├── rest: - │ │ │ @ AssocSplatNode (location: (2,3)-(2,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── value: - │ │ │ │ @ LocalVariableTargetNode (location: (2,5)-(2,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :rest - │ │ │ │ └── depth: 0 - │ │ │ └── operator_loc: (2,3)-(2,5) = "**" - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (2,15)-(2,17)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SymbolNode (location: (2,15)-(2,17)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (2,15)-(2,16) = ":" - │ │ ├── value_loc: (2,16)-(2,17) = "d" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "d" - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: (2,10)-(2,14) = "then" - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (3,0)-(3,3) = "end" diff --git a/test/prism/snapshots/seattlerb/case_in_if_unless_post_mod.txt b/test/prism/snapshots/seattlerb/case_in_if_unless_post_mod.txt deleted file mode 100644 index 3da03ffbc3..0000000000 --- a/test/prism/snapshots/seattlerb/case_in_if_unless_post_mod.txt +++ /dev/null @@ -1,82 +0,0 @@ -@ ProgramNode (location: (1,0)-(6,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(6,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(6,3)) - ├── flags: newline - ├── predicate: - │ @ SymbolNode (location: (1,5)-(1,7)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,5)-(1,6) = ":" - │ ├── value_loc: (1,6)-(1,7) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── conditions: (length: 2) - │ ├── @ InNode (location: (2,0)-(3,4)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IfNode (location: (2,3)-(2,12)) - │ │ │ ├── flags: newline - │ │ │ ├── if_keyword_loc: (2,5)-(2,7) = "if" - │ │ │ ├── predicate: - │ │ │ │ @ TrueNode (location: (2,8)-(2,12)) - │ │ │ │ └── flags: static_literal - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (2,3)-(2,4)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ ConstantReadNode (location: (2,3)-(2,4)) - │ │ │ │ ├── flags: newline - │ │ │ │ └── name: :A - │ │ │ ├── subsequent: ∅ - │ │ │ └── end_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (3,2)-(3,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ SymbolNode (location: (3,2)-(3,4)) - │ │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (3,2)-(3,3) = ":" - │ │ │ ├── value_loc: (3,3)-(3,4) = "C" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "C" - │ │ ├── in_loc: (2,0)-(2,2) = "in" - │ │ └── then_loc: ∅ - │ └── @ InNode (location: (4,0)-(5,4)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ UnlessNode (location: (4,3)-(4,17)) - │ │ ├── flags: newline - │ │ ├── keyword_loc: (4,5)-(4,11) = "unless" - │ │ ├── predicate: - │ │ │ @ FalseNode (location: (4,12)-(4,17)) - │ │ │ └── flags: static_literal - │ │ ├── then_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (4,3)-(4,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ ConstantReadNode (location: (4,3)-(4,4)) - │ │ │ ├── flags: newline - │ │ │ └── name: :D - │ │ ├── else_clause: ∅ - │ │ └── end_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (5,2)-(5,4)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SymbolNode (location: (5,2)-(5,4)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (5,2)-(5,3) = ":" - │ │ ├── value_loc: (5,3)-(5,4) = "E" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "E" - │ ├── in_loc: (4,0)-(4,2) = "in" - │ └── then_loc: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (6,0)-(6,3) = "end" diff --git a/test/prism/snapshots/seattlerb/case_in_multiple.txt b/test/prism/snapshots/seattlerb/case_in_multiple.txt deleted file mode 100644 index 173136fc6f..0000000000 --- a/test/prism/snapshots/seattlerb/case_in_multiple.txt +++ /dev/null @@ -1,68 +0,0 @@ -@ ProgramNode (location: (1,0)-(6,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(6,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(6,3)) - ├── flags: newline - ├── predicate: - │ @ SymbolNode (location: (1,5)-(1,7)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,5)-(1,6) = ":" - │ ├── value_loc: (1,6)-(1,7) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── conditions: (length: 2) - │ ├── @ InNode (location: (2,0)-(3,4)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ConstantPathNode (location: (2,3)-(2,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parent: - │ │ │ │ @ ConstantReadNode (location: (2,3)-(2,4)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :A - │ │ │ ├── name: :B - │ │ │ ├── delimiter_loc: (2,4)-(2,6) = "::" - │ │ │ └── name_loc: (2,6)-(2,7) = "B" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (3,2)-(3,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ SymbolNode (location: (3,2)-(3,4)) - │ │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (3,2)-(3,3) = ":" - │ │ │ ├── value_loc: (3,3)-(3,4) = "C" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "C" - │ │ ├── in_loc: (2,0)-(2,2) = "in" - │ │ └── then_loc: ∅ - │ └── @ InNode (location: (4,0)-(5,4)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ ConstantPathNode (location: (4,3)-(4,7)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ ConstantReadNode (location: (4,3)-(4,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :D - │ │ ├── name: :E - │ │ ├── delimiter_loc: (4,4)-(4,6) = "::" - │ │ └── name_loc: (4,6)-(4,7) = "E" - │ ├── statements: - │ │ @ StatementsNode (location: (5,2)-(5,4)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SymbolNode (location: (5,2)-(5,4)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (5,2)-(5,3) = ":" - │ │ ├── value_loc: (5,3)-(5,4) = "F" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "F" - │ ├── in_loc: (4,0)-(4,2) = "in" - │ └── then_loc: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (6,0)-(6,3) = "end" diff --git a/test/prism/snapshots/seattlerb/case_in_or.txt b/test/prism/snapshots/seattlerb/case_in_or.txt deleted file mode 100644 index 7bcf50293d..0000000000 --- a/test/prism/snapshots/seattlerb/case_in_or.txt +++ /dev/null @@ -1,46 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(4,3)) - ├── flags: newline - ├── predicate: - │ @ SymbolNode (location: (1,5)-(1,7)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,5)-(1,6) = ":" - │ ├── value_loc: (1,6)-(1,7) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(3,4)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ AlternationPatternNode (location: (2,3)-(2,8)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ ConstantReadNode (location: (2,3)-(2,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :B - │ │ ├── right: - │ │ │ @ ConstantReadNode (location: (2,7)-(2,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :C - │ │ └── operator_loc: (2,5)-(2,6) = "|" - │ ├── statements: - │ │ @ StatementsNode (location: (3,2)-(3,4)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SymbolNode (location: (3,2)-(3,4)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (3,2)-(3,3) = ":" - │ │ ├── value_loc: (3,3)-(3,4) = "d" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "d" - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (4,0)-(4,3) = "end" diff --git a/test/prism/snapshots/seattlerb/class_comments.txt b/test/prism/snapshots/seattlerb/class_comments.txt deleted file mode 100644 index 75350722a1..0000000000 --- a/test/prism/snapshots/seattlerb/class_comments.txt +++ /dev/null @@ -1,37 +0,0 @@ -@ ProgramNode (location: (4,0)-(9,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (4,0)-(9,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ClassNode (location: (4,0)-(9,3)) - ├── flags: newline - ├── locals: [] - ├── class_keyword_loc: (4,0)-(4,5) = "class" - ├── constant_path: - │ @ ConstantReadNode (location: (4,6)-(4,7)) - │ ├── flags: ∅ - │ └── name: :X - ├── inheritance_operator_loc: ∅ - ├── superclass: ∅ - ├── body: - │ @ StatementsNode (location: (6,2)-(8,5)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ DefNode (location: (6,2)-(8,5)) - │ ├── flags: newline - │ ├── name: :blah - │ ├── name_loc: (6,6)-(6,10) = "blah" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (6,2)-(6,5) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (8,2)-(8,5) = "end" - ├── end_keyword_loc: (9,0)-(9,3) = "end" - └── name: :X diff --git a/test/prism/snapshots/seattlerb/cond_unary_minus.txt b/test/prism/snapshots/seattlerb/cond_unary_minus.txt deleted file mode 100644 index 69a998475e..0000000000 --- a/test/prism/snapshots/seattlerb/cond_unary_minus.txt +++ /dev/null @@ -1,18 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IfNode (location: (1,0)-(1,10)) - ├── flags: newline - ├── if_keyword_loc: (1,0)-(1,2) = "if" - ├── predicate: - │ @ IntegerNode (location: (1,3)-(1,5)) - │ ├── flags: static_literal, decimal - │ └── value: -1 - ├── then_keyword_loc: ∅ - ├── statements: ∅ - ├── subsequent: ∅ - └── end_keyword_loc: (1,7)-(1,10) = "end" diff --git a/test/prism/snapshots/seattlerb/const_2_op_asgn_or2.txt b/test/prism/snapshots/seattlerb/const_2_op_asgn_or2.txt deleted file mode 100644 index 25d77dac2d..0000000000 --- a/test/prism/snapshots/seattlerb/const_2_op_asgn_or2.txt +++ /dev/null @@ -1,27 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ConstantPathOrWriteNode (location: (1,0)-(1,12)) - ├── flags: newline - ├── target: - │ @ ConstantPathNode (location: (1,0)-(1,6)) - │ ├── flags: ∅ - │ ├── parent: - │ │ @ ConstantPathNode (location: (1,0)-(1,3)) - │ │ ├── flags: ∅ - │ │ ├── parent: ∅ - │ │ ├── name: :X - │ │ ├── delimiter_loc: (1,0)-(1,2) = "::" - │ │ └── name_loc: (1,2)-(1,3) = "X" - │ ├── name: :Y - │ ├── delimiter_loc: (1,3)-(1,5) = "::" - │ └── name_loc: (1,5)-(1,6) = "Y" - ├── operator_loc: (1,7)-(1,10) = "||=" - └── value: - @ IntegerNode (location: (1,11)-(1,12)) - ├── flags: static_literal, decimal - └── value: 1 diff --git a/test/prism/snapshots/seattlerb/const_3_op_asgn_or.txt b/test/prism/snapshots/seattlerb/const_3_op_asgn_or.txt deleted file mode 100644 index dc098bcf23..0000000000 --- a/test/prism/snapshots/seattlerb/const_3_op_asgn_or.txt +++ /dev/null @@ -1,21 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ConstantPathOrWriteNode (location: (1,0)-(1,9)) - ├── flags: newline - ├── target: - │ @ ConstantPathNode (location: (1,0)-(1,3)) - │ ├── flags: ∅ - │ ├── parent: ∅ - │ ├── name: :X - │ ├── delimiter_loc: (1,0)-(1,2) = "::" - │ └── name_loc: (1,2)-(1,3) = "X" - ├── operator_loc: (1,4)-(1,7) = "||=" - └── value: - @ IntegerNode (location: (1,8)-(1,9)) - ├── flags: static_literal, decimal - └── value: 1 diff --git a/test/prism/snapshots/seattlerb/const_op_asgn_and1.txt b/test/prism/snapshots/seattlerb/const_op_asgn_and1.txt deleted file mode 100644 index 63b8bc190b..0000000000 --- a/test/prism/snapshots/seattlerb/const_op_asgn_and1.txt +++ /dev/null @@ -1,22 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ConstantPathOperatorWriteNode (location: (1,0)-(1,8)) - ├── flags: newline - ├── target: - │ @ ConstantPathNode (location: (1,0)-(1,3)) - │ ├── flags: ∅ - │ ├── parent: ∅ - │ ├── name: :X - │ ├── delimiter_loc: (1,0)-(1,2) = "::" - │ └── name_loc: (1,2)-(1,3) = "X" - ├── binary_operator_loc: (1,4)-(1,6) = "&=" - ├── value: - │ @ IntegerNode (location: (1,7)-(1,8)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - └── binary_operator: :& diff --git a/test/prism/snapshots/seattlerb/const_op_asgn_and2.txt b/test/prism/snapshots/seattlerb/const_op_asgn_and2.txt deleted file mode 100644 index c1ac2bcf52..0000000000 --- a/test/prism/snapshots/seattlerb/const_op_asgn_and2.txt +++ /dev/null @@ -1,21 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ConstantPathAndWriteNode (location: (1,0)-(1,9)) - ├── flags: newline - ├── target: - │ @ ConstantPathNode (location: (1,0)-(1,3)) - │ ├── flags: ∅ - │ ├── parent: ∅ - │ ├── name: :X - │ ├── delimiter_loc: (1,0)-(1,2) = "::" - │ └── name_loc: (1,2)-(1,3) = "X" - ├── operator_loc: (1,4)-(1,7) = "&&=" - └── value: - @ IntegerNode (location: (1,8)-(1,9)) - ├── flags: static_literal, decimal - └── value: 1 diff --git a/test/prism/snapshots/seattlerb/const_op_asgn_or.txt b/test/prism/snapshots/seattlerb/const_op_asgn_or.txt deleted file mode 100644 index 0a53593d12..0000000000 --- a/test/prism/snapshots/seattlerb/const_op_asgn_or.txt +++ /dev/null @@ -1,24 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ConstantPathOrWriteNode (location: (1,0)-(1,10)) - ├── flags: newline - ├── target: - │ @ ConstantPathNode (location: (1,0)-(1,4)) - │ ├── flags: ∅ - │ ├── parent: - │ │ @ ConstantReadNode (location: (1,0)-(1,1)) - │ │ ├── flags: ∅ - │ │ └── name: :X - │ ├── name: :Y - │ ├── delimiter_loc: (1,1)-(1,3) = "::" - │ └── name_loc: (1,3)-(1,4) = "Y" - ├── operator_loc: (1,5)-(1,8) = "||=" - └── value: - @ IntegerNode (location: (1,9)-(1,10)) - ├── flags: static_literal, decimal - └── value: 1 diff --git a/test/prism/snapshots/seattlerb/defined_eh_parens.txt b/test/prism/snapshots/seattlerb/defined_eh_parens.txt deleted file mode 100644 index 7e18a24787..0000000000 --- a/test/prism/snapshots/seattlerb/defined_eh_parens.txt +++ /dev/null @@ -1,16 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefinedNode (location: (1,0)-(1,12)) - ├── flags: newline - ├── lparen_loc: (1,8)-(1,9) = "(" - ├── value: - │ @ IntegerNode (location: (1,9)-(1,11)) - │ ├── flags: static_literal, decimal - │ └── value: 42 - ├── rparen_loc: (1,11)-(1,12) = ")" - └── keyword_loc: (1,0)-(1,8) = "defined?" diff --git a/test/prism/snapshots/seattlerb/defn_arg_asplat_arg.txt b/test/prism/snapshots/seattlerb/defn_arg_asplat_arg.txt deleted file mode 100644 index 312b0214d6..0000000000 --- a/test/prism/snapshots/seattlerb/defn_arg_asplat_arg.txt +++ /dev/null @@ -1,41 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,29)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,29)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,29)) - ├── flags: newline - ├── name: :call - ├── name_loc: (1,4)-(1,8) = "call" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,9)-(1,24)) - │ ├── flags: ∅ - │ ├── requireds: (length: 1) - │ │ └── @ RequiredParameterNode (location: (1,9)-(1,15)) - │ │ ├── flags: ∅ - │ │ └── name: :interp - │ ├── optionals: (length: 0) - │ ├── rest: - │ │ @ RestParameterNode (location: (1,17)-(1,18)) - │ │ ├── flags: ∅ - │ │ ├── name: ∅ - │ │ ├── name_loc: ∅ - │ │ └── operator_loc: (1,17)-(1,18) = "*" - │ ├── posts: (length: 1) - │ │ └── @ RequiredParameterNode (location: (1,20)-(1,24)) - │ │ ├── flags: ∅ - │ │ └── name: :args - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:interp, :args] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,8)-(1,9) = "(" - ├── rparen_loc: (1,24)-(1,25) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,26)-(1,29) = "end" diff --git a/test/prism/snapshots/seattlerb/defn_arg_forward_args.txt b/test/prism/snapshots/seattlerb/defn_arg_forward_args.txt deleted file mode 100644 index ababd94b11..0000000000 --- a/test/prism/snapshots/seattlerb/defn_arg_forward_args.txt +++ /dev/null @@ -1,57 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,29)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,29)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,29)) - ├── flags: newline - ├── name: :a - ├── name_loc: (1,4)-(1,5) = "a" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,12)) - │ ├── flags: ∅ - │ ├── requireds: (length: 1) - │ │ └── @ RequiredParameterNode (location: (1,6)-(1,7)) - │ │ ├── flags: ∅ - │ │ └── name: :x - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: - │ │ @ ForwardingParameterNode (location: (1,9)-(1,12)) - │ │ └── flags: ∅ - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (1,15)-(1,24)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,15)-(1,24)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :b - │ ├── message_loc: (1,15)-(1,16) = "b" - │ ├── opening_loc: (1,16)-(1,17) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,17)-(1,23)) - │ │ ├── flags: contains_forwarding - │ │ └── arguments: (length: 2) - │ │ ├── @ LocalVariableReadNode (location: (1,17)-(1,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :x - │ │ │ └── depth: 0 - │ │ └── @ ForwardingArgumentsNode (location: (1,20)-(1,23)) - │ │ └── flags: ∅ - │ ├── closing_loc: (1,23)-(1,24) = ")" - │ └── block: ∅ - ├── locals: [:x] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,5)-(1,6) = "(" - ├── rparen_loc: (1,12)-(1,13) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,26)-(1,29) = "end" diff --git a/test/prism/snapshots/seattlerb/defn_args_forward_args.txt b/test/prism/snapshots/seattlerb/defn_args_forward_args.txt deleted file mode 100644 index d689049433..0000000000 --- a/test/prism/snapshots/seattlerb/defn_args_forward_args.txt +++ /dev/null @@ -1,69 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,41)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,41)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,41)) - ├── flags: newline - ├── name: :a - ├── name_loc: (1,4)-(1,5) = "a" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,18)) - │ ├── flags: ∅ - │ ├── requireds: (length: 3) - │ │ ├── @ RequiredParameterNode (location: (1,6)-(1,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :x - │ │ ├── @ RequiredParameterNode (location: (1,9)-(1,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :y - │ │ └── @ RequiredParameterNode (location: (1,12)-(1,13)) - │ │ ├── flags: ∅ - │ │ └── name: :z - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: - │ │ @ ForwardingParameterNode (location: (1,15)-(1,18)) - │ │ └── flags: ∅ - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (1,21)-(1,36)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,21)-(1,36)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :b - │ ├── message_loc: (1,21)-(1,22) = "b" - │ ├── opening_loc: (1,22)-(1,23) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,23)-(1,35)) - │ │ ├── flags: contains_forwarding - │ │ └── arguments: (length: 3) - │ │ ├── @ SymbolNode (location: (1,23)-(1,27)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (1,23)-(1,24) = ":" - │ │ │ ├── value_loc: (1,24)-(1,27) = "get" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "get" - │ │ ├── @ LocalVariableReadNode (location: (1,29)-(1,30)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :z - │ │ │ └── depth: 0 - │ │ └── @ ForwardingArgumentsNode (location: (1,32)-(1,35)) - │ │ └── flags: ∅ - │ ├── closing_loc: (1,35)-(1,36) = ")" - │ └── block: ∅ - ├── locals: [:x, :y, :z] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,5)-(1,6) = "(" - ├── rparen_loc: (1,18)-(1,19) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,38)-(1,41) = "end" diff --git a/test/prism/snapshots/seattlerb/defn_comments.txt b/test/prism/snapshots/seattlerb/defn_comments.txt deleted file mode 100644 index 8ea66b7760..0000000000 --- a/test/prism/snapshots/seattlerb/defn_comments.txt +++ /dev/null @@ -1,21 +0,0 @@ -@ ProgramNode (location: (4,0)-(5,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (4,0)-(5,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (4,0)-(5,3)) - ├── flags: newline - ├── name: :blah - ├── name_loc: (4,4)-(4,8) = "blah" - ├── receiver: ∅ - ├── parameters: ∅ - ├── body: ∅ - ├── locals: [] - ├── def_keyword_loc: (4,0)-(4,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (5,0)-(5,3) = "end" diff --git a/test/prism/snapshots/seattlerb/defn_endless_command.txt b/test/prism/snapshots/seattlerb/defn_endless_command.txt deleted file mode 100644 index 12149a821c..0000000000 --- a/test/prism/snapshots/seattlerb/defn_endless_command.txt +++ /dev/null @@ -1,40 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,33)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,33)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,33)) - ├── flags: newline - ├── name: :some_method - ├── name_loc: (1,4)-(1,15) = "some_method" - ├── receiver: ∅ - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (1,18)-(1,33)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,18)-(1,33)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :other_method - │ ├── message_loc: (1,18)-(1,30) = "other_method" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,31)-(1,33)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (1,31)-(1,33)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 42 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── locals: [] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: (1,16)-(1,17) = "=" - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/seattlerb/defn_endless_command_rescue.txt b/test/prism/snapshots/seattlerb/defn_endless_command_rescue.txt deleted file mode 100644 index 99194a5ce9..0000000000 --- a/test/prism/snapshots/seattlerb/defn_endless_command_rescue.txt +++ /dev/null @@ -1,48 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,43)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,43)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,43)) - ├── flags: newline - ├── name: :some_method - ├── name_loc: (1,4)-(1,15) = "some_method" - ├── receiver: ∅ - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (1,18)-(1,43)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ RescueModifierNode (location: (1,18)-(1,43)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (1,18)-(1,33)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :other_method - │ │ ├── message_loc: (1,18)-(1,30) = "other_method" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (1,31)-(1,33)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (1,31)-(1,33)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 42 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── keyword_loc: (1,34)-(1,40) = "rescue" - │ └── rescue_expression: - │ @ IntegerNode (location: (1,41)-(1,43)) - │ ├── flags: static_literal, decimal - │ └── value: 24 - ├── locals: [] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: (1,16)-(1,17) = "=" - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/seattlerb/defn_forward_args.txt b/test/prism/snapshots/seattlerb/defn_forward_args.txt deleted file mode 100644 index 58a97028c6..0000000000 --- a/test/prism/snapshots/seattlerb/defn_forward_args.txt +++ /dev/null @@ -1,50 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,23)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,23)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,23)) - ├── flags: newline - ├── name: :a - ├── name_loc: (1,4)-(1,5) = "a" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,9)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: - │ │ @ ForwardingParameterNode (location: (1,6)-(1,9)) - │ │ └── flags: ∅ - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (1,12)-(1,18)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,12)-(1,18)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :b - │ ├── message_loc: (1,12)-(1,13) = "b" - │ ├── opening_loc: (1,13)-(1,14) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,14)-(1,17)) - │ │ ├── flags: contains_forwarding - │ │ └── arguments: (length: 1) - │ │ └── @ ForwardingArgumentsNode (location: (1,14)-(1,17)) - │ │ └── flags: ∅ - │ ├── closing_loc: (1,17)-(1,18) = ")" - │ └── block: ∅ - ├── locals: [] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,5)-(1,6) = "(" - ├── rparen_loc: (1,9)-(1,10) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,20)-(1,23) = "end" diff --git a/test/prism/snapshots/seattlerb/defn_forward_args__no_parens.txt b/test/prism/snapshots/seattlerb/defn_forward_args__no_parens.txt deleted file mode 100644 index 5d8e09f6c0..0000000000 --- a/test/prism/snapshots/seattlerb/defn_forward_args__no_parens.txt +++ /dev/null @@ -1,50 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(3,3)) - ├── flags: newline - ├── name: :f - ├── name_loc: (1,4)-(1,5) = "f" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,9)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: - │ │ @ ForwardingParameterNode (location: (1,6)-(1,9)) - │ │ └── flags: ∅ - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (2,2)-(2,8)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (2,2)-(2,8)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (2,2)-(2,3) = "m" - │ ├── opening_loc: (2,3)-(2,4) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (2,4)-(2,7)) - │ │ ├── flags: contains_forwarding - │ │ └── arguments: (length: 1) - │ │ └── @ ForwardingArgumentsNode (location: (2,4)-(2,7)) - │ │ └── flags: ∅ - │ ├── closing_loc: (2,7)-(2,8) = ")" - │ └── block: ∅ - ├── locals: [] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (3,0)-(3,3) = "end" diff --git a/test/prism/snapshots/seattlerb/defn_kwarg_env.txt b/test/prism/snapshots/seattlerb/defn_kwarg_env.txt deleted file mode 100644 index 0df82b5dc2..0000000000 --- a/test/prism/snapshots/seattlerb/defn_kwarg_env.txt +++ /dev/null @@ -1,62 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,45)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,45)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,45)) - ├── flags: newline - ├── name: :test - ├── name_loc: (1,4)-(1,8) = "test" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,9)-(1,18)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: - │ │ @ KeywordRestParameterNode (location: (1,9)-(1,18)) - │ │ ├── flags: ∅ - │ │ ├── name: :testing - │ │ ├── name_loc: (1,11)-(1,18) = "testing" - │ │ └── operator_loc: (1,9)-(1,11) = "**" - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (1,20)-(1,41)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,20)-(1,41)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :test_splat - │ ├── message_loc: (1,20)-(1,30) = "test_splat" - │ ├── opening_loc: (1,30)-(1,31) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,31)-(1,40)) - │ │ ├── flags: contains_keywords, contains_keyword_splat - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (1,31)-(1,40)) - │ │ ├── flags: ∅ - │ │ └── elements: (length: 1) - │ │ └── @ AssocSplatNode (location: (1,31)-(1,40)) - │ │ ├── flags: ∅ - │ │ ├── value: - │ │ │ @ LocalVariableReadNode (location: (1,33)-(1,40)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :testing - │ │ │ └── depth: 0 - │ │ └── operator_loc: (1,31)-(1,33) = "**" - │ ├── closing_loc: (1,40)-(1,41) = ")" - │ └── block: ∅ - ├── locals: [:testing] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,8)-(1,9) = "(" - ├── rparen_loc: (1,18)-(1,19) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,42)-(1,45) = "end" diff --git a/test/prism/snapshots/seattlerb/defn_kwarg_kwarg.txt b/test/prism/snapshots/seattlerb/defn_kwarg_kwarg.txt deleted file mode 100644 index ead1437a86..0000000000 --- a/test/prism/snapshots/seattlerb/defn_kwarg_kwarg.txt +++ /dev/null @@ -1,49 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,24)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,24)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,24)) - ├── flags: newline - ├── name: :f - ├── name_loc: (1,4)-(1,5) = "f" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,19)) - │ ├── flags: ∅ - │ ├── requireds: (length: 1) - │ │ └── @ RequiredParameterNode (location: (1,6)-(1,7)) - │ │ ├── flags: ∅ - │ │ └── name: :a - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 2) - │ │ ├── @ OptionalKeywordParameterNode (location: (1,9)-(1,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (1,9)-(1,11) = "b:" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,12)-(1,13)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ OptionalKeywordParameterNode (location: (1,15)-(1,19)) - │ │ ├── flags: ∅ - │ │ ├── name: :c - │ │ ├── name_loc: (1,15)-(1,17) = "c:" - │ │ └── value: - │ │ @ IntegerNode (location: (1,18)-(1,19)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:a, :b, :c] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,5)-(1,6) = "(" - ├── rparen_loc: (1,19)-(1,20) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,21)-(1,24) = "end" diff --git a/test/prism/snapshots/seattlerb/defn_kwarg_kwsplat.txt b/test/prism/snapshots/seattlerb/defn_kwarg_kwsplat.txt deleted file mode 100644 index 2b22833460..0000000000 --- a/test/prism/snapshots/seattlerb/defn_kwarg_kwsplat.txt +++ /dev/null @@ -1,43 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,20)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,20)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,20)) - ├── flags: newline - ├── name: :a - ├── name_loc: (1,4)-(1,5) = "a" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,15)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 1) - │ │ └── @ OptionalKeywordParameterNode (location: (1,6)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (1,6)-(1,8) = "b:" - │ │ └── value: - │ │ @ IntegerNode (location: (1,9)-(1,10)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── keyword_rest: - │ │ @ KeywordRestParameterNode (location: (1,12)-(1,15)) - │ │ ├── flags: ∅ - │ │ ├── name: :c - │ │ ├── name_loc: (1,14)-(1,15) = "c" - │ │ └── operator_loc: (1,12)-(1,14) = "**" - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:b, :c] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,5)-(1,6) = "(" - ├── rparen_loc: (1,15)-(1,16) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,17)-(1,20) = "end" diff --git a/test/prism/snapshots/seattlerb/defn_kwarg_kwsplat_anon.txt b/test/prism/snapshots/seattlerb/defn_kwarg_kwsplat_anon.txt deleted file mode 100644 index 1e0e1f132e..0000000000 --- a/test/prism/snapshots/seattlerb/defn_kwarg_kwsplat_anon.txt +++ /dev/null @@ -1,43 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,19)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,19)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,19)) - ├── flags: newline - ├── name: :a - ├── name_loc: (1,4)-(1,5) = "a" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,14)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 1) - │ │ └── @ OptionalKeywordParameterNode (location: (1,6)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (1,6)-(1,8) = "b:" - │ │ └── value: - │ │ @ IntegerNode (location: (1,9)-(1,10)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── keyword_rest: - │ │ @ KeywordRestParameterNode (location: (1,12)-(1,14)) - │ │ ├── flags: ∅ - │ │ ├── name: ∅ - │ │ ├── name_loc: ∅ - │ │ └── operator_loc: (1,12)-(1,14) = "**" - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:b] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,5)-(1,6) = "(" - ├── rparen_loc: (1,14)-(1,15) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,16)-(1,19) = "end" diff --git a/test/prism/snapshots/seattlerb/defn_kwarg_lvar.txt b/test/prism/snapshots/seattlerb/defn_kwarg_lvar.txt deleted file mode 100644 index 0835d3987d..0000000000 --- a/test/prism/snapshots/seattlerb/defn_kwarg_lvar.txt +++ /dev/null @@ -1,48 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,26)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,26)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,26)) - ├── flags: newline - ├── name: :fun - ├── name_loc: (1,4)-(1,7) = "fun" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,8)-(1,16)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 1) - │ │ └── @ OptionalKeywordParameterNode (location: (1,8)-(1,16)) - │ │ ├── flags: ∅ - │ │ ├── name: :kw - │ │ ├── name_loc: (1,8)-(1,11) = "kw:" - │ │ └── value: - │ │ @ SymbolNode (location: (1,12)-(1,16)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,12)-(1,13) = ":" - │ │ ├── value_loc: (1,13)-(1,16) = "val" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "val" - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (1,19)-(1,21)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ LocalVariableReadNode (location: (1,19)-(1,21)) - │ ├── flags: newline - │ ├── name: :kw - │ └── depth: 0 - ├── locals: [:kw] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,7)-(1,8) = "(" - ├── rparen_loc: (1,16)-(1,17) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,23)-(1,26) = "end" diff --git a/test/prism/snapshots/seattlerb/defn_kwarg_no_parens.txt b/test/prism/snapshots/seattlerb/defn_kwarg_no_parens.txt deleted file mode 100644 index 3f6af5e0ee..0000000000 --- a/test/prism/snapshots/seattlerb/defn_kwarg_no_parens.txt +++ /dev/null @@ -1,38 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(2,3)) - ├── flags: newline - ├── name: :f - ├── name_loc: (1,4)-(1,5) = "f" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,10)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 1) - │ │ └── @ OptionalKeywordParameterNode (location: (1,6)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ ├── name_loc: (1,6)-(1,8) = "a:" - │ │ └── value: - │ │ @ IntegerNode (location: (1,9)-(1,10)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:a] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (2,0)-(2,3) = "end" diff --git a/test/prism/snapshots/seattlerb/defn_kwarg_val.txt b/test/prism/snapshots/seattlerb/defn_kwarg_val.txt deleted file mode 100644 index 38cb995c09..0000000000 --- a/test/prism/snapshots/seattlerb/defn_kwarg_val.txt +++ /dev/null @@ -1,41 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,17)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,17)) - ├── flags: newline - ├── name: :f - ├── name_loc: (1,4)-(1,5) = "f" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,12)) - │ ├── flags: ∅ - │ ├── requireds: (length: 1) - │ │ └── @ RequiredParameterNode (location: (1,6)-(1,7)) - │ │ ├── flags: ∅ - │ │ └── name: :a - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 1) - │ │ └── @ OptionalKeywordParameterNode (location: (1,9)-(1,12)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (1,9)-(1,11) = "b:" - │ │ └── value: - │ │ @ IntegerNode (location: (1,11)-(1,12)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:a, :b] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,5)-(1,6) = "(" - ├── rparen_loc: (1,12)-(1,13) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,14)-(1,17) = "end" diff --git a/test/prism/snapshots/seattlerb/defn_no_kwargs.txt b/test/prism/snapshots/seattlerb/defn_no_kwargs.txt deleted file mode 100644 index 778b300a4b..0000000000 --- a/test/prism/snapshots/seattlerb/defn_no_kwargs.txt +++ /dev/null @@ -1,34 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,17)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,17)) - ├── flags: newline - ├── name: :x - ├── name_loc: (1,4)-(1,5) = "x" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,11)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: - │ │ @ NoKeywordsParameterNode (location: (1,6)-(1,11)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (1,6)-(1,8) = "**" - │ │ └── keyword_loc: (1,8)-(1,11) = "nil" - │ └── block: ∅ - ├── body: ∅ - ├── locals: [] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,5)-(1,6) = "(" - ├── rparen_loc: (1,11)-(1,12) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,14)-(1,17) = "end" diff --git a/test/prism/snapshots/seattlerb/defn_oneliner.txt b/test/prism/snapshots/seattlerb/defn_oneliner.txt deleted file mode 100644 index 81ca22f010..0000000000 --- a/test/prism/snapshots/seattlerb/defn_oneliner.txt +++ /dev/null @@ -1,53 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,27)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,27)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,27)) - ├── flags: newline - ├── name: :exec - ├── name_loc: (1,4)-(1,8) = "exec" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,9)-(1,12)) - │ ├── flags: ∅ - │ ├── requireds: (length: 1) - │ │ └── @ RequiredParameterNode (location: (1,9)-(1,12)) - │ │ ├── flags: ∅ - │ │ └── name: :cmd - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (1,16)-(1,27)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,16)-(1,27)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :system - │ ├── message_loc: (1,16)-(1,22) = "system" - │ ├── opening_loc: (1,22)-(1,23) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,23)-(1,26)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (1,23)-(1,26)) - │ │ ├── flags: ∅ - │ │ ├── name: :cmd - │ │ └── depth: 0 - │ ├── closing_loc: (1,26)-(1,27) = ")" - │ └── block: ∅ - ├── locals: [:cmd] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,8)-(1,9) = "(" - ├── rparen_loc: (1,12)-(1,13) = ")" - ├── equal_loc: (1,14)-(1,15) = "=" - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/seattlerb/defn_oneliner_eq2.txt b/test/prism/snapshots/seattlerb/defn_oneliner_eq2.txt deleted file mode 100644 index 414ecff4ed..0000000000 --- a/test/prism/snapshots/seattlerb/defn_oneliner_eq2.txt +++ /dev/null @@ -1,55 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ClassNode (location: (1,0)-(3,3)) - ├── flags: newline - ├── locals: [] - ├── class_keyword_loc: (1,0)-(1,5) = "class" - ├── constant_path: - │ @ ConstantReadNode (location: (1,6)-(1,7)) - │ ├── flags: ∅ - │ └── name: :X - ├── inheritance_operator_loc: ∅ - ├── superclass: ∅ - ├── body: - │ @ StatementsNode (location: (2,2)-(2,16)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ DefNode (location: (2,2)-(2,16)) - │ ├── flags: newline - │ ├── name: :== - │ ├── name_loc: (2,6)-(2,8) = "==" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (2,9)-(2,10)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (2,9)-(2,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :o - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (2,14)-(2,16)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (2,14)-(2,16)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 42 - │ ├── locals: [:o] - │ ├── def_keyword_loc: (2,2)-(2,5) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (2,8)-(2,9) = "(" - │ ├── rparen_loc: (2,10)-(2,11) = ")" - │ ├── equal_loc: (2,12)-(2,13) = "=" - │ └── end_keyword_loc: ∅ - ├── end_keyword_loc: (3,0)-(3,3) = "end" - └── name: :X diff --git a/test/prism/snapshots/seattlerb/defn_oneliner_noargs.txt b/test/prism/snapshots/seattlerb/defn_oneliner_noargs.txt deleted file mode 100644 index 5928f64179..0000000000 --- a/test/prism/snapshots/seattlerb/defn_oneliner_noargs.txt +++ /dev/null @@ -1,34 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,17)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,17)) - ├── flags: newline - ├── name: :exec - ├── name_loc: (1,4)-(1,8) = "exec" - ├── receiver: ∅ - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (1,11)-(1,17)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,11)-(1,17)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :system - │ ├── message_loc: (1,11)-(1,17) = "system" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── locals: [] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: (1,9)-(1,10) = "=" - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/seattlerb/defn_oneliner_noargs_parentheses.txt b/test/prism/snapshots/seattlerb/defn_oneliner_noargs_parentheses.txt deleted file mode 100644 index d0cd777039..0000000000 --- a/test/prism/snapshots/seattlerb/defn_oneliner_noargs_parentheses.txt +++ /dev/null @@ -1,34 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,19)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,19)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,19)) - ├── flags: newline - ├── name: :exec - ├── name_loc: (1,4)-(1,8) = "exec" - ├── receiver: ∅ - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (1,13)-(1,19)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,13)-(1,19)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :system - │ ├── message_loc: (1,13)-(1,19) = "system" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── locals: [] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,8)-(1,9) = "(" - ├── rparen_loc: (1,9)-(1,10) = ")" - ├── equal_loc: (1,11)-(1,12) = "=" - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/seattlerb/defn_oneliner_rescue.txt b/test/prism/snapshots/seattlerb/defn_oneliner_rescue.txt deleted file mode 100644 index d6cfba773d..0000000000 --- a/test/prism/snapshots/seattlerb/defn_oneliner_rescue.txt +++ /dev/null @@ -1,180 +0,0 @@ -@ ProgramNode (location: (1,0)-(13,38)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(13,38)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ DefNode (location: (1,0)-(5,3)) - │ ├── flags: newline - │ ├── name: :exec - │ ├── name_loc: (1,4)-(1,8) = "exec" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,9)-(1,12)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,9)-(1,12)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :cmd - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ BeginNode (location: (1,0)-(5,3)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (2,2)-(2,13)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (2,2)-(2,13)) - │ │ │ ├── flags: newline, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :system - │ │ │ ├── message_loc: (2,2)-(2,8) = "system" - │ │ │ ├── opening_loc: (2,8)-(2,9) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (2,9)-(2,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ LocalVariableReadNode (location: (2,9)-(2,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :cmd - │ │ │ │ └── depth: 0 - │ │ │ ├── closing_loc: (2,12)-(2,13) = ")" - │ │ │ └── block: ∅ - │ │ ├── rescue_clause: - │ │ │ @ RescueNode (location: (3,0)-(4,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (3,0)-(3,6) = "rescue" - │ │ │ ├── exceptions: (length: 0) - │ │ │ ├── operator_loc: ∅ - │ │ │ ├── reference: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (4,2)-(4,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ NilNode (location: (4,2)-(4,5)) - │ │ │ │ └── flags: newline, static_literal - │ │ │ └── subsequent: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: ∅ - │ │ └── end_keyword_loc: (5,0)-(5,3) = "end" - │ ├── locals: [:cmd] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (1,8)-(1,9) = "(" - │ ├── rparen_loc: (1,12)-(1,13) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (5,0)-(5,3) = "end" - ├── @ DefNode (location: (8,0)-(10,3)) - │ ├── flags: newline - │ ├── name: :exec - │ ├── name_loc: (8,4)-(8,8) = "exec" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (8,9)-(8,12)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (8,9)-(8,12)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :cmd - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (9,2)-(9,24)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ RescueModifierNode (location: (9,2)-(9,24)) - │ │ ├── flags: newline - │ │ ├── expression: - │ │ │ @ CallNode (location: (9,2)-(9,13)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :system - │ │ │ ├── message_loc: (9,2)-(9,8) = "system" - │ │ │ ├── opening_loc: (9,8)-(9,9) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (9,9)-(9,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ LocalVariableReadNode (location: (9,9)-(9,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :cmd - │ │ │ │ └── depth: 0 - │ │ │ ├── closing_loc: (9,12)-(9,13) = ")" - │ │ │ └── block: ∅ - │ │ ├── keyword_loc: (9,14)-(9,20) = "rescue" - │ │ └── rescue_expression: - │ │ @ NilNode (location: (9,21)-(9,24)) - │ │ └── flags: static_literal - │ ├── locals: [:cmd] - │ ├── def_keyword_loc: (8,0)-(8,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (8,8)-(8,9) = "(" - │ ├── rparen_loc: (8,12)-(8,13) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (10,0)-(10,3) = "end" - └── @ DefNode (location: (13,0)-(13,38)) - ├── flags: newline - ├── name: :exec - ├── name_loc: (13,4)-(13,8) = "exec" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (13,9)-(13,12)) - │ ├── flags: ∅ - │ ├── requireds: (length: 1) - │ │ └── @ RequiredParameterNode (location: (13,9)-(13,12)) - │ │ ├── flags: ∅ - │ │ └── name: :cmd - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (13,16)-(13,38)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ RescueModifierNode (location: (13,16)-(13,38)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (13,16)-(13,27)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :system - │ │ ├── message_loc: (13,16)-(13,22) = "system" - │ │ ├── opening_loc: (13,22)-(13,23) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (13,23)-(13,26)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ LocalVariableReadNode (location: (13,23)-(13,26)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :cmd - │ │ │ └── depth: 0 - │ │ ├── closing_loc: (13,26)-(13,27) = ")" - │ │ └── block: ∅ - │ ├── keyword_loc: (13,28)-(13,34) = "rescue" - │ └── rescue_expression: - │ @ NilNode (location: (13,35)-(13,38)) - │ └── flags: static_literal - ├── locals: [:cmd] - ├── def_keyword_loc: (13,0)-(13,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (13,8)-(13,9) = "(" - ├── rparen_loc: (13,12)-(13,13) = ")" - ├── equal_loc: (13,14)-(13,15) = "=" - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/seattlerb/defn_opt_last_arg.txt b/test/prism/snapshots/seattlerb/defn_opt_last_arg.txt deleted file mode 100644 index f7c37e3d45..0000000000 --- a/test/prism/snapshots/seattlerb/defn_opt_last_arg.txt +++ /dev/null @@ -1,38 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(2,3)) - ├── flags: newline - ├── name: :m - ├── name_loc: (1,4)-(1,5) = "m" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,17)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 1) - │ │ └── @ OptionalParameterNode (location: (1,6)-(1,17)) - │ │ ├── flags: ∅ - │ │ ├── name: :arg - │ │ ├── name_loc: (1,6)-(1,9) = "arg" - │ │ ├── operator_loc: (1,10)-(1,11) = "=" - │ │ └── value: - │ │ @ FalseNode (location: (1,12)-(1,17)) - │ │ └── flags: static_literal - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:arg] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (2,0)-(2,3) = "end" diff --git a/test/prism/snapshots/seattlerb/defn_opt_reg.txt b/test/prism/snapshots/seattlerb/defn_opt_reg.txt deleted file mode 100644 index 9bdd143905..0000000000 --- a/test/prism/snapshots/seattlerb/defn_opt_reg.txt +++ /dev/null @@ -1,41 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,19)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,19)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,19)) - ├── flags: newline - ├── name: :f - ├── name_loc: (1,4)-(1,5) = "f" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,14)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 1) - │ │ └── @ OptionalParameterNode (location: (1,6)-(1,11)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ ├── name_loc: (1,6)-(1,7) = "a" - │ │ ├── operator_loc: (1,7)-(1,8) = "=" - │ │ └── value: - │ │ @ NilNode (location: (1,8)-(1,11)) - │ │ └── flags: static_literal - │ ├── rest: ∅ - │ ├── posts: (length: 1) - │ │ └── @ RequiredParameterNode (location: (1,13)-(1,14)) - │ │ ├── flags: ∅ - │ │ └── name: :b - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:a, :b] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,5)-(1,6) = "(" - ├── rparen_loc: (1,14)-(1,15) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,16)-(1,19) = "end" diff --git a/test/prism/snapshots/seattlerb/defn_opt_splat_arg.txt b/test/prism/snapshots/seattlerb/defn_opt_splat_arg.txt deleted file mode 100644 index d90fddc653..0000000000 --- a/test/prism/snapshots/seattlerb/defn_opt_splat_arg.txt +++ /dev/null @@ -1,47 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,24)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,24)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,24)) - ├── flags: newline - ├── name: :f - ├── name_loc: (1,4)-(1,5) = "f" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,7)-(1,19)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 1) - │ │ └── @ OptionalParameterNode (location: (1,7)-(1,12)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ ├── name_loc: (1,7)-(1,8) = "a" - │ │ ├── operator_loc: (1,9)-(1,10) = "=" - │ │ └── value: - │ │ @ IntegerNode (location: (1,11)-(1,12)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── rest: - │ │ @ RestParameterNode (location: (1,14)-(1,16)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (1,15)-(1,16) = "b" - │ │ └── operator_loc: (1,14)-(1,15) = "*" - │ ├── posts: (length: 1) - │ │ └── @ RequiredParameterNode (location: (1,18)-(1,19)) - │ │ ├── flags: ∅ - │ │ └── name: :c - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:a, :b, :c] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,6)-(1,7) = "(" - ├── rparen_loc: (1,19)-(1,20) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,21)-(1,24) = "end" diff --git a/test/prism/snapshots/seattlerb/defn_powarg.txt b/test/prism/snapshots/seattlerb/defn_powarg.txt deleted file mode 100644 index 8d4ff4283a..0000000000 --- a/test/prism/snapshots/seattlerb/defn_powarg.txt +++ /dev/null @@ -1,35 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,17)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,17)) - ├── flags: newline - ├── name: :f - ├── name_loc: (1,4)-(1,5) = "f" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,12)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: - │ │ @ KeywordRestParameterNode (location: (1,6)-(1,12)) - │ │ ├── flags: ∅ - │ │ ├── name: :opts - │ │ ├── name_loc: (1,8)-(1,12) = "opts" - │ │ └── operator_loc: (1,6)-(1,8) = "**" - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:opts] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,5)-(1,6) = "(" - ├── rparen_loc: (1,12)-(1,13) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,14)-(1,17) = "end" diff --git a/test/prism/snapshots/seattlerb/defn_reg_opt_reg.txt b/test/prism/snapshots/seattlerb/defn_reg_opt_reg.txt deleted file mode 100644 index 0cd1435e8f..0000000000 --- a/test/prism/snapshots/seattlerb/defn_reg_opt_reg.txt +++ /dev/null @@ -1,48 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,23)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,23)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,23)) - ├── flags: newline - ├── name: :f - ├── name_loc: (1,4)-(1,5) = "f" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,18)) - │ ├── flags: ∅ - │ ├── requireds: (length: 1) - │ │ └── @ RequiredParameterNode (location: (1,6)-(1,7)) - │ │ ├── flags: ∅ - │ │ └── name: :a - │ ├── optionals: (length: 1) - │ │ └── @ OptionalParameterNode (location: (1,9)-(1,15)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (1,9)-(1,10) = "b" - │ │ ├── operator_loc: (1,11)-(1,12) = "=" - │ │ └── value: - │ │ @ SymbolNode (location: (1,13)-(1,15)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,13)-(1,14) = ":" - │ │ ├── value_loc: (1,14)-(1,15) = "c" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "c" - │ ├── rest: ∅ - │ ├── posts: (length: 1) - │ │ └── @ RequiredParameterNode (location: (1,17)-(1,18)) - │ │ ├── flags: ∅ - │ │ └── name: :d - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:a, :b, :d] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,5)-(1,6) = "(" - ├── rparen_loc: (1,18)-(1,19) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,20)-(1,23) = "end" diff --git a/test/prism/snapshots/seattlerb/defn_splat_arg.txt b/test/prism/snapshots/seattlerb/defn_splat_arg.txt deleted file mode 100644 index c137e263c4..0000000000 --- a/test/prism/snapshots/seattlerb/defn_splat_arg.txt +++ /dev/null @@ -1,38 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,15)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,15)) - ├── flags: newline - ├── name: :f - ├── name_loc: (1,4)-(1,5) = "f" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,10)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: - │ │ @ RestParameterNode (location: (1,6)-(1,7)) - │ │ ├── flags: ∅ - │ │ ├── name: ∅ - │ │ ├── name_loc: ∅ - │ │ └── operator_loc: (1,6)-(1,7) = "*" - │ ├── posts: (length: 1) - │ │ └── @ RequiredParameterNode (location: (1,9)-(1,10)) - │ │ ├── flags: ∅ - │ │ └── name: :a - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:a] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,5)-(1,6) = "(" - ├── rparen_loc: (1,10)-(1,11) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,12)-(1,15) = "end" diff --git a/test/prism/snapshots/seattlerb/defn_unary_not.txt b/test/prism/snapshots/seattlerb/defn_unary_not.txt deleted file mode 100644 index 0722d3cdca..0000000000 --- a/test/prism/snapshots/seattlerb/defn_unary_not.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,17)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,17)) - ├── flags: newline - ├── name: :! - ├── name_loc: (1,4)-(1,6) = "!@" - ├── receiver: ∅ - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (1,8)-(1,12)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ TrueNode (location: (1,8)-(1,12)) - │ └── flags: newline, static_literal - ├── locals: [] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (1,14)-(1,17) = "end" diff --git a/test/prism/snapshots/seattlerb/defns_reserved.txt b/test/prism/snapshots/seattlerb/defns_reserved.txt deleted file mode 100644 index 10361184ac..0000000000 --- a/test/prism/snapshots/seattlerb/defns_reserved.txt +++ /dev/null @@ -1,23 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,20)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,20)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,20)) - ├── flags: newline - ├── name: :return - ├── name_loc: (1,9)-(1,15) = "return" - ├── receiver: - │ @ SelfNode (location: (1,4)-(1,8)) - │ └── flags: ∅ - ├── parameters: ∅ - ├── body: ∅ - ├── locals: [] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: (1,8)-(1,9) = "." - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (1,17)-(1,20) = "end" diff --git a/test/prism/snapshots/seattlerb/defs_as_arg_with_do_block_inside.txt b/test/prism/snapshots/seattlerb/defs_as_arg_with_do_block_inside.txt deleted file mode 100644 index f9479eb11b..0000000000 --- a/test/prism/snapshots/seattlerb/defs_as_arg_with_do_block_inside.txt +++ /dev/null @@ -1,66 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,30)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,30)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,30)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :p - ├── message_loc: (1,0)-(1,1) = "p" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,30)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ DefNode (location: (1,2)-(1,30)) - │ ├── flags: ∅ - │ ├── name: :b - │ ├── name_loc: (1,11)-(1,12) = "b" - │ ├── receiver: - │ │ @ SelfNode (location: (1,6)-(1,10)) - │ │ └── flags: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,14)-(1,25)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,14)-(1,25)) - │ │ ├── flags: newline - │ │ ├── receiver: - │ │ │ @ CallNode (location: (1,14)-(1,15)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :x - │ │ │ ├── message_loc: (1,14)-(1,15) = "x" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (1,15)-(1,16) = "." - │ │ ├── name: :y - │ │ ├── message_loc: (1,16)-(1,17) = "y" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (1,18)-(1,25)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (1,18)-(1,20) = "do" - │ │ └── closing_loc: (1,22)-(1,25) = "end" - │ ├── locals: [] - │ ├── def_keyword_loc: (1,2)-(1,5) = "def" - │ ├── operator_loc: (1,10)-(1,11) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (1,27)-(1,30) = "end" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/defs_comments.txt b/test/prism/snapshots/seattlerb/defs_comments.txt deleted file mode 100644 index 7f94497978..0000000000 --- a/test/prism/snapshots/seattlerb/defs_comments.txt +++ /dev/null @@ -1,23 +0,0 @@ -@ ProgramNode (location: (4,0)-(5,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (4,0)-(5,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (4,0)-(5,3)) - ├── flags: newline - ├── name: :blah - ├── name_loc: (4,9)-(4,13) = "blah" - ├── receiver: - │ @ SelfNode (location: (4,4)-(4,8)) - │ └── flags: ∅ - ├── parameters: ∅ - ├── body: ∅ - ├── locals: [] - ├── def_keyword_loc: (4,0)-(4,3) = "def" - ├── operator_loc: (4,8)-(4,9) = "." - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (5,0)-(5,3) = "end" diff --git a/test/prism/snapshots/seattlerb/defs_endless_command.txt b/test/prism/snapshots/seattlerb/defs_endless_command.txt deleted file mode 100644 index f34d667901..0000000000 --- a/test/prism/snapshots/seattlerb/defs_endless_command.txt +++ /dev/null @@ -1,50 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,35)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,35)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,35)) - ├── flags: newline - ├── name: :some_method - ├── name_loc: (1,6)-(1,17) = "some_method" - ├── receiver: - │ @ CallNode (location: (1,4)-(1,5)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :x - │ ├── message_loc: (1,4)-(1,5) = "x" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (1,20)-(1,35)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,20)-(1,35)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :other_method - │ ├── message_loc: (1,20)-(1,32) = "other_method" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,33)-(1,35)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (1,33)-(1,35)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 42 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── locals: [] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: (1,5)-(1,6) = "." - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: (1,18)-(1,19) = "=" - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/seattlerb/defs_endless_command_rescue.txt b/test/prism/snapshots/seattlerb/defs_endless_command_rescue.txt deleted file mode 100644 index fe85936940..0000000000 --- a/test/prism/snapshots/seattlerb/defs_endless_command_rescue.txt +++ /dev/null @@ -1,58 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,45)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,45)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,45)) - ├── flags: newline - ├── name: :some_method - ├── name_loc: (1,6)-(1,17) = "some_method" - ├── receiver: - │ @ CallNode (location: (1,4)-(1,5)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :x - │ ├── message_loc: (1,4)-(1,5) = "x" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (1,20)-(1,45)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ RescueModifierNode (location: (1,20)-(1,45)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (1,20)-(1,35)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :other_method - │ │ ├── message_loc: (1,20)-(1,32) = "other_method" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (1,33)-(1,35)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (1,33)-(1,35)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 42 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── keyword_loc: (1,36)-(1,42) = "rescue" - │ └── rescue_expression: - │ @ IntegerNode (location: (1,43)-(1,45)) - │ ├── flags: static_literal, decimal - │ └── value: 24 - ├── locals: [] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: (1,5)-(1,6) = "." - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: (1,18)-(1,19) = "=" - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/seattlerb/defs_kwarg.txt b/test/prism/snapshots/seattlerb/defs_kwarg.txt deleted file mode 100644 index 86a2d562e3..0000000000 --- a/test/prism/snapshots/seattlerb/defs_kwarg.txt +++ /dev/null @@ -1,40 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(2,3)) - ├── flags: newline - ├── name: :a - ├── name_loc: (1,9)-(1,10) = "a" - ├── receiver: - │ @ SelfNode (location: (1,4)-(1,8)) - │ └── flags: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,11)-(1,15)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 1) - │ │ └── @ OptionalKeywordParameterNode (location: (1,11)-(1,15)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (1,11)-(1,13) = "b:" - │ │ └── value: - │ │ @ IntegerNode (location: (1,14)-(1,15)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:b] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: (1,8)-(1,9) = "." - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (2,0)-(2,3) = "end" diff --git a/test/prism/snapshots/seattlerb/defs_oneliner.txt b/test/prism/snapshots/seattlerb/defs_oneliner.txt deleted file mode 100644 index c99b810844..0000000000 --- a/test/prism/snapshots/seattlerb/defs_oneliner.txt +++ /dev/null @@ -1,55 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,32)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,32)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,32)) - ├── flags: newline - ├── name: :exec - ├── name_loc: (1,9)-(1,13) = "exec" - ├── receiver: - │ @ SelfNode (location: (1,4)-(1,8)) - │ └── flags: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,14)-(1,17)) - │ ├── flags: ∅ - │ ├── requireds: (length: 1) - │ │ └── @ RequiredParameterNode (location: (1,14)-(1,17)) - │ │ ├── flags: ∅ - │ │ └── name: :cmd - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (1,21)-(1,32)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,21)-(1,32)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :system - │ ├── message_loc: (1,21)-(1,27) = "system" - │ ├── opening_loc: (1,27)-(1,28) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,28)-(1,31)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (1,28)-(1,31)) - │ │ ├── flags: ∅ - │ │ ├── name: :cmd - │ │ └── depth: 0 - │ ├── closing_loc: (1,31)-(1,32) = ")" - │ └── block: ∅ - ├── locals: [:cmd] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: (1,8)-(1,9) = "." - ├── lparen_loc: (1,13)-(1,14) = "(" - ├── rparen_loc: (1,17)-(1,18) = ")" - ├── equal_loc: (1,19)-(1,20) = "=" - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/seattlerb/defs_oneliner_eq2.txt b/test/prism/snapshots/seattlerb/defs_oneliner_eq2.txt deleted file mode 100644 index 328ba5d78b..0000000000 --- a/test/prism/snapshots/seattlerb/defs_oneliner_eq2.txt +++ /dev/null @@ -1,57 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ClassNode (location: (1,0)-(3,3)) - ├── flags: newline - ├── locals: [] - ├── class_keyword_loc: (1,0)-(1,5) = "class" - ├── constant_path: - │ @ ConstantReadNode (location: (1,6)-(1,7)) - │ ├── flags: ∅ - │ └── name: :X - ├── inheritance_operator_loc: ∅ - ├── superclass: ∅ - ├── body: - │ @ StatementsNode (location: (2,2)-(2,21)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ DefNode (location: (2,2)-(2,21)) - │ ├── flags: newline - │ ├── name: :== - │ ├── name_loc: (2,11)-(2,13) = "==" - │ ├── receiver: - │ │ @ SelfNode (location: (2,6)-(2,10)) - │ │ └── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (2,14)-(2,15)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (2,14)-(2,15)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :o - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (2,19)-(2,21)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (2,19)-(2,21)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 42 - │ ├── locals: [:o] - │ ├── def_keyword_loc: (2,2)-(2,5) = "def" - │ ├── operator_loc: (2,10)-(2,11) = "." - │ ├── lparen_loc: (2,13)-(2,14) = "(" - │ ├── rparen_loc: (2,15)-(2,16) = ")" - │ ├── equal_loc: (2,17)-(2,18) = "=" - │ └── end_keyword_loc: ∅ - ├── end_keyword_loc: (3,0)-(3,3) = "end" - └── name: :X diff --git a/test/prism/snapshots/seattlerb/defs_oneliner_rescue.txt b/test/prism/snapshots/seattlerb/defs_oneliner_rescue.txt deleted file mode 100644 index 985744d45e..0000000000 --- a/test/prism/snapshots/seattlerb/defs_oneliner_rescue.txt +++ /dev/null @@ -1,186 +0,0 @@ -@ ProgramNode (location: (1,0)-(13,43)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(13,43)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ DefNode (location: (1,0)-(5,3)) - │ ├── flags: newline - │ ├── name: :exec - │ ├── name_loc: (1,9)-(1,13) = "exec" - │ ├── receiver: - │ │ @ SelfNode (location: (1,4)-(1,8)) - │ │ └── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,14)-(1,17)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,14)-(1,17)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :cmd - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ BeginNode (location: (1,0)-(5,3)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (2,2)-(2,13)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (2,2)-(2,13)) - │ │ │ ├── flags: newline, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :system - │ │ │ ├── message_loc: (2,2)-(2,8) = "system" - │ │ │ ├── opening_loc: (2,8)-(2,9) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (2,9)-(2,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ LocalVariableReadNode (location: (2,9)-(2,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :cmd - │ │ │ │ └── depth: 0 - │ │ │ ├── closing_loc: (2,12)-(2,13) = ")" - │ │ │ └── block: ∅ - │ │ ├── rescue_clause: - │ │ │ @ RescueNode (location: (3,0)-(4,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (3,0)-(3,6) = "rescue" - │ │ │ ├── exceptions: (length: 0) - │ │ │ ├── operator_loc: ∅ - │ │ │ ├── reference: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (4,2)-(4,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ NilNode (location: (4,2)-(4,5)) - │ │ │ │ └── flags: newline, static_literal - │ │ │ └── subsequent: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: ∅ - │ │ └── end_keyword_loc: (5,0)-(5,3) = "end" - │ ├── locals: [:cmd] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: (1,8)-(1,9) = "." - │ ├── lparen_loc: (1,13)-(1,14) = "(" - │ ├── rparen_loc: (1,17)-(1,18) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (5,0)-(5,3) = "end" - ├── @ DefNode (location: (8,0)-(10,3)) - │ ├── flags: newline - │ ├── name: :exec - │ ├── name_loc: (8,9)-(8,13) = "exec" - │ ├── receiver: - │ │ @ SelfNode (location: (8,4)-(8,8)) - │ │ └── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (8,14)-(8,17)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (8,14)-(8,17)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :cmd - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (9,2)-(9,24)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ RescueModifierNode (location: (9,2)-(9,24)) - │ │ ├── flags: newline - │ │ ├── expression: - │ │ │ @ CallNode (location: (9,2)-(9,13)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :system - │ │ │ ├── message_loc: (9,2)-(9,8) = "system" - │ │ │ ├── opening_loc: (9,8)-(9,9) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (9,9)-(9,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ LocalVariableReadNode (location: (9,9)-(9,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :cmd - │ │ │ │ └── depth: 0 - │ │ │ ├── closing_loc: (9,12)-(9,13) = ")" - │ │ │ └── block: ∅ - │ │ ├── keyword_loc: (9,14)-(9,20) = "rescue" - │ │ └── rescue_expression: - │ │ @ NilNode (location: (9,21)-(9,24)) - │ │ └── flags: static_literal - │ ├── locals: [:cmd] - │ ├── def_keyword_loc: (8,0)-(8,3) = "def" - │ ├── operator_loc: (8,8)-(8,9) = "." - │ ├── lparen_loc: (8,13)-(8,14) = "(" - │ ├── rparen_loc: (8,17)-(8,18) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (10,0)-(10,3) = "end" - └── @ DefNode (location: (13,0)-(13,43)) - ├── flags: newline - ├── name: :exec - ├── name_loc: (13,9)-(13,13) = "exec" - ├── receiver: - │ @ SelfNode (location: (13,4)-(13,8)) - │ └── flags: ∅ - ├── parameters: - │ @ ParametersNode (location: (13,14)-(13,17)) - │ ├── flags: ∅ - │ ├── requireds: (length: 1) - │ │ └── @ RequiredParameterNode (location: (13,14)-(13,17)) - │ │ ├── flags: ∅ - │ │ └── name: :cmd - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (13,21)-(13,43)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ RescueModifierNode (location: (13,21)-(13,43)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (13,21)-(13,32)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :system - │ │ ├── message_loc: (13,21)-(13,27) = "system" - │ │ ├── opening_loc: (13,27)-(13,28) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (13,28)-(13,31)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ LocalVariableReadNode (location: (13,28)-(13,31)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :cmd - │ │ │ └── depth: 0 - │ │ ├── closing_loc: (13,31)-(13,32) = ")" - │ │ └── block: ∅ - │ ├── keyword_loc: (13,33)-(13,39) = "rescue" - │ └── rescue_expression: - │ @ NilNode (location: (13,40)-(13,43)) - │ └── flags: static_literal - ├── locals: [:cmd] - ├── def_keyword_loc: (13,0)-(13,3) = "def" - ├── operator_loc: (13,8)-(13,9) = "." - ├── lparen_loc: (13,13)-(13,14) = "(" - ├── rparen_loc: (13,17)-(13,18) = ")" - ├── equal_loc: (13,19)-(13,20) = "=" - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/seattlerb/difficult0_.txt b/test/prism/snapshots/seattlerb/difficult0_.txt deleted file mode 100644 index 233440b101..0000000000 --- a/test/prism/snapshots/seattlerb/difficult0_.txt +++ /dev/null @@ -1,75 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(4,8)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :p - ├── message_loc: (1,0)-(1,1) = "p" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(4,8)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (1,2)-(4,8)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ CallNode (location: (1,2)-(4,4)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ StringNode (location: (1,2)-(1,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (1,2)-(1,8) = "<<-END" - │ │ │ ├── content_loc: (2,0)-(3,0) = " a\n" - │ │ │ ├── closing_loc: (3,0)-(4,0) = " END\n" - │ │ │ └── unescaped: " a\n" - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :+ - │ │ ├── message_loc: (1,8)-(1,9) = "+" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (1,9)-(4,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ InterpolatedStringNode (location: (1,9)-(4,4)) - │ │ │ ├── flags: static_literal - │ │ │ ├── opening_loc: (1,9)-(1,10) = "'" - │ │ │ ├── parts: (length: 2) - │ │ │ │ ├── @ StringNode (location: (1,10)-(2,0)) - │ │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── content_loc: (1,10)-(2,0) = "b\n" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "b\n" - │ │ │ │ └── @ StringNode (location: (4,0)-(4,3)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (4,0)-(4,3) = " c" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: " c" - │ │ │ └── closing_loc: (4,3)-(4,4) = "'" - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (4,4)-(4,5) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (4,5)-(4,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (4,5)-(4,8)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (4,5)-(4,6) = "'" - │ │ ├── content_loc: (4,6)-(4,7) = "d" - │ │ ├── closing_loc: (4,7)-(4,8) = "'" - │ │ └── unescaped: "d" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/difficult1_line_numbers.txt b/test/prism/snapshots/seattlerb/difficult1_line_numbers.txt deleted file mode 100644 index c34579e6ac..0000000000 --- a/test/prism/snapshots/seattlerb/difficult1_line_numbers.txt +++ /dev/null @@ -1,272 +0,0 @@ -@ ProgramNode (location: (1,0)-(12,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(12,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IfNode (location: (1,0)-(12,3)) - ├── flags: newline - ├── if_keyword_loc: (1,0)-(1,2) = "if" - ├── predicate: - │ @ TrueNode (location: (1,3)-(1,7)) - │ └── flags: static_literal - ├── then_keyword_loc: ∅ - ├── statements: - │ @ StatementsNode (location: (2,2)-(11,11)) - │ ├── flags: ∅ - │ └── body: (length: 10) - │ ├── @ CallNode (location: (2,2)-(2,5)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :p - │ │ ├── message_loc: (2,2)-(2,3) = "p" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (2,4)-(2,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (2,4)-(2,5)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── @ CallNode (location: (3,2)-(3,7)) - │ │ ├── flags: newline - │ │ ├── receiver: - │ │ │ @ CallNode (location: (3,2)-(3,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (3,2)-(3,3) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (3,3)-(3,4) = "." - │ │ ├── name: :b - │ │ ├── message_loc: (3,4)-(3,5) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (3,6)-(3,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (3,6)-(3,7)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── @ CallNode (location: (4,2)-(4,10)) - │ │ ├── flags: newline - │ │ ├── receiver: - │ │ │ @ CallNode (location: (4,2)-(4,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :c - │ │ │ ├── message_loc: (4,2)-(4,3) = "c" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (4,3)-(4,4) = "." - │ │ ├── name: :d - │ │ ├── message_loc: (4,4)-(4,5) = "d" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (4,6)-(4,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 2) - │ │ │ ├── @ IntegerNode (location: (4,6)-(4,7)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 3 - │ │ │ └── @ IntegerNode (location: (4,9)-(4,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 4 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── @ CallNode (location: (5,2)-(5,7)) - │ │ ├── flags: newline - │ │ ├── receiver: - │ │ │ @ CallNode (location: (5,2)-(5,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :e - │ │ │ ├── message_loc: (5,2)-(5,3) = "e" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (5,3)-(5,4) = "." - │ │ ├── name: :f - │ │ ├── message_loc: (5,4)-(5,5) = "f" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (5,6)-(5,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (5,6)-(5,7)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 5 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── @ CallNode (location: (6,2)-(6,10)) - │ │ ├── flags: newline - │ │ ├── receiver: - │ │ │ @ CallNode (location: (6,2)-(6,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :g - │ │ │ ├── message_loc: (6,2)-(6,3) = "g" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (6,3)-(6,4) = "." - │ │ ├── name: :h - │ │ ├── message_loc: (6,4)-(6,5) = "h" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (6,6)-(6,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 2) - │ │ │ ├── @ IntegerNode (location: (6,6)-(6,7)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 6 - │ │ │ └── @ IntegerNode (location: (6,9)-(6,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 7 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── @ CallNode (location: (7,2)-(7,6)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :p - │ │ ├── message_loc: (7,2)-(7,3) = "p" - │ │ ├── opening_loc: (7,3)-(7,4) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (7,4)-(7,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (7,4)-(7,5)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: (7,5)-(7,6) = ")" - │ │ └── block: ∅ - │ ├── @ CallNode (location: (8,2)-(8,8)) - │ │ ├── flags: newline - │ │ ├── receiver: - │ │ │ @ CallNode (location: (8,2)-(8,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (8,2)-(8,3) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (8,3)-(8,4) = "." - │ │ ├── name: :b - │ │ ├── message_loc: (8,4)-(8,5) = "b" - │ │ ├── opening_loc: (8,5)-(8,6) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (8,6)-(8,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (8,6)-(8,7)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── closing_loc: (8,7)-(8,8) = ")" - │ │ └── block: ∅ - │ ├── @ CallNode (location: (9,2)-(9,11)) - │ │ ├── flags: newline - │ │ ├── receiver: - │ │ │ @ CallNode (location: (9,2)-(9,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :c - │ │ │ ├── message_loc: (9,2)-(9,3) = "c" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (9,3)-(9,4) = "." - │ │ ├── name: :d - │ │ ├── message_loc: (9,4)-(9,5) = "d" - │ │ ├── opening_loc: (9,5)-(9,6) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (9,6)-(9,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 2) - │ │ │ ├── @ IntegerNode (location: (9,6)-(9,7)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 3 - │ │ │ └── @ IntegerNode (location: (9,9)-(9,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 4 - │ │ ├── closing_loc: (9,10)-(9,11) = ")" - │ │ └── block: ∅ - │ ├── @ CallNode (location: (10,2)-(10,8)) - │ │ ├── flags: newline - │ │ ├── receiver: - │ │ │ @ CallNode (location: (10,2)-(10,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :e - │ │ │ ├── message_loc: (10,2)-(10,3) = "e" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (10,3)-(10,4) = "." - │ │ ├── name: :f - │ │ ├── message_loc: (10,4)-(10,5) = "f" - │ │ ├── opening_loc: (10,5)-(10,6) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (10,6)-(10,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (10,6)-(10,7)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 5 - │ │ ├── closing_loc: (10,7)-(10,8) = ")" - │ │ └── block: ∅ - │ └── @ CallNode (location: (11,2)-(11,11)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (11,2)-(11,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :g - │ │ ├── message_loc: (11,2)-(11,3) = "g" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (11,3)-(11,4) = "." - │ ├── name: :h - │ ├── message_loc: (11,4)-(11,5) = "h" - │ ├── opening_loc: (11,5)-(11,6) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (11,6)-(11,10)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ IntegerNode (location: (11,6)-(11,7)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 6 - │ │ └── @ IntegerNode (location: (11,9)-(11,10)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 7 - │ ├── closing_loc: (11,10)-(11,11) = ")" - │ └── block: ∅ - ├── subsequent: ∅ - └── end_keyword_loc: (12,0)-(12,3) = "end" diff --git a/test/prism/snapshots/seattlerb/difficult1_line_numbers2.txt b/test/prism/snapshots/seattlerb/difficult1_line_numbers2.txt deleted file mode 100644 index ae710f997f..0000000000 --- a/test/prism/snapshots/seattlerb/difficult1_line_numbers2.txt +++ /dev/null @@ -1,86 +0,0 @@ -@ ProgramNode (location: (1,0)-(7,1)) -├── flags: ∅ -├── locals: [:b, :c] -└── statements: - @ StatementsNode (location: (1,0)-(7,1)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ IfNode (location: (1,0)-(6,3)) - │ ├── flags: newline - │ ├── if_keyword_loc: (1,0)-(1,2) = "if" - │ ├── predicate: - │ │ @ TrueNode (location: (1,3)-(1,7)) - │ │ └── flags: static_literal - │ ├── then_keyword_loc: (1,8)-(1,12) = "then" - │ ├── statements: - │ │ @ StatementsNode (location: (2,2)-(5,6)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 4) - │ │ ├── @ CallNode (location: (2,2)-(2,8)) - │ │ │ ├── flags: newline, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :p - │ │ │ ├── message_loc: (2,2)-(2,3) = "p" - │ │ │ ├── opening_loc: (2,3)-(2,4) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (2,4)-(2,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ StringNode (location: (2,4)-(2,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (2,4)-(2,5) = "\"" - │ │ │ │ ├── content_loc: (2,5)-(2,6) = "a" - │ │ │ │ ├── closing_loc: (2,6)-(2,7) = "\"" - │ │ │ │ └── unescaped: "a" - │ │ │ ├── closing_loc: (2,7)-(2,8) = ")" - │ │ │ └── block: ∅ - │ │ ├── @ LocalVariableWriteNode (location: (3,2)-(3,7)) - │ │ │ ├── flags: newline - │ │ │ ├── name: :b - │ │ │ ├── depth: 0 - │ │ │ ├── name_loc: (3,2)-(3,3) = "b" - │ │ │ ├── value: - │ │ │ │ @ IntegerNode (location: (3,6)-(3,7)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── operator_loc: (3,4)-(3,5) = "=" - │ │ ├── @ CallNode (location: (4,2)-(4,5)) - │ │ │ ├── flags: newline, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :p - │ │ │ ├── message_loc: (4,2)-(4,3) = "p" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (4,4)-(4,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ LocalVariableReadNode (location: (4,4)-(4,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ └── depth: 0 - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ LocalVariableWriteNode (location: (5,2)-(5,6)) - │ │ ├── flags: newline - │ │ ├── name: :c - │ │ ├── depth: 0 - │ │ ├── name_loc: (5,2)-(5,3) = "c" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (5,5)-(5,6)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── operator_loc: (5,4)-(5,5) = "=" - │ ├── subsequent: ∅ - │ └── end_keyword_loc: (6,0)-(6,3) = "end" - └── @ CallNode (location: (7,0)-(7,1)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (7,0)-(7,1) = "a" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/difficult2_.txt b/test/prism/snapshots/seattlerb/difficult2_.txt deleted file mode 100644 index 2a7e8e49d0..0000000000 --- a/test/prism/snapshots/seattlerb/difficult2_.txt +++ /dev/null @@ -1,81 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,6)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ IfNode (location: (1,0)-(1,13)) - │ ├── flags: newline - │ ├── if_keyword_loc: ∅ - │ ├── predicate: - │ │ @ IntegerNode (location: (1,0)-(1,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── then_keyword_loc: (1,2)-(1,3) = "?" - │ ├── statements: - │ │ @ StatementsNode (location: (1,4)-(1,9)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,4)-(1,9)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (1,4)-(1,5) = "b" - │ │ ├── opening_loc: (1,5)-(1,6) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (1,6)-(1,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ StringNode (location: (1,6)-(1,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (1,6)-(1,7) = "'" - │ │ │ ├── content_loc: (1,7)-(1,7) = "" - │ │ │ ├── closing_loc: (1,7)-(1,8) = "'" - │ │ │ └── unescaped: "" - │ │ ├── closing_loc: (1,8)-(1,9) = ")" - │ │ └── block: ∅ - │ ├── subsequent: - │ │ @ ElseNode (location: (1,10)-(1,13)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (1,10)-(1,11) = ":" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,12)-(1,13)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ IntegerNode (location: (1,12)-(1,13)) - │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ └── value: 2 - │ │ └── end_keyword_loc: ∅ - │ └── end_keyword_loc: ∅ - └── @ CallNode (location: (2,0)-(2,6)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (2,0)-(2,1) = "a" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (2,2)-(2,6)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 1) - │ └── @ KeywordHashNode (location: (2,2)-(2,6)) - │ ├── flags: symbol_keys - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (2,2)-(2,6)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ SymbolNode (location: (2,2)-(2,4)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (2,2)-(2,3) = "d" - │ │ ├── closing_loc: (2,3)-(2,4) = ":" - │ │ └── unescaped: "d" - │ ├── value: - │ │ @ IntegerNode (location: (2,5)-(2,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 3 - │ └── operator_loc: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/difficult3_.txt b/test/prism/snapshots/seattlerb/difficult3_.txt deleted file mode 100644 index 313cfa4cf2..0000000000 --- a/test/prism/snapshots/seattlerb/difficult3_.txt +++ /dev/null @@ -1,59 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,18)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,18)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,18)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,18)) - ├── flags: ∅ - ├── locals: [:a, :b, :c] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,16)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,15)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ └── @ MultiTargetNode (location: (1,8)-(1,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (1,9)-(1,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :b - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (1,12)-(1,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (1,12)-(1,13) = "*" - │ │ │ │ └── expression: - │ │ │ │ @ RequiredParameterNode (location: (1,13)-(1,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :c - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: (1,8)-(1,9) = "(" - │ │ │ └── rparen_loc: (1,14)-(1,15) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,15)-(1,16) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,17)-(1,18) = "}" diff --git a/test/prism/snapshots/seattlerb/difficult3_2.txt b/test/prism/snapshots/seattlerb/difficult3_2.txt deleted file mode 100644 index e1eed78c79..0000000000 --- a/test/prism/snapshots/seattlerb/difficult3_2.txt +++ /dev/null @@ -1,47 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,13)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,13)) - ├── flags: ∅ - ├── locals: [:a, :b] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,11)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (1,5)-(1,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ ├── name_loc: (1,6)-(1,7) = "a" - │ │ │ └── operator_loc: (1,5)-(1,6) = "*" - │ │ ├── posts: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,9)-(1,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :b - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,10)-(1,11) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,12)-(1,13) = "}" diff --git a/test/prism/snapshots/seattlerb/difficult3_3.txt b/test/prism/snapshots/seattlerb/difficult3_3.txt deleted file mode 100644 index 5dcd71d651..0000000000 --- a/test/prism/snapshots/seattlerb/difficult3_3.txt +++ /dev/null @@ -1,52 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,17)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,17)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,17)) - ├── flags: ∅ - ├── locals: [:a, :b, :c] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,15)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,14)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (1,5)-(1,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ ├── name_loc: (1,6)-(1,7) = "a" - │ │ │ └── operator_loc: (1,5)-(1,6) = "*" - │ │ ├── posts: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,9)-(1,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :b - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (1,12)-(1,14)) - │ │ ├── flags: ∅ - │ │ ├── name: :c - │ │ ├── name_loc: (1,13)-(1,14) = "c" - │ │ └── operator_loc: (1,12)-(1,13) = "&" - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,14)-(1,15) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,16)-(1,17) = "}" diff --git a/test/prism/snapshots/seattlerb/difficult3_4.txt b/test/prism/snapshots/seattlerb/difficult3_4.txt deleted file mode 100644 index b733c42265..0000000000 --- a/test/prism/snapshots/seattlerb/difficult3_4.txt +++ /dev/null @@ -1,47 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,17)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(1,17)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableWriteNode (location: (1,0)-(1,17)) - ├── flags: newline - ├── name: :a - ├── depth: 0 - ├── name_loc: (1,0)-(1,1) = "a" - ├── value: - │ @ IfNode (location: (1,2)-(1,17)) - │ ├── flags: newline - │ ├── if_keyword_loc: ∅ - │ ├── predicate: - │ │ @ CallNode (location: (1,2)-(1,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (1,2)-(1,3) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: (1,4)-(1,5) = "?" - │ ├── statements: - │ │ @ StatementsNode (location: (1,6)-(1,10)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ TrueNode (location: (1,6)-(1,10)) - │ │ └── flags: newline, static_literal - │ ├── subsequent: - │ │ @ ElseNode (location: (1,10)-(1,17)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (1,10)-(1,11) = ":" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,12)-(1,17)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ FalseNode (location: (1,12)-(1,17)) - │ │ │ └── flags: newline, static_literal - │ │ └── end_keyword_loc: ∅ - │ └── end_keyword_loc: ∅ - └── operator_loc: (1,1)-(1,2) = "=" diff --git a/test/prism/snapshots/seattlerb/difficult3_5.txt b/test/prism/snapshots/seattlerb/difficult3_5.txt deleted file mode 100644 index b8bbbdc03e..0000000000 --- a/test/prism/snapshots/seattlerb/difficult3_5.txt +++ /dev/null @@ -1,54 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,19)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,19)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,19)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,19)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ LambdaNode (location: (1,2)-(1,19)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── operator_loc: (1,2)-(1,4) = "->" - │ ├── opening_loc: (1,7)-(1,8) = "{" - │ ├── closing_loc: (1,18)-(1,19) = "}" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (1,4)-(1,6)) - │ │ ├── flags: ∅ - │ │ ├── parameters: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (1,4)-(1,5) = "(" - │ │ └── closing_loc: (1,5)-(1,6) = ")" - │ └── body: - │ @ StatementsNode (location: (1,9)-(1,17)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,9)-(1,17)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :g - │ ├── message_loc: (1,9)-(1,10) = "g" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (1,11)-(1,17)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (1,11)-(1,13) = "do" - │ └── closing_loc: (1,14)-(1,17) = "end" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/difficult3__10.txt b/test/prism/snapshots/seattlerb/difficult3__10.txt deleted file mode 100644 index a5ce0762f1..0000000000 --- a/test/prism/snapshots/seattlerb/difficult3__10.txt +++ /dev/null @@ -1,59 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,18)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,18)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,18)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,18)) - ├── flags: ∅ - ├── locals: [:a, :b, :c] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,16)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,15)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ └── @ MultiTargetNode (location: (1,8)-(1,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (1,9)-(1,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (1,9)-(1,10) = "*" - │ │ │ │ └── expression: - │ │ │ │ @ RequiredParameterNode (location: (1,10)-(1,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :b - │ │ │ ├── rights: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (1,13)-(1,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :c - │ │ │ ├── lparen_loc: (1,8)-(1,9) = "(" - │ │ │ └── rparen_loc: (1,14)-(1,15) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,15)-(1,16) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,17)-(1,18) = "}" diff --git a/test/prism/snapshots/seattlerb/difficult3__11.txt b/test/prism/snapshots/seattlerb/difficult3__11.txt deleted file mode 100644 index c1017885d8..0000000000 --- a/test/prism/snapshots/seattlerb/difficult3__11.txt +++ /dev/null @@ -1,53 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,14)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,14)) - ├── flags: ∅ - ├── locals: [:a] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,12)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,11)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ └── @ MultiTargetNode (location: (1,8)-(1,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (1,9)-(1,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (1,9)-(1,10) = "*" - │ │ │ │ └── expression: ∅ - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: (1,8)-(1,9) = "(" - │ │ │ └── rparen_loc: (1,10)-(1,11) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,11)-(1,12) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,13)-(1,14) = "}" diff --git a/test/prism/snapshots/seattlerb/difficult3__12.txt b/test/prism/snapshots/seattlerb/difficult3__12.txt deleted file mode 100644 index bbcfad48b4..0000000000 --- a/test/prism/snapshots/seattlerb/difficult3__12.txt +++ /dev/null @@ -1,56 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,17)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,17)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,17)) - ├── flags: ∅ - ├── locals: [:a, :b] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,15)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,14)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ └── @ MultiTargetNode (location: (1,8)-(1,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (1,9)-(1,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (1,9)-(1,10) = "*" - │ │ │ │ └── expression: ∅ - │ │ │ ├── rights: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (1,12)-(1,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :b - │ │ │ ├── lparen_loc: (1,8)-(1,9) = "(" - │ │ │ └── rparen_loc: (1,13)-(1,14) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,14)-(1,15) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,16)-(1,17) = "}" diff --git a/test/prism/snapshots/seattlerb/difficult3__6.txt b/test/prism/snapshots/seattlerb/difficult3__6.txt deleted file mode 100644 index 95d1ac39b5..0000000000 --- a/test/prism/snapshots/seattlerb/difficult3__6.txt +++ /dev/null @@ -1,62 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,21)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,21)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,21)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,21)) - ├── flags: ∅ - ├── locals: [:a, :b, :c, :d] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,19)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,18)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ └── @ MultiTargetNode (location: (1,8)-(1,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (1,9)-(1,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :b - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (1,12)-(1,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (1,12)-(1,13) = "*" - │ │ │ │ └── expression: - │ │ │ │ @ RequiredParameterNode (location: (1,13)-(1,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :c - │ │ │ ├── rights: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (1,16)-(1,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :d - │ │ │ ├── lparen_loc: (1,8)-(1,9) = "(" - │ │ │ └── rparen_loc: (1,17)-(1,18) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,18)-(1,19) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,20)-(1,21) = "}" diff --git a/test/prism/snapshots/seattlerb/difficult3__7.txt b/test/prism/snapshots/seattlerb/difficult3__7.txt deleted file mode 100644 index 4640cfdb53..0000000000 --- a/test/prism/snapshots/seattlerb/difficult3__7.txt +++ /dev/null @@ -1,56 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,17)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,17)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,17)) - ├── flags: ∅ - ├── locals: [:a, :b] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,15)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,14)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ └── @ MultiTargetNode (location: (1,8)-(1,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (1,9)-(1,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :b - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (1,12)-(1,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (1,12)-(1,13) = "*" - │ │ │ │ └── expression: ∅ - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: (1,8)-(1,9) = "(" - │ │ │ └── rparen_loc: (1,13)-(1,14) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,14)-(1,15) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,16)-(1,17) = "}" diff --git a/test/prism/snapshots/seattlerb/difficult3__8.txt b/test/prism/snapshots/seattlerb/difficult3__8.txt deleted file mode 100644 index e19cbfc279..0000000000 --- a/test/prism/snapshots/seattlerb/difficult3__8.txt +++ /dev/null @@ -1,59 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,20)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,20)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,20)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,20)) - ├── flags: ∅ - ├── locals: [:a, :b, :c] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,18)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,17)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ └── @ MultiTargetNode (location: (1,8)-(1,17)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (1,9)-(1,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :b - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (1,12)-(1,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (1,12)-(1,13) = "*" - │ │ │ │ └── expression: ∅ - │ │ │ ├── rights: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (1,15)-(1,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :c - │ │ │ ├── lparen_loc: (1,8)-(1,9) = "(" - │ │ │ └── rparen_loc: (1,16)-(1,17) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,17)-(1,18) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,19)-(1,20) = "}" diff --git a/test/prism/snapshots/seattlerb/difficult3__9.txt b/test/prism/snapshots/seattlerb/difficult3__9.txt deleted file mode 100644 index 2259351b41..0000000000 --- a/test/prism/snapshots/seattlerb/difficult3__9.txt +++ /dev/null @@ -1,56 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,15)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,15)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,15)) - ├── flags: ∅ - ├── locals: [:a, :b] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,13)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,12)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ └── @ MultiTargetNode (location: (1,8)-(1,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (1,9)-(1,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (1,9)-(1,10) = "*" - │ │ │ │ └── expression: - │ │ │ │ @ RequiredParameterNode (location: (1,10)-(1,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :b - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: (1,8)-(1,9) = "(" - │ │ │ └── rparen_loc: (1,11)-(1,12) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,12)-(1,13) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,14)-(1,15) = "}" diff --git a/test/prism/snapshots/seattlerb/difficult4__leading_dots.txt b/test/prism/snapshots/seattlerb/difficult4__leading_dots.txt deleted file mode 100644 index 4201ed00aa..0000000000 --- a/test/prism/snapshots/seattlerb/difficult4__leading_dots.txt +++ /dev/null @@ -1,27 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,2)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,2)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(2,2)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (2,0)-(2,1) = "." - ├── name: :b - ├── message_loc: (2,1)-(2,2) = "b" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/difficult4__leading_dots2.txt b/test/prism/snapshots/seattlerb/difficult4__leading_dots2.txt deleted file mode 100644 index 8dd122ddd4..0000000000 --- a/test/prism/snapshots/seattlerb/difficult4__leading_dots2.txt +++ /dev/null @@ -1,18 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,3)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 1 - └── @ RangeNode (location: (2,0)-(2,3)) - ├── flags: newline, static_literal - ├── left: ∅ - ├── right: - │ @ IntegerNode (location: (2,2)-(2,3)) - │ ├── flags: static_literal, decimal - │ └── value: 3 - └── operator_loc: (2,0)-(2,2) = ".." diff --git a/test/prism/snapshots/seattlerb/difficult6_.txt b/test/prism/snapshots/seattlerb/difficult6_.txt deleted file mode 100644 index fc273bda46..0000000000 --- a/test/prism/snapshots/seattlerb/difficult6_.txt +++ /dev/null @@ -1,70 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,25)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,25)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LambdaNode (location: (1,0)-(1,25)) - ├── flags: newline - ├── locals: [:a, :b] - ├── operator_loc: (1,0)-(1,2) = "->" - ├── opening_loc: (1,13)-(1,14) = "{" - ├── closing_loc: (1,24)-(1,25) = "}" - ├── parameters: - │ @ BlockParametersNode (location: (1,2)-(1,12)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,3)-(1,11)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,3)-(1,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,6)-(1,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (1,6)-(1,7) = "b" - │ │ │ ├── operator_loc: (1,7)-(1,8) = "=" - │ │ │ └── value: - │ │ │ @ NilNode (location: (1,8)-(1,11)) - │ │ │ └── flags: static_literal - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,2)-(1,3) = "(" - │ └── closing_loc: (1,11)-(1,12) = ")" - └── body: - @ StatementsNode (location: (1,15)-(1,23)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,15)-(1,23)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :p - ├── message_loc: (1,15)-(1,16) = "p" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,17)-(1,23)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ ArrayNode (location: (1,17)-(1,23)) - │ ├── flags: ∅ - │ ├── elements: (length: 2) - │ │ ├── @ LocalVariableReadNode (location: (1,18)-(1,19)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ └── @ LocalVariableReadNode (location: (1,21)-(1,22)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ └── depth: 0 - │ ├── opening_loc: (1,17)-(1,18) = "[" - │ └── closing_loc: (1,22)-(1,23) = "]" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/difficult6__7.txt b/test/prism/snapshots/seattlerb/difficult6__7.txt deleted file mode 100644 index 509da6914f..0000000000 --- a/test/prism/snapshots/seattlerb/difficult6__7.txt +++ /dev/null @@ -1,61 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,11)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,1)-(1,2) = "." - ├── name: :b - ├── message_loc: (1,2)-(1,3) = "b" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,7)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ ParenthesesNode (location: (1,4)-(1,7)) - │ ├── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,5)-(1,6)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (1,5)-(1,6)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 1 - │ ├── opening_loc: (1,4)-(1,5) = "(" - │ └── closing_loc: (1,6)-(1,7) = ")" - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,8)-(1,11)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (1,9)-(1,10)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,9)-(1,10)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :c - │ ├── message_loc: (1,9)-(1,10) = "c" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── opening_loc: (1,8)-(1,9) = "{" - └── closing_loc: (1,10)-(1,11) = "}" diff --git a/test/prism/snapshots/seattlerb/difficult6__8.txt b/test/prism/snapshots/seattlerb/difficult6__8.txt deleted file mode 100644 index c6fece62cb..0000000000 --- a/test/prism/snapshots/seattlerb/difficult6__8.txt +++ /dev/null @@ -1,61 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,12)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,1)-(1,3) = "::" - ├── name: :b - ├── message_loc: (1,3)-(1,4) = "b" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,5)-(1,8)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ ParenthesesNode (location: (1,5)-(1,8)) - │ ├── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,6)-(1,7)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (1,6)-(1,7)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 1 - │ ├── opening_loc: (1,5)-(1,6) = "(" - │ └── closing_loc: (1,7)-(1,8) = ")" - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,9)-(1,12)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (1,10)-(1,11)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,10)-(1,11)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :c - │ ├── message_loc: (1,10)-(1,11) = "c" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── opening_loc: (1,9)-(1,10) = "{" - └── closing_loc: (1,11)-(1,12) = "}" diff --git a/test/prism/snapshots/seattlerb/difficult7_.txt b/test/prism/snapshots/seattlerb/difficult7_.txt deleted file mode 100644 index 2cf03ce57e..0000000000 --- a/test/prism/snapshots/seattlerb/difficult7_.txt +++ /dev/null @@ -1,105 +0,0 @@ -@ ProgramNode (location: (1,6)-(4,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,6)-(4,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ HashNode (location: (1,6)-(4,7)) - ├── flags: newline - ├── opening_loc: (1,6)-(1,7) = "{" - ├── elements: (length: 2) - │ ├── @ AssocNode (location: (2,8)-(2,33)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ SymbolNode (location: (2,8)-(2,10)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (2,8)-(2,9) = "a" - │ │ │ ├── closing_loc: (2,9)-(2,10) = ":" - │ │ │ └── unescaped: "a" - │ │ ├── value: - │ │ │ @ CallNode (location: (2,11)-(2,33)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :lambda - │ │ │ ├── message_loc: (2,11)-(2,17) = "lambda" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (2,18)-(2,33)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (2,20)-(2,31)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ IfNode (location: (2,20)-(2,31)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── if_keyword_loc: ∅ - │ │ │ │ ├── predicate: - │ │ │ │ │ @ CallNode (location: (2,20)-(2,21)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :b - │ │ │ │ │ ├── message_loc: (2,20)-(2,21) = "b" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── then_keyword_loc: (2,22)-(2,23) = "?" - │ │ │ │ ├── statements: - │ │ │ │ │ @ StatementsNode (location: (2,24)-(2,27)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (2,24)-(2,27)) - │ │ │ │ │ ├── flags: newline, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :c - │ │ │ │ │ ├── message_loc: (2,24)-(2,25) = "c" - │ │ │ │ │ ├── opening_loc: (2,25)-(2,26) = "(" - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: (2,26)-(2,27) = ")" - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── subsequent: - │ │ │ │ │ @ ElseNode (location: (2,28)-(2,31)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── else_keyword_loc: (2,28)-(2,29) = ":" - │ │ │ │ │ ├── statements: - │ │ │ │ │ │ @ StatementsNode (location: (2,30)-(2,31)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ │ └── @ CallNode (location: (2,30)-(2,31)) - │ │ │ │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ │ ├── name: :d - │ │ │ │ │ │ ├── message_loc: (2,30)-(2,31) = "d" - │ │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ │ └── block: ∅ - │ │ │ │ │ └── end_keyword_loc: ∅ - │ │ │ │ └── end_keyword_loc: ∅ - │ │ │ ├── opening_loc: (2,18)-(2,19) = "{" - │ │ │ └── closing_loc: (2,32)-(2,33) = "}" - │ │ └── operator_loc: ∅ - │ └── @ AssocNode (location: (3,8)-(3,14)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ SymbolNode (location: (3,8)-(3,10)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (3,8)-(3,9) = "e" - │ │ ├── closing_loc: (3,9)-(3,10) = ":" - │ │ └── unescaped: "e" - │ ├── value: - │ │ @ NilNode (location: (3,11)-(3,14)) - │ │ └── flags: static_literal - │ └── operator_loc: ∅ - └── closing_loc: (4,6)-(4,7) = "}" diff --git a/test/prism/snapshots/seattlerb/do_bug.txt b/test/prism/snapshots/seattlerb/do_bug.txt deleted file mode 100644 index 8d1a0b786c..0000000000 --- a/test/prism/snapshots/seattlerb/do_bug.txt +++ /dev/null @@ -1,68 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,2)-(1,3)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (1,2)-(1,3)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (2,0)-(4,3)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (2,0)-(2,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (2,0)-(2,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (2,1)-(2,2) = "." - ├── name: :b - ├── message_loc: (2,2)-(2,3) = "b" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (2,4)-(4,3)) - ├── flags: ∅ - ├── locals: [:c] - ├── parameters: - │ @ BlockParametersNode (location: (2,7)-(2,10)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (2,8)-(2,9)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (2,8)-(2,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :c - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (2,7)-(2,8) = "|" - │ └── closing_loc: (2,9)-(2,10) = "|" - ├── body: ∅ - ├── opening_loc: (2,4)-(2,6) = "do" - └── closing_loc: (4,0)-(4,3) = "end" diff --git a/test/prism/snapshots/seattlerb/do_lambda.txt b/test/prism/snapshots/seattlerb/do_lambda.txt deleted file mode 100644 index 76383b0ada..0000000000 --- a/test/prism/snapshots/seattlerb/do_lambda.txt +++ /dev/null @@ -1,21 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LambdaNode (location: (1,0)-(1,11)) - ├── flags: newline - ├── locals: [] - ├── operator_loc: (1,0)-(1,2) = "->" - ├── opening_loc: (1,5)-(1,7) = "do" - ├── closing_loc: (1,8)-(1,11) = "end" - ├── parameters: - │ @ BlockParametersNode (location: (1,2)-(1,4)) - │ ├── flags: ∅ - │ ├── parameters: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,2)-(1,3) = "(" - │ └── closing_loc: (1,3)-(1,4) = ")" - └── body: ∅ diff --git a/test/prism/snapshots/seattlerb/dot2_nil__26.txt b/test/prism/snapshots/seattlerb/dot2_nil__26.txt deleted file mode 100644 index fc5122055f..0000000000 --- a/test/prism/snapshots/seattlerb/dot2_nil__26.txt +++ /dev/null @@ -1,22 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ RangeNode (location: (1,0)-(1,3)) - ├── flags: newline - ├── left: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── right: ∅ - └── operator_loc: (1,1)-(1,3) = ".." diff --git a/test/prism/snapshots/seattlerb/dot3_nil__26.txt b/test/prism/snapshots/seattlerb/dot3_nil__26.txt deleted file mode 100644 index c2277975db..0000000000 --- a/test/prism/snapshots/seattlerb/dot3_nil__26.txt +++ /dev/null @@ -1,22 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ RangeNode (location: (1,0)-(1,4)) - ├── flags: newline, exclude_end - ├── left: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── right: ∅ - └── operator_loc: (1,1)-(1,4) = "..." diff --git a/test/prism/snapshots/seattlerb/dstr_evstr.txt b/test/prism/snapshots/seattlerb/dstr_evstr.txt deleted file mode 100644 index 143d8ff584..0000000000 --- a/test/prism/snapshots/seattlerb/dstr_evstr.txt +++ /dev/null @@ -1,44 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(1,12)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,1) = "\"" - ├── parts: (length: 2) - │ ├── @ EmbeddedStatementsNode (location: (1,1)-(1,7)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,1)-(1,3) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,3)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ StringNode (location: (1,3)-(1,6)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: (1,3)-(1,4) = "'" - │ │ │ ├── content_loc: (1,4)-(1,5) = "a" - │ │ │ ├── closing_loc: (1,5)-(1,6) = "'" - │ │ │ └── unescaped: "a" - │ │ └── closing_loc: (1,6)-(1,7) = "}" - │ └── @ EmbeddedStatementsNode (location: (1,7)-(1,11)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,7)-(1,9) = "\#{" - │ ├── statements: - │ │ @ StatementsNode (location: (1,9)-(1,10)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,9)-(1,10)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (1,9)-(1,10) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── closing_loc: (1,10)-(1,11) = "}" - └── closing_loc: (1,11)-(1,12) = "\"" diff --git a/test/prism/snapshots/seattlerb/dstr_evstr_empty_end.txt b/test/prism/snapshots/seattlerb/dstr_evstr_empty_end.txt deleted file mode 100644 index 8e3ade63c9..0000000000 --- a/test/prism/snapshots/seattlerb/dstr_evstr_empty_end.txt +++ /dev/null @@ -1,30 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedSymbolNode (location: (1,0)-(1,11)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,2) = ":\"" - ├── parts: (length: 1) - │ └── @ EmbeddedStatementsNode (location: (1,2)-(1,10)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,2)-(1,4) = "\#{" - │ ├── statements: - │ │ @ StatementsNode (location: (1,4)-(1,9)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,4)-(1,9)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :field - │ │ ├── message_loc: (1,4)-(1,9) = "field" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── closing_loc: (1,9)-(1,10) = "}" - └── closing_loc: (1,10)-(1,11) = "\"" diff --git a/test/prism/snapshots/seattlerb/dstr_lex_state.txt b/test/prism/snapshots/seattlerb/dstr_lex_state.txt deleted file mode 100644 index 2bdeab0834..0000000000 --- a/test/prism/snapshots/seattlerb/dstr_lex_state.txt +++ /dev/null @@ -1,39 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(1,8)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,1) = "\"" - ├── parts: (length: 1) - │ └── @ EmbeddedStatementsNode (location: (1,1)-(1,7)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,1)-(1,3) = "\#{" - │ ├── statements: - │ │ @ StatementsNode (location: (1,3)-(1,6)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,3)-(1,6)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :p - │ │ ├── message_loc: (1,3)-(1,4) = "p" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (1,4)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ SymbolNode (location: (1,4)-(1,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (1,4)-(1,5) = ":" - │ │ │ ├── value_loc: (1,5)-(1,6) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── closing_loc: (1,6)-(1,7) = "}" - └── closing_loc: (1,7)-(1,8) = "\"" diff --git a/test/prism/snapshots/seattlerb/dstr_str.txt b/test/prism/snapshots/seattlerb/dstr_str.txt deleted file mode 100644 index 7b3e0e36ad..0000000000 --- a/test/prism/snapshots/seattlerb/dstr_str.txt +++ /dev/null @@ -1,32 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(1,10)) - ├── flags: newline, static_literal, mutable - ├── opening_loc: (1,0)-(1,1) = "\"" - ├── parts: (length: 2) - │ ├── @ EmbeddedStatementsNode (location: (1,1)-(1,7)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,1)-(1,3) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,3)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ StringNode (location: (1,3)-(1,6)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: (1,3)-(1,4) = "'" - │ │ │ ├── content_loc: (1,4)-(1,5) = "a" - │ │ │ ├── closing_loc: (1,5)-(1,6) = "'" - │ │ │ └── unescaped: "a" - │ │ └── closing_loc: (1,6)-(1,7) = "}" - │ └── @ StringNode (location: (1,7)-(1,9)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (1,7)-(1,9) = " b" - │ ├── closing_loc: ∅ - │ └── unescaped: " b" - └── closing_loc: (1,9)-(1,10) = "\"" diff --git a/test/prism/snapshots/seattlerb/dsym_esc_to_sym.txt b/test/prism/snapshots/seattlerb/dsym_esc_to_sym.txt deleted file mode 100644 index 4224e305e9..0000000000 --- a/test/prism/snapshots/seattlerb/dsym_esc_to_sym.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,17)) - ├── flags: ∅ - └── body: (length: 1) - └── @ SymbolNode (location: (1,0)-(1,17)) - ├── flags: newline, static_literal, forced_utf8_encoding - ├── opening_loc: (1,0)-(1,2) = ":\"" - ├── value_loc: (1,2)-(1,16) = "Variet\\303\\240" - ├── closing_loc: (1,16)-(1,17) = "\"" - └── unescaped: "Varietà" diff --git a/test/prism/snapshots/seattlerb/dsym_to_sym.txt b/test/prism/snapshots/seattlerb/dsym_to_sym.txt deleted file mode 100644 index 7c5d2bef87..0000000000 --- a/test/prism/snapshots/seattlerb/dsym_to_sym.txt +++ /dev/null @@ -1,41 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,13)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ AliasMethodNode (location: (1,0)-(1,17)) - │ ├── flags: newline - │ ├── new_name: - │ │ @ SymbolNode (location: (1,6)-(1,11)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,6)-(1,8) = ":\"" - │ │ ├── value_loc: (1,8)-(1,10) = "<<" - │ │ ├── closing_loc: (1,10)-(1,11) = "\"" - │ │ └── unescaped: "<<" - │ ├── old_name: - │ │ @ SymbolNode (location: (1,12)-(1,17)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,12)-(1,14) = ":\"" - │ │ ├── value_loc: (1,14)-(1,16) = ">>" - │ │ ├── closing_loc: (1,16)-(1,17) = "\"" - │ │ └── unescaped: ">>" - │ └── keyword_loc: (1,0)-(1,5) = "alias" - └── @ AliasMethodNode (location: (3,0)-(3,13)) - ├── flags: newline - ├── new_name: - │ @ SymbolNode (location: (3,6)-(3,9)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (3,6)-(3,7) = ":" - │ ├── value_loc: (3,7)-(3,9) = "<<" - │ ├── closing_loc: ∅ - │ └── unescaped: "<<" - ├── old_name: - │ @ SymbolNode (location: (3,10)-(3,13)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (3,10)-(3,11) = ":" - │ ├── value_loc: (3,11)-(3,13) = ">>" - │ ├── closing_loc: ∅ - │ └── unescaped: ">>" - └── keyword_loc: (3,0)-(3,5) = "alias" diff --git a/test/prism/snapshots/seattlerb/eq_begin_line_numbers.txt b/test/prism/snapshots/seattlerb/eq_begin_line_numbers.txt deleted file mode 100644 index 010ee71da0..0000000000 --- a/test/prism/snapshots/seattlerb/eq_begin_line_numbers.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(6,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(6,1)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 1 - └── @ IntegerNode (location: (6,0)-(6,1)) - ├── flags: newline, static_literal, decimal - └── value: 2 diff --git a/test/prism/snapshots/seattlerb/eq_begin_why_wont_people_use_their_spacebar.txt b/test/prism/snapshots/seattlerb/eq_begin_why_wont_people_use_their_spacebar.txt deleted file mode 100644 index 5f6a3fe62e..0000000000 --- a/test/prism/snapshots/seattlerb/eq_begin_why_wont_people_use_their_spacebar.txt +++ /dev/null @@ -1,54 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(3,8)) - ├── flags: newline, attribute_write - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :h - │ ├── message_loc: (1,0)-(1,1) = "h" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :[]= - ├── message_loc: (1,1)-(1,4) = "[k]" - ├── opening_loc: (1,1)-(1,2) = "[" - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(3,8)) - │ ├── flags: ∅ - │ └── arguments: (length: 2) - │ ├── @ CallNode (location: (1,2)-(1,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :k - │ │ ├── message_loc: (1,2)-(1,3) = "k" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── @ BeginNode (location: (1,5)-(3,8)) - │ ├── flags: ∅ - │ ├── begin_keyword_loc: (1,5)-(1,10) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (2,7)-(2,9)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (2,7)-(2,9)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 42 - │ ├── rescue_clause: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (3,5)-(3,8) = "end" - ├── closing_loc: (1,3)-(1,4) = "]" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/evstr_evstr.txt b/test/prism/snapshots/seattlerb/evstr_evstr.txt deleted file mode 100644 index c8dba1c3e5..0000000000 --- a/test/prism/snapshots/seattlerb/evstr_evstr.txt +++ /dev/null @@ -1,48 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(1,10)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,1) = "\"" - ├── parts: (length: 2) - │ ├── @ EmbeddedStatementsNode (location: (1,1)-(1,5)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,1)-(1,3) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,3)-(1,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (1,3)-(1,4)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (1,3)-(1,4) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── closing_loc: (1,4)-(1,5) = "}" - │ └── @ EmbeddedStatementsNode (location: (1,5)-(1,9)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,5)-(1,7) = "\#{" - │ ├── statements: - │ │ @ StatementsNode (location: (1,7)-(1,8)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,7)-(1,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (1,7)-(1,8) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── closing_loc: (1,8)-(1,9) = "}" - └── closing_loc: (1,9)-(1,10) = "\"" diff --git a/test/prism/snapshots/seattlerb/evstr_str.txt b/test/prism/snapshots/seattlerb/evstr_str.txt deleted file mode 100644 index 69a992b19a..0000000000 --- a/test/prism/snapshots/seattlerb/evstr_str.txt +++ /dev/null @@ -1,36 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(1,8)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,1) = "\"" - ├── parts: (length: 2) - │ ├── @ EmbeddedStatementsNode (location: (1,1)-(1,5)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,1)-(1,3) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,3)-(1,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (1,3)-(1,4)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (1,3)-(1,4) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── closing_loc: (1,4)-(1,5) = "}" - │ └── @ StringNode (location: (1,5)-(1,7)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (1,5)-(1,7) = " b" - │ ├── closing_loc: ∅ - │ └── unescaped: " b" - └── closing_loc: (1,7)-(1,8) = "\"" diff --git a/test/prism/snapshots/seattlerb/expr_not_bang.txt b/test/prism/snapshots/seattlerb/expr_not_bang.txt deleted file mode 100644 index 868ef85648..0000000000 --- a/test/prism/snapshots/seattlerb/expr_not_bang.txt +++ /dev/null @@ -1,40 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,5)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,2)-(1,5)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,2)-(1,3) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,4)-(1,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (1,4)-(1,5)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (1,4)-(1,5) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :! - ├── message_loc: (1,0)-(1,1) = "!" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/f_kw.txt b/test/prism/snapshots/seattlerb/f_kw.txt deleted file mode 100644 index e2b82371b8..0000000000 --- a/test/prism/snapshots/seattlerb/f_kw.txt +++ /dev/null @@ -1,38 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,15)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,15)) - ├── flags: newline - ├── name: :x - ├── name_loc: (1,4)-(1,5) = "x" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,10)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 1) - │ │ └── @ OptionalKeywordParameterNode (location: (1,6)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── name: :k - │ │ ├── name_loc: (1,6)-(1,8) = "k:" - │ │ └── value: - │ │ @ IntegerNode (location: (1,8)-(1,10)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 42 - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:k] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (1,12)-(1,15) = "end" diff --git a/test/prism/snapshots/seattlerb/f_kw__required.txt b/test/prism/snapshots/seattlerb/f_kw__required.txt deleted file mode 100644 index c44dbbf2fc..0000000000 --- a/test/prism/snapshots/seattlerb/f_kw__required.txt +++ /dev/null @@ -1,34 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,13)) - ├── flags: newline - ├── name: :x - ├── name_loc: (1,4)-(1,5) = "x" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,8)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 1) - │ │ └── @ RequiredKeywordParameterNode (location: (1,6)-(1,8)) - │ │ ├── flags: ∅ - │ │ ├── name: :k - │ │ └── name_loc: (1,6)-(1,8) = "k:" - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:k] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (1,10)-(1,13) = "end" diff --git a/test/prism/snapshots/seattlerb/flip2_env_lvar.txt b/test/prism/snapshots/seattlerb/flip2_env_lvar.txt deleted file mode 100644 index def6ffaf3a..0000000000 --- a/test/prism/snapshots/seattlerb/flip2_env_lvar.txt +++ /dev/null @@ -1,40 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,16)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,16)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IfNode (location: (1,0)-(1,16)) - ├── flags: newline - ├── if_keyword_loc: (1,0)-(1,2) = "if" - ├── predicate: - │ @ FlipFlopNode (location: (1,3)-(1,7)) - │ ├── flags: ∅ - │ ├── left: - │ │ @ CallNode (location: (1,3)-(1,4)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (1,3)-(1,4) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── right: - │ │ @ CallNode (location: (1,6)-(1,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (1,6)-(1,7) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (1,4)-(1,6) = ".." - ├── then_keyword_loc: (1,8)-(1,12) = "then" - ├── statements: ∅ - ├── subsequent: ∅ - └── end_keyword_loc: (1,13)-(1,16) = "end" diff --git a/test/prism/snapshots/seattlerb/float_with_if_modifier.txt b/test/prism/snapshots/seattlerb/float_with_if_modifier.txt deleted file mode 100644 index 400c90b17c..0000000000 --- a/test/prism/snapshots/seattlerb/float_with_if_modifier.txt +++ /dev/null @@ -1,23 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IfNode (location: (1,0)-(1,10)) - ├── flags: newline - ├── if_keyword_loc: (1,3)-(1,5) = "if" - ├── predicate: - │ @ TrueNode (location: (1,6)-(1,10)) - │ └── flags: static_literal - ├── then_keyword_loc: ∅ - ├── statements: - │ @ StatementsNode (location: (1,0)-(1,3)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ FloatNode (location: (1,0)-(1,3)) - │ ├── flags: newline, static_literal - │ └── value: 1.0 - ├── subsequent: ∅ - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/seattlerb/heredoc__backslash_dos_format.txt b/test/prism/snapshots/seattlerb/heredoc__backslash_dos_format.txt deleted file mode 100644 index 7d745587b3..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc__backslash_dos_format.txt +++ /dev/null @@ -1,20 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [:str] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableWriteNode (location: (1,0)-(1,12)) - ├── flags: newline - ├── name: :str - ├── depth: 0 - ├── name_loc: (1,0)-(1,3) = "str" - ├── value: - │ @ StringNode (location: (1,6)-(1,12)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,6)-(1,12) = "<<-XXX" - │ ├── content_loc: (2,0)-(4,0) = "before\\\r\nafter\r\n" - │ ├── closing_loc: (4,0)-(5,0) = "XXX\r\n" - │ └── unescaped: "beforeafter\n" - └── operator_loc: (1,4)-(1,5) = "=" diff --git a/test/prism/snapshots/seattlerb/heredoc_backslash_nl.txt b/test/prism/snapshots/seattlerb/heredoc_backslash_nl.txt deleted file mode 100644 index 4c34bf6ef6..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_backslash_nl.txt +++ /dev/null @@ -1,19 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,7)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ StringNode (location: (1,0)-(3,1)) - │ ├── flags: newline - │ ├── opening_loc: (1,0)-(1,1) = "\"" - │ ├── content_loc: (1,1)-(3,0) = " why would someone do this? \\\n blah\n" - │ ├── closing_loc: (3,0)-(3,1) = "\"" - │ └── unescaped: " why would someone do this? blah\n" - └── @ StringNode (location: (5,0)-(5,7)) - ├── flags: newline - ├── opening_loc: (5,0)-(5,7) = "<<-DESC" - ├── content_loc: (6,0)-(8,0) = " why would someone do this? \\\n blah\n" - ├── closing_loc: (8,0)-(9,0) = "DESC\n" - └── unescaped: " why would someone do this? blah\n" diff --git a/test/prism/snapshots/seattlerb/heredoc_bad_hex_escape.txt b/test/prism/snapshots/seattlerb/heredoc_bad_hex_escape.txt deleted file mode 100644 index 1c521108c0..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_bad_hex_escape.txt +++ /dev/null @@ -1,20 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [:s] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableWriteNode (location: (1,0)-(1,9)) - ├── flags: newline - ├── name: :s - ├── depth: 0 - ├── name_loc: (1,0)-(1,1) = "s" - ├── value: - │ @ StringNode (location: (1,4)-(1,9)) - │ ├── flags: forced_utf8_encoding - │ ├── opening_loc: (1,4)-(1,9) = "<<eos" - │ ├── content_loc: (2,0)-(3,0) = "a\\xE9b\n" - │ ├── closing_loc: (3,0)-(4,0) = "eos\n" - │ └── unescaped: "a\xE9b\n" - └── operator_loc: (1,2)-(1,3) = "=" diff --git a/test/prism/snapshots/seattlerb/heredoc_bad_oct_escape.txt b/test/prism/snapshots/seattlerb/heredoc_bad_oct_escape.txt deleted file mode 100644 index 9726a71822..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_bad_oct_escape.txt +++ /dev/null @@ -1,20 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [:s] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableWriteNode (location: (1,0)-(1,10)) - ├── flags: newline - ├── name: :s - ├── depth: 0 - ├── name_loc: (1,0)-(1,1) = "s" - ├── value: - │ @ StringNode (location: (1,4)-(1,10)) - │ ├── flags: forced_utf8_encoding - │ ├── opening_loc: (1,4)-(1,10) = "<<-EOS" - │ ├── content_loc: (2,0)-(4,0) = "a\\247b\ncöd\n" - │ ├── closing_loc: (4,0)-(5,0) = "EOS\n" - │ └── unescaped: "a\xA7b\ncöd\n" - └── operator_loc: (1,2)-(1,3) = "=" diff --git a/test/prism/snapshots/seattlerb/heredoc_comma_arg.txt b/test/prism/snapshots/seattlerb/heredoc_comma_arg.txt deleted file mode 100644 index 0a43298472..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_comma_arg.txt +++ /dev/null @@ -1,29 +0,0 @@ -@ ProgramNode (location: (1,0)-(7,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(7,1)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ ArrayNode (location: (1,0)-(2,3)) - │ ├── flags: newline - │ ├── elements: (length: 1) - │ │ └── @ StringNode (location: (1,1)-(2,1)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,1)-(1,2) = "\"" - │ │ ├── content_loc: (1,2)-(2,0) = " some text\n" - │ │ ├── closing_loc: (2,0)-(2,1) = "\"" - │ │ └── unescaped: " some text\n" - │ ├── opening_loc: (1,0)-(1,1) = "[" - │ └── closing_loc: (2,2)-(2,3) = "]" - └── @ ArrayNode (location: (4,0)-(7,1)) - ├── flags: newline - ├── elements: (length: 1) - │ └── @ StringNode (location: (4,1)-(4,8)) - │ ├── flags: ∅ - │ ├── opening_loc: (4,1)-(4,8) = "<<-FILE" - │ ├── content_loc: (5,0)-(6,0) = " some text\n" - │ ├── closing_loc: (6,0)-(7,0) = "FILE\n" - │ └── unescaped: " some text\n" - ├── opening_loc: (4,0)-(4,1) = "[" - └── closing_loc: (7,0)-(7,1) = "]" diff --git a/test/prism/snapshots/seattlerb/heredoc_lineno.txt b/test/prism/snapshots/seattlerb/heredoc_lineno.txt deleted file mode 100644 index 7dde22912e..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_lineno.txt +++ /dev/null @@ -1,30 +0,0 @@ -@ ProgramNode (location: (1,0)-(7,6)) -├── flags: ∅ -├── locals: [:c, :d] -└── statements: - @ StatementsNode (location: (1,0)-(7,6)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ LocalVariableWriteNode (location: (1,0)-(1,11)) - │ ├── flags: newline - │ ├── name: :c - │ ├── depth: 0 - │ ├── name_loc: (1,0)-(1,1) = "c" - │ ├── value: - │ │ @ StringNode (location: (1,4)-(1,11)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,4)-(1,11) = "<<'CCC'" - │ │ ├── content_loc: (2,0)-(5,0) = "line2\nline3\nline4\n" - │ │ ├── closing_loc: (5,0)-(6,0) = "CCC\n" - │ │ └── unescaped: "line2\nline3\nline4\n" - │ └── operator_loc: (1,2)-(1,3) = "=" - └── @ LocalVariableWriteNode (location: (7,0)-(7,6)) - ├── flags: newline - ├── name: :d - ├── depth: 0 - ├── name_loc: (7,0)-(7,1) = "d" - ├── value: - │ @ IntegerNode (location: (7,4)-(7,6)) - │ ├── flags: static_literal, decimal - │ └── value: 42 - └── operator_loc: (7,2)-(7,3) = "=" diff --git a/test/prism/snapshots/seattlerb/heredoc_nested.txt b/test/prism/snapshots/seattlerb/heredoc_nested.txt deleted file mode 100644 index 4820ef6d4d..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_nested.txt +++ /dev/null @@ -1,46 +0,0 @@ -@ ProgramNode (location: (1,0)-(7,2)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(7,2)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ArrayNode (location: (1,0)-(7,2)) - ├── flags: newline, static_literal - ├── elements: (length: 2) - │ ├── @ InterpolatedStringNode (location: (1,1)-(1,4)) - │ │ ├── flags: static_literal, mutable - │ │ ├── opening_loc: (1,1)-(1,4) = "<<A" - │ │ ├── parts: (length: 3) - │ │ │ ├── @ EmbeddedStatementsNode (location: (2,0)-(2,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (2,0)-(2,2) = "\#{" - │ │ │ │ ├── statements: - │ │ │ │ │ @ StatementsNode (location: (2,2)-(2,5)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ StringNode (location: (2,2)-(2,5)) - │ │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ │ ├── opening_loc: (2,2)-(2,5) = "<<B" - │ │ │ │ │ ├── content_loc: (3,0)-(4,0) = "b\n" - │ │ │ │ │ ├── closing_loc: (4,0)-(5,0) = "B\n" - │ │ │ │ │ └── unescaped: "b\n" - │ │ │ │ └── closing_loc: (2,5)-(2,6) = "}" - │ │ │ ├── @ StringNode (location: (2,6)-(3,0)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (2,6)-(3,0) = "\n" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "\n" - │ │ │ └── @ StringNode (location: (5,0)-(6,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (5,0)-(6,0) = "a\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a\n" - │ │ └── closing_loc: (6,0)-(7,0) = "A\n" - │ └── @ IntegerNode (location: (7,0)-(7,1)) - │ ├── flags: static_literal, decimal - │ └── value: 0 - ├── opening_loc: (1,0)-(1,1) = "[" - └── closing_loc: (7,1)-(7,2) = "]" diff --git a/test/prism/snapshots/seattlerb/heredoc_squiggly.txt b/test/prism/snapshots/seattlerb/heredoc_squiggly.txt deleted file mode 100644 index 2f9f054832..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_squiggly.txt +++ /dev/null @@ -1,37 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableWriteNode (location: (1,0)-(1,12)) - ├── flags: newline - ├── name: :a - ├── depth: 0 - ├── name_loc: (1,0)-(1,1) = "a" - ├── value: - │ @ InterpolatedStringNode (location: (1,4)-(1,12)) - │ ├── flags: static_literal - │ ├── opening_loc: (1,4)-(1,12) = "<<~\"EOF\"" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (2,0)-(3,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (2,0)-(3,0) = " x\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "x\n" - │ │ ├── @ StringNode (location: (3,0)-(4,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (3,0)-(4,0) = " y\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "y\n" - │ │ └── @ StringNode (location: (4,0)-(5,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (4,0)-(5,0) = " z\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "z\n" - │ └── closing_loc: (5,0)-(6,0) = " EOF\n" - └── operator_loc: (1,2)-(1,3) = "=" diff --git a/test/prism/snapshots/seattlerb/heredoc_squiggly_blank_line_plus_interpolation.txt b/test/prism/snapshots/seattlerb/heredoc_squiggly_blank_line_plus_interpolation.txt deleted file mode 100644 index ce8f1d7043..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_squiggly_blank_line_plus_interpolation.txt +++ /dev/null @@ -1,72 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,20)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(1,20)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableWriteNode (location: (1,0)-(1,20)) - ├── flags: newline - ├── name: :a - ├── depth: 0 - ├── name_loc: (1,0)-(1,1) = "a" - ├── value: - │ @ CallNode (location: (1,4)-(1,20)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,4)-(1,7) = "foo" - │ ├── opening_loc: (1,7)-(1,8) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,8)-(1,19)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (1,8)-(1,19)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ InterpolatedStringNode (location: (1,8)-(1,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (1,8)-(1,14) = "<<~EOF" - │ │ │ ├── parts: (length: 3) - │ │ │ │ ├── @ StringNode (location: (2,0)-(3,0)) - │ │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── content_loc: (2,0)-(3,0) = "\n" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "\n" - │ │ │ │ ├── @ EmbeddedStatementsNode (location: (3,4)-(3,10)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── opening_loc: (3,4)-(3,6) = "\#{" - │ │ │ │ │ ├── statements: - │ │ │ │ │ │ @ StatementsNode (location: (3,6)-(3,9)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ │ └── @ CallNode (location: (3,6)-(3,9)) - │ │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ │ ├── name: :bar - │ │ │ │ │ │ ├── message_loc: (3,6)-(3,9) = "bar" - │ │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ │ └── block: ∅ - │ │ │ │ │ └── closing_loc: (3,9)-(3,10) = "}" - │ │ │ │ └── @ StringNode (location: (3,10)-(4,0)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (3,10)-(4,0) = "baz\n" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "baz\n" - │ │ │ └── closing_loc: (4,0)-(5,0) = " EOF\n" - │ │ ├── call_operator_loc: (1,14)-(1,15) = "." - │ │ ├── name: :chop - │ │ ├── message_loc: (1,15)-(1,19) = "chop" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (1,19)-(1,20) = ")" - │ └── block: ∅ - └── operator_loc: (1,2)-(1,3) = "=" diff --git a/test/prism/snapshots/seattlerb/heredoc_squiggly_blank_lines.txt b/test/prism/snapshots/seattlerb/heredoc_squiggly_blank_lines.txt deleted file mode 100644 index 06921ce78b..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_squiggly_blank_lines.txt +++ /dev/null @@ -1,37 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableWriteNode (location: (1,0)-(1,10)) - ├── flags: newline - ├── name: :a - ├── depth: 0 - ├── name_loc: (1,0)-(1,1) = "a" - ├── value: - │ @ InterpolatedStringNode (location: (1,4)-(1,10)) - │ ├── flags: static_literal - │ ├── opening_loc: (1,4)-(1,10) = "<<~EOF" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (2,0)-(3,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (2,0)-(3,0) = " x\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "x\n" - │ │ ├── @ StringNode (location: (3,0)-(4,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (3,0)-(4,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ └── @ StringNode (location: (4,0)-(5,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (4,0)-(5,0) = " z\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "z\n" - │ └── closing_loc: (5,0)-(6,0) = "EOF\n" - └── operator_loc: (1,2)-(1,3) = "=" diff --git a/test/prism/snapshots/seattlerb/heredoc_squiggly_empty.txt b/test/prism/snapshots/seattlerb/heredoc_squiggly_empty.txt deleted file mode 100644 index 28edecc527..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_squiggly_empty.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (1,0)-(1,4)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,4) = "<<~A" - ├── content_loc: (2,0)-(2,0) = "" - ├── closing_loc: (2,0)-(3,0) = "A\n" - └── unescaped: "" diff --git a/test/prism/snapshots/seattlerb/heredoc_squiggly_interp.txt b/test/prism/snapshots/seattlerb/heredoc_squiggly_interp.txt deleted file mode 100644 index d2448074e8..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_squiggly_interp.txt +++ /dev/null @@ -1,54 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableWriteNode (location: (1,0)-(1,10)) - ├── flags: newline - ├── name: :a - ├── depth: 0 - ├── name_loc: (1,0)-(1,1) = "a" - ├── value: - │ @ InterpolatedStringNode (location: (1,4)-(1,10)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,4)-(1,10) = "<<~EOF" - │ ├── parts: (length: 5) - │ │ ├── @ StringNode (location: (2,0)-(3,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (2,0)-(3,0) = " w\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: " w\n" - │ │ ├── @ StringNode (location: (3,0)-(3,3)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (3,0)-(3,3) = " x" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "x" - │ │ ├── @ EmbeddedStatementsNode (location: (3,3)-(3,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (3,3)-(3,5) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (3,5)-(3,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (3,5)-(3,7)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 42 - │ │ │ └── closing_loc: (3,7)-(3,8) = "}" - │ │ ├── @ StringNode (location: (3,8)-(4,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (3,8)-(4,0) = " y\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: " y\n" - │ │ └── @ StringNode (location: (4,0)-(5,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (4,0)-(5,0) = " z\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: " z\n" - │ └── closing_loc: (5,0)-(6,0) = " EOF\n" - └── operator_loc: (1,2)-(1,3) = "=" diff --git a/test/prism/snapshots/seattlerb/heredoc_squiggly_no_indent.txt b/test/prism/snapshots/seattlerb/heredoc_squiggly_no_indent.txt deleted file mode 100644 index 4dc7ae3676..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_squiggly_no_indent.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (1,0)-(1,4)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,4) = "<<~A" - ├── content_loc: (2,0)-(3,0) = "a\n" - ├── closing_loc: (3,0)-(4,0) = "A\n" - └── unescaped: "a\n" diff --git a/test/prism/snapshots/seattlerb/heredoc_squiggly_tabs.txt b/test/prism/snapshots/seattlerb/heredoc_squiggly_tabs.txt deleted file mode 100644 index 124e1618e1..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_squiggly_tabs.txt +++ /dev/null @@ -1,31 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableWriteNode (location: (1,0)-(1,12)) - ├── flags: newline - ├── name: :a - ├── depth: 0 - ├── name_loc: (1,0)-(1,1) = "a" - ├── value: - │ @ InterpolatedStringNode (location: (1,4)-(1,12)) - │ ├── flags: static_literal - │ ├── opening_loc: (1,4)-(1,12) = "<<~\"EOF\"" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (2,0)-(3,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (2,0)-(3,0) = " blah blah\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "blah blah\n" - │ │ └── @ StringNode (location: (3,0)-(4,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (3,0)-(4,0) = "\t blah blah\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: " blah blah\n" - │ └── closing_loc: (4,0)-(5,0) = " EOF\n" - └── operator_loc: (1,2)-(1,3) = "=" diff --git a/test/prism/snapshots/seattlerb/heredoc_squiggly_tabs_extra.txt b/test/prism/snapshots/seattlerb/heredoc_squiggly_tabs_extra.txt deleted file mode 100644 index b15074f8ac..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_squiggly_tabs_extra.txt +++ /dev/null @@ -1,31 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableWriteNode (location: (1,0)-(1,12)) - ├── flags: newline - ├── name: :a - ├── depth: 0 - ├── name_loc: (1,0)-(1,1) = "a" - ├── value: - │ @ InterpolatedStringNode (location: (1,4)-(1,12)) - │ ├── flags: static_literal - │ ├── opening_loc: (1,4)-(1,12) = "<<~\"EOF\"" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (2,0)-(3,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (2,0)-(3,0) = " blah blah\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "blah blah\n" - │ │ └── @ StringNode (location: (3,0)-(4,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (3,0)-(4,0) = " \tblah blah\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\tblah blah\n" - │ └── closing_loc: (4,0)-(5,0) = " EOF\n" - └── operator_loc: (1,2)-(1,3) = "=" diff --git a/test/prism/snapshots/seattlerb/heredoc_squiggly_visually_blank_lines.txt b/test/prism/snapshots/seattlerb/heredoc_squiggly_visually_blank_lines.txt deleted file mode 100644 index 06aeaa2e1b..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_squiggly_visually_blank_lines.txt +++ /dev/null @@ -1,37 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableWriteNode (location: (1,0)-(1,10)) - ├── flags: newline - ├── name: :a - ├── depth: 0 - ├── name_loc: (1,0)-(1,1) = "a" - ├── value: - │ @ InterpolatedStringNode (location: (1,4)-(1,10)) - │ ├── flags: static_literal - │ ├── opening_loc: (1,4)-(1,10) = "<<~EOF" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (2,0)-(3,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (2,0)-(3,0) = " x\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "x\n" - │ │ ├── @ StringNode (location: (3,0)-(4,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (3,0)-(4,0) = " \n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ └── @ StringNode (location: (4,0)-(5,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (4,0)-(5,0) = " z\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "z\n" - │ └── closing_loc: (5,0)-(6,0) = "EOF\n" - └── operator_loc: (1,2)-(1,3) = "=" diff --git a/test/prism/snapshots/seattlerb/heredoc_trailing_slash_continued_call.txt b/test/prism/snapshots/seattlerb/heredoc_trailing_slash_continued_call.txt deleted file mode 100644 index 758a4c9122..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_trailing_slash_continued_call.txt +++ /dev/null @@ -1,23 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(4,6)) - ├── flags: newline - ├── receiver: - │ @ StringNode (location: (1,0)-(1,5)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,0)-(1,5) = "<<END" - │ ├── content_loc: (2,0)-(3,0) = "blah\n" - │ ├── closing_loc: (3,0)-(4,0) = "END\n" - │ └── unescaped: "blah\n" - ├── call_operator_loc: (4,0)-(4,1) = "." - ├── name: :strip - ├── message_loc: (4,1)-(4,6) = "strip" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/heredoc_unicode.txt b/test/prism/snapshots/seattlerb/heredoc_unicode.txt deleted file mode 100644 index fd4dac3647..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_unicode.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (1,0)-(1,9)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,9) = "<<OOTPÜT" - ├── content_loc: (2,0)-(3,0) = ".\n" - ├── closing_loc: (3,0)-(4,0) = "OOTPÜT\n" - └── unescaped: ".\n" diff --git a/test/prism/snapshots/seattlerb/heredoc_with_carriage_return_escapes.txt b/test/prism/snapshots/seattlerb/heredoc_with_carriage_return_escapes.txt deleted file mode 100644 index 8d1bef5220..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_with_carriage_return_escapes.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (1,0)-(1,5)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,5) = "<<EOS" - ├── content_loc: (2,0)-(4,0) = "foo\\rbar\nbaz\\r\n" - ├── closing_loc: (4,0)-(5,0) = "EOS\n" - └── unescaped: "foo\rbar\nbaz\r\n" diff --git a/test/prism/snapshots/seattlerb/heredoc_with_carriage_return_escapes_windows.txt b/test/prism/snapshots/seattlerb/heredoc_with_carriage_return_escapes_windows.txt deleted file mode 100644 index 3c932074f4..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_with_carriage_return_escapes_windows.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (1,0)-(1,5)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,5) = "<<EOS" - ├── content_loc: (2,0)-(4,0) = "foo\\rbar\r\nbaz\\r\r\n" - ├── closing_loc: (4,0)-(5,0) = "EOS\r\n" - └── unescaped: "foo\rbar\nbaz\r\n" diff --git a/test/prism/snapshots/seattlerb/heredoc_with_extra_carriage_horrible_mix.txt b/test/prism/snapshots/seattlerb/heredoc_with_extra_carriage_horrible_mix.txt deleted file mode 100644 index 224009a65c..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_with_extra_carriage_horrible_mix.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (1,0)-(1,7)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,7) = "<<'eot'" - ├── content_loc: (2,0)-(3,0) = "body\r\n" - ├── closing_loc: (3,0)-(4,0) = "eot\n" - └── unescaped: "body\n" diff --git a/test/prism/snapshots/seattlerb/heredoc_with_extra_carriage_returns.txt b/test/prism/snapshots/seattlerb/heredoc_with_extra_carriage_returns.txt deleted file mode 100644 index a357f216fa..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_with_extra_carriage_returns.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (1,0)-(1,5)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,5) = "<<EOS" - ├── content_loc: (2,0)-(4,0) = "foo\rbar\r\nbaz\n" - ├── closing_loc: (4,0)-(5,0) = "EOS\n" - └── unescaped: "foo\rbar\nbaz\n" diff --git a/test/prism/snapshots/seattlerb/heredoc_with_extra_carriage_returns_windows.txt b/test/prism/snapshots/seattlerb/heredoc_with_extra_carriage_returns_windows.txt deleted file mode 100644 index 83662484f7..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_with_extra_carriage_returns_windows.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (1,0)-(1,5)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,5) = "<<EOS" - ├── content_loc: (2,0)-(4,0) = "foo\rbar\r\r\nbaz\r\n" - ├── closing_loc: (4,0)-(5,0) = "EOS\r\n" - └── unescaped: "foo\rbar\r\nbaz\n" diff --git a/test/prism/snapshots/seattlerb/heredoc_with_interpolation_and_carriage_return_escapes.txt b/test/prism/snapshots/seattlerb/heredoc_with_interpolation_and_carriage_return_escapes.txt deleted file mode 100644 index 24e6839ba5..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_with_interpolation_and_carriage_return_escapes.txt +++ /dev/null @@ -1,31 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(1,5)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,5) = "<<EOS" - ├── parts: (length: 3) - │ ├── @ StringNode (location: (2,0)-(2,5)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (2,0)-(2,5) = "foo\\r" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo\r" - │ ├── @ EmbeddedVariableNode (location: (2,5)-(2,10)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (2,5)-(2,6) = "#" - │ │ └── variable: - │ │ @ InstanceVariableReadNode (location: (2,6)-(2,10)) - │ │ ├── flags: ∅ - │ │ └── name: :@bar - │ └── @ StringNode (location: (2,10)-(3,0)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (2,10)-(3,0) = "\n" - │ ├── closing_loc: ∅ - │ └── unescaped: "\n" - └── closing_loc: (3,0)-(4,0) = "EOS\n" diff --git a/test/prism/snapshots/seattlerb/heredoc_with_interpolation_and_carriage_return_escapes_windows.txt b/test/prism/snapshots/seattlerb/heredoc_with_interpolation_and_carriage_return_escapes_windows.txt deleted file mode 100644 index a4cbf900c4..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_with_interpolation_and_carriage_return_escapes_windows.txt +++ /dev/null @@ -1,31 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(1,5)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,5) = "<<EOS" - ├── parts: (length: 3) - │ ├── @ StringNode (location: (2,0)-(2,5)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (2,0)-(2,5) = "foo\\r" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo\r" - │ ├── @ EmbeddedVariableNode (location: (2,5)-(2,10)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (2,5)-(2,6) = "#" - │ │ └── variable: - │ │ @ InstanceVariableReadNode (location: (2,6)-(2,10)) - │ │ ├── flags: ∅ - │ │ └── name: :@bar - │ └── @ StringNode (location: (2,10)-(3,0)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (2,10)-(3,0) = "\r\n" - │ ├── closing_loc: ∅ - │ └── unescaped: "\n" - └── closing_loc: (3,0)-(4,0) = "EOS\r\n" diff --git a/test/prism/snapshots/seattlerb/heredoc_with_not_global_interpolation.txt b/test/prism/snapshots/seattlerb/heredoc_with_not_global_interpolation.txt deleted file mode 100644 index cdea468fed..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_with_not_global_interpolation.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (1,0)-(1,10)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,10) = "<<-HEREDOC" - ├── content_loc: (2,0)-(3,0) = "\#${\n" - ├── closing_loc: (3,0)-(4,0) = "HEREDOC\n" - └── unescaped: "\#${\n" diff --git a/test/prism/snapshots/seattlerb/heredoc_with_only_carriage_returns.txt b/test/prism/snapshots/seattlerb/heredoc_with_only_carriage_returns.txt deleted file mode 100644 index 9936738579..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_with_only_carriage_returns.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (1,0)-(1,5)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,5) = "<<EOS" - ├── content_loc: (2,0)-(5,0) = "\r\n\r\r\n\\r\n" - ├── closing_loc: (5,0)-(6,0) = "EOS\n" - └── unescaped: "\n\r\n\r\n" diff --git a/test/prism/snapshots/seattlerb/heredoc_with_only_carriage_returns_windows.txt b/test/prism/snapshots/seattlerb/heredoc_with_only_carriage_returns_windows.txt deleted file mode 100644 index 55dfd316ac..0000000000 --- a/test/prism/snapshots/seattlerb/heredoc_with_only_carriage_returns_windows.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (1,0)-(1,5)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,5) = "<<EOS" - ├── content_loc: (2,0)-(5,0) = "\r\r\n\r\r\r\n\\r\r\n" - ├── closing_loc: (5,0)-(6,0) = "EOS\r\n" - └── unescaped: "\r\n\r\r\n\r\n" diff --git a/test/prism/snapshots/seattlerb/if_elsif.txt b/test/prism/snapshots/seattlerb/if_elsif.txt deleted file mode 100644 index 2ac975a548..0000000000 --- a/test/prism/snapshots/seattlerb/if_elsif.txt +++ /dev/null @@ -1,29 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,18)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,18)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IfNode (location: (1,0)-(1,18)) - ├── flags: newline - ├── if_keyword_loc: (1,0)-(1,2) = "if" - ├── predicate: - │ @ IntegerNode (location: (1,3)-(1,4)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── then_keyword_loc: ∅ - ├── statements: ∅ - ├── subsequent: - │ @ IfNode (location: (1,6)-(1,18)) - │ ├── flags: newline - │ ├── if_keyword_loc: (1,6)-(1,11) = "elsif" - │ ├── predicate: - │ │ @ IntegerNode (location: (1,12)-(1,13)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── then_keyword_loc: ∅ - │ ├── statements: ∅ - │ ├── subsequent: ∅ - │ └── end_keyword_loc: (1,15)-(1,18) = "end" - └── end_keyword_loc: (1,15)-(1,18) = "end" diff --git a/test/prism/snapshots/seattlerb/if_symbol.txt b/test/prism/snapshots/seattlerb/if_symbol.txt deleted file mode 100644 index d1680869f1..0000000000 --- a/test/prism/snapshots/seattlerb/if_symbol.txt +++ /dev/null @@ -1,34 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IfNode (location: (1,0)-(1,12)) - ├── flags: newline - ├── if_keyword_loc: (1,0)-(1,2) = "if" - ├── predicate: - │ @ CallNode (location: (1,3)-(1,7)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (1,3)-(1,4) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,5)-(1,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ SymbolNode (location: (1,5)-(1,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,5)-(1,6) = ":" - │ │ ├── value_loc: (1,6)-(1,7) = "x" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "x" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── then_keyword_loc: ∅ - ├── statements: ∅ - ├── subsequent: ∅ - └── end_keyword_loc: (1,9)-(1,12) = "end" diff --git a/test/prism/snapshots/seattlerb/in_expr_no_case.txt b/test/prism/snapshots/seattlerb/in_expr_no_case.txt deleted file mode 100644 index 97493c73c1..0000000000 --- a/test/prism/snapshots/seattlerb/in_expr_no_case.txt +++ /dev/null @@ -1,21 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,16)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,16)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MatchPredicateNode (location: (1,0)-(1,16)) - ├── flags: newline - ├── value: - │ @ StringNode (location: (1,0)-(1,6)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,0)-(1,1) = "'" - │ ├── content_loc: (1,1)-(1,5) = "woot" - │ ├── closing_loc: (1,5)-(1,6) = "'" - │ └── unescaped: "woot" - ├── pattern: - │ @ ConstantReadNode (location: (1,10)-(1,16)) - │ ├── flags: ∅ - │ └── name: :String - └── operator_loc: (1,7)-(1,9) = "in" diff --git a/test/prism/snapshots/seattlerb/index_0.txt b/test/prism/snapshots/seattlerb/index_0.txt deleted file mode 100644 index 186e84dd64..0000000000 --- a/test/prism/snapshots/seattlerb/index_0.txt +++ /dev/null @@ -1,40 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,7)) - ├── flags: newline, attribute_write - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :[]= - ├── message_loc: (1,1)-(1,3) = "[]" - ├── opening_loc: (1,1)-(1,2) = "[" - ├── arguments: - │ @ ArgumentsNode (location: (1,6)-(1,7)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (1,6)-(1,7)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :b - │ ├── message_loc: (1,6)-(1,7) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: (1,2)-(1,3) = "]" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/index_0_opasgn.txt b/test/prism/snapshots/seattlerb/index_0_opasgn.txt deleted file mode 100644 index 036128546a..0000000000 --- a/test/prism/snapshots/seattlerb/index_0_opasgn.txt +++ /dev/null @@ -1,38 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IndexOperatorWriteNode (location: (1,0)-(1,8)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── opening_loc: (1,1)-(1,2) = "[" - ├── arguments: ∅ - ├── closing_loc: (1,2)-(1,3) = "]" - ├── block: ∅ - ├── binary_operator: :+ - ├── binary_operator_loc: (1,4)-(1,6) = "+=" - └── value: - @ CallNode (location: (1,7)-(1,8)) - ├── flags: variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :b - ├── message_loc: (1,7)-(1,8) = "b" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/integer_with_if_modifier.txt b/test/prism/snapshots/seattlerb/integer_with_if_modifier.txt deleted file mode 100644 index 3034a9ad0f..0000000000 --- a/test/prism/snapshots/seattlerb/integer_with_if_modifier.txt +++ /dev/null @@ -1,23 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IfNode (location: (1,0)-(1,12)) - ├── flags: newline - ├── if_keyword_loc: (1,5)-(1,7) = "if" - ├── predicate: - │ @ TrueNode (location: (1,8)-(1,12)) - │ └── flags: static_literal - ├── then_keyword_loc: ∅ - ├── statements: - │ @ StatementsNode (location: (1,0)-(1,5)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ IntegerNode (location: (1,0)-(1,5)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 1234 - ├── subsequent: ∅ - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/seattlerb/interpolated_symbol_array_line_breaks.txt b/test/prism/snapshots/seattlerb/interpolated_symbol_array_line_breaks.txt deleted file mode 100644 index 9a4d00cb29..0000000000 --- a/test/prism/snapshots/seattlerb/interpolated_symbol_array_line_breaks.txt +++ /dev/null @@ -1,27 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,1)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ ArrayNode (location: (1,0)-(4,1)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 2) - │ │ ├── @ SymbolNode (location: (2,0)-(2,1)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (2,0)-(2,1) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ └── @ SymbolNode (location: (3,0)-(3,1)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (3,0)-(3,1) = "b" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b" - │ ├── opening_loc: (1,0)-(1,3) = "%I(" - │ └── closing_loc: (4,0)-(4,1) = ")" - └── @ IntegerNode (location: (5,0)-(5,1)) - ├── flags: newline, static_literal, decimal - └── value: 1 diff --git a/test/prism/snapshots/seattlerb/interpolated_word_array_line_breaks.txt b/test/prism/snapshots/seattlerb/interpolated_word_array_line_breaks.txt deleted file mode 100644 index 88054f0935..0000000000 --- a/test/prism/snapshots/seattlerb/interpolated_word_array_line_breaks.txt +++ /dev/null @@ -1,27 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,1)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ ArrayNode (location: (1,0)-(4,1)) - │ ├── flags: newline - │ ├── elements: (length: 2) - │ │ ├── @ StringNode (location: (2,0)-(2,1)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (2,0)-(2,1) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ └── @ StringNode (location: (3,0)-(3,1)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (3,0)-(3,1) = "b" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b" - │ ├── opening_loc: (1,0)-(1,3) = "%W(" - │ └── closing_loc: (4,0)-(4,1) = ")" - └── @ IntegerNode (location: (5,0)-(5,1)) - ├── flags: newline, static_literal, decimal - └── value: 1 diff --git a/test/prism/snapshots/seattlerb/iter_args_1.txt b/test/prism/snapshots/seattlerb/iter_args_1.txt deleted file mode 100644 index 7c3e7a3e22..0000000000 --- a/test/prism/snapshots/seattlerb/iter_args_1.txt +++ /dev/null @@ -1,45 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,11)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,11)) - ├── flags: ∅ - ├── locals: [:a, :b] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,9)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,8)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ └── @ RequiredParameterNode (location: (1,7)-(1,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :b - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,8)-(1,9) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,10)-(1,11) = "}" diff --git a/test/prism/snapshots/seattlerb/iter_args_10_1.txt b/test/prism/snapshots/seattlerb/iter_args_10_1.txt deleted file mode 100644 index b8d908757a..0000000000 --- a/test/prism/snapshots/seattlerb/iter_args_10_1.txt +++ /dev/null @@ -1,56 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,21)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,21)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,21)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,21)) - ├── flags: ∅ - ├── locals: [:a, :b, :c] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,19)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,18)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,8)-(1,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (1,8)-(1,9) = "b" - │ │ │ ├── operator_loc: (1,10)-(1,11) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,12)-(1,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 42 - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (1,16)-(1,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ ├── name_loc: (1,17)-(1,18) = "c" - │ │ │ └── operator_loc: (1,16)-(1,17) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,18)-(1,19) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,20)-(1,21) = "}" diff --git a/test/prism/snapshots/seattlerb/iter_args_10_2.txt b/test/prism/snapshots/seattlerb/iter_args_10_2.txt deleted file mode 100644 index 4c668599e1..0000000000 --- a/test/prism/snapshots/seattlerb/iter_args_10_2.txt +++ /dev/null @@ -1,61 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,25)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,25)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,25)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,25)) - ├── flags: ∅ - ├── locals: [:a, :b, :c, :d] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,23)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,22)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,8)-(1,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (1,8)-(1,9) = "b" - │ │ │ ├── operator_loc: (1,10)-(1,11) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,12)-(1,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 42 - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (1,16)-(1,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ ├── name_loc: (1,17)-(1,18) = "c" - │ │ │ └── operator_loc: (1,16)-(1,17) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (1,20)-(1,22)) - │ │ ├── flags: ∅ - │ │ ├── name: :d - │ │ ├── name_loc: (1,21)-(1,22) = "d" - │ │ └── operator_loc: (1,20)-(1,21) = "&" - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,22)-(1,23) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,24)-(1,25) = "}" diff --git a/test/prism/snapshots/seattlerb/iter_args_11_1.txt b/test/prism/snapshots/seattlerb/iter_args_11_1.txt deleted file mode 100644 index 6e08e008ed..0000000000 --- a/test/prism/snapshots/seattlerb/iter_args_11_1.txt +++ /dev/null @@ -1,59 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,24)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,24)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,24)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,24)) - ├── flags: ∅ - ├── locals: [:a, :b, :c, :d] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,22)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,21)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,8)-(1,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (1,8)-(1,9) = "b" - │ │ │ ├── operator_loc: (1,10)-(1,11) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,12)-(1,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 42 - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (1,16)-(1,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ ├── name_loc: (1,17)-(1,18) = "c" - │ │ │ └── operator_loc: (1,16)-(1,17) = "*" - │ │ ├── posts: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,20)-(1,21)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :d - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,21)-(1,22) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,23)-(1,24) = "}" diff --git a/test/prism/snapshots/seattlerb/iter_args_11_2.txt b/test/prism/snapshots/seattlerb/iter_args_11_2.txt deleted file mode 100644 index 04a15a3310..0000000000 --- a/test/prism/snapshots/seattlerb/iter_args_11_2.txt +++ /dev/null @@ -1,64 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,28)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,28)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,28)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,28)) - ├── flags: ∅ - ├── locals: [:a, :b, :c, :d, :e] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,26)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,25)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,8)-(1,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (1,8)-(1,9) = "b" - │ │ │ ├── operator_loc: (1,10)-(1,11) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,12)-(1,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 42 - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (1,16)-(1,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ ├── name_loc: (1,17)-(1,18) = "c" - │ │ │ └── operator_loc: (1,16)-(1,17) = "*" - │ │ ├── posts: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,20)-(1,21)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :d - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (1,23)-(1,25)) - │ │ ├── flags: ∅ - │ │ ├── name: :e - │ │ ├── name_loc: (1,24)-(1,25) = "e" - │ │ └── operator_loc: (1,23)-(1,24) = "&" - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,25)-(1,26) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,27)-(1,28) = "}" diff --git a/test/prism/snapshots/seattlerb/iter_args_2__19.txt b/test/prism/snapshots/seattlerb/iter_args_2__19.txt deleted file mode 100644 index 3015ea93c5..0000000000 --- a/test/prism/snapshots/seattlerb/iter_args_2__19.txt +++ /dev/null @@ -1,52 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,14)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,14)) - ├── flags: ∅ - ├── locals: [:a, :b] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,12)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,11)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ MultiTargetNode (location: (1,5)-(1,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 2) - │ │ │ │ ├── @ RequiredParameterNode (location: (1,6)-(1,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :a - │ │ │ │ └── @ RequiredParameterNode (location: (1,9)-(1,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :b - │ │ │ ├── rest: ∅ - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: (1,5)-(1,6) = "(" - │ │ │ └── rparen_loc: (1,10)-(1,11) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,11)-(1,12) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,13)-(1,14) = "}" diff --git a/test/prism/snapshots/seattlerb/iter_args_3.txt b/test/prism/snapshots/seattlerb/iter_args_3.txt deleted file mode 100644 index d85fd374aa..0000000000 --- a/test/prism/snapshots/seattlerb/iter_args_3.txt +++ /dev/null @@ -1,58 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,20)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,20)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,20)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,20)) - ├── flags: ∅ - ├── locals: [:a, :b, :c, :d] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,18)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,17)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 3) - │ │ │ ├── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── @ MultiTargetNode (location: (1,8)-(1,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── lefts: (length: 2) - │ │ │ │ │ ├── @ RequiredParameterNode (location: (1,9)-(1,10)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── name: :b - │ │ │ │ │ └── @ RequiredParameterNode (location: (1,12)-(1,13)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :c - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── rights: (length: 0) - │ │ │ │ ├── lparen_loc: (1,8)-(1,9) = "(" - │ │ │ │ └── rparen_loc: (1,13)-(1,14) = ")" - │ │ │ └── @ RequiredParameterNode (location: (1,16)-(1,17)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :d - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,17)-(1,18) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,19)-(1,20) = "}" diff --git a/test/prism/snapshots/seattlerb/iter_args_4.txt b/test/prism/snapshots/seattlerb/iter_args_4.txt deleted file mode 100644 index 8f5a7043fe..0000000000 --- a/test/prism/snapshots/seattlerb/iter_args_4.txt +++ /dev/null @@ -1,50 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,16)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,16)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,16)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,16)) - ├── flags: ∅ - ├── locals: [:a, :b, :c] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,14)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,13)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (1,8)-(1,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (1,9)-(1,10) = "b" - │ │ │ └── operator_loc: (1,8)-(1,9) = "*" - │ │ ├── posts: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,12)-(1,13)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :c - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,13)-(1,14) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,15)-(1,16) = "}" diff --git a/test/prism/snapshots/seattlerb/iter_args_5.txt b/test/prism/snapshots/seattlerb/iter_args_5.txt deleted file mode 100644 index 227703347d..0000000000 --- a/test/prism/snapshots/seattlerb/iter_args_5.txt +++ /dev/null @@ -1,47 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,13)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,13)) - ├── flags: ∅ - ├── locals: [:a, :b] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,11)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (1,8)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (1,9)-(1,10) = "b" - │ │ └── operator_loc: (1,8)-(1,9) = "&" - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,10)-(1,11) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,12)-(1,13) = "}" diff --git a/test/prism/snapshots/seattlerb/iter_args_6.txt b/test/prism/snapshots/seattlerb/iter_args_6.txt deleted file mode 100644 index 40f75f5e83..0000000000 --- a/test/prism/snapshots/seattlerb/iter_args_6.txt +++ /dev/null @@ -1,54 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,18)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,18)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,18)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,18)) - ├── flags: ∅ - ├── locals: [:a, :b, :c] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,16)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,15)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,8)-(1,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (1,8)-(1,9) = "b" - │ │ │ ├── operator_loc: (1,9)-(1,10) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,10)-(1,12)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 42 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,14)-(1,15)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :c - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,15)-(1,16) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,17)-(1,18) = "}" diff --git a/test/prism/snapshots/seattlerb/iter_args_7_1.txt b/test/prism/snapshots/seattlerb/iter_args_7_1.txt deleted file mode 100644 index fd0934b6f2..0000000000 --- a/test/prism/snapshots/seattlerb/iter_args_7_1.txt +++ /dev/null @@ -1,53 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,18)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,18)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,18)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,18)) - ├── flags: ∅ - ├── locals: [:a, :b] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,16)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,15)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,5)-(1,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ ├── name_loc: (1,5)-(1,6) = "a" - │ │ │ ├── operator_loc: (1,7)-(1,8) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,9)-(1,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 42 - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (1,13)-(1,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (1,14)-(1,15) = "b" - │ │ │ └── operator_loc: (1,13)-(1,14) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,15)-(1,16) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,17)-(1,18) = "}" diff --git a/test/prism/snapshots/seattlerb/iter_args_7_2.txt b/test/prism/snapshots/seattlerb/iter_args_7_2.txt deleted file mode 100644 index 7fe4912654..0000000000 --- a/test/prism/snapshots/seattlerb/iter_args_7_2.txt +++ /dev/null @@ -1,58 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,22)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,22)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,22)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,22)) - ├── flags: ∅ - ├── locals: [:a, :b, :c] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,20)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,19)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,5)-(1,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ ├── name_loc: (1,5)-(1,6) = "a" - │ │ │ ├── operator_loc: (1,7)-(1,8) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,9)-(1,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 42 - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (1,13)-(1,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (1,14)-(1,15) = "b" - │ │ │ └── operator_loc: (1,13)-(1,14) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (1,17)-(1,19)) - │ │ ├── flags: ∅ - │ │ ├── name: :c - │ │ ├── name_loc: (1,18)-(1,19) = "c" - │ │ └── operator_loc: (1,17)-(1,18) = "&" - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,19)-(1,20) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,21)-(1,22) = "}" diff --git a/test/prism/snapshots/seattlerb/iter_args_8_1.txt b/test/prism/snapshots/seattlerb/iter_args_8_1.txt deleted file mode 100644 index 89d73272ed..0000000000 --- a/test/prism/snapshots/seattlerb/iter_args_8_1.txt +++ /dev/null @@ -1,56 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,21)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,21)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,21)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,21)) - ├── flags: ∅ - ├── locals: [:a, :b, :c] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,19)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,18)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,5)-(1,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ ├── name_loc: (1,5)-(1,6) = "a" - │ │ │ ├── operator_loc: (1,7)-(1,8) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,9)-(1,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 42 - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (1,13)-(1,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (1,14)-(1,15) = "b" - │ │ │ └── operator_loc: (1,13)-(1,14) = "*" - │ │ ├── posts: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,17)-(1,18)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :c - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,18)-(1,19) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,20)-(1,21) = "}" diff --git a/test/prism/snapshots/seattlerb/iter_args_8_2.txt b/test/prism/snapshots/seattlerb/iter_args_8_2.txt deleted file mode 100644 index 5cb728ec55..0000000000 --- a/test/prism/snapshots/seattlerb/iter_args_8_2.txt +++ /dev/null @@ -1,61 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,25)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,25)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,25)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,25)) - ├── flags: ∅ - ├── locals: [:a, :b, :c, :d] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,23)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,22)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,5)-(1,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ ├── name_loc: (1,5)-(1,6) = "a" - │ │ │ ├── operator_loc: (1,7)-(1,8) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,9)-(1,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 42 - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (1,13)-(1,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (1,14)-(1,15) = "b" - │ │ │ └── operator_loc: (1,13)-(1,14) = "*" - │ │ ├── posts: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,17)-(1,18)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :c - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (1,20)-(1,22)) - │ │ ├── flags: ∅ - │ │ ├── name: :d - │ │ ├── name_loc: (1,21)-(1,22) = "d" - │ │ └── operator_loc: (1,20)-(1,21) = "&" - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,22)-(1,23) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,24)-(1,25) = "}" diff --git a/test/prism/snapshots/seattlerb/iter_args_9_1.txt b/test/prism/snapshots/seattlerb/iter_args_9_1.txt deleted file mode 100644 index 8f47ae6b54..0000000000 --- a/test/prism/snapshots/seattlerb/iter_args_9_1.txt +++ /dev/null @@ -1,51 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,17)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,17)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,17)) - ├── flags: ∅ - ├── locals: [:a, :b] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,15)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,14)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,5)-(1,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ ├── name_loc: (1,5)-(1,6) = "a" - │ │ │ ├── operator_loc: (1,7)-(1,8) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,9)-(1,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 42 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,13)-(1,14)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :b - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,14)-(1,15) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,16)-(1,17) = "}" diff --git a/test/prism/snapshots/seattlerb/iter_args_9_2.txt b/test/prism/snapshots/seattlerb/iter_args_9_2.txt deleted file mode 100644 index 686c249cbf..0000000000 --- a/test/prism/snapshots/seattlerb/iter_args_9_2.txt +++ /dev/null @@ -1,56 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,21)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,21)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,21)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,21)) - ├── flags: ∅ - ├── locals: [:a, :b, :c] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,19)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,18)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,5)-(1,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ ├── name_loc: (1,5)-(1,6) = "a" - │ │ │ ├── operator_loc: (1,7)-(1,8) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,9)-(1,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 42 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,13)-(1,14)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :b - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (1,16)-(1,18)) - │ │ ├── flags: ∅ - │ │ ├── name: :c - │ │ ├── name_loc: (1,17)-(1,18) = "c" - │ │ └── operator_loc: (1,16)-(1,17) = "&" - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,18)-(1,19) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,20)-(1,21) = "}" diff --git a/test/prism/snapshots/seattlerb/iter_kwarg.txt b/test/prism/snapshots/seattlerb/iter_kwarg.txt deleted file mode 100644 index c5d5a74768..0000000000 --- a/test/prism/snapshots/seattlerb/iter_kwarg.txt +++ /dev/null @@ -1,47 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,12)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,12)) - ├── flags: ∅ - ├── locals: [:b] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,10)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,9)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ OptionalKeywordParameterNode (location: (1,5)-(1,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (1,5)-(1,7) = "b:" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,8)-(1,9)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,9)-(1,10) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,11)-(1,12) = "}" diff --git a/test/prism/snapshots/seattlerb/iter_kwarg_kwsplat.txt b/test/prism/snapshots/seattlerb/iter_kwarg_kwsplat.txt deleted file mode 100644 index bab054537b..0000000000 --- a/test/prism/snapshots/seattlerb/iter_kwarg_kwsplat.txt +++ /dev/null @@ -1,52 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,17)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,17)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,17)) - ├── flags: ∅ - ├── locals: [:b, :c] - ├── parameters: - │ @ BlockParametersNode (location: (1,4)-(1,15)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,5)-(1,14)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ OptionalKeywordParameterNode (location: (1,5)-(1,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (1,5)-(1,7) = "b:" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,8)-(1,9)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── keyword_rest: - │ │ │ @ KeywordRestParameterNode (location: (1,11)-(1,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ ├── name_loc: (1,13)-(1,14) = "c" - │ │ │ └── operator_loc: (1,11)-(1,13) = "**" - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,4)-(1,5) = "|" - │ └── closing_loc: (1,14)-(1,15) = "|" - ├── body: ∅ - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,16)-(1,17) = "}" diff --git a/test/prism/snapshots/seattlerb/label_vs_string.txt b/test/prism/snapshots/seattlerb/label_vs_string.txt deleted file mode 100644 index 1de1fd1ff7..0000000000 --- a/test/prism/snapshots/seattlerb/label_vs_string.txt +++ /dev/null @@ -1,36 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,1)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(2,1)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,4)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :_buf - │ ├── message_loc: (1,0)-(1,4) = "_buf" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :<< - ├── message_loc: (1,5)-(1,7) = "<<" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,8)-(2,1)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ StringNode (location: (1,8)-(2,1)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,8)-(1,9) = "'" - │ ├── content_loc: (1,9)-(2,0) = ":\n" - │ ├── closing_loc: (2,0)-(2,1) = "'" - │ └── unescaped: ":\n" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/lambda_do_vs_brace.txt b/test/prism/snapshots/seattlerb/lambda_do_vs_brace.txt deleted file mode 100644 index dc08fa4de3..0000000000 --- a/test/prism/snapshots/seattlerb/lambda_do_vs_brace.txt +++ /dev/null @@ -1,103 +0,0 @@ -@ ProgramNode (location: (1,0)-(7,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(7,9)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ CallNode (location: (1,0)-(1,11)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (1,0)-(1,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,2)-(1,11)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ LambdaNode (location: (1,2)-(1,11)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── operator_loc: (1,2)-(1,4) = "->" - │ │ ├── opening_loc: (1,5)-(1,7) = "do" - │ │ ├── closing_loc: (1,8)-(1,11) = "end" - │ │ ├── parameters: ∅ - │ │ └── body: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (3,0)-(3,7)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (3,0)-(3,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (3,2)-(3,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ LambdaNode (location: (3,2)-(3,7)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── operator_loc: (3,2)-(3,4) = "->" - │ │ ├── opening_loc: (3,5)-(3,6) = "{" - │ │ ├── closing_loc: (3,6)-(3,7) = "}" - │ │ ├── parameters: ∅ - │ │ └── body: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (5,0)-(5,13)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (5,0)-(5,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (5,2)-(5,13)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ LambdaNode (location: (5,2)-(5,13)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── operator_loc: (5,2)-(5,4) = "->" - │ │ ├── opening_loc: (5,7)-(5,9) = "do" - │ │ ├── closing_loc: (5,10)-(5,13) = "end" - │ │ ├── parameters: - │ │ │ @ BlockParametersNode (location: (5,4)-(5,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parameters: ∅ - │ │ │ ├── locals: (length: 0) - │ │ │ ├── opening_loc: (5,4)-(5,5) = "(" - │ │ │ └── closing_loc: (5,5)-(5,6) = ")" - │ │ └── body: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (7,0)-(7,9)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (7,0)-(7,1) = "f" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (7,2)-(7,9)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ LambdaNode (location: (7,2)-(7,9)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── operator_loc: (7,2)-(7,4) = "->" - │ ├── opening_loc: (7,7)-(7,8) = "{" - │ ├── closing_loc: (7,8)-(7,9) = "}" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (7,4)-(7,6)) - │ │ ├── flags: ∅ - │ │ ├── parameters: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (7,4)-(7,5) = "(" - │ │ └── closing_loc: (7,5)-(7,6) = ")" - │ └── body: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/lasgn_arg_rescue_arg.txt b/test/prism/snapshots/seattlerb/lasgn_arg_rescue_arg.txt deleted file mode 100644 index 30324ac560..0000000000 --- a/test/prism/snapshots/seattlerb/lasgn_arg_rescue_arg.txt +++ /dev/null @@ -1,25 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableWriteNode (location: (1,0)-(1,14)) - ├── flags: newline - ├── name: :a - ├── depth: 0 - ├── name_loc: (1,0)-(1,1) = "a" - ├── value: - │ @ RescueModifierNode (location: (1,4)-(1,14)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ IntegerNode (location: (1,4)-(1,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── keyword_loc: (1,6)-(1,12) = "rescue" - │ └── rescue_expression: - │ @ IntegerNode (location: (1,13)-(1,14)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - └── operator_loc: (1,2)-(1,3) = "=" diff --git a/test/prism/snapshots/seattlerb/lasgn_call_bracket_rescue_arg.txt b/test/prism/snapshots/seattlerb/lasgn_call_bracket_rescue_arg.txt deleted file mode 100644 index e6fba67dbd..0000000000 --- a/test/prism/snapshots/seattlerb/lasgn_call_bracket_rescue_arg.txt +++ /dev/null @@ -1,38 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,17)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(1,17)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableWriteNode (location: (1,0)-(1,17)) - ├── flags: newline - ├── name: :a - ├── depth: 0 - ├── name_loc: (1,0)-(1,1) = "a" - ├── value: - │ @ RescueModifierNode (location: (1,4)-(1,17)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (1,4)-(1,8)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (1,4)-(1,5) = "b" - │ │ ├── opening_loc: (1,5)-(1,6) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (1,6)-(1,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (1,6)-(1,7)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: (1,7)-(1,8) = ")" - │ │ └── block: ∅ - │ ├── keyword_loc: (1,9)-(1,15) = "rescue" - │ └── rescue_expression: - │ @ IntegerNode (location: (1,16)-(1,17)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - └── operator_loc: (1,2)-(1,3) = "=" diff --git a/test/prism/snapshots/seattlerb/lasgn_call_nobracket_rescue_arg.txt b/test/prism/snapshots/seattlerb/lasgn_call_nobracket_rescue_arg.txt deleted file mode 100644 index 15e77296ce..0000000000 --- a/test/prism/snapshots/seattlerb/lasgn_call_nobracket_rescue_arg.txt +++ /dev/null @@ -1,38 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,16)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(1,16)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableWriteNode (location: (1,0)-(1,16)) - ├── flags: newline - ├── name: :a - ├── depth: 0 - ├── name_loc: (1,0)-(1,1) = "a" - ├── value: - │ @ RescueModifierNode (location: (1,4)-(1,16)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (1,4)-(1,7)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (1,4)-(1,5) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (1,6)-(1,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (1,6)-(1,7)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── keyword_loc: (1,8)-(1,14) = "rescue" - │ └── rescue_expression: - │ @ IntegerNode (location: (1,15)-(1,16)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - └── operator_loc: (1,2)-(1,3) = "=" diff --git a/test/prism/snapshots/seattlerb/lasgn_command.txt b/test/prism/snapshots/seattlerb/lasgn_command.txt deleted file mode 100644 index 5aa47305c2..0000000000 --- a/test/prism/snapshots/seattlerb/lasgn_command.txt +++ /dev/null @@ -1,40 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableWriteNode (location: (1,0)-(1,9)) - ├── flags: newline - ├── name: :a - ├── depth: 0 - ├── name_loc: (1,0)-(1,1) = "a" - ├── value: - │ @ CallNode (location: (1,4)-(1,9)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ CallNode (location: (1,4)-(1,5)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (1,4)-(1,5) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (1,5)-(1,6) = "." - │ ├── name: :c - │ ├── message_loc: (1,6)-(1,7) = "c" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,8)-(1,9)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (1,8)-(1,9)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── operator_loc: (1,2)-(1,3) = "=" diff --git a/test/prism/snapshots/seattlerb/lasgn_env.txt b/test/prism/snapshots/seattlerb/lasgn_env.txt deleted file mode 100644 index 1f3a6c80d0..0000000000 --- a/test/prism/snapshots/seattlerb/lasgn_env.txt +++ /dev/null @@ -1,17 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,6)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(1,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableWriteNode (location: (1,0)-(1,6)) - ├── flags: newline - ├── name: :a - ├── depth: 0 - ├── name_loc: (1,0)-(1,1) = "a" - ├── value: - │ @ IntegerNode (location: (1,4)-(1,6)) - │ ├── flags: static_literal, decimal - │ └── value: 42 - └── operator_loc: (1,2)-(1,3) = "=" diff --git a/test/prism/snapshots/seattlerb/lasgn_ivar_env.txt b/test/prism/snapshots/seattlerb/lasgn_ivar_env.txt deleted file mode 100644 index d34b46cba1..0000000000 --- a/test/prism/snapshots/seattlerb/lasgn_ivar_env.txt +++ /dev/null @@ -1,16 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InstanceVariableWriteNode (location: (1,0)-(1,7)) - ├── flags: newline - ├── name: :@a - ├── name_loc: (1,0)-(1,2) = "@a" - ├── value: - │ @ IntegerNode (location: (1,5)-(1,7)) - │ ├── flags: static_literal, decimal - │ └── value: 42 - └── operator_loc: (1,3)-(1,4) = "=" diff --git a/test/prism/snapshots/seattlerb/lasgn_lasgn_command_call.txt b/test/prism/snapshots/seattlerb/lasgn_lasgn_command_call.txt deleted file mode 100644 index 012be1771a..0000000000 --- a/test/prism/snapshots/seattlerb/lasgn_lasgn_command_call.txt +++ /dev/null @@ -1,37 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [:a, :b] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableWriteNode (location: (1,0)-(1,11)) - ├── flags: newline - ├── name: :a - ├── depth: 0 - ├── name_loc: (1,0)-(1,1) = "a" - ├── value: - │ @ LocalVariableWriteNode (location: (1,4)-(1,11)) - │ ├── flags: ∅ - │ ├── name: :b - │ ├── depth: 0 - │ ├── name_loc: (1,4)-(1,5) = "b" - │ ├── value: - │ │ @ CallNode (location: (1,8)-(1,11)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :c - │ │ ├── message_loc: (1,8)-(1,9) = "c" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (1,10)-(1,11)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (1,10)-(1,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (1,6)-(1,7) = "=" - └── operator_loc: (1,2)-(1,3) = "=" diff --git a/test/prism/snapshots/seattlerb/lasgn_middle_splat.txt b/test/prism/snapshots/seattlerb/lasgn_middle_splat.txt deleted file mode 100644 index ebd47f54b6..0000000000 --- a/test/prism/snapshots/seattlerb/lasgn_middle_splat.txt +++ /dev/null @@ -1,53 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableWriteNode (location: (1,0)-(1,12)) - ├── flags: newline - ├── name: :a - ├── depth: 0 - ├── name_loc: (1,0)-(1,1) = "a" - ├── value: - │ @ ArrayNode (location: (1,4)-(1,12)) - │ ├── flags: contains_splat - │ ├── elements: (length: 3) - │ │ ├── @ CallNode (location: (1,4)-(1,5)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (1,4)-(1,5) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── @ SplatNode (location: (1,7)-(1,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (1,7)-(1,8) = "*" - │ │ │ └── expression: - │ │ │ @ CallNode (location: (1,8)-(1,9)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :c - │ │ │ ├── message_loc: (1,8)-(1,9) = "c" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ CallNode (location: (1,11)-(1,12)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :d - │ │ ├── message_loc: (1,11)-(1,12) = "d" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: ∅ - │ └── closing_loc: ∅ - └── operator_loc: (1,2)-(1,3) = "=" diff --git a/test/prism/snapshots/seattlerb/magic_encoding_comment.txt b/test/prism/snapshots/seattlerb/magic_encoding_comment.txt deleted file mode 100644 index 9d4cec9231..0000000000 --- a/test/prism/snapshots/seattlerb/magic_encoding_comment.txt +++ /dev/null @@ -1,55 +0,0 @@ -@ ProgramNode (location: (2,0)-(3,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (2,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ClassNode (location: (2,0)-(3,3)) - ├── flags: newline - ├── locals: [] - ├── class_keyword_loc: (2,0)-(2,5) = "class" - ├── constant_path: - │ @ ConstantReadNode (location: (2,6)-(2,34)) - │ ├── flags: ∅ - │ └── name: :ExampleUTF8ClassNameVarietà - ├── inheritance_operator_loc: ∅ - ├── superclass: ∅ - ├── body: - │ @ StatementsNode (location: (2,36)-(2,68)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ DefNode (location: (2,36)-(2,68)) - │ ├── flags: newline - │ ├── name: :è - │ ├── name_loc: (2,45)-(2,47) = "è" - │ ├── receiver: - │ │ @ SelfNode (location: (2,40)-(2,44)) - │ │ └── flags: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (2,49)-(2,63)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableWriteNode (location: (2,49)-(2,63)) - │ │ ├── flags: newline - │ │ ├── name: :così - │ │ ├── depth: 0 - │ │ ├── name_loc: (2,49)-(2,54) = "così" - │ │ ├── value: - │ │ │ @ SymbolNode (location: (2,57)-(2,63)) - │ │ │ ├── flags: static_literal - │ │ │ ├── opening_loc: (2,57)-(2,58) = ":" - │ │ │ ├── value_loc: (2,58)-(2,63) = "però" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "però" - │ │ └── operator_loc: (2,55)-(2,56) = "=" - │ ├── locals: [:così] - │ ├── def_keyword_loc: (2,36)-(2,39) = "def" - │ ├── operator_loc: (2,44)-(2,45) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (2,65)-(2,68) = "end" - ├── end_keyword_loc: (3,0)-(3,3) = "end" - └── name: :ExampleUTF8ClassNameVarietà diff --git a/test/prism/snapshots/seattlerb/masgn_anon_splat_arg.txt b/test/prism/snapshots/seattlerb/masgn_anon_splat_arg.txt deleted file mode 100644 index e0546c4ba3..0000000000 --- a/test/prism/snapshots/seattlerb/masgn_anon_splat_arg.txt +++ /dev/null @@ -1,34 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MultiWriteNode (location: (1,0)-(1,8)) - ├── flags: newline - ├── lefts: (length: 0) - ├── rest: - │ @ SplatNode (location: (1,0)-(1,1)) - │ ├── flags: ∅ - │ ├── operator_loc: (1,0)-(1,1) = "*" - │ └── expression: ∅ - ├── rights: (length: 1) - │ └── @ LocalVariableTargetNode (location: (1,3)-(1,4)) - │ ├── flags: ∅ - │ ├── name: :a - │ └── depth: 0 - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (1,5)-(1,6) = "=" - └── value: - @ CallNode (location: (1,7)-(1,8)) - ├── flags: variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :b - ├── message_loc: (1,7)-(1,8) = "b" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/masgn_arg_colon_arg.txt b/test/prism/snapshots/seattlerb/masgn_arg_colon_arg.txt deleted file mode 100644 index 5c22571e91..0000000000 --- a/test/prism/snapshots/seattlerb/masgn_arg_colon_arg.txt +++ /dev/null @@ -1,46 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MultiWriteNode (location: (1,0)-(1,11)) - ├── flags: newline - ├── lefts: (length: 2) - │ ├── @ LocalVariableTargetNode (location: (1,0)-(1,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ └── @ CallTargetNode (location: (1,3)-(1,7)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ CallNode (location: (1,3)-(1,4)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (1,3)-(1,4) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (1,4)-(1,6) = "::" - │ ├── name: :c= - │ └── message_loc: (1,6)-(1,7) = "c" - ├── rest: ∅ - ├── rights: (length: 0) - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (1,8)-(1,9) = "=" - └── value: - @ CallNode (location: (1,10)-(1,11)) - ├── flags: variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :d - ├── message_loc: (1,10)-(1,11) = "d" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/masgn_arg_ident.txt b/test/prism/snapshots/seattlerb/masgn_arg_ident.txt deleted file mode 100644 index 83cd356423..0000000000 --- a/test/prism/snapshots/seattlerb/masgn_arg_ident.txt +++ /dev/null @@ -1,46 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MultiWriteNode (location: (1,0)-(1,10)) - ├── flags: newline - ├── lefts: (length: 2) - │ ├── @ LocalVariableTargetNode (location: (1,0)-(1,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ └── @ CallTargetNode (location: (1,3)-(1,6)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ CallNode (location: (1,3)-(1,4)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (1,3)-(1,4) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (1,4)-(1,5) = "." - │ ├── name: :C= - │ └── message_loc: (1,5)-(1,6) = "C" - ├── rest: ∅ - ├── rights: (length: 0) - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (1,7)-(1,8) = "=" - └── value: - @ CallNode (location: (1,9)-(1,10)) - ├── flags: variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :d - ├── message_loc: (1,9)-(1,10) = "d" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/masgn_arg_splat_arg.txt b/test/prism/snapshots/seattlerb/masgn_arg_splat_arg.txt deleted file mode 100644 index c5a3b9433a..0000000000 --- a/test/prism/snapshots/seattlerb/masgn_arg_splat_arg.txt +++ /dev/null @@ -1,42 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [:a, :b, :c] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MultiWriteNode (location: (1,0)-(1,12)) - ├── flags: newline - ├── lefts: (length: 1) - │ └── @ LocalVariableTargetNode (location: (1,0)-(1,1)) - │ ├── flags: ∅ - │ ├── name: :a - │ └── depth: 0 - ├── rest: - │ @ SplatNode (location: (1,3)-(1,5)) - │ ├── flags: ∅ - │ ├── operator_loc: (1,3)-(1,4) = "*" - │ └── expression: - │ @ LocalVariableTargetNode (location: (1,4)-(1,5)) - │ ├── flags: ∅ - │ ├── name: :b - │ └── depth: 0 - ├── rights: (length: 1) - │ └── @ LocalVariableTargetNode (location: (1,7)-(1,8)) - │ ├── flags: ∅ - │ ├── name: :c - │ └── depth: 0 - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (1,9)-(1,10) = "=" - └── value: - @ CallNode (location: (1,11)-(1,12)) - ├── flags: variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :d - ├── message_loc: (1,11)-(1,12) = "d" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/masgn_colon2.txt b/test/prism/snapshots/seattlerb/masgn_colon2.txt deleted file mode 100644 index 59380bfcd6..0000000000 --- a/test/prism/snapshots/seattlerb/masgn_colon2.txt +++ /dev/null @@ -1,47 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MultiWriteNode (location: (1,0)-(1,14)) - ├── flags: newline - ├── lefts: (length: 2) - │ ├── @ LocalVariableTargetNode (location: (1,0)-(1,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ └── @ ConstantPathTargetNode (location: (1,3)-(1,7)) - │ ├── flags: ∅ - │ ├── parent: - │ │ @ CallNode (location: (1,3)-(1,4)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (1,3)-(1,4) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── name: :C - │ ├── delimiter_loc: (1,4)-(1,6) = "::" - │ └── name_loc: (1,6)-(1,7) = "C" - ├── rest: ∅ - ├── rights: (length: 0) - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (1,8)-(1,9) = "=" - └── value: - @ ArrayNode (location: (1,10)-(1,14)) - ├── flags: static_literal - ├── elements: (length: 2) - │ ├── @ IntegerNode (location: (1,10)-(1,11)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── @ IntegerNode (location: (1,13)-(1,14)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── opening_loc: ∅ - └── closing_loc: ∅ diff --git a/test/prism/snapshots/seattlerb/masgn_colon3.txt b/test/prism/snapshots/seattlerb/masgn_colon3.txt deleted file mode 100644 index e8d0406d20..0000000000 --- a/test/prism/snapshots/seattlerb/masgn_colon3.txt +++ /dev/null @@ -1,39 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,15)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MultiWriteNode (location: (1,0)-(1,15)) - ├── flags: newline - ├── lefts: (length: 2) - │ ├── @ ConstantPathTargetNode (location: (1,0)-(1,3)) - │ │ ├── flags: ∅ - │ │ ├── parent: ∅ - │ │ ├── name: :A - │ │ ├── delimiter_loc: (1,0)-(1,2) = "::" - │ │ └── name_loc: (1,2)-(1,3) = "A" - │ └── @ ConstantPathTargetNode (location: (1,5)-(1,8)) - │ ├── flags: ∅ - │ ├── parent: ∅ - │ ├── name: :B - │ ├── delimiter_loc: (1,5)-(1,7) = "::" - │ └── name_loc: (1,7)-(1,8) = "B" - ├── rest: ∅ - ├── rights: (length: 0) - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (1,9)-(1,10) = "=" - └── value: - @ ArrayNode (location: (1,11)-(1,15)) - ├── flags: static_literal - ├── elements: (length: 2) - │ ├── @ IntegerNode (location: (1,11)-(1,12)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── @ IntegerNode (location: (1,14)-(1,15)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── opening_loc: ∅ - └── closing_loc: ∅ diff --git a/test/prism/snapshots/seattlerb/masgn_command_call.txt b/test/prism/snapshots/seattlerb/masgn_command_call.txt deleted file mode 100644 index 60162e0e42..0000000000 --- a/test/prism/snapshots/seattlerb/masgn_command_call.txt +++ /dev/null @@ -1,48 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MultiWriteNode (location: (1,0)-(1,10)) - ├── flags: newline - ├── lefts: (length: 1) - │ └── @ LocalVariableTargetNode (location: (1,0)-(1,1)) - │ ├── flags: ∅ - │ ├── name: :a - │ └── depth: 0 - ├── rest: - │ @ ImplicitRestNode (location: (1,1)-(1,2)) - │ └── flags: ∅ - ├── rights: (length: 0) - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (1,3)-(1,4) = "=" - └── value: - @ CallNode (location: (1,5)-(1,10)) - ├── flags: ∅ - ├── receiver: - │ @ CallNode (location: (1,5)-(1,6)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :b - │ ├── message_loc: (1,5)-(1,6) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,6)-(1,7) = "." - ├── name: :c - ├── message_loc: (1,7)-(1,8) = "c" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,9)-(1,10)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,9)-(1,10)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/masgn_double_paren.txt b/test/prism/snapshots/seattlerb/masgn_double_paren.txt deleted file mode 100644 index 7497801c26..0000000000 --- a/test/prism/snapshots/seattlerb/masgn_double_paren.txt +++ /dev/null @@ -1,41 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [:a, :b] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MultiWriteNode (location: (1,0)-(1,9)) - ├── flags: newline - ├── lefts: (length: 1) - │ └── @ MultiTargetNode (location: (1,1)-(1,6)) - │ ├── flags: ∅ - │ ├── lefts: (length: 2) - │ │ ├── @ LocalVariableTargetNode (location: (1,2)-(1,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ └── @ LocalVariableTargetNode (location: (1,4)-(1,5)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ └── depth: 0 - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: (1,1)-(1,2) = "(" - │ └── rparen_loc: (1,5)-(1,6) = ")" - ├── rest: ∅ - ├── rights: (length: 0) - ├── lparen_loc: (1,0)-(1,1) = "(" - ├── rparen_loc: (1,6)-(1,7) = ")" - ├── operator_loc: (1,7)-(1,8) = "=" - └── value: - @ CallNode (location: (1,8)-(1,9)) - ├── flags: variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :c - ├── message_loc: (1,8)-(1,9) = "c" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/masgn_lhs_splat.txt b/test/prism/snapshots/seattlerb/masgn_lhs_splat.txt deleted file mode 100644 index 459e13684f..0000000000 --- a/test/prism/snapshots/seattlerb/masgn_lhs_splat.txt +++ /dev/null @@ -1,38 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MultiWriteNode (location: (1,0)-(1,12)) - ├── flags: newline - ├── lefts: (length: 0) - ├── rest: - │ @ SplatNode (location: (1,0)-(1,2)) - │ ├── flags: ∅ - │ ├── operator_loc: (1,0)-(1,1) = "*" - │ └── expression: - │ @ LocalVariableTargetNode (location: (1,1)-(1,2)) - │ ├── flags: ∅ - │ ├── name: :a - │ └── depth: 0 - ├── rights: (length: 0) - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (1,3)-(1,4) = "=" - └── value: - @ ArrayNode (location: (1,5)-(1,12)) - ├── flags: static_literal - ├── elements: (length: 3) - │ ├── @ IntegerNode (location: (1,5)-(1,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── @ IntegerNode (location: (1,8)-(1,9)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ └── @ IntegerNode (location: (1,11)-(1,12)) - │ ├── flags: static_literal, decimal - │ └── value: 3 - ├── opening_loc: ∅ - └── closing_loc: ∅ diff --git a/test/prism/snapshots/seattlerb/masgn_paren.txt b/test/prism/snapshots/seattlerb/masgn_paren.txt deleted file mode 100644 index 6418b6e9fc..0000000000 --- a/test/prism/snapshots/seattlerb/masgn_paren.txt +++ /dev/null @@ -1,44 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [:a, :b] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MultiWriteNode (location: (1,0)-(1,12)) - ├── flags: newline - ├── lefts: (length: 2) - │ ├── @ LocalVariableTargetNode (location: (1,1)-(1,2)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ └── @ LocalVariableTargetNode (location: (1,4)-(1,5)) - │ ├── flags: ∅ - │ ├── name: :b - │ └── depth: 0 - ├── rest: ∅ - ├── rights: (length: 0) - ├── lparen_loc: (1,0)-(1,1) = "(" - ├── rparen_loc: (1,5)-(1,6) = ")" - ├── operator_loc: (1,7)-(1,8) = "=" - └── value: - @ CallNode (location: (1,9)-(1,12)) - ├── flags: ∅ - ├── receiver: - │ @ CallNode (location: (1,9)-(1,10)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :c - │ ├── message_loc: (1,9)-(1,10) = "c" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,10)-(1,11) = "." - ├── name: :d - ├── message_loc: (1,11)-(1,12) = "d" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/masgn_splat_arg.txt b/test/prism/snapshots/seattlerb/masgn_splat_arg.txt deleted file mode 100644 index 0a80c9bbfd..0000000000 --- a/test/prism/snapshots/seattlerb/masgn_splat_arg.txt +++ /dev/null @@ -1,38 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [:a, :b] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MultiWriteNode (location: (1,0)-(1,9)) - ├── flags: newline - ├── lefts: (length: 0) - ├── rest: - │ @ SplatNode (location: (1,0)-(1,2)) - │ ├── flags: ∅ - │ ├── operator_loc: (1,0)-(1,1) = "*" - │ └── expression: - │ @ LocalVariableTargetNode (location: (1,1)-(1,2)) - │ ├── flags: ∅ - │ ├── name: :a - │ └── depth: 0 - ├── rights: (length: 1) - │ └── @ LocalVariableTargetNode (location: (1,4)-(1,5)) - │ ├── flags: ∅ - │ ├── name: :b - │ └── depth: 0 - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (1,6)-(1,7) = "=" - └── value: - @ CallNode (location: (1,8)-(1,9)) - ├── flags: variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :c - ├── message_loc: (1,8)-(1,9) = "c" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/masgn_splat_arg_arg.txt b/test/prism/snapshots/seattlerb/masgn_splat_arg_arg.txt deleted file mode 100644 index 1bd31b5ffc..0000000000 --- a/test/prism/snapshots/seattlerb/masgn_splat_arg_arg.txt +++ /dev/null @@ -1,42 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [:a, :b, :c] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MultiWriteNode (location: (1,0)-(1,12)) - ├── flags: newline - ├── lefts: (length: 0) - ├── rest: - │ @ SplatNode (location: (1,0)-(1,2)) - │ ├── flags: ∅ - │ ├── operator_loc: (1,0)-(1,1) = "*" - │ └── expression: - │ @ LocalVariableTargetNode (location: (1,1)-(1,2)) - │ ├── flags: ∅ - │ ├── name: :a - │ └── depth: 0 - ├── rights: (length: 2) - │ ├── @ LocalVariableTargetNode (location: (1,4)-(1,5)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ └── depth: 0 - │ └── @ LocalVariableTargetNode (location: (1,7)-(1,8)) - │ ├── flags: ∅ - │ ├── name: :c - │ └── depth: 0 - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (1,9)-(1,10) = "=" - └── value: - @ CallNode (location: (1,11)-(1,12)) - ├── flags: variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :d - ├── message_loc: (1,11)-(1,12) = "d" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/masgn_star.txt b/test/prism/snapshots/seattlerb/masgn_star.txt deleted file mode 100644 index 97fdbe0b0f..0000000000 --- a/test/prism/snapshots/seattlerb/masgn_star.txt +++ /dev/null @@ -1,23 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MultiWriteNode (location: (1,0)-(1,5)) - ├── flags: newline - ├── lefts: (length: 0) - ├── rest: - │ @ SplatNode (location: (1,0)-(1,1)) - │ ├── flags: ∅ - │ ├── operator_loc: (1,0)-(1,1) = "*" - │ └── expression: ∅ - ├── rights: (length: 0) - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (1,2)-(1,3) = "=" - └── value: - @ IntegerNode (location: (1,4)-(1,5)) - ├── flags: static_literal, decimal - └── value: 1 diff --git a/test/prism/snapshots/seattlerb/masgn_var_star_var.txt b/test/prism/snapshots/seattlerb/masgn_var_star_var.txt deleted file mode 100644 index 6c92113ff6..0000000000 --- a/test/prism/snapshots/seattlerb/masgn_var_star_var.txt +++ /dev/null @@ -1,38 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [:a, :b] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MultiWriteNode (location: (1,0)-(1,11)) - ├── flags: newline - ├── lefts: (length: 1) - │ └── @ LocalVariableTargetNode (location: (1,0)-(1,1)) - │ ├── flags: ∅ - │ ├── name: :a - │ └── depth: 0 - ├── rest: - │ @ SplatNode (location: (1,3)-(1,4)) - │ ├── flags: ∅ - │ ├── operator_loc: (1,3)-(1,4) = "*" - │ └── expression: ∅ - ├── rights: (length: 1) - │ └── @ LocalVariableTargetNode (location: (1,6)-(1,7)) - │ ├── flags: ∅ - │ ├── name: :b - │ └── depth: 0 - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (1,8)-(1,9) = "=" - └── value: - @ CallNode (location: (1,10)-(1,11)) - ├── flags: variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :c - ├── message_loc: (1,10)-(1,11) = "c" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/messy_op_asgn_lineno.txt b/test/prism/snapshots/seattlerb/messy_op_asgn_lineno.txt deleted file mode 100644 index b11d08a747..0000000000 --- a/test/prism/snapshots/seattlerb/messy_op_asgn_lineno.txt +++ /dev/null @@ -1,66 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,15)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,15)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,15)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ ParenthesesNode (location: (1,2)-(1,15)) - │ ├── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,3)-(1,14)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ ConstantPathOperatorWriteNode (location: (1,3)-(1,14)) - │ │ ├── flags: newline - │ │ ├── target: - │ │ │ @ ConstantPathNode (location: (1,3)-(1,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parent: - │ │ │ │ @ ConstantReadNode (location: (1,3)-(1,4)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :B - │ │ │ ├── name: :C - │ │ │ ├── delimiter_loc: (1,4)-(1,6) = "::" - │ │ │ └── name_loc: (1,6)-(1,7) = "C" - │ │ ├── binary_operator_loc: (1,8)-(1,10) = "*=" - │ │ ├── value: - │ │ │ @ CallNode (location: (1,11)-(1,14)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :d - │ │ │ ├── message_loc: (1,11)-(1,12) = "d" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (1,13)-(1,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (1,13)-(1,14)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :e - │ │ │ │ ├── message_loc: (1,13)-(1,14) = "e" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── binary_operator: :* - │ ├── opening_loc: (1,2)-(1,3) = "(" - │ └── closing_loc: (1,14)-(1,15) = ")" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/method_call_assoc_trailing_comma.txt b/test/prism/snapshots/seattlerb/method_call_assoc_trailing_comma.txt deleted file mode 100644 index 62a45c5d8b..0000000000 --- a/test/prism/snapshots/seattlerb/method_call_assoc_trailing_comma.txt +++ /dev/null @@ -1,44 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,10)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,1)-(1,2) = "." - ├── name: :f - ├── message_loc: (1,2)-(1,3) = "f" - ├── opening_loc: (1,3)-(1,4) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,8)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 1) - │ └── @ KeywordHashNode (location: (1,4)-(1,8)) - │ ├── flags: ∅ - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (1,4)-(1,8)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ IntegerNode (location: (1,4)-(1,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── value: - │ │ @ IntegerNode (location: (1,7)-(1,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ └── operator_loc: (1,5)-(1,7) = "=>" - ├── closing_loc: (1,9)-(1,10) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/method_call_trailing_comma.txt b/test/prism/snapshots/seattlerb/method_call_trailing_comma.txt deleted file mode 100644 index 6a3573ddfc..0000000000 --- a/test/prism/snapshots/seattlerb/method_call_trailing_comma.txt +++ /dev/null @@ -1,33 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,7)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,1)-(1,2) = "." - ├── name: :f - ├── message_loc: (1,2)-(1,3) = "f" - ├── opening_loc: (1,3)-(1,4) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,5)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,4)-(1,5)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: (1,6)-(1,7) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/mlhs_back_anonsplat.txt b/test/prism/snapshots/seattlerb/mlhs_back_anonsplat.txt deleted file mode 100644 index 0cfc1b3c60..0000000000 --- a/test/prism/snapshots/seattlerb/mlhs_back_anonsplat.txt +++ /dev/null @@ -1,42 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [:a, :b, :c] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MultiWriteNode (location: (1,0)-(1,14)) - ├── flags: newline - ├── lefts: (length: 3) - │ ├── @ LocalVariableTargetNode (location: (1,0)-(1,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── @ LocalVariableTargetNode (location: (1,3)-(1,4)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ └── depth: 0 - │ └── @ LocalVariableTargetNode (location: (1,6)-(1,7)) - │ ├── flags: ∅ - │ ├── name: :c - │ └── depth: 0 - ├── rest: - │ @ SplatNode (location: (1,9)-(1,10)) - │ ├── flags: ∅ - │ ├── operator_loc: (1,9)-(1,10) = "*" - │ └── expression: ∅ - ├── rights: (length: 0) - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (1,11)-(1,12) = "=" - └── value: - @ CallNode (location: (1,13)-(1,14)) - ├── flags: variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,13)-(1,14) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/mlhs_back_splat.txt b/test/prism/snapshots/seattlerb/mlhs_back_splat.txt deleted file mode 100644 index 1d9aab3830..0000000000 --- a/test/prism/snapshots/seattlerb/mlhs_back_splat.txt +++ /dev/null @@ -1,46 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,15)) -├── flags: ∅ -├── locals: [:a, :b, :c, :s] -└── statements: - @ StatementsNode (location: (1,0)-(1,15)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MultiWriteNode (location: (1,0)-(1,15)) - ├── flags: newline - ├── lefts: (length: 3) - │ ├── @ LocalVariableTargetNode (location: (1,0)-(1,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── @ LocalVariableTargetNode (location: (1,3)-(1,4)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ └── depth: 0 - │ └── @ LocalVariableTargetNode (location: (1,6)-(1,7)) - │ ├── flags: ∅ - │ ├── name: :c - │ └── depth: 0 - ├── rest: - │ @ SplatNode (location: (1,9)-(1,11)) - │ ├── flags: ∅ - │ ├── operator_loc: (1,9)-(1,10) = "*" - │ └── expression: - │ @ LocalVariableTargetNode (location: (1,10)-(1,11)) - │ ├── flags: ∅ - │ ├── name: :s - │ └── depth: 0 - ├── rights: (length: 0) - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (1,12)-(1,13) = "=" - └── value: - @ CallNode (location: (1,14)-(1,15)) - ├── flags: variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,14)-(1,15) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/mlhs_front_anonsplat.txt b/test/prism/snapshots/seattlerb/mlhs_front_anonsplat.txt deleted file mode 100644 index d98d4dedd3..0000000000 --- a/test/prism/snapshots/seattlerb/mlhs_front_anonsplat.txt +++ /dev/null @@ -1,42 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [:x, :y, :z] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MultiWriteNode (location: (1,0)-(1,14)) - ├── flags: newline - ├── lefts: (length: 0) - ├── rest: - │ @ SplatNode (location: (1,0)-(1,1)) - │ ├── flags: ∅ - │ ├── operator_loc: (1,0)-(1,1) = "*" - │ └── expression: ∅ - ├── rights: (length: 3) - │ ├── @ LocalVariableTargetNode (location: (1,3)-(1,4)) - │ │ ├── flags: ∅ - │ │ ├── name: :x - │ │ └── depth: 0 - │ ├── @ LocalVariableTargetNode (location: (1,6)-(1,7)) - │ │ ├── flags: ∅ - │ │ ├── name: :y - │ │ └── depth: 0 - │ └── @ LocalVariableTargetNode (location: (1,9)-(1,10)) - │ ├── flags: ∅ - │ ├── name: :z - │ └── depth: 0 - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (1,11)-(1,12) = "=" - └── value: - @ CallNode (location: (1,13)-(1,14)) - ├── flags: variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,13)-(1,14) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/mlhs_front_splat.txt b/test/prism/snapshots/seattlerb/mlhs_front_splat.txt deleted file mode 100644 index 85016f0ca8..0000000000 --- a/test/prism/snapshots/seattlerb/mlhs_front_splat.txt +++ /dev/null @@ -1,46 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,15)) -├── flags: ∅ -├── locals: [:s, :x, :y, :z] -└── statements: - @ StatementsNode (location: (1,0)-(1,15)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MultiWriteNode (location: (1,0)-(1,15)) - ├── flags: newline - ├── lefts: (length: 0) - ├── rest: - │ @ SplatNode (location: (1,0)-(1,2)) - │ ├── flags: ∅ - │ ├── operator_loc: (1,0)-(1,1) = "*" - │ └── expression: - │ @ LocalVariableTargetNode (location: (1,1)-(1,2)) - │ ├── flags: ∅ - │ ├── name: :s - │ └── depth: 0 - ├── rights: (length: 3) - │ ├── @ LocalVariableTargetNode (location: (1,4)-(1,5)) - │ │ ├── flags: ∅ - │ │ ├── name: :x - │ │ └── depth: 0 - │ ├── @ LocalVariableTargetNode (location: (1,7)-(1,8)) - │ │ ├── flags: ∅ - │ │ ├── name: :y - │ │ └── depth: 0 - │ └── @ LocalVariableTargetNode (location: (1,10)-(1,11)) - │ ├── flags: ∅ - │ ├── name: :z - │ └── depth: 0 - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (1,12)-(1,13) = "=" - └── value: - @ CallNode (location: (1,14)-(1,15)) - ├── flags: variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,14)-(1,15) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/mlhs_keyword.txt b/test/prism/snapshots/seattlerb/mlhs_keyword.txt deleted file mode 100644 index 22a0391e4a..0000000000 --- a/test/prism/snapshots/seattlerb/mlhs_keyword.txt +++ /dev/null @@ -1,34 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,16)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,16)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,16)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,1)-(1,2) = "." - ├── name: :!= - ├── message_loc: (1,2)-(1,4) = "!=" - ├── opening_loc: (1,4)-(1,5) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (1,5)-(1,15)) - │ ├── flags: ∅ - │ └── arguments: (length: 2) - │ ├── @ TrueNode (location: (1,5)-(1,9)) - │ │ └── flags: static_literal - │ └── @ TrueNode (location: (1,11)-(1,15)) - │ └── flags: static_literal - ├── closing_loc: (1,15)-(1,16) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/mlhs_mid_anonsplat.txt b/test/prism/snapshots/seattlerb/mlhs_mid_anonsplat.txt deleted file mode 100644 index 7a0894db30..0000000000 --- a/test/prism/snapshots/seattlerb/mlhs_mid_anonsplat.txt +++ /dev/null @@ -1,54 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,23)) -├── flags: ∅ -├── locals: [:a, :b, :c, :x, :y, :z] -└── statements: - @ StatementsNode (location: (1,0)-(1,23)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MultiWriteNode (location: (1,0)-(1,23)) - ├── flags: newline - ├── lefts: (length: 3) - │ ├── @ LocalVariableTargetNode (location: (1,0)-(1,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── @ LocalVariableTargetNode (location: (1,3)-(1,4)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ └── depth: 0 - │ └── @ LocalVariableTargetNode (location: (1,6)-(1,7)) - │ ├── flags: ∅ - │ ├── name: :c - │ └── depth: 0 - ├── rest: - │ @ SplatNode (location: (1,9)-(1,10)) - │ ├── flags: ∅ - │ ├── operator_loc: (1,9)-(1,10) = "*" - │ └── expression: ∅ - ├── rights: (length: 3) - │ ├── @ LocalVariableTargetNode (location: (1,12)-(1,13)) - │ │ ├── flags: ∅ - │ │ ├── name: :x - │ │ └── depth: 0 - │ ├── @ LocalVariableTargetNode (location: (1,15)-(1,16)) - │ │ ├── flags: ∅ - │ │ ├── name: :y - │ │ └── depth: 0 - │ └── @ LocalVariableTargetNode (location: (1,18)-(1,19)) - │ ├── flags: ∅ - │ ├── name: :z - │ └── depth: 0 - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (1,20)-(1,21) = "=" - └── value: - @ CallNode (location: (1,22)-(1,23)) - ├── flags: variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,22)-(1,23) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/mlhs_mid_splat.txt b/test/prism/snapshots/seattlerb/mlhs_mid_splat.txt deleted file mode 100644 index d7671b6fe6..0000000000 --- a/test/prism/snapshots/seattlerb/mlhs_mid_splat.txt +++ /dev/null @@ -1,58 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,24)) -├── flags: ∅ -├── locals: [:a, :b, :c, :s, :x, :y, :z] -└── statements: - @ StatementsNode (location: (1,0)-(1,24)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MultiWriteNode (location: (1,0)-(1,24)) - ├── flags: newline - ├── lefts: (length: 3) - │ ├── @ LocalVariableTargetNode (location: (1,0)-(1,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── @ LocalVariableTargetNode (location: (1,3)-(1,4)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ └── depth: 0 - │ └── @ LocalVariableTargetNode (location: (1,6)-(1,7)) - │ ├── flags: ∅ - │ ├── name: :c - │ └── depth: 0 - ├── rest: - │ @ SplatNode (location: (1,9)-(1,11)) - │ ├── flags: ∅ - │ ├── operator_loc: (1,9)-(1,10) = "*" - │ └── expression: - │ @ LocalVariableTargetNode (location: (1,10)-(1,11)) - │ ├── flags: ∅ - │ ├── name: :s - │ └── depth: 0 - ├── rights: (length: 3) - │ ├── @ LocalVariableTargetNode (location: (1,13)-(1,14)) - │ │ ├── flags: ∅ - │ │ ├── name: :x - │ │ └── depth: 0 - │ ├── @ LocalVariableTargetNode (location: (1,16)-(1,17)) - │ │ ├── flags: ∅ - │ │ ├── name: :y - │ │ └── depth: 0 - │ └── @ LocalVariableTargetNode (location: (1,19)-(1,20)) - │ ├── flags: ∅ - │ ├── name: :z - │ └── depth: 0 - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (1,21)-(1,22) = "=" - └── value: - @ CallNode (location: (1,23)-(1,24)) - ├── flags: variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,23)-(1,24) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/mlhs_rescue.txt b/test/prism/snapshots/seattlerb/mlhs_rescue.txt deleted file mode 100644 index d888306a9a..0000000000 --- a/test/prism/snapshots/seattlerb/mlhs_rescue.txt +++ /dev/null @@ -1,42 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,18)) -├── flags: ∅ -├── locals: [:a, :b] -└── statements: - @ StatementsNode (location: (1,0)-(1,18)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MultiWriteNode (location: (1,0)-(1,18)) - ├── flags: newline - ├── lefts: (length: 2) - │ ├── @ LocalVariableTargetNode (location: (1,0)-(1,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ └── @ LocalVariableTargetNode (location: (1,3)-(1,4)) - │ ├── flags: ∅ - │ ├── name: :b - │ └── depth: 0 - ├── rest: ∅ - ├── rights: (length: 0) - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (1,5)-(1,6) = "=" - └── value: - @ RescueModifierNode (location: (1,7)-(1,18)) - ├── flags: ∅ - ├── expression: - │ @ CallNode (location: (1,7)-(1,8)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (1,7)-(1,8) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── keyword_loc: (1,9)-(1,15) = "rescue" - └── rescue_expression: - @ IntegerNode (location: (1,16)-(1,18)) - ├── flags: static_literal, decimal - └── value: 42 diff --git a/test/prism/snapshots/seattlerb/module_comments.txt b/test/prism/snapshots/seattlerb/module_comments.txt deleted file mode 100644 index ecbef982dd..0000000000 --- a/test/prism/snapshots/seattlerb/module_comments.txt +++ /dev/null @@ -1,35 +0,0 @@ -@ ProgramNode (location: (5,0)-(10,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (5,0)-(10,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ModuleNode (location: (5,0)-(10,3)) - ├── flags: newline - ├── locals: [] - ├── module_keyword_loc: (5,0)-(5,6) = "module" - ├── constant_path: - │ @ ConstantReadNode (location: (5,7)-(5,8)) - │ ├── flags: ∅ - │ └── name: :X - ├── body: - │ @ StatementsNode (location: (7,2)-(9,5)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ DefNode (location: (7,2)-(9,5)) - │ ├── flags: newline - │ ├── name: :blah - │ ├── name_loc: (7,6)-(7,10) = "blah" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (7,2)-(7,5) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (9,2)-(9,5) = "end" - ├── end_keyword_loc: (10,0)-(10,3) = "end" - └── name: :X diff --git a/test/prism/snapshots/seattlerb/multiline_hash_declaration.txt b/test/prism/snapshots/seattlerb/multiline_hash_declaration.txt deleted file mode 100644 index 7760698d13..0000000000 --- a/test/prism/snapshots/seattlerb/multiline_hash_declaration.txt +++ /dev/null @@ -1,103 +0,0 @@ -@ ProgramNode (location: (1,0)-(8,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(8,12)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ CallNode (location: (1,0)-(3,2)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (1,0)-(1,1) = "f" - │ ├── opening_loc: (1,1)-(1,2) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,2)-(3,1)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (1,2)-(3,1)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (1,2)-(3,1)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ SymbolNode (location: (1,2)-(1,8)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (1,2)-(1,7) = "state" - │ │ │ ├── closing_loc: (1,7)-(1,8) = ":" - │ │ │ └── unescaped: "state" - │ │ ├── value: - │ │ │ @ HashNode (location: (2,1)-(3,1)) - │ │ │ ├── flags: static_literal - │ │ │ ├── opening_loc: (2,1)-(2,2) = "{" - │ │ │ ├── elements: (length: 0) - │ │ │ └── closing_loc: (3,0)-(3,1) = "}" - │ │ └── operator_loc: ∅ - │ ├── closing_loc: (3,1)-(3,2) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (5,0)-(6,2)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (5,0)-(5,1) = "f" - │ ├── opening_loc: (5,1)-(5,2) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (5,2)-(6,1)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (5,2)-(6,1)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (5,2)-(6,1)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ SymbolNode (location: (5,2)-(5,8)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (5,2)-(5,7) = "state" - │ │ │ ├── closing_loc: (5,7)-(5,8) = ":" - │ │ │ └── unescaped: "state" - │ │ ├── value: - │ │ │ @ HashNode (location: (5,9)-(6,1)) - │ │ │ ├── flags: static_literal - │ │ │ ├── opening_loc: (5,9)-(5,10) = "{" - │ │ │ ├── elements: (length: 0) - │ │ │ └── closing_loc: (6,0)-(6,1) = "}" - │ │ └── operator_loc: ∅ - │ ├── closing_loc: (6,1)-(6,2) = ")" - │ └── block: ∅ - └── @ CallNode (location: (8,0)-(8,12)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (8,0)-(8,1) = "f" - ├── opening_loc: (8,1)-(8,2) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (8,2)-(8,11)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 1) - │ └── @ KeywordHashNode (location: (8,2)-(8,11)) - │ ├── flags: symbol_keys - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (8,2)-(8,11)) - │ ├── flags: ∅ - │ ├── key: - │ │ @ SymbolNode (location: (8,2)-(8,8)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (8,2)-(8,7) = "state" - │ │ ├── closing_loc: (8,7)-(8,8) = ":" - │ │ └── unescaped: "state" - │ ├── value: - │ │ @ HashNode (location: (8,9)-(8,11)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (8,9)-(8,10) = "{" - │ │ ├── elements: (length: 0) - │ │ └── closing_loc: (8,10)-(8,11) = "}" - │ └── operator_loc: ∅ - ├── closing_loc: (8,11)-(8,12) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/non_interpolated_symbol_array_line_breaks.txt b/test/prism/snapshots/seattlerb/non_interpolated_symbol_array_line_breaks.txt deleted file mode 100644 index eab6e8755f..0000000000 --- a/test/prism/snapshots/seattlerb/non_interpolated_symbol_array_line_breaks.txt +++ /dev/null @@ -1,27 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,1)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ ArrayNode (location: (1,0)-(4,1)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 2) - │ │ ├── @ SymbolNode (location: (2,0)-(2,1)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (2,0)-(2,1) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ └── @ SymbolNode (location: (3,0)-(3,1)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (3,0)-(3,1) = "b" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b" - │ ├── opening_loc: (1,0)-(1,3) = "%i(" - │ └── closing_loc: (4,0)-(4,1) = ")" - └── @ IntegerNode (location: (5,0)-(5,1)) - ├── flags: newline, static_literal, decimal - └── value: 1 diff --git a/test/prism/snapshots/seattlerb/non_interpolated_word_array_line_breaks.txt b/test/prism/snapshots/seattlerb/non_interpolated_word_array_line_breaks.txt deleted file mode 100644 index 00f5e9b616..0000000000 --- a/test/prism/snapshots/seattlerb/non_interpolated_word_array_line_breaks.txt +++ /dev/null @@ -1,27 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,1)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ ArrayNode (location: (1,0)-(4,1)) - │ ├── flags: newline - │ ├── elements: (length: 2) - │ │ ├── @ StringNode (location: (2,0)-(2,1)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (2,0)-(2,1) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ └── @ StringNode (location: (3,0)-(3,1)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (3,0)-(3,1) = "b" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b" - │ ├── opening_loc: (1,0)-(1,3) = "%w(" - │ └── closing_loc: (4,0)-(4,1) = ")" - └── @ IntegerNode (location: (5,0)-(5,1)) - ├── flags: newline, static_literal, decimal - └── value: 1 diff --git a/test/prism/snapshots/seattlerb/op_asgn_command_call.txt b/test/prism/snapshots/seattlerb/op_asgn_command_call.txt deleted file mode 100644 index 810c203054..0000000000 --- a/test/prism/snapshots/seattlerb/op_asgn_command_call.txt +++ /dev/null @@ -1,40 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableOrWriteNode (location: (1,0)-(1,11)) - ├── flags: newline - ├── name_loc: (1,0)-(1,1) = "a" - ├── operator_loc: (1,2)-(1,5) = "||=" - ├── value: - │ @ CallNode (location: (1,6)-(1,11)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ CallNode (location: (1,6)-(1,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (1,6)-(1,7) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (1,7)-(1,8) = "." - │ ├── name: :c - │ ├── message_loc: (1,8)-(1,9) = "c" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,10)-(1,11)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (1,10)-(1,11)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── name: :a - └── depth: 0 diff --git a/test/prism/snapshots/seattlerb/op_asgn_dot_ident_command_call.txt b/test/prism/snapshots/seattlerb/op_asgn_dot_ident_command_call.txt deleted file mode 100644 index 6f6fbb6dd9..0000000000 --- a/test/prism/snapshots/seattlerb/op_asgn_dot_ident_command_call.txt +++ /dev/null @@ -1,35 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallOrWriteNode (location: (1,0)-(1,11)) - ├── flags: newline - ├── receiver: - │ @ ConstantReadNode (location: (1,0)-(1,1)) - │ ├── flags: ∅ - │ └── name: :A - ├── call_operator_loc: (1,1)-(1,2) = "." - ├── message_loc: (1,2)-(1,3) = "B" - ├── read_name: :B - ├── write_name: :B= - ├── operator_loc: (1,4)-(1,7) = "||=" - └── value: - @ CallNode (location: (1,8)-(1,11)) - ├── flags: ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :c - ├── message_loc: (1,8)-(1,9) = "c" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,10)-(1,11)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,10)-(1,11)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/op_asgn_index_command_call.txt b/test/prism/snapshots/seattlerb/op_asgn_index_command_call.txt deleted file mode 100644 index ccf77c4823..0000000000 --- a/test/prism/snapshots/seattlerb/op_asgn_index_command_call.txt +++ /dev/null @@ -1,55 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,16)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,16)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IndexOrWriteNode (location: (1,0)-(1,16)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── opening_loc: (1,1)-(1,2) = "[" - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,4)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ SymbolNode (location: (1,2)-(1,4)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,2)-(1,3) = ":" - │ ├── value_loc: (1,3)-(1,4) = "b" - │ ├── closing_loc: ∅ - │ └── unescaped: "b" - ├── closing_loc: (1,4)-(1,5) = "]" - ├── block: ∅ - ├── operator_loc: (1,6)-(1,9) = "||=" - └── value: - @ CallNode (location: (1,10)-(1,16)) - ├── flags: ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :c - ├── message_loc: (1,10)-(1,11) = "c" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,12)-(1,16)) - │ ├── flags: ∅ - │ └── arguments: (length: 2) - │ ├── @ IntegerNode (location: (1,12)-(1,13)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── @ IntegerNode (location: (1,15)-(1,16)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/op_asgn_primary_colon_const_command_call.txt b/test/prism/snapshots/seattlerb/op_asgn_primary_colon_const_command_call.txt deleted file mode 100644 index a86a9269e1..0000000000 --- a/test/prism/snapshots/seattlerb/op_asgn_primary_colon_const_command_call.txt +++ /dev/null @@ -1,45 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ConstantPathOperatorWriteNode (location: (1,0)-(1,11)) - ├── flags: newline - ├── target: - │ @ ConstantPathNode (location: (1,0)-(1,4)) - │ ├── flags: ∅ - │ ├── parent: - │ │ @ ConstantReadNode (location: (1,0)-(1,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── name: :B - │ ├── delimiter_loc: (1,1)-(1,3) = "::" - │ └── name_loc: (1,3)-(1,4) = "B" - ├── binary_operator_loc: (1,5)-(1,7) = "*=" - ├── value: - │ @ CallNode (location: (1,8)-(1,11)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :c - │ ├── message_loc: (1,8)-(1,9) = "c" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,10)-(1,11)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (1,10)-(1,11)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :d - │ │ ├── message_loc: (1,10)-(1,11) = "d" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── binary_operator: :* diff --git a/test/prism/snapshots/seattlerb/op_asgn_primary_colon_identifier1.txt b/test/prism/snapshots/seattlerb/op_asgn_primary_colon_identifier1.txt deleted file mode 100644 index 2aa30b7b6f..0000000000 --- a/test/prism/snapshots/seattlerb/op_asgn_primary_colon_identifier1.txt +++ /dev/null @@ -1,23 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallOperatorWriteNode (location: (1,0)-(1,9)) - ├── flags: newline - ├── receiver: - │ @ ConstantReadNode (location: (1,0)-(1,1)) - │ ├── flags: ∅ - │ └── name: :A - ├── call_operator_loc: (1,1)-(1,3) = "::" - ├── message_loc: (1,3)-(1,4) = "b" - ├── read_name: :b - ├── write_name: :b= - ├── binary_operator: :+ - ├── binary_operator_loc: (1,5)-(1,7) = "+=" - └── value: - @ IntegerNode (location: (1,8)-(1,9)) - ├── flags: static_literal, decimal - └── value: 1 diff --git a/test/prism/snapshots/seattlerb/op_asgn_primary_colon_identifier_command_call.txt b/test/prism/snapshots/seattlerb/op_asgn_primary_colon_identifier_command_call.txt deleted file mode 100644 index ad52f68c10..0000000000 --- a/test/prism/snapshots/seattlerb/op_asgn_primary_colon_identifier_command_call.txt +++ /dev/null @@ -1,43 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallOperatorWriteNode (location: (1,0)-(1,11)) - ├── flags: newline - ├── receiver: - │ @ ConstantReadNode (location: (1,0)-(1,1)) - │ ├── flags: ∅ - │ └── name: :A - ├── call_operator_loc: (1,1)-(1,3) = "::" - ├── message_loc: (1,3)-(1,4) = "b" - ├── read_name: :b - ├── write_name: :b= - ├── binary_operator: :* - ├── binary_operator_loc: (1,5)-(1,7) = "*=" - └── value: - @ CallNode (location: (1,8)-(1,11)) - ├── flags: ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :c - ├── message_loc: (1,8)-(1,9) = "c" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,10)-(1,11)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (1,10)-(1,11)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :d - │ ├── message_loc: (1,10)-(1,11) = "d" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/op_asgn_val_dot_ident_command_call.txt b/test/prism/snapshots/seattlerb/op_asgn_val_dot_ident_command_call.txt deleted file mode 100644 index 881bd60e63..0000000000 --- a/test/prism/snapshots/seattlerb/op_asgn_val_dot_ident_command_call.txt +++ /dev/null @@ -1,42 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallOrWriteNode (location: (1,0)-(1,11)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,1)-(1,2) = "." - ├── message_loc: (1,2)-(1,3) = "b" - ├── read_name: :b - ├── write_name: :b= - ├── operator_loc: (1,4)-(1,7) = "||=" - └── value: - @ CallNode (location: (1,8)-(1,11)) - ├── flags: ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :c - ├── message_loc: (1,8)-(1,9) = "c" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,10)-(1,11)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,10)-(1,11)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/parse_def_special_name.txt b/test/prism/snapshots/seattlerb/parse_def_special_name.txt deleted file mode 100644 index d8d849a3eb..0000000000 --- a/test/prism/snapshots/seattlerb/parse_def_special_name.txt +++ /dev/null @@ -1,21 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,13)) - ├── flags: newline - ├── name: :next - ├── name_loc: (1,4)-(1,8) = "next" - ├── receiver: ∅ - ├── parameters: ∅ - ├── body: ∅ - ├── locals: [] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (1,10)-(1,13) = "end" diff --git a/test/prism/snapshots/seattlerb/parse_if_not_canonical.txt b/test/prism/snapshots/seattlerb/parse_if_not_canonical.txt deleted file mode 100644 index 23cc1f7929..0000000000 --- a/test/prism/snapshots/seattlerb/parse_if_not_canonical.txt +++ /dev/null @@ -1,68 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IfNode (location: (1,0)-(2,3)) - ├── flags: newline - ├── if_keyword_loc: (1,0)-(1,2) = "if" - ├── predicate: - │ @ CallNode (location: (1,3)-(1,15)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ CallNode (location: (1,7)-(1,15)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (1,7)-(1,10)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :var - │ │ │ ├── message_loc: (1,7)-(1,10) = "var" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (1,10)-(1,11) = "." - │ │ ├── name: :nil? - │ │ ├── message_loc: (1,11)-(1,15) = "nil?" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :! - │ ├── message_loc: (1,3)-(1,6) = "not" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── then_keyword_loc: (1,16)-(1,20) = "then" - ├── statements: - │ @ StatementsNode (location: (1,21)-(1,26)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ StringNode (location: (1,21)-(1,26)) - │ ├── flags: newline - │ ├── opening_loc: (1,21)-(1,22) = "'" - │ ├── content_loc: (1,22)-(1,25) = "foo" - │ ├── closing_loc: (1,25)-(1,26) = "'" - │ └── unescaped: "foo" - ├── subsequent: - │ @ ElseNode (location: (1,27)-(2,3)) - │ ├── flags: ∅ - │ ├── else_keyword_loc: (1,27)-(1,31) = "else" - │ ├── statements: - │ │ @ StatementsNode (location: (1,32)-(1,37)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ StringNode (location: (1,32)-(1,37)) - │ │ ├── flags: newline - │ │ ├── opening_loc: (1,32)-(1,33) = "'" - │ │ ├── content_loc: (1,33)-(1,36) = "bar" - │ │ ├── closing_loc: (1,36)-(1,37) = "'" - │ │ └── unescaped: "bar" - │ └── end_keyword_loc: (2,0)-(2,3) = "end" - └── end_keyword_loc: (2,0)-(2,3) = "end" diff --git a/test/prism/snapshots/seattlerb/parse_if_not_noncanonical.txt b/test/prism/snapshots/seattlerb/parse_if_not_noncanonical.txt deleted file mode 100644 index 23cc1f7929..0000000000 --- a/test/prism/snapshots/seattlerb/parse_if_not_noncanonical.txt +++ /dev/null @@ -1,68 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IfNode (location: (1,0)-(2,3)) - ├── flags: newline - ├── if_keyword_loc: (1,0)-(1,2) = "if" - ├── predicate: - │ @ CallNode (location: (1,3)-(1,15)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ CallNode (location: (1,7)-(1,15)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (1,7)-(1,10)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :var - │ │ │ ├── message_loc: (1,7)-(1,10) = "var" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (1,10)-(1,11) = "." - │ │ ├── name: :nil? - │ │ ├── message_loc: (1,11)-(1,15) = "nil?" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :! - │ ├── message_loc: (1,3)-(1,6) = "not" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── then_keyword_loc: (1,16)-(1,20) = "then" - ├── statements: - │ @ StatementsNode (location: (1,21)-(1,26)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ StringNode (location: (1,21)-(1,26)) - │ ├── flags: newline - │ ├── opening_loc: (1,21)-(1,22) = "'" - │ ├── content_loc: (1,22)-(1,25) = "foo" - │ ├── closing_loc: (1,25)-(1,26) = "'" - │ └── unescaped: "foo" - ├── subsequent: - │ @ ElseNode (location: (1,27)-(2,3)) - │ ├── flags: ∅ - │ ├── else_keyword_loc: (1,27)-(1,31) = "else" - │ ├── statements: - │ │ @ StatementsNode (location: (1,32)-(1,37)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ StringNode (location: (1,32)-(1,37)) - │ │ ├── flags: newline - │ │ ├── opening_loc: (1,32)-(1,33) = "'" - │ │ ├── content_loc: (1,33)-(1,36) = "bar" - │ │ ├── closing_loc: (1,36)-(1,37) = "'" - │ │ └── unescaped: "bar" - │ └── end_keyword_loc: (2,0)-(2,3) = "end" - └── end_keyword_loc: (2,0)-(2,3) = "end" diff --git a/test/prism/snapshots/seattlerb/parse_line_block.txt b/test/prism/snapshots/seattlerb/parse_line_block.txt deleted file mode 100644 index fcb4aee490..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_block.txt +++ /dev/null @@ -1,34 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,3)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(2,3)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ LocalVariableWriteNode (location: (1,0)-(1,6)) - │ ├── flags: newline - │ ├── name: :a - │ ├── depth: 0 - │ ├── name_loc: (1,0)-(1,1) = "a" - │ ├── value: - │ │ @ IntegerNode (location: (1,4)-(1,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 42 - │ └── operator_loc: (1,2)-(1,3) = "=" - └── @ CallNode (location: (2,0)-(2,3)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :p - ├── message_loc: (2,0)-(2,1) = "p" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (2,2)-(2,3)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ LocalVariableReadNode (location: (2,2)-(2,3)) - │ ├── flags: ∅ - │ ├── name: :a - │ └── depth: 0 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/parse_line_block_inline_comment.txt b/test/prism/snapshots/seattlerb/parse_line_block_inline_comment.txt deleted file mode 100644 index 2cf5d6de00..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_block_inline_comment.txt +++ /dev/null @@ -1,37 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,1)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (2,0)-(2,1)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :b - │ ├── message_loc: (2,0)-(2,1) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (3,0)-(3,1)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :c - ├── message_loc: (3,0)-(3,1) = "c" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/parse_line_block_inline_comment_leading_newlines.txt b/test/prism/snapshots/seattlerb/parse_line_block_inline_comment_leading_newlines.txt deleted file mode 100644 index f376453c0d..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_block_inline_comment_leading_newlines.txt +++ /dev/null @@ -1,37 +0,0 @@ -@ ProgramNode (location: (4,0)-(7,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (4,0)-(7,1)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ CallNode (location: (4,0)-(4,1)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (4,0)-(4,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (5,0)-(5,1)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :b - │ ├── message_loc: (5,0)-(5,1) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (7,0)-(7,1)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :c - ├── message_loc: (7,0)-(7,1) = "c" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/parse_line_block_inline_multiline_comment.txt b/test/prism/snapshots/seattlerb/parse_line_block_inline_multiline_comment.txt deleted file mode 100644 index 21b6623652..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_block_inline_multiline_comment.txt +++ /dev/null @@ -1,37 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,1)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (2,0)-(2,1)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :b - │ ├── message_loc: (2,0)-(2,1) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (4,0)-(4,1)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :c - ├── message_loc: (4,0)-(4,1) = "c" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/parse_line_call_ivar_arg_no_parens_line_break.txt b/test/prism/snapshots/seattlerb/parse_line_call_ivar_arg_no_parens_line_break.txt deleted file mode 100644 index 9ed31de459..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_call_ivar_arg_no_parens_line_break.txt +++ /dev/null @@ -1,23 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,4)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,4)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ InstanceVariableReadNode (location: (1,2)-(1,4)) - │ ├── flags: ∅ - │ └── name: :@b - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/parse_line_call_ivar_line_break_paren.txt b/test/prism/snapshots/seattlerb/parse_line_call_ivar_line_break_paren.txt deleted file mode 100644 index 32dbc0f02a..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_call_ivar_line_break_paren.txt +++ /dev/null @@ -1,23 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,1)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(2,1)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: (1,1)-(1,2) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,4)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ InstanceVariableReadNode (location: (1,2)-(1,4)) - │ ├── flags: ∅ - │ └── name: :@b - ├── closing_loc: (2,0)-(2,1) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/parse_line_call_no_args.txt b/test/prism/snapshots/seattlerb/parse_line_call_no_args.txt deleted file mode 100644 index 03b657d687..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_call_no_args.txt +++ /dev/null @@ -1,69 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(3,3)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(3,3)) - ├── flags: ∅ - ├── locals: [:x, :y] - ├── parameters: - │ @ BlockParametersNode (location: (1,5)-(1,11)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,6)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ RequiredParameterNode (location: (1,6)-(1,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :x - │ │ │ └── @ RequiredParameterNode (location: (1,9)-(1,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :y - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,5)-(1,6) = "|" - │ └── closing_loc: (1,10)-(1,11) = "|" - ├── body: - │ @ StatementsNode (location: (2,2)-(2,7)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (2,2)-(2,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (2,2)-(2,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :x - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (2,4)-(2,5) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (2,6)-(2,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (2,6)-(2,7)) - │ │ ├── flags: ∅ - │ │ ├── name: :y - │ │ └── depth: 0 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── opening_loc: (1,2)-(1,4) = "do" - └── closing_loc: (3,0)-(3,3) = "end" diff --git a/test/prism/snapshots/seattlerb/parse_line_defn_complex.txt b/test/prism/snapshots/seattlerb/parse_line_defn_complex.txt deleted file mode 100644 index fb4d1940f2..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_defn_complex.txt +++ /dev/null @@ -1,75 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(5,3)) - ├── flags: newline - ├── name: :x - ├── name_loc: (1,4)-(1,5) = "x" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,7)) - │ ├── flags: ∅ - │ ├── requireds: (length: 1) - │ │ └── @ RequiredParameterNode (location: (1,6)-(1,7)) - │ │ ├── flags: ∅ - │ │ └── name: :y - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (2,2)-(4,10)) - │ ├── flags: ∅ - │ └── body: (length: 3) - │ ├── @ CallNode (location: (2,2)-(2,6)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :p - │ │ ├── message_loc: (2,2)-(2,3) = "p" - │ │ ├── opening_loc: (2,3)-(2,4) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (2,4)-(2,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ LocalVariableReadNode (location: (2,4)-(2,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :y - │ │ │ └── depth: 0 - │ │ ├── closing_loc: (2,5)-(2,6) = ")" - │ │ └── block: ∅ - │ ├── @ LocalVariableOperatorWriteNode (location: (3,2)-(3,8)) - │ │ ├── flags: newline - │ │ ├── name_loc: (3,2)-(3,3) = "y" - │ │ ├── binary_operator_loc: (3,4)-(3,6) = "*=" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (3,7)-(3,8)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── name: :y - │ │ ├── binary_operator: :* - │ │ └── depth: 0 - │ └── @ ReturnNode (location: (4,2)-(4,10)) - │ ├── flags: newline - │ ├── keyword_loc: (4,2)-(4,8) = "return" - │ └── arguments: - │ @ ArgumentsNode (location: (4,9)-(4,10)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ LocalVariableReadNode (location: (4,9)-(4,10)) - │ ├── flags: ∅ - │ ├── name: :y - │ └── depth: 0 - ├── locals: [:y] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,5)-(1,6) = "(" - ├── rparen_loc: (1,7)-(1,8) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (5,0)-(5,3) = "end" diff --git a/test/prism/snapshots/seattlerb/parse_line_defn_no_parens.txt b/test/prism/snapshots/seattlerb/parse_line_defn_no_parens.txt deleted file mode 100644 index aafcbb74b6..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_defn_no_parens.txt +++ /dev/null @@ -1,35 +0,0 @@ -@ ProgramNode (location: (1,0)-(6,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(6,3)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ DefNode (location: (1,0)-(3,3)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (1,4)-(1,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (3,0)-(3,3) = "end" - └── @ DefNode (location: (5,0)-(6,3)) - ├── flags: newline - ├── name: :f - ├── name_loc: (5,4)-(5,5) = "f" - ├── receiver: ∅ - ├── parameters: ∅ - ├── body: ∅ - ├── locals: [] - ├── def_keyword_loc: (5,0)-(5,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (6,0)-(6,3) = "end" diff --git a/test/prism/snapshots/seattlerb/parse_line_defn_no_parens_args.txt b/test/prism/snapshots/seattlerb/parse_line_defn_no_parens_args.txt deleted file mode 100644 index 0670c2c046..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_defn_no_parens_args.txt +++ /dev/null @@ -1,33 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(2,3)) - ├── flags: newline - ├── name: :f - ├── name_loc: (1,4)-(1,5) = "f" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,7)) - │ ├── flags: ∅ - │ ├── requireds: (length: 1) - │ │ └── @ RequiredParameterNode (location: (1,6)-(1,7)) - │ │ ├── flags: ∅ - │ │ └── name: :a - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:a] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (2,0)-(2,3) = "end" diff --git a/test/prism/snapshots/seattlerb/parse_line_dot2.txt b/test/prism/snapshots/seattlerb/parse_line_dot2.txt deleted file mode 100644 index 29f6e68a18..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_dot2.txt +++ /dev/null @@ -1,53 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,1)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ RangeNode (location: (1,0)-(2,1)) - │ ├── flags: newline, static_literal - │ ├── left: - │ │ @ IntegerNode (location: (1,0)-(1,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 0 - │ ├── right: - │ │ @ IntegerNode (location: (2,0)-(2,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 4 - │ └── operator_loc: (1,1)-(1,3) = ".." - ├── @ RangeNode (location: (3,0)-(4,1)) - │ ├── flags: newline - │ ├── left: - │ │ @ CallNode (location: (3,0)-(3,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (3,0)-(3,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── right: - │ │ @ CallNode (location: (4,0)-(4,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (4,0)-(4,1) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (3,1)-(3,3) = ".." - └── @ CallNode (location: (5,0)-(5,1)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :c - ├── message_loc: (5,0)-(5,1) = "c" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/parse_line_dot2_open.txt b/test/prism/snapshots/seattlerb/parse_line_dot2_open.txt deleted file mode 100644 index d368ac7654..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_dot2_open.txt +++ /dev/null @@ -1,40 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ RangeNode (location: (1,0)-(1,3)) - │ ├── flags: newline, static_literal - │ ├── left: - │ │ @ IntegerNode (location: (1,0)-(1,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 0 - │ ├── right: ∅ - │ └── operator_loc: (1,1)-(1,3) = ".." - ├── @ RangeNode (location: (2,2)-(2,5)) - │ ├── flags: newline - │ ├── left: - │ │ @ CallNode (location: (2,2)-(2,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (2,2)-(2,3) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── right: ∅ - │ └── operator_loc: (2,3)-(2,5) = ".." - └── @ CallNode (location: (3,2)-(3,3)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :c - ├── message_loc: (3,2)-(3,3) = "c" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/parse_line_dot3.txt b/test/prism/snapshots/seattlerb/parse_line_dot3.txt deleted file mode 100644 index 7515617cea..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_dot3.txt +++ /dev/null @@ -1,53 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,1)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ RangeNode (location: (1,0)-(2,1)) - │ ├── flags: newline, static_literal, exclude_end - │ ├── left: - │ │ @ IntegerNode (location: (1,0)-(1,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 0 - │ ├── right: - │ │ @ IntegerNode (location: (2,0)-(2,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 4 - │ └── operator_loc: (1,1)-(1,4) = "..." - ├── @ RangeNode (location: (3,0)-(4,1)) - │ ├── flags: newline, exclude_end - │ ├── left: - │ │ @ CallNode (location: (3,0)-(3,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (3,0)-(3,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── right: - │ │ @ CallNode (location: (4,0)-(4,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (4,0)-(4,1) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (3,1)-(3,4) = "..." - └── @ CallNode (location: (5,0)-(5,1)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :c - ├── message_loc: (5,0)-(5,1) = "c" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/parse_line_dot3_open.txt b/test/prism/snapshots/seattlerb/parse_line_dot3_open.txt deleted file mode 100644 index 789b490a28..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_dot3_open.txt +++ /dev/null @@ -1,40 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ RangeNode (location: (1,0)-(1,4)) - │ ├── flags: newline, static_literal, exclude_end - │ ├── left: - │ │ @ IntegerNode (location: (1,0)-(1,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 0 - │ ├── right: ∅ - │ └── operator_loc: (1,1)-(1,4) = "..." - ├── @ RangeNode (location: (2,2)-(2,6)) - │ ├── flags: newline, exclude_end - │ ├── left: - │ │ @ CallNode (location: (2,2)-(2,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (2,2)-(2,3) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── right: ∅ - │ └── operator_loc: (2,3)-(2,6) = "..." - └── @ CallNode (location: (3,2)-(3,3)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :c - ├── message_loc: (3,2)-(3,3) = "c" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/parse_line_dstr_escaped_newline.txt b/test/prism/snapshots/seattlerb/parse_line_dstr_escaped_newline.txt deleted file mode 100644 index e801ad402a..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_dstr_escaped_newline.txt +++ /dev/null @@ -1,25 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,4)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ InterpolatedStringNode (location: (1,0)-(2,2)) - │ ├── flags: newline - │ ├── opening_loc: (1,0)-(1,1) = "\"" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (1,1)-(1,4)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (1,1)-(1,4) = "a\\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a\n" - │ │ └── @ EmbeddedStatementsNode (location: (1,4)-(2,1)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,4)-(1,6) = "\#{" - │ │ ├── statements: ∅ - │ │ └── closing_loc: (2,0)-(2,1) = "}" - │ └── closing_loc: (2,1)-(2,2) = "\"" - └── @ TrueNode (location: (3,0)-(3,4)) - └── flags: newline, static_literal diff --git a/test/prism/snapshots/seattlerb/parse_line_dstr_soft_newline.txt b/test/prism/snapshots/seattlerb/parse_line_dstr_soft_newline.txt deleted file mode 100644 index c94a12db81..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_dstr_soft_newline.txt +++ /dev/null @@ -1,25 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,4)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ InterpolatedStringNode (location: (1,0)-(3,2)) - │ ├── flags: newline - │ ├── opening_loc: (1,0)-(1,1) = "\"" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (1,1)-(2,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (1,1)-(2,0) = "a\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a\n" - │ │ └── @ EmbeddedStatementsNode (location: (2,0)-(3,1)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (2,0)-(2,2) = "\#{" - │ │ ├── statements: ∅ - │ │ └── closing_loc: (3,0)-(3,1) = "}" - │ └── closing_loc: (3,1)-(3,2) = "\"" - └── @ TrueNode (location: (4,0)-(4,4)) - └── flags: newline, static_literal diff --git a/test/prism/snapshots/seattlerb/parse_line_evstr_after_break.txt b/test/prism/snapshots/seattlerb/parse_line_evstr_after_break.txt deleted file mode 100644 index 446534f7ca..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_evstr_after_break.txt +++ /dev/null @@ -1,41 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(2,6)) - ├── flags: newline - ├── opening_loc: ∅ - ├── parts: (length: 2) - │ ├── @ StringNode (location: (1,0)-(1,3)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: (1,0)-(1,1) = "\"" - │ │ ├── content_loc: (1,1)-(1,2) = "a" - │ │ ├── closing_loc: (1,2)-(1,3) = "\"" - │ │ └── unescaped: "a" - │ └── @ InterpolatedStringNode (location: (2,0)-(2,6)) - │ ├── flags: ∅ - │ ├── opening_loc: (2,0)-(2,1) = "\"" - │ ├── parts: (length: 1) - │ │ └── @ EmbeddedStatementsNode (location: (2,1)-(2,5)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (2,1)-(2,3) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (2,3)-(2,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (2,3)-(2,4)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (2,3)-(2,4) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── closing_loc: (2,4)-(2,5) = "}" - │ └── closing_loc: (2,5)-(2,6) = "\"" - └── closing_loc: ∅ diff --git a/test/prism/snapshots/seattlerb/parse_line_hash_lit.txt b/test/prism/snapshots/seattlerb/parse_line_hash_lit.txt deleted file mode 100644 index 5a8221b04a..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_hash_lit.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,1)) - ├── flags: ∅ - └── body: (length: 1) - └── @ HashNode (location: (1,0)-(3,1)) - ├── flags: newline, static_literal - ├── opening_loc: (1,0)-(1,1) = "{" - ├── elements: (length: 1) - │ └── @ AssocNode (location: (2,0)-(2,8)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ SymbolNode (location: (2,0)-(2,3)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (2,0)-(2,1) = ":" - │ │ ├── value_loc: (2,1)-(2,3) = "s1" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "s1" - │ ├── value: - │ │ @ IntegerNode (location: (2,7)-(2,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (2,4)-(2,6) = "=>" - └── closing_loc: (3,0)-(3,1) = "}" diff --git a/test/prism/snapshots/seattlerb/parse_line_heredoc.txt b/test/prism/snapshots/seattlerb/parse_line_heredoc.txt deleted file mode 100644 index e2c8e8a159..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_heredoc.txt +++ /dev/null @@ -1,47 +0,0 @@ -@ ProgramNode (location: (1,6)-(4,17)) -├── flags: ∅ -├── locals: [:string] -└── statements: - @ StatementsNode (location: (1,6)-(4,17)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ LocalVariableWriteNode (location: (1,6)-(1,31)) - │ ├── flags: newline - │ ├── name: :string - │ ├── depth: 0 - │ ├── name_loc: (1,6)-(1,12) = "string" - │ ├── value: - │ │ @ CallNode (location: (1,15)-(1,31)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ StringNode (location: (1,15)-(1,25)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (1,15)-(1,25) = "<<-HEREDOC" - │ │ │ ├── content_loc: (2,0)-(3,0) = " very long string\n" - │ │ │ ├── closing_loc: (3,0)-(4,0) = " HEREDOC\n" - │ │ │ └── unescaped: " very long string\n" - │ │ ├── call_operator_loc: (1,25)-(1,26) = "." - │ │ ├── name: :strip - │ │ ├── message_loc: (1,26)-(1,31) = "strip" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (1,13)-(1,14) = "=" - └── @ CallNode (location: (4,6)-(4,17)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :puts - ├── message_loc: (4,6)-(4,10) = "puts" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (4,11)-(4,17)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ LocalVariableReadNode (location: (4,11)-(4,17)) - │ ├── flags: ∅ - │ ├── name: :string - │ └── depth: 0 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/parse_line_heredoc_evstr.txt b/test/prism/snapshots/seattlerb/parse_line_heredoc_evstr.txt deleted file mode 100644 index 68b3300430..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_heredoc_evstr.txt +++ /dev/null @@ -1,42 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(1,4)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,4) = "<<-A" - ├── parts: (length: 3) - │ ├── @ StringNode (location: (2,0)-(3,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (2,0)-(3,0) = "a\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a\n" - │ ├── @ EmbeddedStatementsNode (location: (3,0)-(3,4)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (3,0)-(3,2) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (3,2)-(3,3)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (3,2)-(3,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (3,2)-(3,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── closing_loc: (3,3)-(3,4) = "}" - │ └── @ StringNode (location: (3,4)-(4,0)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (3,4)-(4,0) = "\n" - │ ├── closing_loc: ∅ - │ └── unescaped: "\n" - └── closing_loc: (4,0)-(5,0) = "A\n" diff --git a/test/prism/snapshots/seattlerb/parse_line_heredoc_hardnewline.txt b/test/prism/snapshots/seattlerb/parse_line_heredoc_hardnewline.txt deleted file mode 100644 index d5b59ab1de..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_heredoc_hardnewline.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(6,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(6,3)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ StringNode (location: (1,0)-(1,8)) - │ ├── flags: newline - │ ├── opening_loc: (1,0)-(1,8) = "<<-EOFOO" - │ ├── content_loc: (2,0)-(3,0) = "\\n\\n\\n\\n\\n\\n\\n\\n\\n\n" - │ ├── closing_loc: (3,0)-(4,0) = "EOFOO\n" - │ └── unescaped: "\n\n\n\n\n\n\n\n\n\n" - └── @ ClassNode (location: (5,0)-(6,3)) - ├── flags: newline - ├── locals: [] - ├── class_keyword_loc: (5,0)-(5,5) = "class" - ├── constant_path: - │ @ ConstantReadNode (location: (5,6)-(5,9)) - │ ├── flags: ∅ - │ └── name: :Foo - ├── inheritance_operator_loc: ∅ - ├── superclass: ∅ - ├── body: ∅ - ├── end_keyword_loc: (6,0)-(6,3) = "end" - └── name: :Foo diff --git a/test/prism/snapshots/seattlerb/parse_line_heredoc_regexp_chars.txt b/test/prism/snapshots/seattlerb/parse_line_heredoc_regexp_chars.txt deleted file mode 100644 index a188a8ff41..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_heredoc_regexp_chars.txt +++ /dev/null @@ -1,37 +0,0 @@ -@ ProgramNode (location: (1,6)-(4,17)) -├── flags: ∅ -├── locals: [:string] -└── statements: - @ StatementsNode (location: (1,6)-(4,17)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ LocalVariableWriteNode (location: (1,6)-(1,22)) - │ ├── flags: newline - │ ├── name: :string - │ ├── depth: 0 - │ ├── name_loc: (1,6)-(1,12) = "string" - │ ├── value: - │ │ @ StringNode (location: (1,15)-(1,22)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,15)-(1,22) = "<<-\"^D\"" - │ │ ├── content_loc: (2,0)-(3,0) = " very long string\n" - │ │ ├── closing_loc: (3,0)-(4,0) = " ^D\n" - │ │ └── unescaped: " very long string\n" - │ └── operator_loc: (1,13)-(1,14) = "=" - └── @ CallNode (location: (4,6)-(4,17)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :puts - ├── message_loc: (4,6)-(4,10) = "puts" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (4,11)-(4,17)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ LocalVariableReadNode (location: (4,11)-(4,17)) - │ ├── flags: ∅ - │ ├── name: :string - │ └── depth: 0 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/parse_line_iter_call_no_parens.txt b/test/prism/snapshots/seattlerb/parse_line_iter_call_no_parens.txt deleted file mode 100644 index d9ec88b3bb..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_iter_call_no_parens.txt +++ /dev/null @@ -1,82 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(3,3)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,3)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (1,2)-(1,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,2)-(1,3) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,4)-(3,3)) - ├── flags: ∅ - ├── locals: [:x, :y] - ├── parameters: - │ @ BlockParametersNode (location: (1,7)-(1,13)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,8)-(1,12)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ RequiredParameterNode (location: (1,8)-(1,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :x - │ │ │ └── @ RequiredParameterNode (location: (1,11)-(1,12)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :y - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,7)-(1,8) = "|" - │ └── closing_loc: (1,12)-(1,13) = "|" - ├── body: - │ @ StatementsNode (location: (2,2)-(2,7)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (2,2)-(2,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (2,2)-(2,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :x - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (2,4)-(2,5) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (2,6)-(2,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (2,6)-(2,7)) - │ │ ├── flags: ∅ - │ │ ├── name: :y - │ │ └── depth: 0 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── opening_loc: (1,4)-(1,6) = "do" - └── closing_loc: (3,0)-(3,3) = "end" diff --git a/test/prism/snapshots/seattlerb/parse_line_iter_call_parens.txt b/test/prism/snapshots/seattlerb/parse_line_iter_call_parens.txt deleted file mode 100644 index 27ea8d2e3e..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_iter_call_parens.txt +++ /dev/null @@ -1,82 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(3,3)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: (1,1)-(1,2) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,3)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (1,2)-(1,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,2)-(1,3) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: (1,3)-(1,4) = ")" - └── block: - @ BlockNode (location: (1,5)-(3,3)) - ├── flags: ∅ - ├── locals: [:x, :y] - ├── parameters: - │ @ BlockParametersNode (location: (1,8)-(1,14)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,9)-(1,13)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ RequiredParameterNode (location: (1,9)-(1,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :x - │ │ │ └── @ RequiredParameterNode (location: (1,12)-(1,13)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :y - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,8)-(1,9) = "|" - │ └── closing_loc: (1,13)-(1,14) = "|" - ├── body: - │ @ StatementsNode (location: (2,2)-(2,7)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (2,2)-(2,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (2,2)-(2,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :x - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (2,4)-(2,5) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (2,6)-(2,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (2,6)-(2,7)) - │ │ ├── flags: ∅ - │ │ ├── name: :y - │ │ └── depth: 0 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── opening_loc: (1,5)-(1,7) = "do" - └── closing_loc: (3,0)-(3,3) = "end" diff --git a/test/prism/snapshots/seattlerb/parse_line_multiline_str.txt b/test/prism/snapshots/seattlerb/parse_line_multiline_str.txt deleted file mode 100644 index 7c2ea01d3c..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_multiline_str.txt +++ /dev/null @@ -1,16 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,1)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ StringNode (location: (1,0)-(2,2)) - │ ├── flags: newline - │ ├── opening_loc: (1,0)-(1,1) = "\"" - │ ├── content_loc: (1,1)-(2,1) = "a\nb" - │ ├── closing_loc: (2,1)-(2,2) = "\"" - │ └── unescaped: "a\nb" - └── @ IntegerNode (location: (3,0)-(3,1)) - ├── flags: newline, static_literal, decimal - └── value: 1 diff --git a/test/prism/snapshots/seattlerb/parse_line_multiline_str_literal_n.txt b/test/prism/snapshots/seattlerb/parse_line_multiline_str_literal_n.txt deleted file mode 100644 index b8c6e026cd..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_multiline_str_literal_n.txt +++ /dev/null @@ -1,16 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,1)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ StringNode (location: (1,0)-(1,6)) - │ ├── flags: newline - │ ├── opening_loc: (1,0)-(1,1) = "\"" - │ ├── content_loc: (1,1)-(1,5) = "a\\nb" - │ ├── closing_loc: (1,5)-(1,6) = "\"" - │ └── unescaped: "a\nb" - └── @ IntegerNode (location: (2,0)-(2,1)) - ├── flags: newline, static_literal, decimal - └── value: 1 diff --git a/test/prism/snapshots/seattlerb/parse_line_newlines.txt b/test/prism/snapshots/seattlerb/parse_line_newlines.txt deleted file mode 100644 index ba705338ba..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_newlines.txt +++ /dev/null @@ -1,9 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ TrueNode (location: (1,0)-(1,4)) - └── flags: newline, static_literal diff --git a/test/prism/snapshots/seattlerb/parse_line_op_asgn.txt b/test/prism/snapshots/seattlerb/parse_line_op_asgn.txt deleted file mode 100644 index f2c62b60d1..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_op_asgn.txt +++ /dev/null @@ -1,35 +0,0 @@ -@ ProgramNode (location: (1,6)-(3,9)) -├── flags: ∅ -├── locals: [:foo] -└── statements: - @ StatementsNode (location: (1,6)-(3,9)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ LocalVariableOperatorWriteNode (location: (1,6)-(2,11)) - │ ├── flags: newline - │ ├── name_loc: (1,6)-(1,9) = "foo" - │ ├── binary_operator_loc: (1,10)-(1,12) = "+=" - │ ├── value: - │ │ @ CallNode (location: (2,8)-(2,11)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (2,8)-(2,11) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── name: :foo - │ ├── binary_operator: :+ - │ └── depth: 0 - └── @ CallNode (location: (3,6)-(3,9)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :baz - ├── message_loc: (3,6)-(3,9) = "baz" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/parse_line_postexe.txt b/test/prism/snapshots/seattlerb/parse_line_postexe.txt deleted file mode 100644 index afa30a72c0..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_postexe.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,1)) - ├── flags: ∅ - └── body: (length: 1) - └── @ PostExecutionNode (location: (1,0)-(3,1)) - ├── flags: newline - ├── statements: - │ @ StatementsNode (location: (2,0)-(2,3)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (2,0)-(2,3)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (2,0)-(2,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── keyword_loc: (1,0)-(1,3) = "END" - ├── opening_loc: (1,4)-(1,5) = "{" - └── closing_loc: (3,0)-(3,1) = "}" diff --git a/test/prism/snapshots/seattlerb/parse_line_preexe.txt b/test/prism/snapshots/seattlerb/parse_line_preexe.txt deleted file mode 100644 index 4c670f30f6..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_preexe.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,1)) - ├── flags: ∅ - └── body: (length: 1) - └── @ PreExecutionNode (location: (1,0)-(3,1)) - ├── flags: newline - ├── statements: - │ @ StatementsNode (location: (2,0)-(2,3)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (2,0)-(2,3)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (2,0)-(2,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── keyword_loc: (1,0)-(1,5) = "BEGIN" - ├── opening_loc: (1,6)-(1,7) = "{" - └── closing_loc: (3,0)-(3,1) = "}" diff --git a/test/prism/snapshots/seattlerb/parse_line_rescue.txt b/test/prism/snapshots/seattlerb/parse_line_rescue.txt deleted file mode 100644 index 5e296f179d..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_rescue.txt +++ /dev/null @@ -1,70 +0,0 @@ -@ ProgramNode (location: (1,0)-(7,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(7,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ BeginNode (location: (1,0)-(7,3)) - ├── flags: newline - ├── begin_keyword_loc: (1,0)-(1,5) = "begin" - ├── statements: - │ @ StatementsNode (location: (2,2)-(2,3)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (2,2)-(2,3)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (2,2)-(2,3) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── rescue_clause: - │ @ RescueNode (location: (3,0)-(6,3)) - │ ├── flags: ∅ - │ ├── keyword_loc: (3,0)-(3,6) = "rescue" - │ ├── exceptions: (length: 0) - │ ├── operator_loc: ∅ - │ ├── reference: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (4,2)-(4,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (4,2)-(4,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (4,2)-(4,3) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── subsequent: - │ @ RescueNode (location: (5,0)-(6,3)) - │ ├── flags: ∅ - │ ├── keyword_loc: (5,0)-(5,6) = "rescue" - │ ├── exceptions: (length: 0) - │ ├── operator_loc: ∅ - │ ├── reference: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (6,2)-(6,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (6,2)-(6,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :c - │ │ ├── message_loc: (6,2)-(6,3) = "c" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── subsequent: ∅ - ├── else_clause: ∅ - ├── ensure_clause: ∅ - └── end_keyword_loc: (7,0)-(7,3) = "end" diff --git a/test/prism/snapshots/seattlerb/parse_line_return.txt b/test/prism/snapshots/seattlerb/parse_line_return.txt deleted file mode 100644 index e0c0dffc88..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_return.txt +++ /dev/null @@ -1,47 +0,0 @@ -@ ProgramNode (location: (1,6)-(5,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,6)-(5,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,6)-(5,9)) - ├── flags: newline - ├── name: :blah - ├── name_loc: (1,10)-(1,14) = "blah" - ├── receiver: ∅ - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (2,8)-(4,11)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ IfNode (location: (2,8)-(4,11)) - │ ├── flags: newline - │ ├── if_keyword_loc: (2,8)-(2,10) = "if" - │ ├── predicate: - │ │ @ TrueNode (location: (2,11)-(2,15)) - │ │ └── flags: static_literal - │ ├── then_keyword_loc: (2,16)-(2,20) = "then" - │ ├── statements: - │ │ @ StatementsNode (location: (3,10)-(3,19)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ ReturnNode (location: (3,10)-(3,19)) - │ │ ├── flags: newline - │ │ ├── keyword_loc: (3,10)-(3,16) = "return" - │ │ └── arguments: - │ │ @ ArgumentsNode (location: (3,17)-(3,19)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (3,17)-(3,19)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 42 - │ ├── subsequent: ∅ - │ └── end_keyword_loc: (4,8)-(4,11) = "end" - ├── locals: [] - ├── def_keyword_loc: (1,6)-(1,9) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (5,6)-(5,9) = "end" diff --git a/test/prism/snapshots/seattlerb/parse_line_str_with_newline_escape.txt b/test/prism/snapshots/seattlerb/parse_line_str_with_newline_escape.txt deleted file mode 100644 index 307e2af5f7..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_str_with_newline_escape.txt +++ /dev/null @@ -1,28 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,13)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: (1,1)-(1,2) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,12)) - │ ├── flags: ∅ - │ └── arguments: (length: 2) - │ ├── @ StringNode (location: (1,2)-(1,6)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,2)-(1,3) = "\"" - │ │ ├── content_loc: (1,3)-(1,5) = "\\n" - │ │ ├── closing_loc: (1,5)-(1,6) = "\"" - │ │ └── unescaped: "\n" - │ └── @ TrueNode (location: (1,8)-(1,12)) - │ └── flags: static_literal - ├── closing_loc: (1,12)-(1,13) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/parse_line_to_ary.txt b/test/prism/snapshots/seattlerb/parse_line_to_ary.txt deleted file mode 100644 index d1b21f313c..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_to_ary.txt +++ /dev/null @@ -1,44 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,1)) -├── flags: ∅ -├── locals: [:a, :b] -└── statements: - @ StatementsNode (location: (1,0)-(3,1)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ MultiWriteNode (location: (1,0)-(2,5)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ LocalVariableTargetNode (location: (1,0)-(1,1)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ └── @ LocalVariableTargetNode (location: (2,0)-(2,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ └── depth: 0 - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (2,2)-(2,3) = "=" - │ └── value: - │ @ CallNode (location: (2,4)-(2,5)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :c - │ ├── message_loc: (2,4)-(2,5) = "c" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (3,0)-(3,1)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :d - ├── message_loc: (3,0)-(3,1) = "d" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/parse_line_trailing_newlines.txt b/test/prism/snapshots/seattlerb/parse_line_trailing_newlines.txt deleted file mode 100644 index 459c13e9f5..0000000000 --- a/test/prism/snapshots/seattlerb/parse_line_trailing_newlines.txt +++ /dev/null @@ -1,27 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,1)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (2,0)-(2,1)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :b - ├── message_loc: (2,0)-(2,1) = "b" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/parse_opt_call_args_assocs_comma.txt b/test/prism/snapshots/seattlerb/parse_opt_call_args_assocs_comma.txt deleted file mode 100644 index d60a693d0e..0000000000 --- a/test/prism/snapshots/seattlerb/parse_opt_call_args_assocs_comma.txt +++ /dev/null @@ -1,37 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,8)) - ├── flags: newline - ├── receiver: - │ @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── call_operator_loc: ∅ - ├── name: :[] - ├── message_loc: (1,1)-(1,8) = "[2=>3,]" - ├── opening_loc: (1,1)-(1,2) = "[" - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,6)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 1) - │ └── @ KeywordHashNode (location: (1,2)-(1,6)) - │ ├── flags: ∅ - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (1,2)-(1,6)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ IntegerNode (location: (1,2)-(1,3)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── value: - │ │ @ IntegerNode (location: (1,5)-(1,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 3 - │ └── operator_loc: (1,3)-(1,5) = "=>" - ├── closing_loc: (1,7)-(1,8) = "]" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/parse_opt_call_args_lit_comma.txt b/test/prism/snapshots/seattlerb/parse_opt_call_args_lit_comma.txt deleted file mode 100644 index 753464b393..0000000000 --- a/test/prism/snapshots/seattlerb/parse_opt_call_args_lit_comma.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,5)) - ├── flags: newline - ├── receiver: - │ @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── call_operator_loc: ∅ - ├── name: :[] - ├── message_loc: (1,1)-(1,5) = "[2,]" - ├── opening_loc: (1,1)-(1,2) = "[" - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,3)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,2)-(1,3)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── closing_loc: (1,4)-(1,5) = "]" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/parse_pattern_019.txt b/test/prism/snapshots/seattlerb/parse_pattern_019.txt deleted file mode 100644 index 2c491f5b08..0000000000 --- a/test/prism/snapshots/seattlerb/parse_pattern_019.txt +++ /dev/null @@ -1,39 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(4,3)) - ├── flags: newline - ├── predicate: - │ @ IntegerNode (location: (1,5)-(1,6)) - │ ├── flags: static_literal, decimal - │ └── value: 0 - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(3,6)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ RangeNode (location: (2,3)-(2,8)) - │ │ ├── flags: static_literal - │ │ ├── left: - │ │ │ @ IntegerNode (location: (2,3)-(2,5)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: -1 - │ │ ├── right: - │ │ │ @ IntegerNode (location: (2,7)-(2,8)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── operator_loc: (2,5)-(2,7) = ".." - │ ├── statements: - │ │ @ StatementsNode (location: (3,2)-(3,6)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ TrueNode (location: (3,2)-(3,6)) - │ │ └── flags: newline, static_literal - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (4,0)-(4,3) = "end" diff --git a/test/prism/snapshots/seattlerb/parse_pattern_044.txt b/test/prism/snapshots/seattlerb/parse_pattern_044.txt deleted file mode 100644 index 0aca275aa0..0000000000 --- a/test/prism/snapshots/seattlerb/parse_pattern_044.txt +++ /dev/null @@ -1,46 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(4,3)) - ├── flags: newline - ├── predicate: - │ @ CallNode (location: (1,5)-(1,8)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :obj - │ ├── message_loc: (1,5)-(1,8) = "obj" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(3,6)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (2,3)-(2,11)) - │ │ ├── flags: ∅ - │ │ ├── constant: - │ │ │ @ ConstantReadNode (location: (2,3)-(2,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Object - │ │ ├── requireds: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (2,9)-(2,10) = "[" - │ │ └── closing_loc: (2,10)-(2,11) = "]" - │ ├── statements: - │ │ @ StatementsNode (location: (3,2)-(3,6)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ TrueNode (location: (3,2)-(3,6)) - │ │ └── flags: newline, static_literal - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (4,0)-(4,3) = "end" diff --git a/test/prism/snapshots/seattlerb/parse_pattern_051.txt b/test/prism/snapshots/seattlerb/parse_pattern_051.txt deleted file mode 100644 index 4bf6a890e7..0000000000 --- a/test/prism/snapshots/seattlerb/parse_pattern_051.txt +++ /dev/null @@ -1,55 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(4,3)) - ├── flags: newline - ├── predicate: - │ @ ArrayNode (location: (1,5)-(1,14)) - │ ├── flags: static_literal - │ ├── elements: (length: 3) - │ │ ├── @ IntegerNode (location: (1,6)-(1,7)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 0 - │ │ ├── @ IntegerNode (location: (1,9)-(1,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (1,12)-(1,13)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── opening_loc: (1,5)-(1,6) = "[" - │ └── closing_loc: (1,13)-(1,14) = "]" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(3,6)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (2,3)-(2,10)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ IntegerNode (location: (2,4)-(2,5)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 0 - │ │ │ └── @ IntegerNode (location: (2,7)-(2,8)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── rest: - │ │ │ @ ImplicitRestNode (location: (2,8)-(2,9)) - │ │ │ └── flags: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (2,3)-(2,4) = "[" - │ │ └── closing_loc: (2,9)-(2,10) = "]" - │ ├── statements: - │ │ @ StatementsNode (location: (3,2)-(3,6)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ TrueNode (location: (3,2)-(3,6)) - │ │ └── flags: newline, static_literal - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (4,0)-(4,3) = "end" diff --git a/test/prism/snapshots/seattlerb/parse_pattern_058.txt b/test/prism/snapshots/seattlerb/parse_pattern_058.txt deleted file mode 100644 index 9ca66d88f6..0000000000 --- a/test/prism/snapshots/seattlerb/parse_pattern_058.txt +++ /dev/null @@ -1,88 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [:a, :rest] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(4,3)) - ├── flags: newline - ├── predicate: - │ @ HashNode (location: (1,5)-(1,11)) - │ ├── flags: static_literal - │ ├── opening_loc: (1,5)-(1,6) = "{" - │ ├── elements: (length: 1) - │ │ └── @ AssocNode (location: (1,6)-(1,10)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (1,6)-(1,8)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (1,6)-(1,7) = "a" - │ │ │ ├── closing_loc: (1,7)-(1,8) = ":" - │ │ │ └── unescaped: "a" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (1,9)-(1,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 0 - │ │ └── operator_loc: ∅ - │ └── closing_loc: (1,10)-(1,11) = "}" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(3,11)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ HashPatternNode (location: (2,3)-(2,15)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── elements: (length: 1) - │ │ │ └── @ AssocNode (location: (2,4)-(2,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (2,4)-(2,6)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (2,4)-(2,5) = "a" - │ │ │ │ ├── closing_loc: (2,5)-(2,6) = ":" - │ │ │ │ └── unescaped: "a" - │ │ │ ├── value: - │ │ │ │ @ ImplicitNode (location: (2,4)-(2,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── value: - │ │ │ │ @ LocalVariableTargetNode (location: (2,4)-(2,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ └── depth: 0 - │ │ │ └── operator_loc: ∅ - │ │ ├── rest: - │ │ │ @ AssocSplatNode (location: (2,8)-(2,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── value: - │ │ │ │ @ LocalVariableTargetNode (location: (2,10)-(2,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :rest - │ │ │ │ └── depth: 0 - │ │ │ └── operator_loc: (2,8)-(2,10) = "**" - │ │ ├── opening_loc: (2,3)-(2,4) = "{" - │ │ └── closing_loc: (2,14)-(2,15) = "}" - │ ├── statements: - │ │ @ StatementsNode (location: (3,2)-(3,11)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ ArrayNode (location: (3,2)-(3,11)) - │ │ ├── flags: newline - │ │ ├── elements: (length: 2) - │ │ │ ├── @ LocalVariableReadNode (location: (3,3)-(3,4)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ └── depth: 0 - │ │ │ └── @ LocalVariableReadNode (location: (3,6)-(3,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :rest - │ │ │ └── depth: 0 - │ │ ├── opening_loc: (3,2)-(3,3) = "[" - │ │ └── closing_loc: (3,10)-(3,11) = "]" - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (4,0)-(4,3) = "end" diff --git a/test/prism/snapshots/seattlerb/parse_pattern_058_2.txt b/test/prism/snapshots/seattlerb/parse_pattern_058_2.txt deleted file mode 100644 index b72cefb096..0000000000 --- a/test/prism/snapshots/seattlerb/parse_pattern_058_2.txt +++ /dev/null @@ -1,80 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(4,3)) - ├── flags: newline - ├── predicate: - │ @ HashNode (location: (1,5)-(1,11)) - │ ├── flags: static_literal - │ ├── opening_loc: (1,5)-(1,6) = "{" - │ ├── elements: (length: 1) - │ │ └── @ AssocNode (location: (1,6)-(1,10)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (1,6)-(1,8)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (1,6)-(1,7) = "a" - │ │ │ ├── closing_loc: (1,7)-(1,8) = ":" - │ │ │ └── unescaped: "a" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (1,9)-(1,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 0 - │ │ └── operator_loc: ∅ - │ └── closing_loc: (1,10)-(1,11) = "}" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(3,5)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ HashPatternNode (location: (2,3)-(2,11)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── elements: (length: 1) - │ │ │ └── @ AssocNode (location: (2,4)-(2,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (2,4)-(2,6)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (2,4)-(2,5) = "a" - │ │ │ │ ├── closing_loc: (2,5)-(2,6) = ":" - │ │ │ │ └── unescaped: "a" - │ │ │ ├── value: - │ │ │ │ @ ImplicitNode (location: (2,4)-(2,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── value: - │ │ │ │ @ LocalVariableTargetNode (location: (2,4)-(2,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ └── depth: 0 - │ │ │ └── operator_loc: ∅ - │ │ ├── rest: - │ │ │ @ AssocSplatNode (location: (2,8)-(2,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── value: ∅ - │ │ │ └── operator_loc: (2,8)-(2,10) = "**" - │ │ ├── opening_loc: (2,3)-(2,4) = "{" - │ │ └── closing_loc: (2,10)-(2,11) = "}" - │ ├── statements: - │ │ @ StatementsNode (location: (3,2)-(3,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ ArrayNode (location: (3,2)-(3,5)) - │ │ ├── flags: newline - │ │ ├── elements: (length: 1) - │ │ │ └── @ LocalVariableReadNode (location: (3,3)-(3,4)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ ├── opening_loc: (3,2)-(3,3) = "[" - │ │ └── closing_loc: (3,4)-(3,5) = "]" - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (4,0)-(4,3) = "end" diff --git a/test/prism/snapshots/seattlerb/parse_pattern_069.txt b/test/prism/snapshots/seattlerb/parse_pattern_069.txt deleted file mode 100644 index fee569a90b..0000000000 --- a/test/prism/snapshots/seattlerb/parse_pattern_069.txt +++ /dev/null @@ -1,56 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(4,3)) - ├── flags: newline - ├── predicate: - │ @ SymbolNode (location: (1,5)-(1,7)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,5)-(1,6) = ":" - │ ├── value_loc: (1,6)-(1,7) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(3,3)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ HashPatternNode (location: (2,3)-(2,15)) - │ │ ├── flags: ∅ - │ │ ├── constant: - │ │ │ @ ConstantReadNode (location: (2,3)-(2,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Object - │ │ ├── elements: (length: 1) - │ │ │ └── @ AssocNode (location: (2,10)-(2,14)) - │ │ │ ├── flags: static_literal - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (2,10)-(2,12)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (2,10)-(2,11) = "b" - │ │ │ │ ├── closing_loc: (2,11)-(2,12) = ":" - │ │ │ │ └── unescaped: "b" - │ │ │ ├── value: - │ │ │ │ @ IntegerNode (location: (2,13)-(2,14)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── operator_loc: ∅ - │ │ ├── rest: ∅ - │ │ ├── opening_loc: (2,9)-(2,10) = "[" - │ │ └── closing_loc: (2,14)-(2,15) = "]" - │ ├── statements: - │ │ @ StatementsNode (location: (3,2)-(3,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (3,2)-(3,3)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 1 - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (4,0)-(4,3) = "end" diff --git a/test/prism/snapshots/seattlerb/parse_pattern_076.txt b/test/prism/snapshots/seattlerb/parse_pattern_076.txt deleted file mode 100644 index 368bb94f36..0000000000 --- a/test/prism/snapshots/seattlerb/parse_pattern_076.txt +++ /dev/null @@ -1,69 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(4,3)) - ├── flags: newline - ├── predicate: - │ @ HashNode (location: (1,5)-(1,11)) - │ ├── flags: static_literal - │ ├── opening_loc: (1,5)-(1,6) = "{" - │ ├── elements: (length: 1) - │ │ └── @ AssocNode (location: (1,6)-(1,10)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (1,6)-(1,8)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (1,6)-(1,7) = "a" - │ │ │ ├── closing_loc: (1,7)-(1,8) = ":" - │ │ │ └── unescaped: "a" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (1,9)-(1,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── operator_loc: ∅ - │ └── closing_loc: (1,10)-(1,11) = "}" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,0)-(3,6)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ HashPatternNode (location: (2,3)-(2,16)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── elements: (length: 1) - │ │ │ └── @ AssocNode (location: (2,4)-(2,8)) - │ │ │ ├── flags: static_literal - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (2,4)-(2,6)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (2,4)-(2,5) = "a" - │ │ │ │ ├── closing_loc: (2,5)-(2,6) = ":" - │ │ │ │ └── unescaped: "a" - │ │ │ ├── value: - │ │ │ │ @ IntegerNode (location: (2,7)-(2,8)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── operator_loc: ∅ - │ │ ├── rest: - │ │ │ @ NoKeywordsParameterNode (location: (2,10)-(2,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (2,10)-(2,12) = "**" - │ │ │ └── keyword_loc: (2,12)-(2,15) = "nil" - │ │ ├── opening_loc: (2,3)-(2,4) = "{" - │ │ └── closing_loc: (2,15)-(2,16) = "}" - │ ├── statements: - │ │ @ StatementsNode (location: (3,2)-(3,6)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ TrueNode (location: (3,2)-(3,6)) - │ │ └── flags: newline, static_literal - │ ├── in_loc: (2,0)-(2,2) = "in" - │ └── then_loc: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (4,0)-(4,3) = "end" diff --git a/test/prism/snapshots/seattlerb/parse_until_not_canonical.txt b/test/prism/snapshots/seattlerb/parse_until_not_canonical.txt deleted file mode 100644 index e8bd89c050..0000000000 --- a/test/prism/snapshots/seattlerb/parse_until_not_canonical.txt +++ /dev/null @@ -1,52 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ UntilNode (location: (1,0)-(3,3)) - ├── flags: newline - ├── keyword_loc: (1,0)-(1,5) = "until" - ├── closing_loc: (3,0)-(3,3) = "end" - ├── predicate: - │ @ CallNode (location: (1,6)-(1,18)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ CallNode (location: (1,10)-(1,18)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (1,10)-(1,13)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :var - │ │ │ ├── message_loc: (1,10)-(1,13) = "var" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (1,13)-(1,14) = "." - │ │ ├── name: :nil? - │ │ ├── message_loc: (1,14)-(1,18) = "nil?" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :! - │ ├── message_loc: (1,6)-(1,9) = "not" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── statements: - @ StatementsNode (location: (2,2)-(2,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (2,2)-(2,7)) - ├── flags: newline - ├── opening_loc: (2,2)-(2,3) = "'" - ├── content_loc: (2,3)-(2,6) = "foo" - ├── closing_loc: (2,6)-(2,7) = "'" - └── unescaped: "foo" diff --git a/test/prism/snapshots/seattlerb/parse_until_not_noncanonical.txt b/test/prism/snapshots/seattlerb/parse_until_not_noncanonical.txt deleted file mode 100644 index e8bd89c050..0000000000 --- a/test/prism/snapshots/seattlerb/parse_until_not_noncanonical.txt +++ /dev/null @@ -1,52 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ UntilNode (location: (1,0)-(3,3)) - ├── flags: newline - ├── keyword_loc: (1,0)-(1,5) = "until" - ├── closing_loc: (3,0)-(3,3) = "end" - ├── predicate: - │ @ CallNode (location: (1,6)-(1,18)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ CallNode (location: (1,10)-(1,18)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (1,10)-(1,13)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :var - │ │ │ ├── message_loc: (1,10)-(1,13) = "var" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (1,13)-(1,14) = "." - │ │ ├── name: :nil? - │ │ ├── message_loc: (1,14)-(1,18) = "nil?" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :! - │ ├── message_loc: (1,6)-(1,9) = "not" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── statements: - @ StatementsNode (location: (2,2)-(2,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (2,2)-(2,7)) - ├── flags: newline - ├── opening_loc: (2,2)-(2,3) = "'" - ├── content_loc: (2,3)-(2,6) = "foo" - ├── closing_loc: (2,6)-(2,7) = "'" - └── unescaped: "foo" diff --git a/test/prism/snapshots/seattlerb/parse_while_not_canonical.txt b/test/prism/snapshots/seattlerb/parse_while_not_canonical.txt deleted file mode 100644 index 16d53d5cef..0000000000 --- a/test/prism/snapshots/seattlerb/parse_while_not_canonical.txt +++ /dev/null @@ -1,52 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ WhileNode (location: (1,0)-(3,3)) - ├── flags: newline - ├── keyword_loc: (1,0)-(1,5) = "while" - ├── closing_loc: (3,0)-(3,3) = "end" - ├── predicate: - │ @ CallNode (location: (1,6)-(1,18)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ CallNode (location: (1,10)-(1,18)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (1,10)-(1,13)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :var - │ │ │ ├── message_loc: (1,10)-(1,13) = "var" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (1,13)-(1,14) = "." - │ │ ├── name: :nil? - │ │ ├── message_loc: (1,14)-(1,18) = "nil?" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :! - │ ├── message_loc: (1,6)-(1,9) = "not" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── statements: - @ StatementsNode (location: (2,2)-(2,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (2,2)-(2,7)) - ├── flags: newline - ├── opening_loc: (2,2)-(2,3) = "'" - ├── content_loc: (2,3)-(2,6) = "foo" - ├── closing_loc: (2,6)-(2,7) = "'" - └── unescaped: "foo" diff --git a/test/prism/snapshots/seattlerb/parse_while_not_noncanonical.txt b/test/prism/snapshots/seattlerb/parse_while_not_noncanonical.txt deleted file mode 100644 index 16d53d5cef..0000000000 --- a/test/prism/snapshots/seattlerb/parse_while_not_noncanonical.txt +++ /dev/null @@ -1,52 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ WhileNode (location: (1,0)-(3,3)) - ├── flags: newline - ├── keyword_loc: (1,0)-(1,5) = "while" - ├── closing_loc: (3,0)-(3,3) = "end" - ├── predicate: - │ @ CallNode (location: (1,6)-(1,18)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ CallNode (location: (1,10)-(1,18)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (1,10)-(1,13)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :var - │ │ │ ├── message_loc: (1,10)-(1,13) = "var" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (1,13)-(1,14) = "." - │ │ ├── name: :nil? - │ │ ├── message_loc: (1,14)-(1,18) = "nil?" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :! - │ ├── message_loc: (1,6)-(1,9) = "not" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── statements: - @ StatementsNode (location: (2,2)-(2,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (2,2)-(2,7)) - ├── flags: newline - ├── opening_loc: (2,2)-(2,3) = "'" - ├── content_loc: (2,3)-(2,6) = "foo" - ├── closing_loc: (2,6)-(2,7) = "'" - └── unescaped: "foo" diff --git a/test/prism/snapshots/seattlerb/pctW_lineno.txt b/test/prism/snapshots/seattlerb/pctW_lineno.txt deleted file mode 100644 index 3afa00f067..0000000000 --- a/test/prism/snapshots/seattlerb/pctW_lineno.txt +++ /dev/null @@ -1,54 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ArrayNode (location: (1,0)-(5,11)) - ├── flags: newline - ├── elements: (length: 7) - │ ├── @ StringNode (location: (1,3)-(1,7)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (1,3)-(1,7) = "a\\nb" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a\nb" - │ ├── @ StringNode (location: (2,0)-(2,1)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (2,0)-(2,1) = "c" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "c" - │ ├── @ StringNode (location: (2,2)-(2,3)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (2,2)-(2,3) = "d" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "d" - │ ├── @ StringNode (location: (3,0)-(4,1)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (3,0)-(4,1) = "e\\\nf" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "e\nf" - │ ├── @ StringNode (location: (5,0)-(5,2)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (5,0)-(5,2) = "gy" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "gy" - │ ├── @ StringNode (location: (5,3)-(5,6)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (5,3)-(5,6) = "h\\y" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "hy" - │ └── @ StringNode (location: (5,7)-(5,10)) - │ ├── flags: ∅ - │ ├── opening_loc: ∅ - │ ├── content_loc: (5,7)-(5,10) = "i\\y" - │ ├── closing_loc: ∅ - │ └── unescaped: "iy" - ├── opening_loc: (1,0)-(1,3) = "%W(" - └── closing_loc: (5,10)-(5,11) = ")" diff --git a/test/prism/snapshots/seattlerb/pct_Q_backslash_nl.txt b/test/prism/snapshots/seattlerb/pct_Q_backslash_nl.txt deleted file mode 100644 index 0789fb575c..0000000000 --- a/test/prism/snapshots/seattlerb/pct_Q_backslash_nl.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,1)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (1,0)-(2,1)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,3) = "%q{" - ├── content_loc: (1,3)-(2,0) = " \\\n" - ├── closing_loc: (2,0)-(2,1) = "}" - └── unescaped: " \\\n" diff --git a/test/prism/snapshots/seattlerb/pct_nl.txt b/test/prism/snapshots/seattlerb/pct_nl.txt deleted file mode 100644 index 971e2a58ee..0000000000 --- a/test/prism/snapshots/seattlerb/pct_nl.txt +++ /dev/null @@ -1,20 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,0)) -├── flags: ∅ -├── locals: [:x] -└── statements: - @ StatementsNode (location: (1,0)-(3,0)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableWriteNode (location: (1,0)-(3,0)) - ├── flags: newline - ├── name: :x - ├── depth: 0 - ├── name_loc: (1,0)-(1,1) = "x" - ├── value: - │ @ StringNode (location: (1,4)-(3,0)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,4)-(2,0) = "%\n" - │ ├── content_loc: (2,0)-(2,0) = "" - │ ├── closing_loc: (2,0)-(3,0) = "\n" - │ └── unescaped: "" - └── operator_loc: (1,2)-(1,3) = "=" diff --git a/test/prism/snapshots/seattlerb/pct_w_heredoc_interp_nested.txt b/test/prism/snapshots/seattlerb/pct_w_heredoc_interp_nested.txt deleted file mode 100644 index 4d5f2c7f0f..0000000000 --- a/test/prism/snapshots/seattlerb/pct_w_heredoc_interp_nested.txt +++ /dev/null @@ -1,55 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ArrayNode (location: (1,0)-(4,11)) - ├── flags: newline - ├── elements: (length: 5) - │ ├── @ StringNode (location: (1,4)-(1,5)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (1,4)-(1,5) = "1" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "1" - │ ├── @ InterpolatedStringNode (location: (1,6)-(1,12)) - │ │ ├── flags: static_literal, mutable - │ │ ├── opening_loc: ∅ - │ │ ├── parts: (length: 1) - │ │ │ └── @ EmbeddedStatementsNode (location: (1,6)-(1,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (1,6)-(1,8) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (1,8)-(1,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ StringNode (location: (1,8)-(1,11)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: (1,8)-(1,11) = "<<A" - │ │ │ │ ├── content_loc: (2,0)-(3,0) = "2\n" - │ │ │ │ ├── closing_loc: (3,0)-(4,0) = "A\n" - │ │ │ │ └── unescaped: "2\n" - │ │ │ └── closing_loc: (1,11)-(1,12) = "}" - │ │ └── closing_loc: ∅ - │ ├── @ StringNode (location: (1,13)-(1,14)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (1,13)-(1,14) = "3" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "3" - │ ├── @ StringNode (location: (4,6)-(4,7)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (4,6)-(4,7) = "4" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "4" - │ └── @ StringNode (location: (4,8)-(4,9)) - │ ├── flags: ∅ - │ ├── opening_loc: ∅ - │ ├── content_loc: (4,8)-(4,9) = "5" - │ ├── closing_loc: ∅ - │ └── unescaped: "5" - ├── opening_loc: (1,0)-(1,3) = "%W(" - └── closing_loc: (4,10)-(4,11) = ")" diff --git a/test/prism/snapshots/seattlerb/pipe_semicolon.txt b/test/prism/snapshots/seattlerb/pipe_semicolon.txt deleted file mode 100644 index 14b4ad4d54..0000000000 --- a/test/prism/snapshots/seattlerb/pipe_semicolon.txt +++ /dev/null @@ -1,43 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,18)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,18)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,18)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,1)-(1,2) = "." - ├── name: :b - ├── message_loc: (1,2)-(1,3) = "b" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,4)-(1,18)) - ├── flags: ∅ - ├── locals: [:c] - ├── parameters: - │ @ BlockParametersNode (location: (1,7)-(1,14)) - │ ├── flags: ∅ - │ ├── parameters: ∅ - │ ├── locals: (length: 1) - │ │ └── @ BlockLocalVariableNode (location: (1,11)-(1,12)) - │ │ ├── flags: ∅ - │ │ └── name: :c - │ ├── opening_loc: (1,7)-(1,8) = "|" - │ └── closing_loc: (1,13)-(1,14) = "|" - ├── body: ∅ - ├── opening_loc: (1,4)-(1,6) = "do" - └── closing_loc: (1,15)-(1,18) = "end" diff --git a/test/prism/snapshots/seattlerb/pipe_space.txt b/test/prism/snapshots/seattlerb/pipe_space.txt deleted file mode 100644 index 00aba740dd..0000000000 --- a/test/prism/snapshots/seattlerb/pipe_space.txt +++ /dev/null @@ -1,40 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,14)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,1)-(1,2) = "." - ├── name: :b - ├── message_loc: (1,2)-(1,3) = "b" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,4)-(1,14)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: - │ @ BlockParametersNode (location: (1,7)-(1,10)) - │ ├── flags: ∅ - │ ├── parameters: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,7)-(1,8) = "|" - │ └── closing_loc: (1,9)-(1,10) = "|" - ├── body: ∅ - ├── opening_loc: (1,4)-(1,6) = "do" - └── closing_loc: (1,11)-(1,14) = "end" diff --git a/test/prism/snapshots/seattlerb/qWords_space.txt b/test/prism/snapshots/seattlerb/qWords_space.txt deleted file mode 100644 index 6df5459c77..0000000000 --- a/test/prism/snapshots/seattlerb/qWords_space.txt +++ /dev/null @@ -1,12 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ArrayNode (location: (1,0)-(1,5)) - ├── flags: newline, static_literal - ├── elements: (length: 0) - ├── opening_loc: (1,0)-(1,3) = "%W(" - └── closing_loc: (1,4)-(1,5) = ")" diff --git a/test/prism/snapshots/seattlerb/qsymbols.txt b/test/prism/snapshots/seattlerb/qsymbols.txt deleted file mode 100644 index b350644933..0000000000 --- a/test/prism/snapshots/seattlerb/qsymbols.txt +++ /dev/null @@ -1,30 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ArrayNode (location: (1,0)-(1,9)) - ├── flags: newline, static_literal - ├── elements: (length: 3) - │ ├── @ SymbolNode (location: (1,3)-(1,4)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (1,3)-(1,4) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── @ SymbolNode (location: (1,5)-(1,6)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (1,5)-(1,6) = "b" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b" - │ └── @ SymbolNode (location: (1,7)-(1,8)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: ∅ - │ ├── value_loc: (1,7)-(1,8) = "c" - │ ├── closing_loc: ∅ - │ └── unescaped: "c" - ├── opening_loc: (1,0)-(1,3) = "%I(" - └── closing_loc: (1,8)-(1,9) = ")" diff --git a/test/prism/snapshots/seattlerb/qsymbols_empty.txt b/test/prism/snapshots/seattlerb/qsymbols_empty.txt deleted file mode 100644 index 80af231eb4..0000000000 --- a/test/prism/snapshots/seattlerb/qsymbols_empty.txt +++ /dev/null @@ -1,12 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ArrayNode (location: (1,0)-(1,4)) - ├── flags: newline, static_literal - ├── elements: (length: 0) - ├── opening_loc: (1,0)-(1,3) = "%I(" - └── closing_loc: (1,3)-(1,4) = ")" diff --git a/test/prism/snapshots/seattlerb/qsymbols_empty_space.txt b/test/prism/snapshots/seattlerb/qsymbols_empty_space.txt deleted file mode 100644 index d55d1a5003..0000000000 --- a/test/prism/snapshots/seattlerb/qsymbols_empty_space.txt +++ /dev/null @@ -1,12 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ArrayNode (location: (1,0)-(1,5)) - ├── flags: newline, static_literal - ├── elements: (length: 0) - ├── opening_loc: (1,0)-(1,3) = "%I(" - └── closing_loc: (1,4)-(1,5) = ")" diff --git a/test/prism/snapshots/seattlerb/qsymbols_interp.txt b/test/prism/snapshots/seattlerb/qsymbols_interp.txt deleted file mode 100644 index 844decfc43..0000000000 --- a/test/prism/snapshots/seattlerb/qsymbols_interp.txt +++ /dev/null @@ -1,62 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,15)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ArrayNode (location: (1,0)-(1,15)) - ├── flags: newline - ├── elements: (length: 3) - │ ├── @ SymbolNode (location: (1,3)-(1,4)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (1,3)-(1,4) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── @ InterpolatedSymbolNode (location: (1,5)-(1,12)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── parts: (length: 2) - │ │ │ ├── @ StringNode (location: (1,5)-(1,6)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (1,5)-(1,6) = "b" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "b" - │ │ │ └── @ EmbeddedStatementsNode (location: (1,6)-(1,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (1,6)-(1,8) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (1,8)-(1,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (1,8)-(1,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── receiver: - │ │ │ │ │ @ IntegerNode (location: (1,8)-(1,9)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :+ - │ │ │ │ ├── message_loc: (1,9)-(1,10) = "+" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (1,10)-(1,11)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ IntegerNode (location: (1,10)-(1,11)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── closing_loc: (1,11)-(1,12) = "}" - │ │ └── closing_loc: ∅ - │ └── @ SymbolNode (location: (1,13)-(1,14)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: ∅ - │ ├── value_loc: (1,13)-(1,14) = "c" - │ ├── closing_loc: ∅ - │ └── unescaped: "c" - ├── opening_loc: (1,0)-(1,3) = "%I(" - └── closing_loc: (1,14)-(1,15) = ")" diff --git a/test/prism/snapshots/seattlerb/quoted_symbol_hash_arg.txt b/test/prism/snapshots/seattlerb/quoted_symbol_hash_arg.txt deleted file mode 100644 index 9484ed9d04..0000000000 --- a/test/prism/snapshots/seattlerb/quoted_symbol_hash_arg.txt +++ /dev/null @@ -1,39 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,12)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :puts - ├── message_loc: (1,0)-(1,4) = "puts" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,5)-(1,12)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 1) - │ └── @ KeywordHashNode (location: (1,5)-(1,12)) - │ ├── flags: symbol_keys - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (1,5)-(1,12)) - │ ├── flags: ∅ - │ ├── key: - │ │ @ SymbolNode (location: (1,5)-(1,9)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,5)-(1,6) = "'" - │ │ ├── value_loc: (1,6)-(1,7) = "a" - │ │ ├── closing_loc: (1,7)-(1,9) = "':" - │ │ └── unescaped: "a" - │ ├── value: - │ │ @ HashNode (location: (1,10)-(1,12)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (1,10)-(1,11) = "{" - │ │ ├── elements: (length: 0) - │ │ └── closing_loc: (1,11)-(1,12) = "}" - │ └── operator_loc: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/quoted_symbol_keys.txt b/test/prism/snapshots/seattlerb/quoted_symbol_keys.txt deleted file mode 100644 index 12a8126896..0000000000 --- a/test/prism/snapshots/seattlerb/quoted_symbol_keys.txt +++ /dev/null @@ -1,29 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ HashNode (location: (1,0)-(1,11)) - ├── flags: newline, static_literal - ├── opening_loc: (1,0)-(1,1) = "{" - ├── elements: (length: 1) - │ └── @ AssocNode (location: (1,2)-(1,9)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ SymbolNode (location: (1,2)-(1,6)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,2)-(1,3) = "'" - │ │ ├── value_loc: (1,3)-(1,4) = "a" - │ │ ├── closing_loc: (1,4)-(1,6) = "':" - │ │ └── unescaped: "a" - │ ├── value: - │ │ @ SymbolNode (location: (1,7)-(1,9)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,7)-(1,8) = ":" - │ │ ├── value_loc: (1,8)-(1,9) = "b" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b" - │ └── operator_loc: ∅ - └── closing_loc: (1,10)-(1,11) = "}" diff --git a/test/prism/snapshots/seattlerb/qw_escape.txt b/test/prism/snapshots/seattlerb/qw_escape.txt deleted file mode 100644 index 8d922f190a..0000000000 --- a/test/prism/snapshots/seattlerb/qw_escape.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (1,0)-(1,7)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,3) = "%q(" - ├── content_loc: (1,3)-(1,6) = "\u0001\\'" - ├── closing_loc: (1,6)-(1,7) = ")" - └── unescaped: "\u0001\\'" diff --git a/test/prism/snapshots/seattlerb/qw_escape_term.txt b/test/prism/snapshots/seattlerb/qw_escape_term.txt deleted file mode 100644 index 8c369acd84..0000000000 --- a/test/prism/snapshots/seattlerb/qw_escape_term.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,26)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,26)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (1,0)-(1,26)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,3) = "%q|" - ├── content_loc: (1,3)-(1,25) = "blah blah \\| blah blah" - ├── closing_loc: (1,25)-(1,26) = "|" - └── unescaped: "blah blah | blah blah" diff --git a/test/prism/snapshots/seattlerb/qwords_empty.txt b/test/prism/snapshots/seattlerb/qwords_empty.txt deleted file mode 100644 index 53279b034b..0000000000 --- a/test/prism/snapshots/seattlerb/qwords_empty.txt +++ /dev/null @@ -1,12 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ArrayNode (location: (1,0)-(1,4)) - ├── flags: newline, static_literal - ├── elements: (length: 0) - ├── opening_loc: (1,0)-(1,3) = "%w(" - └── closing_loc: (1,3)-(1,4) = ")" diff --git a/test/prism/snapshots/seattlerb/read_escape_unicode_curlies.txt b/test/prism/snapshots/seattlerb/read_escape_unicode_curlies.txt deleted file mode 100644 index bc0d9f92de..0000000000 --- a/test/prism/snapshots/seattlerb/read_escape_unicode_curlies.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (1,0)-(1,9)) - ├── flags: newline, forced_utf8_encoding - ├── opening_loc: (1,0)-(1,1) = "?" - ├── content_loc: (1,1)-(1,9) = "\\u{00a0}" - ├── closing_loc: ∅ - └── unescaped: " " diff --git a/test/prism/snapshots/seattlerb/read_escape_unicode_h4.txt b/test/prism/snapshots/seattlerb/read_escape_unicode_h4.txt deleted file mode 100644 index 046faafb22..0000000000 --- a/test/prism/snapshots/seattlerb/read_escape_unicode_h4.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (1,0)-(1,7)) - ├── flags: newline, forced_utf8_encoding - ├── opening_loc: (1,0)-(1,1) = "?" - ├── content_loc: (1,1)-(1,7) = "\\u00a0" - ├── closing_loc: ∅ - └── unescaped: " " diff --git a/test/prism/snapshots/seattlerb/regexp.txt b/test/prism/snapshots/seattlerb/regexp.txt deleted file mode 100644 index f8b3f38047..0000000000 --- a/test/prism/snapshots/seattlerb/regexp.txt +++ /dev/null @@ -1,37 +0,0 @@ -@ ProgramNode (location: (1,0)-(9,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(9,13)) - ├── flags: ∅ - └── body: (length: 5) - ├── @ RegularExpressionNode (location: (1,0)-(1,5)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,0)-(1,1) = "/" - │ ├── content_loc: (1,1)-(1,4) = "wtf" - │ ├── closing_loc: (1,4)-(1,5) = "/" - │ └── unescaped: "wtf" - ├── @ RegularExpressionNode (location: (3,0)-(3,6)) - │ ├── flags: newline, static_literal, multi_line, forced_us_ascii_encoding - │ ├── opening_loc: (3,0)-(3,1) = "/" - │ ├── content_loc: (3,1)-(3,4) = "wtf" - │ ├── closing_loc: (3,4)-(3,6) = "/m" - │ └── unescaped: "wtf" - ├── @ RegularExpressionNode (location: (5,0)-(5,6)) - │ ├── flags: newline, static_literal, ascii_8bit, forced_us_ascii_encoding - │ ├── opening_loc: (5,0)-(5,1) = "/" - │ ├── content_loc: (5,1)-(5,4) = "wtf" - │ ├── closing_loc: (5,4)-(5,6) = "/n" - │ └── unescaped: "wtf" - ├── @ RegularExpressionNode (location: (7,0)-(7,7)) - │ ├── flags: newline, static_literal, multi_line, ascii_8bit, forced_us_ascii_encoding - │ ├── opening_loc: (7,0)-(7,1) = "/" - │ ├── content_loc: (7,1)-(7,4) = "wtf" - │ ├── closing_loc: (7,4)-(7,7) = "/nm" - │ └── unescaped: "wtf" - └── @ RegularExpressionNode (location: (9,0)-(9,13)) - ├── flags: newline, static_literal, multi_line, ascii_8bit, forced_us_ascii_encoding - ├── opening_loc: (9,0)-(9,1) = "/" - ├── content_loc: (9,1)-(9,4) = "wtf" - ├── closing_loc: (9,4)-(9,13) = "/nmnmnmnm" - └── unescaped: "wtf" diff --git a/test/prism/snapshots/seattlerb/regexp_esc_C_slash.txt b/test/prism/snapshots/seattlerb/regexp_esc_C_slash.txt deleted file mode 100644 index 97444c6e2b..0000000000 --- a/test/prism/snapshots/seattlerb/regexp_esc_C_slash.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ RegularExpressionNode (location: (1,0)-(1,7)) - ├── flags: newline, static_literal, forced_us_ascii_encoding - ├── opening_loc: (1,0)-(1,1) = "/" - ├── content_loc: (1,1)-(1,6) = "\\cC\\d" - ├── closing_loc: (1,6)-(1,7) = "/" - └── unescaped: "\\x03\\d" diff --git a/test/prism/snapshots/seattlerb/regexp_esc_u.txt b/test/prism/snapshots/seattlerb/regexp_esc_u.txt deleted file mode 100644 index 1e915bae99..0000000000 --- a/test/prism/snapshots/seattlerb/regexp_esc_u.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,17)) - ├── flags: ∅ - └── body: (length: 1) - └── @ RegularExpressionNode (location: (1,0)-(1,17)) - ├── flags: newline, static_literal, forced_us_ascii_encoding - ├── opening_loc: (1,0)-(1,1) = "/" - ├── content_loc: (1,1)-(1,16) = "[\\u0021-\\u0027]" - ├── closing_loc: (1,16)-(1,17) = "/" - └── unescaped: "[\\u0021-\\u0027]" diff --git a/test/prism/snapshots/seattlerb/regexp_escape_extended.txt b/test/prism/snapshots/seattlerb/regexp_escape_extended.txt deleted file mode 100644 index 732899a20d..0000000000 --- a/test/prism/snapshots/seattlerb/regexp_escape_extended.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ RegularExpressionNode (location: (1,0)-(1,6)) - ├── flags: newline, static_literal - ├── opening_loc: (1,0)-(1,1) = "/" - ├── content_loc: (1,1)-(1,5) = "\\“" - ├── closing_loc: (1,5)-(1,6) = "/" - └── unescaped: "“" diff --git a/test/prism/snapshots/seattlerb/regexp_unicode_curlies.txt b/test/prism/snapshots/seattlerb/regexp_unicode_curlies.txt deleted file mode 100644 index e62ed42ca5..0000000000 --- a/test/prism/snapshots/seattlerb/regexp_unicode_curlies.txt +++ /dev/null @@ -1,19 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,8)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ RegularExpressionNode (location: (1,0)-(1,15)) - │ ├── flags: newline, static_literal, forced_utf8_encoding - │ ├── opening_loc: (1,0)-(1,1) = "/" - │ ├── content_loc: (1,1)-(1,14) = "\\u{c0de babe}" - │ ├── closing_loc: (1,14)-(1,15) = "/" - │ └── unescaped: "\\u{c0de babe}" - └── @ RegularExpressionNode (location: (3,0)-(3,8)) - ├── flags: newline, static_literal, forced_utf8_encoding - ├── opening_loc: (3,0)-(3,1) = "/" - ├── content_loc: (3,1)-(3,7) = "\\u{df}" - ├── closing_loc: (3,7)-(3,8) = "/" - └── unescaped: "\\u{df}" diff --git a/test/prism/snapshots/seattlerb/required_kwarg_no_value.txt b/test/prism/snapshots/seattlerb/required_kwarg_no_value.txt deleted file mode 100644 index 6ae3e6d0a8..0000000000 --- a/test/prism/snapshots/seattlerb/required_kwarg_no_value.txt +++ /dev/null @@ -1,38 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(2,3)) - ├── flags: newline - ├── name: :x - ├── name_loc: (1,4)-(1,5) = "x" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,12)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 2) - │ │ ├── @ RequiredKeywordParameterNode (location: (1,6)-(1,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── name_loc: (1,6)-(1,8) = "a:" - │ │ └── @ RequiredKeywordParameterNode (location: (1,10)-(1,12)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ └── name_loc: (1,10)-(1,12) = "b:" - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:a, :b] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (2,0)-(2,3) = "end" diff --git a/test/prism/snapshots/seattlerb/rescue_do_end_ensure_result.txt b/test/prism/snapshots/seattlerb/rescue_do_end_ensure_result.txt deleted file mode 100644 index bc3c34446b..0000000000 --- a/test/prism/snapshots/seattlerb/rescue_do_end_ensure_result.txt +++ /dev/null @@ -1,65 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(5,8)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(5,3)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :proc - │ ├── message_loc: (1,0)-(1,4) = "proc" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (1,5)-(5,3)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ BeginNode (location: (1,5)-(5,3)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (2,2)-(2,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ SymbolNode (location: (2,2)-(2,8)) - │ │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (2,2)-(2,3) = ":" - │ │ │ ├── value_loc: (2,3)-(2,8) = "begin" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "begin" - │ │ ├── rescue_clause: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: - │ │ │ @ EnsureNode (location: (3,0)-(5,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── ensure_keyword_loc: (3,0)-(3,6) = "ensure" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (4,2)-(4,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ SymbolNode (location: (4,2)-(4,9)) - │ │ │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (4,2)-(4,3) = ":" - │ │ │ │ ├── value_loc: (4,3)-(4,9) = "ensure" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "ensure" - │ │ │ └── end_keyword_loc: (5,0)-(5,3) = "end" - │ │ └── end_keyword_loc: (5,0)-(5,3) = "end" - │ ├── opening_loc: (1,5)-(1,7) = "do" - │ └── closing_loc: (5,0)-(5,3) = "end" - ├── call_operator_loc: (5,3)-(5,4) = "." - ├── name: :call - ├── message_loc: (5,4)-(5,8) = "call" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/rescue_do_end_no_raise.txt b/test/prism/snapshots/seattlerb/rescue_do_end_no_raise.txt deleted file mode 100644 index 769ee2536c..0000000000 --- a/test/prism/snapshots/seattlerb/rescue_do_end_no_raise.txt +++ /dev/null @@ -1,86 +0,0 @@ -@ ProgramNode (location: (1,0)-(9,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(9,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(9,3)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :tap - ├── message_loc: (1,0)-(1,3) = "tap" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,4)-(9,3)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: - │ @ BeginNode (location: (1,4)-(9,3)) - │ ├── flags: ∅ - │ ├── begin_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (2,2)-(2,8)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SymbolNode (location: (2,2)-(2,8)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (2,2)-(2,3) = ":" - │ │ ├── value_loc: (2,3)-(2,8) = "begin" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "begin" - │ ├── rescue_clause: - │ │ @ RescueNode (location: (3,0)-(4,9)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (3,0)-(3,6) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (4,2)-(4,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ SymbolNode (location: (4,2)-(4,9)) - │ │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (4,2)-(4,3) = ":" - │ │ │ ├── value_loc: (4,3)-(4,9) = "rescue" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "rescue" - │ │ └── subsequent: ∅ - │ ├── else_clause: - │ │ @ ElseNode (location: (5,0)-(7,6)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (5,0)-(5,4) = "else" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (6,2)-(6,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ SymbolNode (location: (6,2)-(6,7)) - │ │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (6,2)-(6,3) = ":" - │ │ │ ├── value_loc: (6,3)-(6,7) = "else" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "else" - │ │ └── end_keyword_loc: (7,0)-(7,6) = "ensure" - │ ├── ensure_clause: - │ │ @ EnsureNode (location: (7,0)-(9,3)) - │ │ ├── flags: ∅ - │ │ ├── ensure_keyword_loc: (7,0)-(7,6) = "ensure" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (8,2)-(8,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ SymbolNode (location: (8,2)-(8,9)) - │ │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (8,2)-(8,3) = ":" - │ │ │ ├── value_loc: (8,3)-(8,9) = "ensure" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "ensure" - │ │ └── end_keyword_loc: (9,0)-(9,3) = "end" - │ └── end_keyword_loc: (9,0)-(9,3) = "end" - ├── opening_loc: (1,4)-(1,6) = "do" - └── closing_loc: (9,0)-(9,3) = "end" diff --git a/test/prism/snapshots/seattlerb/rescue_do_end_raised.txt b/test/prism/snapshots/seattlerb/rescue_do_end_raised.txt deleted file mode 100644 index 53b77c1ea5..0000000000 --- a/test/prism/snapshots/seattlerb/rescue_do_end_raised.txt +++ /dev/null @@ -1,59 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(5,3)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :tap - ├── message_loc: (1,0)-(1,3) = "tap" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,4)-(5,3)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: - │ @ BeginNode (location: (1,4)-(5,3)) - │ ├── flags: ∅ - │ ├── begin_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (2,2)-(2,7)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (2,2)-(2,7)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :raise - │ │ ├── message_loc: (2,2)-(2,7) = "raise" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: - │ │ @ EnsureNode (location: (3,0)-(5,3)) - │ │ ├── flags: ∅ - │ │ ├── ensure_keyword_loc: (3,0)-(3,6) = "ensure" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (4,2)-(4,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ SymbolNode (location: (4,2)-(4,9)) - │ │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (4,2)-(4,3) = ":" - │ │ │ ├── value_loc: (4,3)-(4,9) = "ensure" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "ensure" - │ │ └── end_keyword_loc: (5,0)-(5,3) = "end" - │ └── end_keyword_loc: (5,0)-(5,3) = "end" - ├── opening_loc: (1,4)-(1,6) = "do" - └── closing_loc: (5,0)-(5,3) = "end" diff --git a/test/prism/snapshots/seattlerb/rescue_do_end_rescued.txt b/test/prism/snapshots/seattlerb/rescue_do_end_rescued.txt deleted file mode 100644 index 86554b4930..0000000000 --- a/test/prism/snapshots/seattlerb/rescue_do_end_rescued.txt +++ /dev/null @@ -1,90 +0,0 @@ -@ ProgramNode (location: (1,0)-(9,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(9,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(9,3)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :tap - ├── message_loc: (1,0)-(1,3) = "tap" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,4)-(9,3)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: - │ @ BeginNode (location: (1,4)-(9,3)) - │ ├── flags: ∅ - │ ├── begin_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (2,2)-(2,7)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (2,2)-(2,7)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :raise - │ │ ├── message_loc: (2,2)-(2,7) = "raise" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (3,0)-(4,9)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (3,0)-(3,6) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (4,2)-(4,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ SymbolNode (location: (4,2)-(4,9)) - │ │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (4,2)-(4,3) = ":" - │ │ │ ├── value_loc: (4,3)-(4,9) = "rescue" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "rescue" - │ │ └── subsequent: ∅ - │ ├── else_clause: - │ │ @ ElseNode (location: (5,0)-(7,6)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (5,0)-(5,4) = "else" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (6,2)-(6,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ SymbolNode (location: (6,2)-(6,7)) - │ │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (6,2)-(6,3) = ":" - │ │ │ ├── value_loc: (6,3)-(6,7) = "else" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "else" - │ │ └── end_keyword_loc: (7,0)-(7,6) = "ensure" - │ ├── ensure_clause: - │ │ @ EnsureNode (location: (7,0)-(9,3)) - │ │ ├── flags: ∅ - │ │ ├── ensure_keyword_loc: (7,0)-(7,6) = "ensure" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (8,2)-(8,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ SymbolNode (location: (8,2)-(8,9)) - │ │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (8,2)-(8,3) = ":" - │ │ │ ├── value_loc: (8,3)-(8,9) = "ensure" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "ensure" - │ │ └── end_keyword_loc: (9,0)-(9,3) = "end" - │ └── end_keyword_loc: (9,0)-(9,3) = "end" - ├── opening_loc: (1,4)-(1,6) = "do" - └── closing_loc: (9,0)-(9,3) = "end" diff --git a/test/prism/snapshots/seattlerb/rescue_in_block.txt b/test/prism/snapshots/seattlerb/rescue_in_block.txt deleted file mode 100644 index 5ec6a6ae7a..0000000000 --- a/test/prism/snapshots/seattlerb/rescue_in_block.txt +++ /dev/null @@ -1,53 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(4,3)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :blah - ├── message_loc: (1,0)-(1,4) = "blah" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,5)-(4,3)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: - │ @ BeginNode (location: (1,5)-(4,3)) - │ ├── flags: ∅ - │ ├── begin_keyword_loc: ∅ - │ ├── statements: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (2,0)-(3,7)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (2,0)-(2,6) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (3,2)-(3,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (3,2)-(3,7)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :stuff - │ │ │ ├── message_loc: (3,2)-(3,7) = "stuff" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (4,0)-(4,3) = "end" - ├── opening_loc: (1,5)-(1,7) = "do" - └── closing_loc: (4,0)-(4,3) = "end" diff --git a/test/prism/snapshots/seattlerb/rescue_parens.txt b/test/prism/snapshots/seattlerb/rescue_parens.txt deleted file mode 100644 index 2232ebb7a5..0000000000 --- a/test/prism/snapshots/seattlerb/rescue_parens.txt +++ /dev/null @@ -1,53 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,14)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,14)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ ParenthesesNode (location: (1,2)-(1,14)) - │ ├── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,3)-(1,13)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ RescueModifierNode (location: (1,3)-(1,13)) - │ │ ├── flags: newline - │ │ ├── expression: - │ │ │ @ CallNode (location: (1,3)-(1,4)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (1,3)-(1,4) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── keyword_loc: (1,5)-(1,11) = "rescue" - │ │ └── rescue_expression: - │ │ @ CallNode (location: (1,12)-(1,13)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :c - │ │ ├── message_loc: (1,12)-(1,13) = "c" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (1,2)-(1,3) = "(" - │ └── closing_loc: (1,13)-(1,14) = ")" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/return_call_assocs.txt b/test/prism/snapshots/seattlerb/return_call_assocs.txt deleted file mode 100644 index 58c34b41d6..0000000000 --- a/test/prism/snapshots/seattlerb/return_call_assocs.txt +++ /dev/null @@ -1,227 +0,0 @@ -@ ProgramNode (location: (1,0)-(11,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(11,14)) - ├── flags: ∅ - └── body: (length: 6) - ├── @ ReturnNode (location: (1,0)-(1,17)) - │ ├── flags: newline - │ ├── keyword_loc: (1,0)-(1,6) = "return" - │ └── arguments: - │ @ ArgumentsNode (location: (1,7)-(1,17)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 2) - │ ├── @ IntegerNode (location: (1,7)-(1,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── @ KeywordHashNode (location: (1,10)-(1,17)) - │ ├── flags: symbol_keys - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (1,10)-(1,17)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ SymbolNode (location: (1,10)-(1,12)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,10)-(1,11) = ":" - │ │ ├── value_loc: (1,11)-(1,12) = "z" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "z" - │ ├── value: - │ │ @ IntegerNode (location: (1,16)-(1,17)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (1,13)-(1,15) = "=>" - ├── @ ReturnNode (location: (3,0)-(3,26)) - │ ├── flags: newline - │ ├── keyword_loc: (3,0)-(3,6) = "return" - │ └── arguments: - │ @ ArgumentsNode (location: (3,7)-(3,26)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 2) - │ ├── @ IntegerNode (location: (3,7)-(3,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── @ KeywordHashNode (location: (3,10)-(3,26)) - │ ├── flags: symbol_keys - │ └── elements: (length: 2) - │ ├── @ AssocNode (location: (3,10)-(3,17)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (3,10)-(3,12)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (3,10)-(3,11) = ":" - │ │ │ ├── value_loc: (3,11)-(3,12) = "z" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "z" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (3,16)-(3,17)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── operator_loc: (3,13)-(3,15) = "=>" - │ └── @ AssocNode (location: (3,19)-(3,26)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ SymbolNode (location: (3,19)-(3,21)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (3,19)-(3,20) = ":" - │ │ ├── value_loc: (3,20)-(3,21) = "w" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "w" - │ ├── value: - │ │ @ IntegerNode (location: (3,25)-(3,26)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ └── operator_loc: (3,22)-(3,24) = "=>" - ├── @ ReturnNode (location: (5,0)-(5,14)) - │ ├── flags: newline - │ ├── keyword_loc: (5,0)-(5,6) = "return" - │ └── arguments: - │ @ ArgumentsNode (location: (5,7)-(5,14)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (5,7)-(5,14)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :y - │ ├── message_loc: (5,7)-(5,8) = "y" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (5,9)-(5,14)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (5,9)-(5,14)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (5,9)-(5,14)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (5,9)-(5,11)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (5,9)-(5,10) = ":" - │ │ │ ├── value_loc: (5,10)-(5,11) = "z" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "z" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (5,13)-(5,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── operator_loc: (5,11)-(5,13) = "=>" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ ReturnNode (location: (7,0)-(7,12)) - │ ├── flags: newline - │ ├── keyword_loc: (7,0)-(7,6) = "return" - │ └── arguments: - │ @ ArgumentsNode (location: (7,7)-(7,12)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (7,7)-(7,12)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :y - │ ├── message_loc: (7,7)-(7,8) = "y" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (7,9)-(7,12)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (7,9)-(7,12)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (7,9)-(7,12)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (7,9)-(7,11)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (7,9)-(7,10) = "z" - │ │ │ ├── closing_loc: (7,10)-(7,11) = ":" - │ │ │ └── unescaped: "z" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (7,11)-(7,12)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── operator_loc: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ ReturnNode (location: (9,0)-(9,13)) - │ ├── flags: newline - │ ├── keyword_loc: (9,0)-(9,6) = "return" - │ └── arguments: - │ @ ArgumentsNode (location: (9,7)-(9,13)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (9,7)-(9,13)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :y - │ ├── message_loc: (9,7)-(9,8) = "y" - │ ├── opening_loc: (9,8)-(9,9) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (9,9)-(9,12)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (9,9)-(9,12)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (9,9)-(9,12)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (9,9)-(9,11)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (9,9)-(9,10) = "z" - │ │ │ ├── closing_loc: (9,10)-(9,11) = ":" - │ │ │ └── unescaped: "z" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (9,11)-(9,12)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── operator_loc: ∅ - │ ├── closing_loc: (9,12)-(9,13) = ")" - │ └── block: ∅ - └── @ ReturnNode (location: (11,0)-(11,14)) - ├── flags: newline - ├── keyword_loc: (11,0)-(11,6) = "return" - └── arguments: - @ ArgumentsNode (location: (11,7)-(11,14)) - ├── flags: ∅ - └── arguments: (length: 1) - └── @ CallNode (location: (11,7)-(11,14)) - ├── flags: ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :y - ├── message_loc: (11,7)-(11,8) = "y" - ├── opening_loc: (11,8)-(11,9) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (11,9)-(11,13)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 1) - │ └── @ KeywordHashNode (location: (11,9)-(11,13)) - │ ├── flags: ∅ - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (11,9)-(11,13)) - │ ├── flags: ∅ - │ ├── key: - │ │ @ CallNode (location: (11,9)-(11,10)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :z - │ │ ├── message_loc: (11,9)-(11,10) = "z" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── value: - │ │ @ IntegerNode (location: (11,12)-(11,13)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (11,10)-(11,12) = "=>" - ├── closing_loc: (11,13)-(11,14) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/rhs_asgn.txt b/test/prism/snapshots/seattlerb/rhs_asgn.txt deleted file mode 100644 index 81ebb5e881..0000000000 --- a/test/prism/snapshots/seattlerb/rhs_asgn.txt +++ /dev/null @@ -1,19 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,7)) -├── flags: ∅ -├── locals: [:n] -└── statements: - @ StatementsNode (location: (1,0)-(1,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MatchRequiredNode (location: (1,0)-(1,7)) - ├── flags: newline - ├── value: - │ @ IntegerNode (location: (1,0)-(1,2)) - │ ├── flags: static_literal, decimal - │ └── value: 42 - ├── pattern: - │ @ LocalVariableTargetNode (location: (1,6)-(1,7)) - │ ├── flags: ∅ - │ ├── name: :n - │ └── depth: 0 - └── operator_loc: (1,3)-(1,5) = "=>" diff --git a/test/prism/snapshots/seattlerb/ruby21_numbers.txt b/test/prism/snapshots/seattlerb/ruby21_numbers.txt deleted file mode 100644 index 9b4fab8592..0000000000 --- a/test/prism/snapshots/seattlerb/ruby21_numbers.txt +++ /dev/null @@ -1,29 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ArrayNode (location: (1,0)-(1,13)) - ├── flags: newline, static_literal - ├── elements: (length: 3) - │ ├── @ ImaginaryNode (location: (1,1)-(1,3)) - │ │ ├── flags: static_literal - │ │ └── numeric: - │ │ @ IntegerNode (location: (1,1)-(1,2)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── @ RationalNode (location: (1,5)-(1,7)) - │ │ ├── flags: static_literal, decimal - │ │ ├── numerator: 2 - │ │ └── denominator: 1 - │ └── @ ImaginaryNode (location: (1,9)-(1,12)) - │ ├── flags: static_literal - │ └── numeric: - │ @ RationalNode (location: (1,9)-(1,11)) - │ ├── flags: static_literal, decimal - │ ├── numerator: 3 - │ └── denominator: 1 - ├── opening_loc: (1,0)-(1,1) = "[" - └── closing_loc: (1,12)-(1,13) = "]" diff --git a/test/prism/snapshots/seattlerb/safe_attrasgn.txt b/test/prism/snapshots/seattlerb/safe_attrasgn.txt deleted file mode 100644 index cb849e3f05..0000000000 --- a/test/prism/snapshots/seattlerb/safe_attrasgn.txt +++ /dev/null @@ -1,33 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,8)) - ├── flags: newline, safe_navigation, attribute_write - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,1)-(1,3) = "&." - ├── name: :b= - ├── message_loc: (1,3)-(1,4) = "b" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,7)-(1,8)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,7)-(1,8)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/safe_attrasgn_constant.txt b/test/prism/snapshots/seattlerb/safe_attrasgn_constant.txt deleted file mode 100644 index dc37648a08..0000000000 --- a/test/prism/snapshots/seattlerb/safe_attrasgn_constant.txt +++ /dev/null @@ -1,33 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,8)) - ├── flags: newline, safe_navigation, attribute_write - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,1)-(1,3) = "&." - ├── name: :B= - ├── message_loc: (1,3)-(1,4) = "B" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,7)-(1,8)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,7)-(1,8)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/safe_call.txt b/test/prism/snapshots/seattlerb/safe_call.txt deleted file mode 100644 index 7faa6ac04e..0000000000 --- a/test/prism/snapshots/seattlerb/safe_call.txt +++ /dev/null @@ -1,27 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,4)) - ├── flags: newline, safe_navigation - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,1)-(1,3) = "&." - ├── name: :b - ├── message_loc: (1,3)-(1,4) = "b" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/safe_call_after_newline.txt b/test/prism/snapshots/seattlerb/safe_call_after_newline.txt deleted file mode 100644 index f55fcdd21b..0000000000 --- a/test/prism/snapshots/seattlerb/safe_call_after_newline.txt +++ /dev/null @@ -1,27 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(2,3)) - ├── flags: newline, safe_navigation - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (2,0)-(2,2) = "&." - ├── name: :b - ├── message_loc: (2,2)-(2,3) = "b" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/safe_call_dot_parens.txt b/test/prism/snapshots/seattlerb/safe_call_dot_parens.txt deleted file mode 100644 index b4d8616f38..0000000000 --- a/test/prism/snapshots/seattlerb/safe_call_dot_parens.txt +++ /dev/null @@ -1,27 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,5)) - ├── flags: newline, safe_navigation - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,1)-(1,3) = "&." - ├── name: :call - ├── message_loc: ∅ - ├── opening_loc: (1,3)-(1,4) = "(" - ├── arguments: ∅ - ├── closing_loc: (1,4)-(1,5) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/safe_call_newline.txt b/test/prism/snapshots/seattlerb/safe_call_newline.txt deleted file mode 100644 index 7faa6ac04e..0000000000 --- a/test/prism/snapshots/seattlerb/safe_call_newline.txt +++ /dev/null @@ -1,27 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,4)) - ├── flags: newline, safe_navigation - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,1)-(1,3) = "&." - ├── name: :b - ├── message_loc: (1,3)-(1,4) = "b" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/safe_call_operator.txt b/test/prism/snapshots/seattlerb/safe_call_operator.txt deleted file mode 100644 index 918cbe1828..0000000000 --- a/test/prism/snapshots/seattlerb/safe_call_operator.txt +++ /dev/null @@ -1,33 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,6)) - ├── flags: newline, safe_navigation - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,1)-(1,3) = "&." - ├── name: :> - ├── message_loc: (1,3)-(1,4) = ">" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,5)-(1,6)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,5)-(1,6)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/safe_call_rhs_newline.txt b/test/prism/snapshots/seattlerb/safe_call_rhs_newline.txt deleted file mode 100644 index 50d03b7044..0000000000 --- a/test/prism/snapshots/seattlerb/safe_call_rhs_newline.txt +++ /dev/null @@ -1,34 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [:c] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableWriteNode (location: (1,0)-(1,8)) - ├── flags: newline - ├── name: :c - ├── depth: 0 - ├── name_loc: (1,0)-(1,1) = "c" - ├── value: - │ @ CallNode (location: (1,4)-(1,8)) - │ ├── flags: safe_navigation - │ ├── receiver: - │ │ @ CallNode (location: (1,4)-(1,5)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (1,4)-(1,5) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (1,5)-(1,7) = "&." - │ ├── name: :b - │ ├── message_loc: (1,7)-(1,8) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── operator_loc: (1,2)-(1,3) = "=" diff --git a/test/prism/snapshots/seattlerb/safe_calls.txt b/test/prism/snapshots/seattlerb/safe_calls.txt deleted file mode 100644 index 5d853af648..0000000000 --- a/test/prism/snapshots/seattlerb/safe_calls.txt +++ /dev/null @@ -1,43 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,10)) - ├── flags: newline, safe_navigation - ├── receiver: - │ @ CallNode (location: (1,0)-(1,4)) - │ ├── flags: safe_navigation - │ ├── receiver: - │ │ @ CallNode (location: (1,0)-(1,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (1,0)-(1,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (1,1)-(1,3) = "&." - │ ├── name: :b - │ ├── message_loc: (1,3)-(1,4) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,4)-(1,6) = "&." - ├── name: :c - ├── message_loc: (1,6)-(1,7) = "c" - ├── opening_loc: (1,7)-(1,8) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (1,8)-(1,9)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,8)-(1,9)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: (1,9)-(1,10) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/safe_op_asgn.txt b/test/prism/snapshots/seattlerb/safe_op_asgn.txt deleted file mode 100644 index 31ad5a813d..0000000000 --- a/test/prism/snapshots/seattlerb/safe_op_asgn.txt +++ /dev/null @@ -1,43 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallOperatorWriteNode (location: (1,0)-(1,11)) - ├── flags: newline, safe_navigation - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,1)-(1,3) = "&." - ├── message_loc: (1,3)-(1,4) = "b" - ├── read_name: :b - ├── write_name: :b= - ├── binary_operator: :+ - ├── binary_operator_loc: (1,5)-(1,7) = "+=" - └── value: - @ CallNode (location: (1,8)-(1,11)) - ├── flags: ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :x - ├── message_loc: (1,8)-(1,9) = "x" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,10)-(1,11)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,10)-(1,11)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/safe_op_asgn2.txt b/test/prism/snapshots/seattlerb/safe_op_asgn2.txt deleted file mode 100644 index 81d42aac63..0000000000 --- a/test/prism/snapshots/seattlerb/safe_op_asgn2.txt +++ /dev/null @@ -1,36 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,1)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallOrWriteNode (location: (1,0)-(2,1)) - ├── flags: newline, safe_navigation - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,1)-(1,3) = "&." - ├── message_loc: (1,3)-(1,4) = "b" - ├── read_name: :b - ├── write_name: :b= - ├── operator_loc: (1,5)-(1,8) = "||=" - └── value: - @ CallNode (location: (2,0)-(2,1)) - ├── flags: variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :x - ├── message_loc: (2,0)-(2,1) = "x" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/slashy_newlines_within_string.txt b/test/prism/snapshots/seattlerb/slashy_newlines_within_string.txt deleted file mode 100644 index 061e67ca6a..0000000000 --- a/test/prism/snapshots/seattlerb/slashy_newlines_within_string.txt +++ /dev/null @@ -1,59 +0,0 @@ -@ ProgramNode (location: (1,0)-(6,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(6,5)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(4,8)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :puts - │ ├── message_loc: (1,0)-(1,4) = "puts" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,5)-(4,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (1,5)-(4,8)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,5)-(1,6) = "\"" - │ │ ├── content_loc: (1,6)-(4,7) = "hello\\\n my\\\n dear\\\n friend" - │ │ ├── closing_loc: (4,7)-(4,8) = "\"" - │ │ └── unescaped: "hello my dear friend" - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (6,0)-(6,5)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (6,0)-(6,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (6,0)-(6,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :+ - ├── message_loc: (6,2)-(6,3) = "+" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (6,4)-(6,5)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (6,4)-(6,5)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :b - │ ├── message_loc: (6,4)-(6,5) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/stabby_arg_no_paren.txt b/test/prism/snapshots/seattlerb/stabby_arg_no_paren.txt deleted file mode 100644 index e00e82e9c6..0000000000 --- a/test/prism/snapshots/seattlerb/stabby_arg_no_paren.txt +++ /dev/null @@ -1,33 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LambdaNode (location: (1,0)-(1,5)) - ├── flags: newline - ├── locals: [:a] - ├── operator_loc: (1,0)-(1,2) = "->" - ├── opening_loc: (1,3)-(1,4) = "{" - ├── closing_loc: (1,4)-(1,5) = "}" - ├── parameters: - │ @ BlockParametersNode (location: (1,2)-(1,3)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,2)-(1,3)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,2)-(1,3)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: ∅ - │ └── closing_loc: ∅ - └── body: ∅ diff --git a/test/prism/snapshots/seattlerb/stabby_arg_opt_splat_arg_block_omfg.txt b/test/prism/snapshots/seattlerb/stabby_arg_opt_splat_arg_block_omfg.txt deleted file mode 100644 index b0b9a93f61..0000000000 --- a/test/prism/snapshots/seattlerb/stabby_arg_opt_splat_arg_block_omfg.txt +++ /dev/null @@ -1,55 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,23)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,23)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LambdaNode (location: (1,0)-(1,23)) - ├── flags: newline - ├── locals: [:b, :c, :d, :e, :f] - ├── operator_loc: (1,0)-(1,2) = "->" - ├── opening_loc: (1,21)-(1,22) = "{" - ├── closing_loc: (1,22)-(1,23) = "}" - ├── parameters: - │ @ BlockParametersNode (location: (1,2)-(1,21)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,3)-(1,20)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,3)-(1,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :b - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,6)-(1,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ ├── name_loc: (1,6)-(1,7) = "c" - │ │ │ ├── operator_loc: (1,7)-(1,8) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,8)-(1,9)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (1,11)-(1,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :d - │ │ │ ├── name_loc: (1,12)-(1,13) = "d" - │ │ │ └── operator_loc: (1,11)-(1,12) = "*" - │ │ ├── posts: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,15)-(1,16)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :e - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (1,18)-(1,20)) - │ │ ├── flags: ∅ - │ │ ├── name: :f - │ │ ├── name_loc: (1,19)-(1,20) = "f" - │ │ └── operator_loc: (1,18)-(1,19) = "&" - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,2)-(1,3) = "(" - │ └── closing_loc: (1,20)-(1,21) = ")" - └── body: ∅ diff --git a/test/prism/snapshots/seattlerb/stabby_block_iter_call.txt b/test/prism/snapshots/seattlerb/stabby_block_iter_call.txt deleted file mode 100644 index 9769563607..0000000000 --- a/test/prism/snapshots/seattlerb/stabby_block_iter_call.txt +++ /dev/null @@ -1,64 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(4,3)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :x - ├── message_loc: (1,0)-(1,1) = "x" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(4,3)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ LambdaNode (location: (1,2)-(4,3)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── operator_loc: (1,2)-(1,4) = "->" - │ ├── opening_loc: (1,8)-(1,10) = "do" - │ ├── closing_loc: (4,0)-(4,3) = "end" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (1,5)-(1,7)) - │ │ ├── flags: ∅ - │ │ ├── parameters: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (1,5)-(1,6) = "(" - │ │ └── closing_loc: (1,6)-(1,7) = ")" - │ └── body: - │ @ StatementsNode (location: (2,0)-(3,3)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (2,0)-(3,3)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (2,0)-(2,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (2,0)-(2,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (2,1)-(2,2) = "." - │ ├── name: :b - │ ├── message_loc: (2,2)-(2,3) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (2,4)-(3,3)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (2,4)-(2,6) = "do" - │ └── closing_loc: (3,0)-(3,3) = "end" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/stabby_block_iter_call_no_target_with_arg.txt b/test/prism/snapshots/seattlerb/stabby_block_iter_call_no_target_with_arg.txt deleted file mode 100644 index 5d60be6e86..0000000000 --- a/test/prism/snapshots/seattlerb/stabby_block_iter_call_no_target_with_arg.txt +++ /dev/null @@ -1,60 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(4,3)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :x - ├── message_loc: (1,0)-(1,1) = "x" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(4,3)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ LambdaNode (location: (1,2)-(4,3)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── operator_loc: (1,2)-(1,4) = "->" - │ ├── opening_loc: (1,8)-(1,10) = "do" - │ ├── closing_loc: (4,0)-(4,3) = "end" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (1,5)-(1,7)) - │ │ ├── flags: ∅ - │ │ ├── parameters: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (1,5)-(1,6) = "(" - │ │ └── closing_loc: (1,6)-(1,7) = ")" - │ └── body: - │ @ StatementsNode (location: (2,0)-(3,3)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (2,0)-(3,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (2,0)-(2,1) = "a" - │ ├── opening_loc: (2,1)-(2,2) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (2,2)-(2,3)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (2,2)-(2,3)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: (2,3)-(2,4) = ")" - │ └── block: - │ @ BlockNode (location: (2,5)-(3,3)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (2,5)-(2,7) = "do" - │ └── closing_loc: (3,0)-(3,3) = "end" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/stabby_block_kw.txt b/test/prism/snapshots/seattlerb/stabby_block_kw.txt deleted file mode 100644 index 456eb69100..0000000000 --- a/test/prism/snapshots/seattlerb/stabby_block_kw.txt +++ /dev/null @@ -1,38 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LambdaNode (location: (1,0)-(1,13)) - ├── flags: newline - ├── locals: [:k] - ├── operator_loc: (1,0)-(1,2) = "->" - ├── opening_loc: (1,10)-(1,11) = "{" - ├── closing_loc: (1,12)-(1,13) = "}" - ├── parameters: - │ @ BlockParametersNode (location: (1,3)-(1,9)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,4)-(1,8)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ OptionalKeywordParameterNode (location: (1,4)-(1,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :k - │ │ │ ├── name_loc: (1,4)-(1,6) = "k:" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,6)-(1,8)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 42 - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,3)-(1,4) = "(" - │ └── closing_loc: (1,8)-(1,9) = ")" - └── body: ∅ diff --git a/test/prism/snapshots/seattlerb/stabby_block_kw__required.txt b/test/prism/snapshots/seattlerb/stabby_block_kw__required.txt deleted file mode 100644 index 823a5adca4..0000000000 --- a/test/prism/snapshots/seattlerb/stabby_block_kw__required.txt +++ /dev/null @@ -1,34 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LambdaNode (location: (1,0)-(1,11)) - ├── flags: newline - ├── locals: [:k] - ├── operator_loc: (1,0)-(1,2) = "->" - ├── opening_loc: (1,8)-(1,9) = "{" - ├── closing_loc: (1,10)-(1,11) = "}" - ├── parameters: - │ @ BlockParametersNode (location: (1,3)-(1,7)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,4)-(1,6)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ RequiredKeywordParameterNode (location: (1,4)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :k - │ │ │ └── name_loc: (1,4)-(1,6) = "k:" - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,3)-(1,4) = "(" - │ └── closing_loc: (1,6)-(1,7) = ")" - └── body: ∅ diff --git a/test/prism/snapshots/seattlerb/stabby_proc_scope.txt b/test/prism/snapshots/seattlerb/stabby_proc_scope.txt deleted file mode 100644 index c0b073a439..0000000000 --- a/test/prism/snapshots/seattlerb/stabby_proc_scope.txt +++ /dev/null @@ -1,36 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LambdaNode (location: (1,0)-(1,11)) - ├── flags: newline - ├── locals: [:a, :b] - ├── operator_loc: (1,0)-(1,2) = "->" - ├── opening_loc: (1,9)-(1,10) = "{" - ├── closing_loc: (1,10)-(1,11) = "}" - ├── parameters: - │ @ BlockParametersNode (location: (1,2)-(1,8)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,3)-(1,4)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,3)-(1,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 1) - │ │ └── @ BlockLocalVariableNode (location: (1,6)-(1,7)) - │ │ ├── flags: ∅ - │ │ └── name: :b - │ ├── opening_loc: (1,2)-(1,3) = "(" - │ └── closing_loc: (1,7)-(1,8) = ")" - └── body: ∅ diff --git a/test/prism/snapshots/seattlerb/str_backslashes.txt b/test/prism/snapshots/seattlerb/str_backslashes.txt deleted file mode 100644 index e73793beb8..0000000000 --- a/test/prism/snapshots/seattlerb/str_backslashes.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,204)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,204)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,204)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :x - ├── message_loc: (1,0)-(1,1) = "x" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,204)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ StringNode (location: (1,2)-(1,204)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,2)-(1,3) = "'" - │ ├── content_loc: (1,3)-(1,203) = "\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n" - │ ├── closing_loc: (1,203)-(1,204) = "'" - │ └── unescaped: "\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/str_double_double_escaped_newline.txt b/test/prism/snapshots/seattlerb/str_double_double_escaped_newline.txt deleted file mode 100644 index fa7444d7e7..0000000000 --- a/test/prism/snapshots/seattlerb/str_double_double_escaped_newline.txt +++ /dev/null @@ -1,36 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,7)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,2)-(1,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (1,2)-(1,7)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,2)-(1,3) = "\"" - │ │ ├── content_loc: (1,3)-(1,6) = "\\\\n" - │ │ ├── closing_loc: (1,6)-(1,7) = "\"" - │ │ └── unescaped: "\\n" - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (1,8)-(1,9)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :b - ├── message_loc: (1,8)-(1,9) = "b" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/str_double_escaped_newline.txt b/test/prism/snapshots/seattlerb/str_double_escaped_newline.txt deleted file mode 100644 index c91c913919..0000000000 --- a/test/prism/snapshots/seattlerb/str_double_escaped_newline.txt +++ /dev/null @@ -1,36 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,6)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,2)-(1,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (1,2)-(1,6)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,2)-(1,3) = "\"" - │ │ ├── content_loc: (1,3)-(1,5) = "\\n" - │ │ ├── closing_loc: (1,5)-(1,6) = "\"" - │ │ └── unescaped: "\n" - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (1,7)-(1,8)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :b - ├── message_loc: (1,7)-(1,8) = "b" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/str_double_newline.txt b/test/prism/snapshots/seattlerb/str_double_newline.txt deleted file mode 100644 index 7809a9aaff..0000000000 --- a/test/prism/snapshots/seattlerb/str_double_newline.txt +++ /dev/null @@ -1,36 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,3)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(2,1)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,2)-(2,1)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (1,2)-(2,1)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,2)-(1,3) = "\"" - │ │ ├── content_loc: (1,3)-(2,0) = "\n" - │ │ ├── closing_loc: (2,0)-(2,1) = "\"" - │ │ └── unescaped: "\n" - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (2,2)-(2,3)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :b - ├── message_loc: (2,2)-(2,3) = "b" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/str_evstr.txt b/test/prism/snapshots/seattlerb/str_evstr.txt deleted file mode 100644 index 98b65f00f8..0000000000 --- a/test/prism/snapshots/seattlerb/str_evstr.txt +++ /dev/null @@ -1,36 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(1,8)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,1) = "\"" - ├── parts: (length: 2) - │ ├── @ StringNode (location: (1,1)-(1,3)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (1,1)-(1,3) = "a " - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a " - │ └── @ EmbeddedStatementsNode (location: (1,3)-(1,7)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,3)-(1,5) = "\#{" - │ ├── statements: - │ │ @ StatementsNode (location: (1,5)-(1,6)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,5)-(1,6)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (1,5)-(1,6) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── closing_loc: (1,6)-(1,7) = "}" - └── closing_loc: (1,7)-(1,8) = "\"" diff --git a/test/prism/snapshots/seattlerb/str_evstr_escape.txt b/test/prism/snapshots/seattlerb/str_evstr_escape.txt deleted file mode 100644 index f6559cc822..0000000000 --- a/test/prism/snapshots/seattlerb/str_evstr_escape.txt +++ /dev/null @@ -1,42 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,16)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,16)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(1,16)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,1) = "\"" - ├── parts: (length: 3) - │ ├── @ StringNode (location: (1,1)-(1,3)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (1,1)-(1,3) = "a " - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a " - │ ├── @ EmbeddedStatementsNode (location: (1,3)-(1,7)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,3)-(1,5) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (1,5)-(1,6) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── closing_loc: (1,6)-(1,7) = "}" - │ └── @ StringNode (location: (1,7)-(1,15)) - │ ├── flags: static_literal, forced_utf8_encoding, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (1,7)-(1,15) = "\\302\\275" - │ ├── closing_loc: ∅ - │ └── unescaped: "½" - └── closing_loc: (1,15)-(1,16) = "\"" diff --git a/test/prism/snapshots/seattlerb/str_heredoc_interp.txt b/test/prism/snapshots/seattlerb/str_heredoc_interp.txt deleted file mode 100644 index 1261eec6c3..0000000000 --- a/test/prism/snapshots/seattlerb/str_heredoc_interp.txt +++ /dev/null @@ -1,36 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(1,4)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,4) = "<<\"\"" - ├── parts: (length: 2) - │ ├── @ EmbeddedStatementsNode (location: (2,0)-(2,4)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (2,0)-(2,2) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (2,2)-(2,3)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (2,2)-(2,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :x - │ │ │ ├── message_loc: (2,2)-(2,3) = "x" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── closing_loc: (2,3)-(2,4) = "}" - │ └── @ StringNode (location: (2,4)-(4,0)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (2,4)-(4,0) = "\nblah2\n" - │ ├── closing_loc: ∅ - │ └── unescaped: "\nblah2\n" - └── closing_loc: (4,0)-(5,0) = "\n" diff --git a/test/prism/snapshots/seattlerb/str_interp_ternary_or_label.txt b/test/prism/snapshots/seattlerb/str_interp_ternary_or_label.txt deleted file mode 100644 index 8161109337..0000000000 --- a/test/prism/snapshots/seattlerb/str_interp_ternary_or_label.txt +++ /dev/null @@ -1,113 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,23)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,23)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(1,23)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,1) = "\"" - ├── parts: (length: 1) - │ └── @ EmbeddedStatementsNode (location: (1,1)-(1,22)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,1)-(1,3) = "\#{" - │ ├── statements: - │ │ @ StatementsNode (location: (1,3)-(1,21)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IfNode (location: (1,3)-(1,21)) - │ │ ├── flags: ∅ - │ │ ├── if_keyword_loc: ∅ - │ │ ├── predicate: - │ │ │ @ CallNode (location: (1,3)-(1,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── receiver: - │ │ │ │ @ CallNode (location: (1,3)-(1,4)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ ├── message_loc: (1,3)-(1,4) = "a" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── call_operator_loc: (1,4)-(1,5) = "." - │ │ │ ├── name: :b? - │ │ │ ├── message_loc: (1,5)-(1,7) = "b?" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── then_keyword_loc: (1,8)-(1,9) = "?" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,10)-(1,17)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (1,10)-(1,17)) - │ │ │ ├── flags: newline - │ │ │ ├── receiver: - │ │ │ │ @ CallNode (location: (1,10)-(1,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── receiver: - │ │ │ │ │ @ StringNode (location: (1,10)-(1,12)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── opening_loc: (1,10)-(1,11) = "\"" - │ │ │ │ │ ├── content_loc: (1,11)-(1,11) = "" - │ │ │ │ │ ├── closing_loc: (1,11)-(1,12) = "\"" - │ │ │ │ │ └── unescaped: "" - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :+ - │ │ │ │ ├── message_loc: (1,12)-(1,13) = "+" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (1,13)-(1,14)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (1,13)-(1,14)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :a - │ │ │ │ │ ├── message_loc: (1,13)-(1,14) = "a" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :+ - │ │ │ ├── message_loc: (1,14)-(1,15) = "+" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (1,15)-(1,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ StringNode (location: (1,15)-(1,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (1,15)-(1,16) = "\"" - │ │ │ │ ├── content_loc: (1,16)-(1,16) = "" - │ │ │ │ ├── closing_loc: (1,16)-(1,17) = "\"" - │ │ │ │ └── unescaped: "" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── subsequent: - │ │ │ @ ElseNode (location: (1,17)-(1,21)) - │ │ │ ├── flags: ∅ - │ │ │ ├── else_keyword_loc: (1,17)-(1,18) = ":" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (1,19)-(1,21)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ StringNode (location: (1,19)-(1,21)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── opening_loc: (1,19)-(1,20) = "\"" - │ │ │ │ ├── content_loc: (1,20)-(1,20) = "" - │ │ │ │ ├── closing_loc: (1,20)-(1,21) = "\"" - │ │ │ │ └── unescaped: "" - │ │ │ └── end_keyword_loc: ∅ - │ │ └── end_keyword_loc: ∅ - │ └── closing_loc: (1,21)-(1,22) = "}" - └── closing_loc: (1,22)-(1,23) = "\"" diff --git a/test/prism/snapshots/seattlerb/str_lit_concat_bad_encodings.txt b/test/prism/snapshots/seattlerb/str_lit_concat_bad_encodings.txt deleted file mode 100644 index 4a80bc3305..0000000000 --- a/test/prism/snapshots/seattlerb/str_lit_concat_bad_encodings.txt +++ /dev/null @@ -1,24 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,66)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,66)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(2,66)) - ├── flags: newline, static_literal - ├── opening_loc: ∅ - ├── parts: (length: 2) - │ ├── @ StringNode (location: (1,0)-(1,62)) - │ │ ├── flags: static_literal, forced_utf8_encoding, frozen - │ │ ├── opening_loc: (1,0)-(1,1) = "\"" - │ │ ├── content_loc: (1,1)-(1,61) = "\\xE3\\xD3\\x8B\\xE3\\x83\\xBC\\x83\\xE3\\x83\\xE3\\x82\\xB3\\xA3\\x82\\x99" - │ │ ├── closing_loc: (1,61)-(1,62) = "\"" - │ │ └── unescaped: "\xE3Ӌー\x83\xE3\x83コ\xA3\x82\x99" - │ └── @ StringNode (location: (2,8)-(2,66)) - │ ├── flags: static_literal, forced_utf8_encoding, frozen - │ ├── opening_loc: (2,8)-(2,9) = "\"" - │ ├── content_loc: (2,9)-(2,65) = "\\xE3\\x83\\xB3\\xE3\\x83\\x8F\\xE3\\x82\\x9A\\xC3\\xBD;[email protected]" - │ ├── closing_loc: (2,65)-(2,66) = "\"" - │ └── unescaped: "ンパý;[email protected]" - └── closing_loc: ∅ diff --git a/test/prism/snapshots/seattlerb/str_newline_hash_line_number.txt b/test/prism/snapshots/seattlerb/str_newline_hash_line_number.txt deleted file mode 100644 index 1ac2e04c60..0000000000 --- a/test/prism/snapshots/seattlerb/str_newline_hash_line_number.txt +++ /dev/null @@ -1,16 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,1)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ StringNode (location: (1,0)-(1,11)) - │ ├── flags: newline - │ ├── opening_loc: (1,0)-(1,1) = "\"" - │ ├── content_loc: (1,1)-(1,10) = "\\n\\n\\n\\n#" - │ ├── closing_loc: (1,10)-(1,11) = "\"" - │ └── unescaped: "\n\n\n\n#" - └── @ IntegerNode (location: (2,0)-(2,1)) - ├── flags: newline, static_literal, decimal - └── value: 1 diff --git a/test/prism/snapshots/seattlerb/str_pct_Q_nested.txt b/test/prism/snapshots/seattlerb/str_pct_Q_nested.txt deleted file mode 100644 index 76a0f5a5cf..0000000000 --- a/test/prism/snapshots/seattlerb/str_pct_Q_nested.txt +++ /dev/null @@ -1,42 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,26)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,26)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(1,26)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,3) = "%Q[" - ├── parts: (length: 3) - │ ├── @ StringNode (location: (1,3)-(1,11)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (1,3)-(1,11) = "before [" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "before [" - │ ├── @ EmbeddedStatementsNode (location: (1,11)-(1,18)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,11)-(1,13) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,13)-(1,17)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (1,13)-(1,17)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :nest - │ │ │ ├── message_loc: (1,13)-(1,17) = "nest" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── closing_loc: (1,17)-(1,18) = "}" - │ └── @ StringNode (location: (1,18)-(1,25)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (1,18)-(1,25) = "] after" - │ ├── closing_loc: ∅ - │ └── unescaped: "] after" - └── closing_loc: (1,25)-(1,26) = "]" diff --git a/test/prism/snapshots/seattlerb/str_pct_nested_nested.txt b/test/prism/snapshots/seattlerb/str_pct_nested_nested.txt deleted file mode 100644 index 02125b374d..0000000000 --- a/test/prism/snapshots/seattlerb/str_pct_nested_nested.txt +++ /dev/null @@ -1,48 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,20)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,20)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(1,20)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,2) = "%{" - ├── parts: (length: 3) - │ ├── @ StringNode (location: (1,2)-(1,5)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (1,2)-(1,5) = " { " - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: " { " - │ ├── @ EmbeddedStatementsNode (location: (1,5)-(1,16)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,5)-(1,7) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,8)-(1,14)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ InterpolatedStringNode (location: (1,8)-(1,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (1,8)-(1,9) = "\"" - │ │ │ ├── parts: (length: 1) - │ │ │ │ └── @ EmbeddedStatementsNode (location: (1,9)-(1,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (1,9)-(1,11) = "\#{" - │ │ │ │ ├── statements: - │ │ │ │ │ @ StatementsNode (location: (1,11)-(1,12)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ IntegerNode (location: (1,11)-(1,12)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ └── closing_loc: (1,12)-(1,13) = "}" - │ │ │ └── closing_loc: (1,13)-(1,14) = "\"" - │ │ └── closing_loc: (1,15)-(1,16) = "}" - │ └── @ StringNode (location: (1,16)-(1,19)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (1,16)-(1,19) = " } " - │ ├── closing_loc: ∅ - │ └── unescaped: " } " - └── closing_loc: (1,19)-(1,20) = "}" diff --git a/test/prism/snapshots/seattlerb/str_pct_q.txt b/test/prism/snapshots/seattlerb/str_pct_q.txt deleted file mode 100644 index ddcbb1ac56..0000000000 --- a/test/prism/snapshots/seattlerb/str_pct_q.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (1,0)-(1,9)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,3) = "%q{" - ├── content_loc: (1,3)-(1,8) = "a b c" - ├── closing_loc: (1,8)-(1,9) = "}" - └── unescaped: "a b c" diff --git a/test/prism/snapshots/seattlerb/str_single_double_escaped_newline.txt b/test/prism/snapshots/seattlerb/str_single_double_escaped_newline.txt deleted file mode 100644 index 2187edc92d..0000000000 --- a/test/prism/snapshots/seattlerb/str_single_double_escaped_newline.txt +++ /dev/null @@ -1,36 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,7)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,2)-(1,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (1,2)-(1,7)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,2)-(1,3) = "'" - │ │ ├── content_loc: (1,3)-(1,6) = "\\\\n" - │ │ ├── closing_loc: (1,6)-(1,7) = "'" - │ │ └── unescaped: "\\n" - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (1,8)-(1,9)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :b - ├── message_loc: (1,8)-(1,9) = "b" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/str_single_escaped_newline.txt b/test/prism/snapshots/seattlerb/str_single_escaped_newline.txt deleted file mode 100644 index 36028e09d0..0000000000 --- a/test/prism/snapshots/seattlerb/str_single_escaped_newline.txt +++ /dev/null @@ -1,36 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,6)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,2)-(1,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (1,2)-(1,6)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,2)-(1,3) = "'" - │ │ ├── content_loc: (1,3)-(1,5) = "\\n" - │ │ ├── closing_loc: (1,5)-(1,6) = "'" - │ │ └── unescaped: "\\n" - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (1,7)-(1,8)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :b - ├── message_loc: (1,7)-(1,8) = "b" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/str_single_newline.txt b/test/prism/snapshots/seattlerb/str_single_newline.txt deleted file mode 100644 index b53d1ed81a..0000000000 --- a/test/prism/snapshots/seattlerb/str_single_newline.txt +++ /dev/null @@ -1,36 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,3)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(2,1)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,2)-(2,1)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (1,2)-(2,1)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,2)-(1,3) = "'" - │ │ ├── content_loc: (1,3)-(2,0) = "\n" - │ │ ├── closing_loc: (2,0)-(2,1) = "'" - │ │ └── unescaped: "\n" - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (2,2)-(2,3)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :b - ├── message_loc: (2,2)-(2,3) = "b" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/str_str.txt b/test/prism/snapshots/seattlerb/str_str.txt deleted file mode 100644 index 37a57d2fd6..0000000000 --- a/test/prism/snapshots/seattlerb/str_str.txt +++ /dev/null @@ -1,32 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(1,10)) - ├── flags: newline, static_literal, mutable - ├── opening_loc: (1,0)-(1,1) = "\"" - ├── parts: (length: 2) - │ ├── @ StringNode (location: (1,1)-(1,3)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (1,1)-(1,3) = "a " - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a " - │ └── @ EmbeddedStatementsNode (location: (1,3)-(1,9)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,3)-(1,5) = "\#{" - │ ├── statements: - │ │ @ StatementsNode (location: (1,5)-(1,8)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ StringNode (location: (1,5)-(1,8)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: (1,5)-(1,6) = "'" - │ │ ├── content_loc: (1,6)-(1,7) = "b" - │ │ ├── closing_loc: (1,7)-(1,8) = "'" - │ │ └── unescaped: "b" - │ └── closing_loc: (1,8)-(1,9) = "}" - └── closing_loc: (1,9)-(1,10) = "\"" diff --git a/test/prism/snapshots/seattlerb/str_str_str.txt b/test/prism/snapshots/seattlerb/str_str_str.txt deleted file mode 100644 index ed74c1a954..0000000000 --- a/test/prism/snapshots/seattlerb/str_str_str.txt +++ /dev/null @@ -1,38 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(1,12)) - ├── flags: newline, static_literal, mutable - ├── opening_loc: (1,0)-(1,1) = "\"" - ├── parts: (length: 3) - │ ├── @ StringNode (location: (1,1)-(1,3)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (1,1)-(1,3) = "a " - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a " - │ ├── @ EmbeddedStatementsNode (location: (1,3)-(1,9)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,3)-(1,5) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,5)-(1,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ StringNode (location: (1,5)-(1,8)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: (1,5)-(1,6) = "'" - │ │ │ ├── content_loc: (1,6)-(1,7) = "b" - │ │ │ ├── closing_loc: (1,7)-(1,8) = "'" - │ │ │ └── unescaped: "b" - │ │ └── closing_loc: (1,8)-(1,9) = "}" - │ └── @ StringNode (location: (1,9)-(1,11)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (1,9)-(1,11) = " c" - │ ├── closing_loc: ∅ - │ └── unescaped: " c" - └── closing_loc: (1,11)-(1,12) = "\"" diff --git a/test/prism/snapshots/seattlerb/super_arg.txt b/test/prism/snapshots/seattlerb/super_arg.txt deleted file mode 100644 index 76acc38ce7..0000000000 --- a/test/prism/snapshots/seattlerb/super_arg.txt +++ /dev/null @@ -1,20 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ SuperNode (location: (1,0)-(1,8)) - ├── flags: newline - ├── keyword_loc: (1,0)-(1,5) = "super" - ├── lparen_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,6)-(1,8)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,6)-(1,8)) - │ ├── flags: static_literal, decimal - │ └── value: 42 - ├── rparen_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/symbol_empty.txt b/test/prism/snapshots/seattlerb/symbol_empty.txt deleted file mode 100644 index 945a0e3a51..0000000000 --- a/test/prism/snapshots/seattlerb/symbol_empty.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ SymbolNode (location: (1,0)-(1,3)) - ├── flags: newline, static_literal, forced_us_ascii_encoding - ├── opening_loc: (1,0)-(1,2) = ":'" - ├── value_loc: (1,2)-(1,2) = "" - ├── closing_loc: (1,2)-(1,3) = "'" - └── unescaped: "" diff --git a/test/prism/snapshots/seattlerb/symbol_list.txt b/test/prism/snapshots/seattlerb/symbol_list.txt deleted file mode 100644 index 6ee21564bb..0000000000 --- a/test/prism/snapshots/seattlerb/symbol_list.txt +++ /dev/null @@ -1,58 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ArrayNode (location: (1,0)-(1,13)) - ├── flags: newline - ├── elements: (length: 2) - │ ├── @ InterpolatedSymbolNode (location: (1,3)-(1,7)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── parts: (length: 1) - │ │ │ └── @ EmbeddedStatementsNode (location: (1,3)-(1,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (1,3)-(1,5) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (1,5)-(1,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (1,5)-(1,6)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ ├── message_loc: (1,5)-(1,6) = "a" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── closing_loc: (1,6)-(1,7) = "}" - │ │ └── closing_loc: ∅ - │ └── @ InterpolatedSymbolNode (location: (1,8)-(1,12)) - │ ├── flags: ∅ - │ ├── opening_loc: ∅ - │ ├── parts: (length: 1) - │ │ └── @ EmbeddedStatementsNode (location: (1,8)-(1,12)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,8)-(1,10) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,10)-(1,11)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (1,10)-(1,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (1,10)-(1,11) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── closing_loc: (1,11)-(1,12) = "}" - │ └── closing_loc: ∅ - ├── opening_loc: (1,0)-(1,3) = "%I[" - └── closing_loc: (1,12)-(1,13) = "]" diff --git a/test/prism/snapshots/seattlerb/symbols.txt b/test/prism/snapshots/seattlerb/symbols.txt deleted file mode 100644 index c7292c201f..0000000000 --- a/test/prism/snapshots/seattlerb/symbols.txt +++ /dev/null @@ -1,30 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ArrayNode (location: (1,0)-(1,9)) - ├── flags: newline, static_literal - ├── elements: (length: 3) - │ ├── @ SymbolNode (location: (1,3)-(1,4)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (1,3)-(1,4) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── @ SymbolNode (location: (1,5)-(1,6)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (1,5)-(1,6) = "b" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b" - │ └── @ SymbolNode (location: (1,7)-(1,8)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: ∅ - │ ├── value_loc: (1,7)-(1,8) = "c" - │ ├── closing_loc: ∅ - │ └── unescaped: "c" - ├── opening_loc: (1,0)-(1,3) = "%i(" - └── closing_loc: (1,8)-(1,9) = ")" diff --git a/test/prism/snapshots/seattlerb/symbols_empty.txt b/test/prism/snapshots/seattlerb/symbols_empty.txt deleted file mode 100644 index 955a6eda72..0000000000 --- a/test/prism/snapshots/seattlerb/symbols_empty.txt +++ /dev/null @@ -1,12 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ArrayNode (location: (1,0)-(1,4)) - ├── flags: newline, static_literal - ├── elements: (length: 0) - ├── opening_loc: (1,0)-(1,3) = "%i(" - └── closing_loc: (1,3)-(1,4) = ")" diff --git a/test/prism/snapshots/seattlerb/symbols_empty_space.txt b/test/prism/snapshots/seattlerb/symbols_empty_space.txt deleted file mode 100644 index 291a775b35..0000000000 --- a/test/prism/snapshots/seattlerb/symbols_empty_space.txt +++ /dev/null @@ -1,12 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ArrayNode (location: (1,0)-(1,5)) - ├── flags: newline, static_literal - ├── elements: (length: 0) - ├── opening_loc: (1,0)-(1,3) = "%i(" - └── closing_loc: (1,4)-(1,5) = ")" diff --git a/test/prism/snapshots/seattlerb/symbols_interp.txt b/test/prism/snapshots/seattlerb/symbols_interp.txt deleted file mode 100644 index 373f8363cd..0000000000 --- a/test/prism/snapshots/seattlerb/symbols_interp.txt +++ /dev/null @@ -1,30 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,15)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ArrayNode (location: (1,0)-(1,15)) - ├── flags: newline, static_literal - ├── elements: (length: 3) - │ ├── @ SymbolNode (location: (1,3)-(1,4)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (1,3)-(1,4) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── @ SymbolNode (location: (1,5)-(1,12)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (1,5)-(1,12) = "b\#{1+1}" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b\#{1+1}" - │ └── @ SymbolNode (location: (1,13)-(1,14)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: ∅ - │ ├── value_loc: (1,13)-(1,14) = "c" - │ ├── closing_loc: ∅ - │ └── unescaped: "c" - ├── opening_loc: (1,0)-(1,3) = "%i(" - └── closing_loc: (1,14)-(1,15) = ")" diff --git a/test/prism/snapshots/seattlerb/thingy.txt b/test/prism/snapshots/seattlerb/thingy.txt deleted file mode 100644 index edbcd8e25b..0000000000 --- a/test/prism/snapshots/seattlerb/thingy.txt +++ /dev/null @@ -1,59 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,7)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,6)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (1,0)-(1,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :f - │ │ ├── message_loc: (1,0)-(1,1) = "f" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (1,1)-(1,2) = "." - │ ├── name: :call - │ ├── message_loc: ∅ - │ ├── opening_loc: (1,2)-(1,3) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,3)-(1,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (1,3)-(1,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 42 - │ ├── closing_loc: (1,5)-(1,6) = ")" - │ └── block: ∅ - └── @ CallNode (location: (3,0)-(3,7)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (3,0)-(3,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (3,0)-(3,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (3,1)-(3,3) = "::" - ├── name: :call - ├── message_loc: ∅ - ├── opening_loc: (3,3)-(3,4) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (3,4)-(3,6)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (3,4)-(3,6)) - │ ├── flags: static_literal, decimal - │ └── value: 42 - ├── closing_loc: (3,6)-(3,7) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/uminus_float.txt b/test/prism/snapshots/seattlerb/uminus_float.txt deleted file mode 100644 index dfaaf06827..0000000000 --- a/test/prism/snapshots/seattlerb/uminus_float.txt +++ /dev/null @@ -1,10 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ FloatNode (location: (1,0)-(1,4)) - ├── flags: newline, static_literal - └── value: -0.0 diff --git a/test/prism/snapshots/seattlerb/unary_minus.txt b/test/prism/snapshots/seattlerb/unary_minus.txt deleted file mode 100644 index d10ff3a89e..0000000000 --- a/test/prism/snapshots/seattlerb/unary_minus.txt +++ /dev/null @@ -1,27 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,2)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,2)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,2)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,1)-(1,2)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,1)-(1,2) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :-@ - ├── message_loc: (1,0)-(1,1) = "-" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/unary_plus.txt b/test/prism/snapshots/seattlerb/unary_plus.txt deleted file mode 100644 index 11cb2ebabd..0000000000 --- a/test/prism/snapshots/seattlerb/unary_plus.txt +++ /dev/null @@ -1,27 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,2)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,2)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,2)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,1)-(1,2)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,1)-(1,2) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :+@ - ├── message_loc: (1,0)-(1,1) = "+" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/unary_plus_on_literal.txt b/test/prism/snapshots/seattlerb/unary_plus_on_literal.txt deleted file mode 100644 index 3431fd6cfe..0000000000 --- a/test/prism/snapshots/seattlerb/unary_plus_on_literal.txt +++ /dev/null @@ -1,23 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,3)) - ├── flags: newline - ├── receiver: - │ @ SymbolNode (location: (1,1)-(1,3)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,1)-(1,2) = ":" - │ ├── value_loc: (1,2)-(1,3) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── call_operator_loc: ∅ - ├── name: :+@ - ├── message_loc: (1,0)-(1,1) = "+" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/unary_tilde.txt b/test/prism/snapshots/seattlerb/unary_tilde.txt deleted file mode 100644 index 52a4fa8630..0000000000 --- a/test/prism/snapshots/seattlerb/unary_tilde.txt +++ /dev/null @@ -1,27 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,2)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,2)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,2)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,1)-(1,2)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,1)-(1,2) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :~ - ├── message_loc: (1,0)-(1,1) = "~" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/utf8_bom.txt b/test/prism/snapshots/seattlerb/utf8_bom.txt deleted file mode 100644 index c26bb1741b..0000000000 --- a/test/prism/snapshots/seattlerb/utf8_bom.txt +++ /dev/null @@ -1,23 +0,0 @@ -@ ProgramNode (location: (2,0)-(2,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (2,0)-(2,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (2,0)-(2,3)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :p - ├── message_loc: (2,0)-(2,1) = "p" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (2,2)-(2,3)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (2,2)-(2,3)) - │ ├── flags: static_literal, decimal - │ └── value: 0 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/seattlerb/when_splat.txt b/test/prism/snapshots/seattlerb/when_splat.txt deleted file mode 100644 index 6df6e77397..0000000000 --- a/test/prism/snapshots/seattlerb/when_splat.txt +++ /dev/null @@ -1,44 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,25)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,25)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(1,25)) - ├── flags: newline - ├── predicate: - │ @ CallNode (location: (1,5)-(1,6)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,5)-(1,6) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── conditions: (length: 1) - │ └── @ WhenNode (location: (1,8)-(1,20)) - │ ├── flags: ∅ - │ ├── keyword_loc: (1,8)-(1,12) = "when" - │ ├── conditions: (length: 1) - │ │ └── @ SplatNode (location: (1,13)-(1,15)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (1,13)-(1,14) = "*" - │ │ └── expression: - │ │ @ CallNode (location: (1,14)-(1,15)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (1,14)-(1,15) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: (1,16)-(1,20) = "then" - │ └── statements: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (1,22)-(1,25) = "end" diff --git a/test/prism/snapshots/seattlerb/words_interp.txt b/test/prism/snapshots/seattlerb/words_interp.txt deleted file mode 100644 index 4dc5944538..0000000000 --- a/test/prism/snapshots/seattlerb/words_interp.txt +++ /dev/null @@ -1,34 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ArrayNode (location: (1,0)-(1,9)) - ├── flags: newline - ├── elements: (length: 1) - │ └── @ InterpolatedStringNode (location: (1,3)-(1,8)) - │ ├── flags: ∅ - │ ├── opening_loc: ∅ - │ ├── parts: (length: 2) - │ │ ├── @ EmbeddedStatementsNode (location: (1,3)-(1,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (1,3)-(1,5) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (1,5)-(1,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (1,5)-(1,6)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── closing_loc: (1,6)-(1,7) = "}" - │ │ └── @ StringNode (location: (1,7)-(1,8)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (1,7)-(1,8) = "b" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b" - │ └── closing_loc: ∅ - ├── opening_loc: (1,0)-(1,3) = "%W(" - └── closing_loc: (1,8)-(1,9) = ")" diff --git a/test/prism/snapshots/single_method_call_with_bang.txt b/test/prism/snapshots/single_method_call_with_bang.txt deleted file mode 100644 index 8baca8888d..0000000000 --- a/test/prism/snapshots/single_method_call_with_bang.txt +++ /dev/null @@ -1,17 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,4)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :foo! - ├── message_loc: (1,0)-(1,4) = "foo!" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/single_quote_heredocs.txt b/test/prism/snapshots/single_quote_heredocs.txt deleted file mode 100644 index 0221f33e34..0000000000 --- a/test/prism/snapshots/single_quote_heredocs.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (1,0)-(1,8)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,8) = "<<-'EOS'" - ├── content_loc: (2,0)-(3,0) = " cd L:\\Work\\MG3710IQPro\\Develop\n" - ├── closing_loc: (3,0)-(4,0) = "EOS\n" - └── unescaped: " cd L:\\Work\\MG3710IQPro\\Develop\n" diff --git a/test/prism/snapshots/spanning_heredoc.txt b/test/prism/snapshots/spanning_heredoc.txt deleted file mode 100644 index f880f64434..0000000000 --- a/test/prism/snapshots/spanning_heredoc.txt +++ /dev/null @@ -1,420 +0,0 @@ -@ ProgramNode (location: (4,0)-(63,2)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (4,0)-(63,2)) - ├── flags: ∅ - └── body: (length: 14) - ├── @ CallNode (location: (4,0)-(7,7)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :pp - │ ├── message_loc: (4,0)-(4,2) = "pp" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (4,3)-(7,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (4,3)-(7,7)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ StringNode (location: (4,3)-(4,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (4,3)-(4,7) = "<<-A" - │ │ │ ├── content_loc: (5,0)-(6,0) = "a\n" - │ │ │ ├── closing_loc: (6,0)-(7,0) = "A\n" - │ │ │ └── unescaped: "a\n" - │ │ ├── call_operator_loc: (4,7)-(4,8) = "." - │ │ ├── name: :gsub - │ │ ├── message_loc: (4,8)-(4,12) = "gsub" - │ │ ├── opening_loc: (4,12)-(4,13) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (4,13)-(7,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 2) - │ │ │ ├── @ InterpolatedRegularExpressionNode (location: (4,13)-(7,2)) - │ │ │ │ ├── flags: static_literal - │ │ │ │ ├── opening_loc: (4,13)-(4,14) = "/" - │ │ │ │ ├── parts: (length: 2) - │ │ │ │ │ ├── @ StringNode (location: (4,14)-(4,16)) - │ │ │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ │ ├── content_loc: (4,14)-(4,16) = "b\\" - │ │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ │ └── unescaped: "b" - │ │ │ │ │ └── @ StringNode (location: (7,0)-(7,1)) - │ │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── content_loc: (7,0)-(7,1) = "b" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "b" - │ │ │ │ └── closing_loc: (7,1)-(7,2) = "/" - │ │ │ └── @ StringNode (location: (7,4)-(7,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (7,4)-(7,5) = "\"" - │ │ │ ├── content_loc: (7,5)-(7,5) = "" - │ │ │ ├── closing_loc: (7,5)-(7,6) = "\"" - │ │ │ └── unescaped: "" - │ │ ├── closing_loc: (7,6)-(7,7) = ")" - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (10,0)-(13,2)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :pp - │ ├── message_loc: (10,0)-(10,2) = "pp" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (10,3)-(13,2)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ StringNode (location: (10,3)-(10,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (10,3)-(10,7) = "<<-A" - │ │ │ ├── content_loc: (11,0)-(12,0) = "c\n" - │ │ │ ├── closing_loc: (12,0)-(13,0) = "A\n" - │ │ │ └── unescaped: "c\n" - │ │ └── @ InterpolatedStringNode (location: (10,9)-(13,2)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (10,9)-(10,10) = "\"" - │ │ ├── parts: (length: 2) - │ │ │ ├── @ StringNode (location: (10,10)-(10,12)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (10,10)-(10,12) = "d\\" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "d" - │ │ │ └── @ StringNode (location: (13,0)-(13,1)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (13,0)-(13,1) = "d" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "d" - │ │ └── closing_loc: (13,1)-(13,2) = "\"" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (16,0)-(19,2)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :pp - │ ├── message_loc: (16,0)-(16,2) = "pp" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (16,3)-(19,2)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ StringNode (location: (16,3)-(16,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (16,3)-(16,7) = "<<-A" - │ │ │ ├── content_loc: (17,0)-(18,0) = "e\n" - │ │ │ ├── closing_loc: (18,0)-(19,0) = "A\n" - │ │ │ └── unescaped: "e\n" - │ │ └── @ InterpolatedStringNode (location: (16,9)-(19,2)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (16,9)-(16,12) = "%q[" - │ │ ├── parts: (length: 2) - │ │ │ ├── @ StringNode (location: (16,12)-(16,14)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (16,12)-(16,14) = "f\\" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "f\\\n" - │ │ │ └── @ StringNode (location: (19,0)-(19,1)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (19,0)-(19,1) = "f" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "f" - │ │ └── closing_loc: (19,1)-(19,2) = "]" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (22,0)-(25,2)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :pp - │ ├── message_loc: (22,0)-(22,2) = "pp" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (22,3)-(25,2)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ StringNode (location: (22,3)-(22,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (22,3)-(22,7) = "<<-A" - │ │ │ ├── content_loc: (23,0)-(24,0) = "g\n" - │ │ │ ├── closing_loc: (24,0)-(25,0) = "A\n" - │ │ │ └── unescaped: "g\n" - │ │ └── @ InterpolatedStringNode (location: (22,9)-(25,2)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (22,9)-(22,12) = "%Q[" - │ │ ├── parts: (length: 2) - │ │ │ ├── @ StringNode (location: (22,12)-(22,14)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (22,12)-(22,14) = "h\\" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "h" - │ │ │ └── @ StringNode (location: (25,0)-(25,1)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (25,0)-(25,1) = "h" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "h" - │ │ └── closing_loc: (25,1)-(25,2) = "]" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (28,0)-(31,2)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :pp - │ ├── message_loc: (28,0)-(28,2) = "pp" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (28,3)-(31,2)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ StringNode (location: (28,3)-(28,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (28,3)-(28,7) = "<<-A" - │ │ │ ├── content_loc: (29,0)-(30,0) = "i\n" - │ │ │ ├── closing_loc: (30,0)-(31,0) = "A\n" - │ │ │ └── unescaped: "i\n" - │ │ └── @ ArrayNode (location: (28,9)-(31,2)) - │ │ ├── flags: ∅ - │ │ ├── elements: (length: 2) - │ │ │ ├── @ StringNode (location: (28,12)-(28,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (28,12)-(28,14) = "j\\" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "j\n" - │ │ │ └── @ StringNode (location: (31,0)-(31,1)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (31,0)-(31,1) = "j" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "j" - │ │ ├── opening_loc: (28,9)-(28,12) = "%w[" - │ │ └── closing_loc: (31,1)-(31,2) = "]" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (35,0)-(38,2)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :pp - │ ├── message_loc: (35,0)-(35,2) = "pp" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (35,3)-(38,2)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ StringNode (location: (35,3)-(35,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (35,3)-(35,7) = "<<-A" - │ │ │ ├── content_loc: (36,0)-(37,0) = "k\n" - │ │ │ ├── closing_loc: (37,0)-(38,0) = "A\n" - │ │ │ └── unescaped: "k\n" - │ │ └── @ ArrayNode (location: (35,9)-(38,2)) - │ │ ├── flags: static_literal - │ │ ├── elements: (length: 1) - │ │ │ └── @ InterpolatedStringNode (location: (35,12)-(38,1)) - │ │ │ ├── flags: static_literal - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── parts: (length: 2) - │ │ │ │ ├── @ StringNode (location: (35,12)-(35,14)) - │ │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── content_loc: (35,12)-(35,14) = "l\\" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "l\n" - │ │ │ │ └── @ StringNode (location: (38,0)-(38,1)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (38,0)-(38,1) = "l" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "l" - │ │ │ └── closing_loc: ∅ - │ │ ├── opening_loc: (35,9)-(35,12) = "%W[" - │ │ └── closing_loc: (38,1)-(38,2) = "]" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (41,0)-(44,2)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :pp - │ ├── message_loc: (41,0)-(41,2) = "pp" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (41,3)-(44,2)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ StringNode (location: (41,3)-(41,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (41,3)-(41,7) = "<<-A" - │ │ │ ├── content_loc: (42,0)-(43,0) = "m\n" - │ │ │ ├── closing_loc: (43,0)-(44,0) = "A\n" - │ │ │ └── unescaped: "m\n" - │ │ └── @ ArrayNode (location: (41,9)-(44,2)) - │ │ ├── flags: static_literal - │ │ ├── elements: (length: 2) - │ │ │ ├── @ SymbolNode (location: (41,12)-(41,14)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (41,12)-(41,14) = "n\\" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "n\n" - │ │ │ └── @ SymbolNode (location: (44,0)-(44,1)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (44,0)-(44,1) = "n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "n" - │ │ ├── opening_loc: (41,9)-(41,12) = "%i[" - │ │ └── closing_loc: (44,1)-(44,2) = "]" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (48,0)-(51,2)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :pp - │ ├── message_loc: (48,0)-(48,2) = "pp" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (48,3)-(51,2)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ StringNode (location: (48,3)-(48,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (48,3)-(48,7) = "<<-A" - │ │ │ ├── content_loc: (49,0)-(50,0) = "o\n" - │ │ │ ├── closing_loc: (50,0)-(51,0) = "A\n" - │ │ │ └── unescaped: "o\n" - │ │ └── @ ArrayNode (location: (48,9)-(51,2)) - │ │ ├── flags: static_literal - │ │ ├── elements: (length: 1) - │ │ │ └── @ InterpolatedSymbolNode (location: (48,12)-(48,14)) - │ │ │ ├── flags: static_literal - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── parts: (length: 2) - │ │ │ │ ├── @ StringNode (location: (48,12)-(48,14)) - │ │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── content_loc: (48,12)-(48,14) = "p\\" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "p\n" - │ │ │ │ └── @ StringNode (location: (48,12)-(48,14)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (48,12)-(48,14) = "p\\" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "p" - │ │ │ └── closing_loc: ∅ - │ │ ├── opening_loc: (48,9)-(48,12) = "%I[" - │ │ └── closing_loc: (51,1)-(51,2) = "]" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ StringNode (location: (53,0)-(53,3)) - │ ├── flags: newline - │ ├── opening_loc: (53,0)-(53,3) = "<<A" - │ ├── content_loc: (54,0)-(54,0) = "" - │ ├── closing_loc: (54,0)-(55,0) = "A\n" - │ └── unescaped: "" - ├── @ MatchWriteNode (location: (53,5)-(55,13)) - │ ├── flags: newline - │ ├── call: - │ │ @ CallNode (location: (53,5)-(55,13)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ InterpolatedRegularExpressionNode (location: (53,5)-(55,7)) - │ │ │ ├── flags: static_literal - │ │ │ ├── opening_loc: (53,5)-(53,6) = "/" - │ │ │ ├── parts: (length: 2) - │ │ │ │ ├── @ StringNode (location: (53,6)-(53,7)) - │ │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── content_loc: (53,6)-(53,7) = "\\" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "" - │ │ │ │ └── @ StringNode (location: (55,0)-(55,6)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (55,0)-(55,6) = "(?<a>)" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "(?<a>)" - │ │ │ └── closing_loc: (55,6)-(55,7) = "/" - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :=~ - │ │ ├── message_loc: (55,8)-(55,10) = "=~" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (55,11)-(55,13)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ StringNode (location: (55,11)-(55,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (55,11)-(55,12) = "'" - │ │ │ ├── content_loc: (55,12)-(55,12) = "" - │ │ │ ├── closing_loc: (55,12)-(55,13) = "'" - │ │ │ └── unescaped: "" - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── targets: (length: 1) - │ └── @ LocalVariableTargetNode (location: (53,5)-(55,7)) - │ ├── flags: ∅ - │ ├── name: :a - │ └── depth: 0 - ├── @ StringNode (location: (57,0)-(57,3)) - │ ├── flags: newline - │ ├── opening_loc: (57,0)-(57,3) = "<<A" - │ ├── content_loc: (58,0)-(58,0) = "" - │ ├── closing_loc: (58,0)-(59,0) = "A\n" - │ └── unescaped: "" - ├── @ InterpolatedSymbolNode (location: (57,5)-(59,2)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (57,5)-(57,7) = ":'" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (57,7)-(58,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (57,7)-(58,0) = "a\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a\n" - │ │ └── @ StringNode (location: (59,0)-(59,1)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (59,0)-(59,1) = "b" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b" - │ └── closing_loc: (59,1)-(59,2) = "'" - ├── @ StringNode (location: (61,0)-(61,3)) - │ ├── flags: newline - │ ├── opening_loc: (61,0)-(61,3) = "<<A" - │ ├── content_loc: (62,0)-(62,0) = "" - │ ├── closing_loc: (62,0)-(63,0) = "A\n" - │ └── unescaped: "" - └── @ InterpolatedSymbolNode (location: (61,5)-(63,2)) - ├── flags: newline, static_literal - ├── opening_loc: (61,5)-(61,7) = ":\"" - ├── parts: (length: 2) - │ ├── @ StringNode (location: (61,7)-(62,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (61,7)-(62,0) = "a\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a\n" - │ └── @ StringNode (location: (63,0)-(63,1)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (63,0)-(63,1) = "b" - │ ├── closing_loc: ∅ - │ └── unescaped: "b" - └── closing_loc: (63,1)-(63,2) = "\"" diff --git a/test/prism/snapshots/spanning_heredoc_newlines.txt b/test/prism/snapshots/spanning_heredoc_newlines.txt deleted file mode 100644 index ce57ca9662..0000000000 --- a/test/prism/snapshots/spanning_heredoc_newlines.txt +++ /dev/null @@ -1,157 +0,0 @@ -@ ProgramNode (location: (1,0)-(24,0)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(24,0)) - ├── flags: ∅ - └── body: (length: 6) - ├── @ CallNode (location: (1,0)-(4,0)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ StringNode (location: (1,0)-(1,3)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,0)-(1,3) = "<<A" - │ │ ├── content_loc: (2,0)-(2,0) = "" - │ │ ├── closing_loc: (2,0)-(3,0) = "A\n" - │ │ └── unescaped: "" - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (1,3)-(1,4) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,4)-(4,0)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (1,4)-(4,0)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,4)-(2,0) = "%\n" - │ │ ├── content_loc: (3,0)-(3,0) = "" - │ │ ├── closing_loc: (3,0)-(4,0) = "\n" - │ │ └── unescaped: "" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (5,0)-(8,0)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ StringNode (location: (5,0)-(5,3)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (5,0)-(5,3) = "<<A" - │ │ ├── content_loc: (6,0)-(6,0) = "" - │ │ ├── closing_loc: (6,0)-(7,0) = "A\n" - │ │ └── unescaped: "" - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (5,3)-(5,4) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (5,4)-(8,0)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ RegularExpressionNode (location: (5,4)-(8,0)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (5,4)-(6,0) = "%r\n" - │ │ ├── content_loc: (6,0)-(6,0) = "" - │ │ ├── closing_loc: (7,0)-(8,0) = "\n" - │ │ └── unescaped: "" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (9,0)-(12,0)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ StringNode (location: (9,0)-(9,3)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (9,0)-(9,3) = "<<A" - │ │ ├── content_loc: (10,0)-(10,0) = "" - │ │ ├── closing_loc: (10,0)-(11,0) = "A\n" - │ │ └── unescaped: "" - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (9,3)-(9,4) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (9,4)-(12,0)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (9,4)-(12,0)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (9,4)-(10,0) = "%q\n" - │ │ ├── content_loc: (11,0)-(11,0) = "" - │ │ ├── closing_loc: (11,0)-(12,0) = "\n" - │ │ └── unescaped: "" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (13,0)-(16,0)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ StringNode (location: (13,0)-(13,3)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (13,0)-(13,3) = "<<A" - │ │ ├── content_loc: (14,0)-(14,0) = "" - │ │ ├── closing_loc: (14,0)-(15,0) = "A\n" - │ │ └── unescaped: "" - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (13,3)-(13,4) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (13,4)-(16,0)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (13,4)-(16,0)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (13,4)-(14,0) = "%Q\n" - │ │ ├── content_loc: (15,0)-(15,0) = "" - │ │ ├── closing_loc: (15,0)-(16,0) = "\n" - │ │ └── unescaped: "" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (17,0)-(20,0)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ StringNode (location: (17,0)-(17,3)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (17,0)-(17,3) = "<<A" - │ │ ├── content_loc: (18,0)-(18,0) = "" - │ │ ├── closing_loc: (18,0)-(19,0) = "A\n" - │ │ └── unescaped: "" - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (17,3)-(17,4) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (17,4)-(20,0)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ SymbolNode (location: (17,4)-(20,0)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (17,4)-(18,0) = "%s\n" - │ │ ├── value_loc: (18,0)-(18,0) = "" - │ │ ├── closing_loc: (19,0)-(20,0) = "\n" - │ │ └── unescaped: "" - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (21,0)-(24,0)) - ├── flags: newline - ├── receiver: - │ @ StringNode (location: (21,0)-(21,3)) - │ ├── flags: ∅ - │ ├── opening_loc: (21,0)-(21,3) = "<<A" - │ ├── content_loc: (22,0)-(22,0) = "" - │ ├── closing_loc: (22,0)-(23,0) = "A\n" - │ └── unescaped: "" - ├── call_operator_loc: ∅ - ├── name: :+ - ├── message_loc: (21,3)-(21,4) = "+" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (21,4)-(24,0)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ XStringNode (location: (21,4)-(24,0)) - │ ├── flags: ∅ - │ ├── opening_loc: (21,4)-(22,0) = "%x\n" - │ ├── content_loc: (22,0)-(22,0) = "" - │ ├── closing_loc: (23,0)-(24,0) = "\n" - │ └── unescaped: "" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/strings.txt b/test/prism/snapshots/strings.txt deleted file mode 100644 index eeef15a6ff..0000000000 --- a/test/prism/snapshots/strings.txt +++ /dev/null @@ -1,548 +0,0 @@ -@ ProgramNode (location: (1,0)-(105,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(105,4)) - ├── flags: ∅ - └── body: (length: 50) - ├── @ StringNode (location: (1,0)-(1,6)) - │ ├── flags: newline - │ ├── opening_loc: (1,0)-(1,2) = "%%" - │ ├── content_loc: (1,2)-(1,5) = "abc" - │ ├── closing_loc: (1,5)-(1,6) = "%" - │ └── unescaped: "abc" - ├── @ StringNode (location: (3,0)-(3,6)) - │ ├── flags: newline - │ ├── opening_loc: (3,0)-(3,2) = "%^" - │ ├── content_loc: (3,2)-(3,5) = "abc" - │ ├── closing_loc: (3,5)-(3,6) = "^" - │ └── unescaped: "abc" - ├── @ StringNode (location: (5,0)-(5,6)) - │ ├── flags: newline - │ ├── opening_loc: (5,0)-(5,2) = "%&" - │ ├── content_loc: (5,2)-(5,5) = "abc" - │ ├── closing_loc: (5,5)-(5,6) = "&" - │ └── unescaped: "abc" - ├── @ StringNode (location: (7,0)-(7,6)) - │ ├── flags: newline - │ ├── opening_loc: (7,0)-(7,2) = "%*" - │ ├── content_loc: (7,2)-(7,5) = "abc" - │ ├── closing_loc: (7,5)-(7,6) = "*" - │ └── unescaped: "abc" - ├── @ StringNode (location: (9,0)-(9,6)) - │ ├── flags: newline - │ ├── opening_loc: (9,0)-(9,2) = "%_" - │ ├── content_loc: (9,2)-(9,5) = "abc" - │ ├── closing_loc: (9,5)-(9,6) = "_" - │ └── unescaped: "abc" - ├── @ StringNode (location: (11,0)-(11,6)) - │ ├── flags: newline - │ ├── opening_loc: (11,0)-(11,2) = "%+" - │ ├── content_loc: (11,2)-(11,5) = "abc" - │ ├── closing_loc: (11,5)-(11,6) = "+" - │ └── unescaped: "abc" - ├── @ StringNode (location: (13,0)-(13,6)) - │ ├── flags: newline - │ ├── opening_loc: (13,0)-(13,2) = "%-" - │ ├── content_loc: (13,2)-(13,5) = "abc" - │ ├── closing_loc: (13,5)-(13,6) = "-" - │ └── unescaped: "abc" - ├── @ StringNode (location: (15,0)-(15,6)) - │ ├── flags: newline - │ ├── opening_loc: (15,0)-(15,2) = "%:" - │ ├── content_loc: (15,2)-(15,5) = "abc" - │ ├── closing_loc: (15,5)-(15,6) = ":" - │ └── unescaped: "abc" - ├── @ StringNode (location: (17,0)-(17,6)) - │ ├── flags: newline - │ ├── opening_loc: (17,0)-(17,2) = "%;" - │ ├── content_loc: (17,2)-(17,5) = "abc" - │ ├── closing_loc: (17,5)-(17,6) = ";" - │ └── unescaped: "abc" - ├── @ StringNode (location: (19,0)-(19,6)) - │ ├── flags: newline - │ ├── opening_loc: (19,0)-(19,2) = "%'" - │ ├── content_loc: (19,2)-(19,5) = "abc" - │ ├── closing_loc: (19,5)-(19,6) = "'" - │ └── unescaped: "abc" - ├── @ StringNode (location: (21,0)-(21,6)) - │ ├── flags: newline - │ ├── opening_loc: (21,0)-(21,2) = "%~" - │ ├── content_loc: (21,2)-(21,5) = "abc" - │ ├── closing_loc: (21,5)-(21,6) = "~" - │ └── unescaped: "abc" - ├── @ StringNode (location: (23,0)-(23,6)) - │ ├── flags: newline - │ ├── opening_loc: (23,0)-(23,2) = "%?" - │ ├── content_loc: (23,2)-(23,5) = "abc" - │ ├── closing_loc: (23,5)-(23,6) = "?" - │ └── unescaped: "abc" - ├── @ ArrayNode (location: (25,0)-(25,8)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 0) - │ ├── opening_loc: (25,0)-(25,3) = "%w{" - │ └── closing_loc: (25,7)-(25,8) = "}" - ├── @ StringNode (location: (27,0)-(27,6)) - │ ├── flags: newline - │ ├── opening_loc: (27,0)-(27,2) = "%/" - │ ├── content_loc: (27,2)-(27,5) = "abc" - │ ├── closing_loc: (27,5)-(27,6) = "/" - │ └── unescaped: "abc" - ├── @ StringNode (location: (29,0)-(29,6)) - │ ├── flags: newline - │ ├── opening_loc: (29,0)-(29,2) = "%`" - │ ├── content_loc: (29,2)-(29,5) = "abc" - │ ├── closing_loc: (29,5)-(29,6) = "`" - │ └── unescaped: "abc" - ├── @ InterpolatedStringNode (location: (31,0)-(31,8)) - │ ├── flags: newline - │ ├── opening_loc: (31,0)-(31,1) = "\"" - │ ├── parts: (length: 1) - │ │ └── @ EmbeddedVariableNode (location: (31,1)-(31,7)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (31,1)-(31,2) = "#" - │ │ └── variable: - │ │ @ ClassVariableReadNode (location: (31,2)-(31,7)) - │ │ ├── flags: ∅ - │ │ └── name: :@@foo - │ └── closing_loc: (31,7)-(31,8) = "\"" - ├── @ StringNode (location: (33,0)-(33,6)) - │ ├── flags: newline - │ ├── opening_loc: (33,0)-(33,2) = "%\\" - │ ├── content_loc: (33,2)-(33,5) = "abc" - │ ├── closing_loc: (33,5)-(33,6) = "\\" - │ └── unescaped: "abc" - ├── @ InterpolatedStringNode (location: (35,0)-(35,17)) - │ ├── flags: newline - │ ├── opening_loc: (35,0)-(35,2) = "%{" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (35,2)-(35,6)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (35,2)-(35,6) = "aaa " - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "aaa " - │ │ ├── @ EmbeddedStatementsNode (location: (35,6)-(35,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (35,6)-(35,8) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (35,8)-(35,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (35,8)-(35,11)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bbb - │ │ │ │ ├── message_loc: (35,8)-(35,11) = "bbb" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── closing_loc: (35,11)-(35,12) = "}" - │ │ └── @ StringNode (location: (35,12)-(35,16)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (35,12)-(35,16) = " ccc" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: " ccc" - │ └── closing_loc: (35,16)-(35,17) = "}" - ├── @ StringNode (location: (37,0)-(37,8)) - │ ├── flags: newline - │ ├── opening_loc: (37,0)-(37,2) = "%[" - │ ├── content_loc: (37,2)-(37,7) = "foo[]" - │ ├── closing_loc: (37,7)-(37,8) = "]" - │ └── unescaped: "foo[]" - ├── @ CallNode (location: (39,0)-(41,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ StringNode (location: (39,0)-(39,5)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (39,0)-(39,1) = "\"" - │ │ ├── content_loc: (39,1)-(39,4) = "foo" - │ │ ├── closing_loc: (39,4)-(39,5) = "\"" - │ │ └── unescaped: "foo" - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (39,6)-(39,7) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (41,0)-(41,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (41,0)-(41,5)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (41,0)-(41,1) = "\"" - │ │ ├── content_loc: (41,1)-(41,4) = "bar" - │ │ ├── closing_loc: (41,4)-(41,5) = "\"" - │ │ └── unescaped: "bar" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ StringNode (location: (43,0)-(43,7)) - │ ├── flags: newline - │ ├── opening_loc: (43,0)-(43,3) = "%q{" - │ ├── content_loc: (43,3)-(43,6) = "abc" - │ ├── closing_loc: (43,6)-(43,7) = "}" - │ └── unescaped: "abc" - ├── @ SymbolNode (location: (45,0)-(45,7)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (45,0)-(45,3) = "%s[" - │ ├── value_loc: (45,3)-(45,6) = "abc" - │ ├── closing_loc: (45,6)-(45,7) = "]" - │ └── unescaped: "abc" - ├── @ StringNode (location: (47,0)-(47,6)) - │ ├── flags: newline - │ ├── opening_loc: (47,0)-(47,2) = "%{" - │ ├── content_loc: (47,2)-(47,5) = "abc" - │ ├── closing_loc: (47,5)-(47,6) = "}" - │ └── unescaped: "abc" - ├── @ StringNode (location: (49,0)-(49,2)) - │ ├── flags: newline - │ ├── opening_loc: (49,0)-(49,1) = "'" - │ ├── content_loc: (49,1)-(49,1) = "" - │ ├── closing_loc: (49,1)-(49,2) = "'" - │ └── unescaped: "" - ├── @ StringNode (location: (51,0)-(51,5)) - │ ├── flags: newline - │ ├── opening_loc: (51,0)-(51,1) = "\"" - │ ├── content_loc: (51,1)-(51,4) = "abc" - │ ├── closing_loc: (51,4)-(51,5) = "\"" - │ └── unescaped: "abc" - ├── @ StringNode (location: (53,0)-(53,7)) - │ ├── flags: newline - │ ├── opening_loc: (53,0)-(53,1) = "\"" - │ ├── content_loc: (53,1)-(53,6) = "\#@---" - │ ├── closing_loc: (53,6)-(53,7) = "\"" - │ └── unescaped: "\#@---" - ├── @ InterpolatedStringNode (location: (55,0)-(55,16)) - │ ├── flags: newline - │ ├── opening_loc: (55,0)-(55,1) = "\"" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (55,1)-(55,5)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (55,1)-(55,5) = "aaa " - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "aaa " - │ │ ├── @ EmbeddedStatementsNode (location: (55,5)-(55,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (55,5)-(55,7) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (55,7)-(55,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (55,7)-(55,10)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bbb - │ │ │ │ ├── message_loc: (55,7)-(55,10) = "bbb" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── closing_loc: (55,10)-(55,11) = "}" - │ │ └── @ StringNode (location: (55,11)-(55,15)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (55,11)-(55,15) = " ccc" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: " ccc" - │ └── closing_loc: (55,15)-(55,16) = "\"" - ├── @ StringNode (location: (57,0)-(57,5)) - │ ├── flags: newline - │ ├── opening_loc: (57,0)-(57,1) = "'" - │ ├── content_loc: (57,1)-(57,4) = "abc" - │ ├── closing_loc: (57,4)-(57,5) = "'" - │ └── unescaped: "abc" - ├── @ ArrayNode (location: (59,0)-(59,9)) - │ ├── flags: newline - │ ├── elements: (length: 3) - │ │ ├── @ StringNode (location: (59,3)-(59,4)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (59,3)-(59,4) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ ├── @ StringNode (location: (59,5)-(59,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (59,5)-(59,6) = "b" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "b" - │ │ └── @ StringNode (location: (59,7)-(59,8)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (59,7)-(59,8) = "c" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "c" - │ ├── opening_loc: (59,0)-(59,3) = "%w[" - │ └── closing_loc: (59,8)-(59,9) = "]" - ├── @ ArrayNode (location: (61,0)-(61,17)) - │ ├── flags: newline - │ ├── elements: (length: 3) - │ │ ├── @ StringNode (location: (61,3)-(61,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (61,3)-(61,6) = "a[]" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a[]" - │ │ ├── @ StringNode (location: (61,7)-(61,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (61,7)-(61,12) = "b[[]]" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "b[[]]" - │ │ └── @ StringNode (location: (61,13)-(61,16)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (61,13)-(61,16) = "c[]" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "c[]" - │ ├── opening_loc: (61,0)-(61,3) = "%w[" - │ └── closing_loc: (61,16)-(61,17) = "]" - ├── @ ArrayNode (location: (63,0)-(63,18)) - │ ├── flags: newline - │ ├── elements: (length: 2) - │ │ ├── @ StringNode (location: (63,3)-(63,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (63,3)-(63,11) = "foo\\ bar" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo bar" - │ │ └── @ StringNode (location: (63,12)-(63,17)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (63,12)-(63,17) = "\\\#{1}" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\\\#{1}" - │ ├── opening_loc: (63,0)-(63,3) = "%w[" - │ └── closing_loc: (63,17)-(63,18) = "]" - ├── @ ArrayNode (location: (65,0)-(65,16)) - │ ├── flags: newline - │ ├── elements: (length: 2) - │ │ ├── @ StringNode (location: (65,3)-(65,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (65,3)-(65,11) = "foo\\ bar" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo bar" - │ │ └── @ StringNode (location: (65,12)-(65,15)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (65,12)-(65,15) = "baz" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "baz" - │ ├── opening_loc: (65,0)-(65,3) = "%w[" - │ └── closing_loc: (65,15)-(65,16) = "]" - ├── @ ArrayNode (location: (67,0)-(67,14)) - │ ├── flags: newline - │ ├── elements: (length: 3) - │ │ ├── @ StringNode (location: (67,3)-(67,4)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (67,3)-(67,4) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ ├── @ InterpolatedStringNode (location: (67,5)-(67,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── parts: (length: 3) - │ │ │ │ ├── @ StringNode (location: (67,5)-(67,6)) - │ │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── content_loc: (67,5)-(67,6) = "b" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "b" - │ │ │ │ ├── @ EmbeddedStatementsNode (location: (67,6)-(67,10)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── opening_loc: (67,6)-(67,8) = "\#{" - │ │ │ │ │ ├── statements: - │ │ │ │ │ │ @ StatementsNode (location: (67,8)-(67,9)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ │ └── @ CallNode (location: (67,8)-(67,9)) - │ │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ │ ├── name: :c - │ │ │ │ │ │ ├── message_loc: (67,8)-(67,9) = "c" - │ │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ │ └── block: ∅ - │ │ │ │ │ └── closing_loc: (67,9)-(67,10) = "}" - │ │ │ │ └── @ StringNode (location: (67,10)-(67,11)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (67,10)-(67,11) = "d" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "d" - │ │ │ └── closing_loc: ∅ - │ │ └── @ StringNode (location: (67,12)-(67,13)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (67,12)-(67,13) = "e" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "e" - │ ├── opening_loc: (67,0)-(67,3) = "%W[" - │ └── closing_loc: (67,13)-(67,14) = "]" - ├── @ ArrayNode (location: (69,0)-(69,9)) - │ ├── flags: newline - │ ├── elements: (length: 3) - │ │ ├── @ StringNode (location: (69,3)-(69,4)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (69,3)-(69,4) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ ├── @ StringNode (location: (69,5)-(69,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (69,5)-(69,6) = "b" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "b" - │ │ └── @ StringNode (location: (69,7)-(69,8)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (69,7)-(69,8) = "c" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "c" - │ ├── opening_loc: (69,0)-(69,3) = "%W[" - │ └── closing_loc: (69,8)-(69,9) = "]" - ├── @ ArrayNode (location: (71,0)-(75,1)) - │ ├── flags: newline - │ ├── elements: (length: 3) - │ │ ├── @ StringNode (location: (72,2)-(72,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (72,2)-(72,3) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ ├── @ StringNode (location: (73,2)-(73,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (73,2)-(73,3) = "b" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "b" - │ │ └── @ StringNode (location: (74,2)-(74,3)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (74,2)-(74,3) = "c" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "c" - │ ├── opening_loc: (71,0)-(71,3) = "%w[" - │ └── closing_loc: (75,0)-(75,1) = "]" - ├── @ StringNode (location: (77,0)-(77,15)) - │ ├── flags: newline - │ ├── opening_loc: (77,0)-(77,1) = "'" - │ ├── content_loc: (77,1)-(77,14) = "\\' foo \\' bar" - │ ├── closing_loc: (77,14)-(77,15) = "'" - │ └── unescaped: "' foo ' bar" - ├── @ StringNode (location: (79,0)-(79,15)) - │ ├── flags: newline - │ ├── opening_loc: (79,0)-(79,1) = "'" - │ ├── content_loc: (79,1)-(79,14) = "\\\\ foo \\\\ bar" - │ ├── closing_loc: (79,14)-(79,15) = "'" - │ └── unescaped: "\\ foo \\ bar" - ├── @ InterpolatedStringNode (location: (81,0)-(81,7)) - │ ├── flags: newline - │ ├── opening_loc: (81,0)-(81,1) = "\"" - │ ├── parts: (length: 1) - │ │ └── @ EmbeddedVariableNode (location: (81,1)-(81,6)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (81,1)-(81,2) = "#" - │ │ └── variable: - │ │ @ GlobalVariableReadNode (location: (81,2)-(81,6)) - │ │ ├── flags: ∅ - │ │ └── name: :$foo - │ └── closing_loc: (81,6)-(81,7) = "\"" - ├── @ InterpolatedStringNode (location: (83,0)-(83,7)) - │ ├── flags: newline - │ ├── opening_loc: (83,0)-(83,1) = "\"" - │ ├── parts: (length: 1) - │ │ └── @ EmbeddedVariableNode (location: (83,1)-(83,6)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (83,1)-(83,2) = "#" - │ │ └── variable: - │ │ @ InstanceVariableReadNode (location: (83,2)-(83,6)) - │ │ ├── flags: ∅ - │ │ └── name: :@foo - │ └── closing_loc: (83,6)-(83,7) = "\"" - ├── @ StringNode (location: (85,0)-(85,15)) - │ ├── flags: newline - │ ├── opening_loc: (85,0)-(85,1) = "\"" - │ ├── content_loc: (85,1)-(85,14) = "\\x7 \\x23 \\x61" - │ ├── closing_loc: (85,14)-(85,15) = "\"" - │ └── unescaped: "\a # a" - ├── @ StringNode (location: (87,0)-(87,13)) - │ ├── flags: newline - │ ├── opening_loc: (87,0)-(87,1) = "\"" - │ ├── content_loc: (87,1)-(87,12) = "\\7 \\43 \\141" - │ ├── closing_loc: (87,12)-(87,13) = "\"" - │ └── unescaped: "\a # a" - ├── @ StringNode (location: (89,0)-(89,6)) - │ ├── flags: newline - │ ├── opening_loc: (89,0)-(89,2) = "%[" - │ ├── content_loc: (89,2)-(89,5) = "abc" - │ ├── closing_loc: (89,5)-(89,6) = "]" - │ └── unescaped: "abc" - ├── @ StringNode (location: (91,0)-(91,6)) - │ ├── flags: newline - │ ├── opening_loc: (91,0)-(91,2) = "%(" - │ ├── content_loc: (91,2)-(91,5) = "abc" - │ ├── closing_loc: (91,5)-(91,6) = ")" - │ └── unescaped: "abc" - ├── @ StringNode (location: (93,0)-(93,6)) - │ ├── flags: newline - │ ├── opening_loc: (93,0)-(93,2) = "%@" - │ ├── content_loc: (93,2)-(93,5) = "abc" - │ ├── closing_loc: (93,5)-(93,6) = "@" - │ └── unescaped: "abc" - ├── @ StringNode (location: (95,0)-(95,6)) - │ ├── flags: newline - │ ├── opening_loc: (95,0)-(95,2) = "%$" - │ ├── content_loc: (95,2)-(95,5) = "abc" - │ ├── closing_loc: (95,5)-(95,6) = "$" - │ └── unescaped: "abc" - ├── @ StringNode (location: (97,0)-(97,2)) - │ ├── flags: newline - │ ├── opening_loc: (97,0)-(97,1) = "?" - │ ├── content_loc: (97,1)-(97,2) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── @ InterpolatedStringNode (location: (99,0)-(99,6)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: ∅ - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (99,0)-(99,2)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: (99,0)-(99,1) = "?" - │ │ │ ├── content_loc: (99,1)-(99,2) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ └── @ StringNode (location: (99,3)-(99,6)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: (99,3)-(99,4) = "\"" - │ │ ├── content_loc: (99,4)-(99,5) = "a" - │ │ ├── closing_loc: (99,5)-(99,6) = "\"" - │ │ └── unescaped: "a" - │ └── closing_loc: ∅ - ├── @ StringNode (location: (101,0)-(101,7)) - │ ├── flags: newline - │ ├── opening_loc: (101,0)-(101,3) = "%Q{" - │ ├── content_loc: (101,3)-(101,6) = "abc" - │ ├── closing_loc: (101,6)-(101,7) = "}" - │ └── unescaped: "abc" - ├── @ StringNode (location: (103,0)-(103,5)) - │ ├── flags: newline - │ ├── opening_loc: (103,0)-(103,2) = "%^" - │ ├── content_loc: (103,2)-(103,4) = "\#$" - │ ├── closing_loc: (103,4)-(103,5) = "^" - │ └── unescaped: "\#$" - └── @ StringNode (location: (105,0)-(105,4)) - ├── flags: newline - ├── opening_loc: (105,0)-(105,2) = "%@" - ├── content_loc: (105,2)-(105,3) = "#" - ├── closing_loc: (105,3)-(105,4) = "@" - └── unescaped: "#" diff --git a/test/prism/snapshots/super.txt b/test/prism/snapshots/super.txt deleted file mode 100644 index a6701dd9ba..0000000000 --- a/test/prism/snapshots/super.txt +++ /dev/null @@ -1,148 +0,0 @@ -@ ProgramNode (location: (1,0)-(17,21)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(17,21)) - ├── flags: ∅ - └── body: (length: 9) - ├── @ ForwardingSuperNode (location: (1,0)-(1,5)) - │ ├── flags: newline - │ └── block: ∅ - ├── @ SuperNode (location: (3,0)-(3,7)) - │ ├── flags: newline - │ ├── keyword_loc: (3,0)-(3,5) = "super" - │ ├── lparen_loc: (3,5)-(3,6) = "(" - │ ├── arguments: ∅ - │ ├── rparen_loc: (3,6)-(3,7) = ")" - │ └── block: ∅ - ├── @ SuperNode (location: (5,0)-(5,8)) - │ ├── flags: newline - │ ├── keyword_loc: (5,0)-(5,5) = "super" - │ ├── lparen_loc: (5,5)-(5,6) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (5,6)-(5,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (5,6)-(5,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── rparen_loc: (5,7)-(5,8) = ")" - │ └── block: ∅ - ├── @ SuperNode (location: (7,0)-(7,14)) - │ ├── flags: newline - │ ├── keyword_loc: (7,0)-(7,5) = "super" - │ ├── lparen_loc: (7,5)-(7,6) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (7,6)-(7,13)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 3) - │ │ ├── @ IntegerNode (location: (7,6)-(7,7)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── @ IntegerNode (location: (7,9)-(7,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── @ IntegerNode (location: (7,12)-(7,13)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 3 - │ ├── rparen_loc: (7,13)-(7,14) = ")" - │ └── block: ∅ - ├── @ SuperNode (location: (9,0)-(9,11)) - │ ├── flags: newline - │ ├── keyword_loc: (9,0)-(9,5) = "super" - │ ├── lparen_loc: ∅ - │ ├── arguments: ∅ - │ ├── rparen_loc: ∅ - │ └── block: - │ @ BlockArgumentNode (location: (9,6)-(9,11)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ SymbolNode (location: (9,7)-(9,11)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (9,7)-(9,8) = ":" - │ │ ├── value_loc: (9,8)-(9,11) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ └── operator_loc: (9,6)-(9,7) = "&" - ├── @ SuperNode (location: (11,0)-(11,12)) - │ ├── flags: newline - │ ├── keyword_loc: (11,0)-(11,5) = "super" - │ ├── lparen_loc: (11,5)-(11,6) = "(" - │ ├── arguments: ∅ - │ ├── rparen_loc: (11,11)-(11,12) = ")" - │ └── block: - │ @ BlockArgumentNode (location: (11,6)-(11,11)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ SymbolNode (location: (11,7)-(11,11)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (11,7)-(11,8) = ":" - │ │ ├── value_loc: (11,8)-(11,11) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ └── operator_loc: (11,6)-(11,7) = "&" - ├── @ ForwardingSuperNode (location: (13,0)-(13,8)) - │ ├── flags: newline - │ └── block: - │ @ BlockNode (location: (13,6)-(13,8)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (13,6)-(13,7) = "{" - │ └── closing_loc: (13,7)-(13,8) = "}" - ├── @ SuperNode (location: (15,0)-(15,17)) - │ ├── flags: newline - │ ├── keyword_loc: (15,0)-(15,5) = "super" - │ ├── lparen_loc: (15,5)-(15,6) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (15,6)-(15,13)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 3) - │ │ ├── @ IntegerNode (location: (15,6)-(15,7)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── @ IntegerNode (location: (15,9)-(15,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── @ IntegerNode (location: (15,12)-(15,13)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 3 - │ ├── rparen_loc: (15,13)-(15,14) = ")" - │ └── block: - │ @ BlockNode (location: (15,15)-(15,17)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (15,15)-(15,16) = "{" - │ └── closing_loc: (15,16)-(15,17) = "}" - └── @ SuperNode (location: (17,0)-(17,21)) - ├── flags: newline - ├── keyword_loc: (17,0)-(17,5) = "super" - ├── lparen_loc: (17,5)-(17,6) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (17,6)-(17,13)) - │ ├── flags: ∅ - │ └── arguments: (length: 3) - │ ├── @ IntegerNode (location: (17,6)-(17,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── @ IntegerNode (location: (17,9)-(17,10)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ └── @ IntegerNode (location: (17,12)-(17,13)) - │ ├── flags: static_literal, decimal - │ └── value: 3 - ├── rparen_loc: (17,20)-(17,21) = ")" - └── block: - @ BlockArgumentNode (location: (17,15)-(17,20)) - ├── flags: ∅ - ├── expression: - │ @ SymbolNode (location: (17,16)-(17,20)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (17,16)-(17,17) = ":" - │ ├── value_loc: (17,17)-(17,20) = "foo" - │ ├── closing_loc: ∅ - │ └── unescaped: "foo" - └── operator_loc: (17,15)-(17,16) = "&" diff --git a/test/prism/snapshots/symbols.txt b/test/prism/snapshots/symbols.txt deleted file mode 100644 index 7cbe80c821..0000000000 --- a/test/prism/snapshots/symbols.txt +++ /dev/null @@ -1,482 +0,0 @@ -@ ProgramNode (location: (1,0)-(93,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(93,13)) - ├── flags: ∅ - └── body: (length: 47) - ├── @ SymbolNode (location: (1,0)-(1,6)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,0)-(1,2) = ":'" - │ ├── value_loc: (1,2)-(1,5) = "abc" - │ ├── closing_loc: (1,5)-(1,6) = "'" - │ └── unescaped: "abc" - ├── @ InterpolatedSymbolNode (location: (3,0)-(3,9)) - │ ├── flags: newline - │ ├── opening_loc: (3,0)-(3,2) = ":\"" - │ ├── parts: (length: 1) - │ │ └── @ EmbeddedStatementsNode (location: (3,2)-(3,8)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (3,2)-(3,4) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (3,4)-(3,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (3,4)-(3,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :var - │ │ │ ├── message_loc: (3,4)-(3,7) = "var" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── closing_loc: (3,7)-(3,8) = "}" - │ └── closing_loc: (3,8)-(3,9) = "\"" - ├── @ InterpolatedSymbolNode (location: (5,0)-(5,10)) - │ ├── flags: newline - │ ├── opening_loc: (5,0)-(5,2) = ":\"" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (5,2)-(5,5)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (5,2)-(5,5) = "abc" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "abc" - │ │ └── @ EmbeddedStatementsNode (location: (5,5)-(5,9)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (5,5)-(5,7) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (5,7)-(5,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ IntegerNode (location: (5,7)-(5,8)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── closing_loc: (5,8)-(5,9) = "}" - │ └── closing_loc: (5,9)-(5,10) = "\"" - ├── @ ArrayNode (location: (7,0)-(7,20)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 4) - │ │ ├── @ SymbolNode (location: (7,1)-(7,4)) - │ │ │ ├── flags: static_literal - │ │ │ ├── opening_loc: (7,1)-(7,2) = ":" - │ │ │ ├── value_loc: (7,2)-(7,4) = "Υ" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "Υ" - │ │ ├── @ SymbolNode (location: (7,6)-(7,9)) - │ │ │ ├── flags: static_literal - │ │ │ ├── opening_loc: (7,6)-(7,7) = ":" - │ │ │ ├── value_loc: (7,7)-(7,9) = "ά" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "ά" - │ │ ├── @ SymbolNode (location: (7,11)-(7,14)) - │ │ │ ├── flags: static_literal - │ │ │ ├── opening_loc: (7,11)-(7,12) = ":" - │ │ │ ├── value_loc: (7,12)-(7,14) = "ŗ" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "ŗ" - │ │ └── @ SymbolNode (location: (7,16)-(7,19)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (7,16)-(7,17) = ":" - │ │ ├── value_loc: (7,17)-(7,19) = "ρ" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "ρ" - │ ├── opening_loc: (7,0)-(7,1) = "[" - │ └── closing_loc: (7,19)-(7,20) = "]" - ├── @ SymbolNode (location: (9,0)-(9,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (9,0)-(9,1) = ":" - │ ├── value_loc: (9,1)-(9,3) = "-@" - │ ├── closing_loc: ∅ - │ └── unescaped: "-@" - ├── @ SymbolNode (location: (11,0)-(11,2)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (11,0)-(11,1) = ":" - │ ├── value_loc: (11,1)-(11,2) = "-" - │ ├── closing_loc: ∅ - │ └── unescaped: "-" - ├── @ SymbolNode (location: (13,0)-(13,2)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (13,0)-(13,1) = ":" - │ ├── value_loc: (13,1)-(13,2) = "%" - │ ├── closing_loc: ∅ - │ └── unescaped: "%" - ├── @ SymbolNode (location: (15,0)-(15,2)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (15,0)-(15,1) = ":" - │ ├── value_loc: (15,1)-(15,2) = "|" - │ ├── closing_loc: ∅ - │ └── unescaped: "|" - ├── @ SymbolNode (location: (17,0)-(17,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (17,0)-(17,1) = ":" - │ ├── value_loc: (17,1)-(17,3) = "+@" - │ ├── closing_loc: ∅ - │ └── unescaped: "+@" - ├── @ SymbolNode (location: (19,0)-(19,2)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (19,0)-(19,1) = ":" - │ ├── value_loc: (19,1)-(19,2) = "+" - │ ├── closing_loc: ∅ - │ └── unescaped: "+" - ├── @ SymbolNode (location: (21,0)-(21,2)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (21,0)-(21,1) = ":" - │ ├── value_loc: (21,1)-(21,2) = "/" - │ ├── closing_loc: ∅ - │ └── unescaped: "/" - ├── @ SymbolNode (location: (23,0)-(23,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (23,0)-(23,1) = ":" - │ ├── value_loc: (23,1)-(23,3) = "**" - │ ├── closing_loc: ∅ - │ └── unescaped: "**" - ├── @ SymbolNode (location: (25,0)-(25,2)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (25,0)-(25,1) = ":" - │ ├── value_loc: (25,1)-(25,2) = "*" - │ ├── closing_loc: ∅ - │ └── unescaped: "*" - ├── @ SymbolNode (location: (27,0)-(27,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (27,0)-(27,1) = ":" - │ ├── value_loc: (27,1)-(27,3) = "~@" - │ ├── closing_loc: ∅ - │ └── unescaped: "~" - ├── @ ArrayNode (location: (29,0)-(29,16)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 4) - │ │ ├── @ IntegerNode (location: (29,1)-(29,2)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── @ FloatNode (location: (29,4)-(29,7)) - │ │ │ ├── flags: static_literal - │ │ │ └── value: 1.0 - │ │ ├── @ RationalNode (location: (29,9)-(29,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ ├── numerator: 1 - │ │ │ └── denominator: 1 - │ │ └── @ ImaginaryNode (location: (29,13)-(29,15)) - │ │ ├── flags: static_literal - │ │ └── numeric: - │ │ @ IntegerNode (location: (29,13)-(29,14)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── opening_loc: (29,0)-(29,1) = "[" - │ └── closing_loc: (29,15)-(29,16) = "]" - ├── @ SymbolNode (location: (31,0)-(31,2)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (31,0)-(31,1) = ":" - │ ├── value_loc: (31,1)-(31,2) = "~" - │ ├── closing_loc: ∅ - │ └── unescaped: "~" - ├── @ SymbolNode (location: (33,0)-(33,2)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (33,0)-(33,1) = ":" - │ ├── value_loc: (33,1)-(33,2) = "a" - │ ├── closing_loc: ∅ - │ └── unescaped: "a" - ├── @ ArrayNode (location: (35,0)-(35,9)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 3) - │ │ ├── @ SymbolNode (location: (35,3)-(35,4)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (35,3)-(35,4) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ ├── @ SymbolNode (location: (35,5)-(35,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (35,5)-(35,6) = "b" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "b" - │ │ └── @ SymbolNode (location: (35,7)-(35,8)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (35,7)-(35,8) = "c" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "c" - │ ├── opening_loc: (35,0)-(35,3) = "%i[" - │ └── closing_loc: (35,8)-(35,9) = "]" - ├── @ ArrayNode (location: (37,0)-(37,24)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 4) - │ │ ├── @ SymbolNode (location: (37,3)-(37,4)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (37,3)-(37,4) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ ├── @ SymbolNode (location: (37,5)-(37,10)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (37,5)-(37,10) = "b\#{1}" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "b\#{1}" - │ │ ├── @ SymbolNode (location: (37,11)-(37,16)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (37,11)-(37,16) = "\#{2}c" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\#{2}c" - │ │ └── @ SymbolNode (location: (37,17)-(37,23)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (37,17)-(37,23) = "d\#{3}f" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "d\#{3}f" - │ ├── opening_loc: (37,0)-(37,3) = "%i[" - │ └── closing_loc: (37,23)-(37,24) = "]" - ├── @ ArrayNode (location: (39,0)-(39,24)) - │ ├── flags: newline - │ ├── elements: (length: 4) - │ │ ├── @ SymbolNode (location: (39,3)-(39,4)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (39,3)-(39,4) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ ├── @ InterpolatedSymbolNode (location: (39,5)-(39,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── parts: (length: 2) - │ │ │ │ ├── @ StringNode (location: (39,5)-(39,6)) - │ │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── content_loc: (39,5)-(39,6) = "b" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "b" - │ │ │ │ └── @ EmbeddedStatementsNode (location: (39,6)-(39,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (39,6)-(39,8) = "\#{" - │ │ │ │ ├── statements: - │ │ │ │ │ @ StatementsNode (location: (39,8)-(39,9)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ IntegerNode (location: (39,8)-(39,9)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ └── closing_loc: (39,9)-(39,10) = "}" - │ │ │ └── closing_loc: ∅ - │ │ ├── @ InterpolatedSymbolNode (location: (39,11)-(39,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── parts: (length: 2) - │ │ │ │ ├── @ EmbeddedStatementsNode (location: (39,11)-(39,15)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── opening_loc: (39,11)-(39,13) = "\#{" - │ │ │ │ │ ├── statements: - │ │ │ │ │ │ @ StatementsNode (location: (39,13)-(39,14)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ │ └── @ IntegerNode (location: (39,13)-(39,14)) - │ │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ │ └── value: 2 - │ │ │ │ │ └── closing_loc: (39,14)-(39,15) = "}" - │ │ │ │ └── @ StringNode (location: (39,15)-(39,16)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (39,15)-(39,16) = "c" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "c" - │ │ │ └── closing_loc: ∅ - │ │ └── @ InterpolatedSymbolNode (location: (39,17)-(39,23)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── parts: (length: 3) - │ │ │ ├── @ StringNode (location: (39,17)-(39,18)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (39,17)-(39,18) = "d" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "d" - │ │ │ ├── @ EmbeddedStatementsNode (location: (39,18)-(39,22)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (39,18)-(39,20) = "\#{" - │ │ │ │ ├── statements: - │ │ │ │ │ @ StatementsNode (location: (39,20)-(39,21)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ IntegerNode (location: (39,20)-(39,21)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 3 - │ │ │ │ └── closing_loc: (39,21)-(39,22) = "}" - │ │ │ └── @ StringNode (location: (39,22)-(39,23)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (39,22)-(39,23) = "f" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "f" - │ │ └── closing_loc: ∅ - │ ├── opening_loc: (39,0)-(39,3) = "%I[" - │ └── closing_loc: (39,23)-(39,24) = "]" - ├── @ SymbolNode (location: (41,0)-(41,4)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (41,0)-(41,1) = ":" - │ ├── value_loc: (41,1)-(41,4) = "@@a" - │ ├── closing_loc: ∅ - │ └── unescaped: "@@a" - ├── @ SymbolNode (location: (43,0)-(43,5)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (43,0)-(43,1) = ":" - │ ├── value_loc: (43,1)-(43,5) = "👍" - │ ├── closing_loc: ∅ - │ └── unescaped: "👍" - ├── @ ArrayNode (location: (45,0)-(45,7)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 1) - │ │ └── @ SymbolNode (location: (45,3)-(45,6)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (45,3)-(45,6) = "a\\b" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a\\b" - │ ├── opening_loc: (45,0)-(45,3) = "%i[" - │ └── closing_loc: (45,6)-(45,7) = "]" - ├── @ SymbolNode (location: (47,0)-(47,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (47,0)-(47,1) = ":" - │ ├── value_loc: (47,1)-(47,3) = "$a" - │ ├── closing_loc: ∅ - │ └── unescaped: "$a" - ├── @ SymbolNode (location: (49,0)-(49,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (49,0)-(49,1) = ":" - │ ├── value_loc: (49,1)-(49,3) = "@a" - │ ├── closing_loc: ∅ - │ └── unescaped: "@a" - ├── @ SymbolNode (location: (51,0)-(51,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (51,0)-(51,1) = ":" - │ ├── value_loc: (51,1)-(51,3) = "do" - │ ├── closing_loc: ∅ - │ └── unescaped: "do" - ├── @ SymbolNode (location: (53,0)-(53,2)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (53,0)-(53,1) = ":" - │ ├── value_loc: (53,1)-(53,2) = "&" - │ ├── closing_loc: ∅ - │ └── unescaped: "&" - ├── @ SymbolNode (location: (55,0)-(55,2)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (55,0)-(55,1) = ":" - │ ├── value_loc: (55,1)-(55,2) = "`" - │ ├── closing_loc: ∅ - │ └── unescaped: "`" - ├── @ SymbolNode (location: (57,0)-(57,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (57,0)-(57,1) = ":" - │ ├── value_loc: (57,1)-(57,3) = "!@" - │ ├── closing_loc: ∅ - │ └── unescaped: "!" - ├── @ SymbolNode (location: (59,0)-(59,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (59,0)-(59,1) = ":" - │ ├── value_loc: (59,1)-(59,3) = "!~" - │ ├── closing_loc: ∅ - │ └── unescaped: "!~" - ├── @ SymbolNode (location: (61,0)-(61,2)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (61,0)-(61,1) = ":" - │ ├── value_loc: (61,1)-(61,2) = "!" - │ ├── closing_loc: ∅ - │ └── unescaped: "!" - ├── @ SymbolNode (location: (63,0)-(63,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (63,0)-(63,1) = ":" - │ ├── value_loc: (63,1)-(63,3) = "[]" - │ ├── closing_loc: ∅ - │ └── unescaped: "[]" - ├── @ SymbolNode (location: (65,0)-(65,4)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (65,0)-(65,1) = ":" - │ ├── value_loc: (65,1)-(65,4) = "[]=" - │ ├── closing_loc: ∅ - │ └── unescaped: "[]=" - ├── @ SymbolNode (location: (67,0)-(67,2)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (67,0)-(67,1) = ":" - │ ├── value_loc: (67,1)-(67,2) = "^" - │ ├── closing_loc: ∅ - │ └── unescaped: "^" - ├── @ SymbolNode (location: (69,0)-(69,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (69,0)-(69,1) = ":" - │ ├── value_loc: (69,1)-(69,3) = "==" - │ ├── closing_loc: ∅ - │ └── unescaped: "==" - ├── @ SymbolNode (location: (71,0)-(71,4)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (71,0)-(71,1) = ":" - │ ├── value_loc: (71,1)-(71,4) = "===" - │ ├── closing_loc: ∅ - │ └── unescaped: "===" - ├── @ SymbolNode (location: (73,0)-(73,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (73,0)-(73,1) = ":" - │ ├── value_loc: (73,1)-(73,3) = "=~" - │ ├── closing_loc: ∅ - │ └── unescaped: "=~" - ├── @ SymbolNode (location: (75,0)-(75,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (75,0)-(75,1) = ":" - │ ├── value_loc: (75,1)-(75,3) = ">=" - │ ├── closing_loc: ∅ - │ └── unescaped: ">=" - ├── @ SymbolNode (location: (77,0)-(77,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (77,0)-(77,1) = ":" - │ ├── value_loc: (77,1)-(77,3) = ">>" - │ ├── closing_loc: ∅ - │ └── unescaped: ">>" - ├── @ SymbolNode (location: (79,0)-(79,2)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (79,0)-(79,1) = ":" - │ ├── value_loc: (79,1)-(79,2) = ">" - │ ├── closing_loc: ∅ - │ └── unescaped: ">" - ├── @ SymbolNode (location: (81,0)-(81,4)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (81,0)-(81,1) = ":" - │ ├── value_loc: (81,1)-(81,4) = "<=>" - │ ├── closing_loc: ∅ - │ └── unescaped: "<=>" - ├── @ SymbolNode (location: (83,0)-(83,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (83,0)-(83,1) = ":" - │ ├── value_loc: (83,1)-(83,3) = "<=" - │ ├── closing_loc: ∅ - │ └── unescaped: "<=" - ├── @ SymbolNode (location: (85,0)-(85,3)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (85,0)-(85,1) = ":" - │ ├── value_loc: (85,1)-(85,3) = "<<" - │ ├── closing_loc: ∅ - │ └── unescaped: "<<" - ├── @ SymbolNode (location: (87,0)-(87,2)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (87,0)-(87,1) = ":" - │ ├── value_loc: (87,1)-(87,2) = "<" - │ ├── closing_loc: ∅ - │ └── unescaped: "<" - ├── @ SymbolNode (location: (89,0)-(89,9)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (89,0)-(89,1) = ":" - │ ├── value_loc: (89,1)-(89,9) = "__LINE__" - │ ├── closing_loc: ∅ - │ └── unescaped: "__LINE__" - ├── @ SymbolNode (location: (91,0)-(91,9)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (91,0)-(91,1) = ":" - │ ├── value_loc: (91,1)-(91,9) = "__FILE__" - │ ├── closing_loc: ∅ - │ └── unescaped: "__FILE__" - └── @ SymbolNode (location: (93,0)-(93,13)) - ├── flags: newline, static_literal, forced_us_ascii_encoding - ├── opening_loc: (93,0)-(93,1) = ":" - ├── value_loc: (93,1)-(93,13) = "__ENCODING__" - ├── closing_loc: ∅ - └── unescaped: "__ENCODING__" diff --git a/test/prism/snapshots/ternary_operator.txt b/test/prism/snapshots/ternary_operator.txt deleted file mode 100644 index 4d6a7423f9..0000000000 --- a/test/prism/snapshots/ternary_operator.txt +++ /dev/null @@ -1,340 +0,0 @@ -@ ProgramNode (location: (1,0)-(15,12)) -├── flags: ∅ -├── locals: [:_a] -└── statements: - @ StatementsNode (location: (1,0)-(15,12)) - ├── flags: ∅ - └── body: (length: 8) - ├── @ IfNode (location: (1,0)-(1,9)) - │ ├── flags: newline - │ ├── if_keyword_loc: ∅ - │ ├── predicate: - │ │ @ CallNode (location: (1,0)-(1,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (1,0)-(1,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: (1,2)-(1,3) = "?" - │ ├── statements: - │ │ @ StatementsNode (location: (1,4)-(1,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,4)-(1,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (1,4)-(1,5) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── subsequent: - │ │ @ ElseNode (location: (1,6)-(1,9)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (1,6)-(1,7) = ":" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,8)-(1,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (1,8)-(1,9)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :c - │ │ │ ├── message_loc: (1,8)-(1,9) = "c" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── end_keyword_loc: ∅ - │ └── end_keyword_loc: ∅ - ├── @ IfNode (location: (3,0)-(3,27)) - │ ├── flags: newline - │ ├── if_keyword_loc: ∅ - │ ├── predicate: - │ │ @ CallNode (location: (3,0)-(3,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (3,0)-(3,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: (3,2)-(3,3) = "?" - │ ├── statements: - │ │ @ StatementsNode (location: (3,4)-(3,14)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ DefinedNode (location: (3,4)-(3,14)) - │ │ ├── flags: newline - │ │ ├── lparen_loc: ∅ - │ │ ├── value: - │ │ │ @ CallNode (location: (3,13)-(3,14)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (3,13)-(3,14) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── rparen_loc: ∅ - │ │ └── keyword_loc: (3,4)-(3,12) = "defined?" - │ ├── subsequent: - │ │ @ ElseNode (location: (3,15)-(3,27)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (3,15)-(3,16) = ":" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (3,17)-(3,27)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ DefinedNode (location: (3,17)-(3,27)) - │ │ │ ├── flags: newline - │ │ │ ├── lparen_loc: ∅ - │ │ │ ├── value: - │ │ │ │ @ CallNode (location: (3,26)-(3,27)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (3,26)-(3,27) = "c" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── rparen_loc: ∅ - │ │ │ └── keyword_loc: (3,17)-(3,25) = "defined?" - │ │ └── end_keyword_loc: ∅ - │ └── end_keyword_loc: ∅ - ├── @ IfNode (location: (5,0)-(5,15)) - │ ├── flags: newline - │ ├── if_keyword_loc: ∅ - │ ├── predicate: - │ │ @ CallNode (location: (5,0)-(5,6)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :empty? - │ │ ├── message_loc: (5,0)-(5,6) = "empty?" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: (5,6)-(5,7) = "?" - │ ├── statements: - │ │ @ StatementsNode (location: (5,7)-(5,11)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ TrueNode (location: (5,7)-(5,11)) - │ │ └── flags: newline, static_literal - │ ├── subsequent: - │ │ @ ElseNode (location: (5,11)-(5,15)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (5,11)-(5,12) = ":" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (5,12)-(5,15)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ NilNode (location: (5,12)-(5,15)) - │ │ │ └── flags: newline, static_literal - │ │ └── end_keyword_loc: ∅ - │ └── end_keyword_loc: ∅ - ├── @ IfNode (location: (7,0)-(7,16)) - │ ├── flags: newline - │ ├── if_keyword_loc: ∅ - │ ├── predicate: - │ │ @ CallNode (location: (7,0)-(7,6)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :empty? - │ │ ├── message_loc: (7,0)-(7,6) = "empty?" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: (7,6)-(7,7) = "?" - │ ├── statements: - │ │ @ StatementsNode (location: (7,7)-(7,12)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ FalseNode (location: (7,7)-(7,12)) - │ │ └── flags: newline, static_literal - │ ├── subsequent: - │ │ @ ElseNode (location: (7,12)-(7,16)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (7,12)-(7,13) = ":" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (7,13)-(7,16)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ NilNode (location: (7,13)-(7,16)) - │ │ │ └── flags: newline, static_literal - │ │ └── end_keyword_loc: ∅ - │ └── end_keyword_loc: ∅ - ├── @ IfNode (location: (9,0)-(9,14)) - │ ├── flags: newline - │ ├── if_keyword_loc: ∅ - │ ├── predicate: - │ │ @ CallNode (location: (9,0)-(9,6)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :empty? - │ │ ├── message_loc: (9,0)-(9,6) = "empty?" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: (9,6)-(9,7) = "?" - │ ├── statements: - │ │ @ StatementsNode (location: (9,7)-(9,10)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ NilNode (location: (9,7)-(9,10)) - │ │ └── flags: newline, static_literal - │ ├── subsequent: - │ │ @ ElseNode (location: (9,10)-(9,14)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (9,10)-(9,11) = ":" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (9,11)-(9,14)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ NilNode (location: (9,11)-(9,14)) - │ │ │ └── flags: newline, static_literal - │ │ └── end_keyword_loc: ∅ - │ └── end_keyword_loc: ∅ - ├── @ IfNode (location: (11,0)-(11,10)) - │ ├── flags: newline - │ ├── if_keyword_loc: ∅ - │ ├── predicate: - │ │ @ CallNode (location: (11,0)-(11,2)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a? - │ │ ├── message_loc: (11,0)-(11,2) = "a?" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: (11,2)-(11,3) = "?" - │ ├── statements: - │ │ @ StatementsNode (location: (11,3)-(11,6)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ NilNode (location: (11,3)-(11,6)) - │ │ └── flags: newline, static_literal - │ ├── subsequent: - │ │ @ ElseNode (location: (11,6)-(11,10)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (11,6)-(11,7) = ":" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (11,7)-(11,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ NilNode (location: (11,7)-(11,10)) - │ │ │ └── flags: newline, static_literal - │ │ └── end_keyword_loc: ∅ - │ └── end_keyword_loc: ∅ - ├── @ IfNode (location: (13,0)-(13,14)) - │ ├── flags: newline - │ ├── if_keyword_loc: ∅ - │ ├── predicate: - │ │ @ CallNode (location: (13,0)-(13,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (13,0)-(13,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: (13,2)-(13,3) = "?" - │ ├── statements: - │ │ @ StatementsNode (location: (13,3)-(13,7)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (13,3)-(13,7)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :var1 - │ │ ├── message_loc: (13,3)-(13,7) = "var1" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── subsequent: - │ │ @ ElseNode (location: (13,8)-(13,14)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (13,8)-(13,9) = ":" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (13,10)-(13,14)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (13,10)-(13,14)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :var2 - │ │ │ ├── message_loc: (13,10)-(13,14) = "var2" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── end_keyword_loc: ∅ - │ └── end_keyword_loc: ∅ - └── @ IfNode (location: (15,0)-(15,12)) - ├── flags: newline - ├── if_keyword_loc: ∅ - ├── predicate: - │ @ CallNode (location: (15,0)-(15,4)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :nil? - │ ├── message_loc: (15,0)-(15,4) = "nil?" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── then_keyword_loc: (15,4)-(15,5) = "?" - ├── statements: - │ @ StatementsNode (location: (15,5)-(15,10)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ LocalVariableWriteNode (location: (15,5)-(15,10)) - │ ├── flags: newline - │ ├── name: :_a - │ ├── depth: 0 - │ ├── name_loc: (15,5)-(15,7) = "_a" - │ ├── value: - │ │ @ IntegerNode (location: (15,9)-(15,10)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ └── operator_loc: (15,8)-(15,9) = "=" - ├── subsequent: - │ @ ElseNode (location: (15,10)-(15,12)) - │ ├── flags: ∅ - │ ├── else_keyword_loc: (15,10)-(15,11) = ":" - │ ├── statements: - │ │ @ StatementsNode (location: (15,11)-(15,12)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (15,11)-(15,12)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 1 - │ └── end_keyword_loc: ∅ - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/tilde_heredocs.txt b/test/prism/snapshots/tilde_heredocs.txt deleted file mode 100644 index dc6321ce1a..0000000000 --- a/test/prism/snapshots/tilde_heredocs.txt +++ /dev/null @@ -1,421 +0,0 @@ -@ ProgramNode (location: (1,0)-(94,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(94,6)) - ├── flags: ∅ - └── body: (length: 19) - ├── @ InterpolatedStringNode (location: (1,0)-(1,6)) - │ ├── flags: newline - │ ├── opening_loc: (1,0)-(1,6) = "<<~EOF" - │ ├── parts: (length: 4) - │ │ ├── @ StringNode (location: (2,0)-(3,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (2,0)-(3,0) = " a\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: " a\n" - │ │ ├── @ EmbeddedStatementsNode (location: (3,0)-(3,4)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (3,0)-(3,2) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (3,2)-(3,3)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (3,2)-(3,3)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── closing_loc: (3,3)-(3,4) = "}" - │ │ ├── @ StringNode (location: (3,4)-(4,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (3,4)-(4,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ └── @ StringNode (location: (4,0)-(5,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (4,0)-(5,0) = " a\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: " a\n" - │ └── closing_loc: (5,0)-(6,0) = "EOF\n" - ├── @ StringNode (location: (7,0)-(7,6)) - │ ├── flags: newline - │ ├── opening_loc: (7,0)-(7,6) = "<<~EOF" - │ ├── content_loc: (8,0)-(9,0) = " a\n" - │ ├── closing_loc: (9,0)-(10,0) = "EOF\n" - │ └── unescaped: "a\n" - ├── @ InterpolatedStringNode (location: (11,0)-(11,6)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (11,0)-(11,6) = "<<~EOF" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (12,0)-(13,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (12,0)-(13,0) = "\ta\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\ta\n" - │ │ ├── @ StringNode (location: (13,0)-(14,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (13,0)-(14,0) = " b\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "b\n" - │ │ └── @ StringNode (location: (14,0)-(15,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (14,0)-(15,0) = "\t\tc\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\t\tc\n" - │ └── closing_loc: (15,0)-(16,0) = "EOF\n" - ├── @ InterpolatedStringNode (location: (17,0)-(17,6)) - │ ├── flags: newline - │ ├── opening_loc: (17,0)-(17,6) = "<<~EOF" - │ ├── parts: (length: 2) - │ │ ├── @ EmbeddedStatementsNode (location: (18,2)-(18,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (18,2)-(18,4) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (18,4)-(18,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (18,4)-(18,5)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── closing_loc: (18,5)-(18,6) = "}" - │ │ └── @ StringNode (location: (18,6)-(19,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (18,6)-(19,0) = " a\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: " a\n" - │ └── closing_loc: (19,0)-(20,0) = "EOF\n" - ├── @ InterpolatedStringNode (location: (21,0)-(21,6)) - │ ├── flags: newline - │ ├── opening_loc: (21,0)-(21,6) = "<<~EOF" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (22,0)-(22,4)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (22,0)-(22,4) = " a " - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a " - │ │ ├── @ EmbeddedStatementsNode (location: (22,4)-(22,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (22,4)-(22,6) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (22,6)-(22,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (22,6)-(22,7)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── closing_loc: (22,7)-(22,8) = "}" - │ │ └── @ StringNode (location: (22,8)-(23,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (22,8)-(23,0) = "\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\n" - │ └── closing_loc: (23,0)-(24,0) = "EOF\n" - ├── @ InterpolatedStringNode (location: (25,0)-(25,6)) - │ ├── flags: newline - │ ├── opening_loc: (25,0)-(25,6) = "<<~EOF" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (26,0)-(27,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (26,0)-(27,0) = " a\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: " a\n" - │ │ ├── @ EmbeddedStatementsNode (location: (27,1)-(27,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (27,1)-(27,3) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (27,3)-(27,4)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (27,3)-(27,4)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── closing_loc: (27,4)-(27,5) = "}" - │ │ └── @ StringNode (location: (27,5)-(28,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (27,5)-(28,0) = "\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\n" - │ └── closing_loc: (28,0)-(29,0) = "EOF\n" - ├── @ InterpolatedStringNode (location: (30,0)-(30,6)) - │ ├── flags: newline - │ ├── opening_loc: (30,0)-(30,6) = "<<~EOF" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (31,0)-(32,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (31,0)-(32,0) = " a\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a\n" - │ │ ├── @ EmbeddedStatementsNode (location: (32,2)-(32,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (32,2)-(32,4) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (32,4)-(32,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (32,4)-(32,5)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── closing_loc: (32,5)-(32,6) = "}" - │ │ └── @ StringNode (location: (32,6)-(33,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (32,6)-(33,0) = "\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\n" - │ └── closing_loc: (33,0)-(34,0) = "EOF\n" - ├── @ InterpolatedStringNode (location: (35,0)-(35,6)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (35,0)-(35,6) = "<<~EOF" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (36,0)-(37,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (36,0)-(37,0) = " a\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a\n" - │ │ └── @ StringNode (location: (37,0)-(38,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (37,0)-(38,0) = " b\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b\n" - │ └── closing_loc: (38,0)-(39,0) = "EOF\n" - ├── @ InterpolatedStringNode (location: (40,0)-(40,6)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (40,0)-(40,6) = "<<~EOF" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (41,0)-(42,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (41,0)-(42,0) = " a\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a\n" - │ │ └── @ StringNode (location: (42,0)-(43,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (42,0)-(43,0) = " b\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: " b\n" - │ └── closing_loc: (43,0)-(44,0) = "EOF\n" - ├── @ InterpolatedStringNode (location: (45,0)-(45,6)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (45,0)-(45,6) = "<<~EOF" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (46,0)-(47,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (46,0)-(47,0) = "\t\t\ta\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\ta\n" - │ │ └── @ StringNode (location: (47,0)-(48,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (47,0)-(48,0) = "\t\tb\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b\n" - │ └── closing_loc: (48,0)-(49,0) = "EOF\n" - ├── @ StringNode (location: (50,0)-(50,8)) - │ ├── flags: newline - │ ├── opening_loc: (50,0)-(50,8) = "<<~'EOF'" - │ ├── content_loc: (51,0)-(52,0) = " a \#{1}\n" - │ ├── closing_loc: (52,0)-(53,0) = "EOF\n" - │ └── unescaped: "a \#{1}\n" - ├── @ InterpolatedStringNode (location: (54,0)-(54,6)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (54,0)-(54,6) = "<<~EOF" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (55,0)-(56,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (55,0)-(56,0) = "\ta\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a\n" - │ │ └── @ StringNode (location: (56,0)-(57,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (56,0)-(57,0) = "\t b\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: " b\n" - │ └── closing_loc: (57,0)-(58,0) = "EOF\n" - ├── @ InterpolatedStringNode (location: (59,0)-(59,6)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (59,0)-(59,6) = "<<~EOF" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (60,0)-(61,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (60,0)-(61,0) = "\t a\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: " a\n" - │ │ └── @ StringNode (location: (61,0)-(62,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (61,0)-(62,0) = "\tb\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b\n" - │ └── closing_loc: (62,0)-(63,0) = "EOF\n" - ├── @ InterpolatedStringNode (location: (64,0)-(64,6)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (64,0)-(64,6) = "<<~EOF" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (65,0)-(66,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (65,0)-(66,0) = " \ta\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a\n" - │ │ └── @ StringNode (location: (66,0)-(67,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (66,0)-(67,0) = " b\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b\n" - │ └── closing_loc: (67,0)-(68,0) = "EOF\n" - ├── @ InterpolatedStringNode (location: (69,0)-(69,6)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (69,0)-(69,6) = "<<~EOF" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (70,0)-(71,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (70,0)-(71,0) = " a\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a\n" - │ │ ├── @ StringNode (location: (71,0)-(72,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (71,0)-(72,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ └── @ StringNode (location: (72,0)-(73,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (72,0)-(73,0) = " b\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b\n" - │ └── closing_loc: (73,0)-(74,0) = "EOF\n" - ├── @ InterpolatedStringNode (location: (75,0)-(75,6)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (75,0)-(75,6) = "<<~EOF" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (76,0)-(77,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (76,0)-(77,0) = " a\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a\n" - │ │ ├── @ StringNode (location: (77,0)-(78,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (77,0)-(78,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ └── @ StringNode (location: (78,0)-(79,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (78,0)-(79,0) = " b\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b\n" - │ └── closing_loc: (79,0)-(80,0) = "EOF\n" - ├── @ InterpolatedStringNode (location: (81,0)-(81,6)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (81,0)-(81,6) = "<<~EOF" - │ ├── parts: (length: 5) - │ │ ├── @ StringNode (location: (82,0)-(83,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (82,0)-(83,0) = " a\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a\n" - │ │ ├── @ StringNode (location: (83,0)-(84,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (83,0)-(84,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ ├── @ StringNode (location: (84,0)-(85,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (84,0)-(85,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ ├── @ StringNode (location: (85,0)-(86,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (85,0)-(86,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ └── @ StringNode (location: (86,0)-(87,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (86,0)-(87,0) = " b\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b\n" - │ └── closing_loc: (87,0)-(88,0) = "EOF\n" - ├── @ InterpolatedStringNode (location: (89,0)-(89,6)) - │ ├── flags: newline - │ ├── opening_loc: (89,0)-(89,6) = "<<~EOF" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (90,0)-(91,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (90,0)-(91,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ ├── @ EmbeddedStatementsNode (location: (91,2)-(91,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (91,2)-(91,4) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (91,4)-(91,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (91,4)-(91,5)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── closing_loc: (91,5)-(91,6) = "}" - │ │ └── @ StringNode (location: (91,6)-(92,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (91,6)-(92,0) = "a\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a\n" - │ └── closing_loc: (92,0)-(93,0) = " EOF\n" - └── @ InterpolatedStringNode (location: (94,0)-(94,6)) - ├── flags: newline - ├── opening_loc: (94,0)-(94,6) = "<<~EOT" - ├── parts: (length: 3) - │ ├── @ EmbeddedStatementsNode (location: (95,2)-(95,6)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (95,2)-(95,4) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (95,4)-(95,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ IntegerNode (location: (95,4)-(95,5)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── closing_loc: (95,5)-(95,6) = "}" - │ ├── @ StringNode (location: (95,6)-(96,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (95,6)-(96,0) = "\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\n" - │ └── @ StringNode (location: (96,0)-(97,0)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (96,0)-(97,0) = "\tb\n" - │ ├── closing_loc: ∅ - │ └── unescaped: "\tb\n" - └── closing_loc: (97,0)-(98,0) = "EOT\n" diff --git a/test/prism/snapshots/undef.txt b/test/prism/snapshots/undef.txt deleted file mode 100644 index 7491fc4c95..0000000000 --- a/test/prism/snapshots/undef.txt +++ /dev/null @@ -1,131 +0,0 @@ -@ ProgramNode (location: (1,0)-(17,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(17,14)) - ├── flags: ∅ - └── body: (length: 9) - ├── @ UndefNode (location: (1,0)-(1,7)) - │ ├── flags: newline - │ ├── names: (length: 1) - │ │ └── @ SymbolNode (location: (1,6)-(1,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (1,6)-(1,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ └── keyword_loc: (1,0)-(1,5) = "undef" - ├── @ UndefNode (location: (3,0)-(3,10)) - │ ├── flags: newline - │ ├── names: (length: 2) - │ │ ├── @ SymbolNode (location: (3,6)-(3,7)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (3,6)-(3,7) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ └── @ SymbolNode (location: (3,9)-(3,10)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (3,9)-(3,10) = "b" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b" - │ └── keyword_loc: (3,0)-(3,5) = "undef" - ├── @ UndefNode (location: (5,0)-(5,8)) - │ ├── flags: newline - │ ├── names: (length: 1) - │ │ └── @ SymbolNode (location: (5,6)-(5,8)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (5,6)-(5,8) = "if" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "if" - │ └── keyword_loc: (5,0)-(5,5) = "undef" - ├── @ UndefNode (location: (7,0)-(7,9)) - │ ├── flags: newline - │ ├── names: (length: 1) - │ │ └── @ SymbolNode (location: (7,6)-(7,9)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (7,6)-(7,9) = "<=>" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "<=>" - │ └── keyword_loc: (7,0)-(7,5) = "undef" - ├── @ UndefNode (location: (9,0)-(9,8)) - │ ├── flags: newline - │ ├── names: (length: 1) - │ │ └── @ SymbolNode (location: (9,6)-(9,8)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (9,6)-(9,7) = ":" - │ │ ├── value_loc: (9,7)-(9,8) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ └── keyword_loc: (9,0)-(9,5) = "undef" - ├── @ UndefNode (location: (11,0)-(11,16)) - │ ├── flags: newline - │ ├── names: (length: 3) - │ │ ├── @ SymbolNode (location: (11,6)-(11,8)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (11,6)-(11,7) = ":" - │ │ │ ├── value_loc: (11,7)-(11,8) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ ├── @ SymbolNode (location: (11,10)-(11,12)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (11,10)-(11,11) = ":" - │ │ │ ├── value_loc: (11,11)-(11,12) = "b" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "b" - │ │ └── @ SymbolNode (location: (11,14)-(11,16)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (11,14)-(11,15) = ":" - │ │ ├── value_loc: (11,15)-(11,16) = "c" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "c" - │ └── keyword_loc: (11,0)-(11,5) = "undef" - ├── @ UndefNode (location: (13,0)-(13,12)) - │ ├── flags: newline - │ ├── names: (length: 1) - │ │ └── @ SymbolNode (location: (13,6)-(13,12)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (13,6)-(13,8) = ":'" - │ │ ├── value_loc: (13,8)-(13,11) = "abc" - │ │ ├── closing_loc: (13,11)-(13,12) = "'" - │ │ └── unescaped: "abc" - │ └── keyword_loc: (13,0)-(13,5) = "undef" - ├── @ UndefNode (location: (15,0)-(15,16)) - │ ├── flags: newline - │ ├── names: (length: 1) - │ │ └── @ InterpolatedSymbolNode (location: (15,6)-(15,16)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (15,6)-(15,8) = ":\"" - │ │ ├── parts: (length: 2) - │ │ │ ├── @ StringNode (location: (15,8)-(15,11)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (15,8)-(15,11) = "abc" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "abc" - │ │ │ └── @ EmbeddedStatementsNode (location: (15,11)-(15,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (15,11)-(15,13) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (15,13)-(15,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (15,13)-(15,14)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── closing_loc: (15,14)-(15,15) = "}" - │ │ └── closing_loc: (15,15)-(15,16) = "\"" - │ └── keyword_loc: (15,0)-(15,5) = "undef" - └── @ UndefNode (location: (17,0)-(17,14)) - ├── flags: newline - ├── names: (length: 1) - │ └── @ SymbolNode (location: (17,6)-(17,14)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: ∅ - │ ├── value_loc: (17,6)-(17,14) = "Constant" - │ ├── closing_loc: ∅ - │ └── unescaped: "Constant" - └── keyword_loc: (17,0)-(17,5) = "undef" diff --git a/test/prism/snapshots/unescaping.txt b/test/prism/snapshots/unescaping.txt deleted file mode 100644 index 822fbe7d8f..0000000000 --- a/test/prism/snapshots/unescaping.txt +++ /dev/null @@ -1,36 +0,0 @@ -@ ProgramNode (location: (1,0)-(7,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(7,7)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ ArrayNode (location: (1,0)-(1,10)) - │ ├── flags: newline - │ ├── elements: (length: 1) - │ │ └── @ StringNode (location: (1,1)-(1,9)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,1)-(1,2) = "\"" - │ │ ├── content_loc: (1,2)-(1,8) = "\\c\#{1}" - │ │ ├── closing_loc: (1,8)-(1,9) = "\"" - │ │ └── unescaped: "\u0003{1}" - │ ├── opening_loc: (1,0)-(1,1) = "[" - │ └── closing_loc: (1,9)-(1,10) = "]" - ├── @ RegularExpressionNode (location: (3,0)-(3,8)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (3,0)-(3,1) = "/" - │ ├── content_loc: (3,1)-(3,7) = "\\c\#{1}" - │ ├── closing_loc: (3,7)-(3,8) = "/" - │ └── unescaped: "\\x03{1}" - ├── @ StringNode (location: (5,0)-(5,8)) - │ ├── flags: newline - │ ├── opening_loc: (5,0)-(5,1) = "\"" - │ ├── content_loc: (5,1)-(5,7) = "\\c\#{1}" - │ ├── closing_loc: (5,7)-(5,8) = "\"" - │ └── unescaped: "\u0003{1}" - └── @ StringNode (location: (7,0)-(7,7)) - ├── flags: newline - ├── opening_loc: (7,0)-(7,7) = "<<~HERE" - ├── content_loc: (8,0)-(9,0) = " \\c\#{1}\n" - ├── closing_loc: (9,0)-(10,0) = "HERE\n" - └── unescaped: "\u0003{1}\n" diff --git a/test/prism/snapshots/unless.txt b/test/prism/snapshots/unless.txt deleted file mode 100644 index 9e62b0c0a9..0000000000 --- a/test/prism/snapshots/unless.txt +++ /dev/null @@ -1,203 +0,0 @@ -@ ProgramNode (location: (1,0)-(14,22)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(14,22)) - ├── flags: ∅ - └── body: (length: 7) - ├── @ UnlessNode (location: (1,0)-(1,19)) - │ ├── flags: newline - │ ├── keyword_loc: (1,0)-(1,6) = "unless" - │ ├── predicate: - │ │ @ TrueNode (location: (1,7)-(1,11)) - │ │ └── flags: static_literal - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (1,13)-(1,14)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (1,13)-(1,14)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 1 - │ ├── else_clause: ∅ - │ └── end_keyword_loc: (1,16)-(1,19) = "end" - ├── @ UnlessNode (location: (3,0)-(4,12)) - │ ├── flags: newline - │ ├── keyword_loc: (3,0)-(3,6) = "unless" - │ ├── predicate: - │ │ @ TrueNode (location: (3,7)-(3,11)) - │ │ └── flags: static_literal - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (4,0)-(4,1)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (4,0)-(4,1)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 1 - │ ├── else_clause: - │ │ @ ElseNode (location: (4,2)-(4,12)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (4,2)-(4,6) = "else" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (4,7)-(4,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ IntegerNode (location: (4,7)-(4,8)) - │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ └── value: 2 - │ │ └── end_keyword_loc: (4,9)-(4,12) = "end" - │ └── end_keyword_loc: (4,9)-(4,12) = "end" - ├── @ UnlessNode (location: (6,0)-(6,13)) - │ ├── flags: newline - │ ├── keyword_loc: (6,2)-(6,8) = "unless" - │ ├── predicate: - │ │ @ TrueNode (location: (6,9)-(6,13)) - │ │ └── flags: static_literal - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (6,0)-(6,1)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (6,0)-(6,1)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 1 - │ ├── else_clause: ∅ - │ └── end_keyword_loc: ∅ - ├── @ CallNode (location: (8,0)-(8,25)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (8,0)-(8,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (8,4)-(8,25)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (8,6)-(8,23)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ UnlessNode (location: (8,6)-(8,23)) - │ │ ├── flags: newline - │ │ ├── keyword_loc: (8,12)-(8,18) = "unless" - │ │ ├── predicate: - │ │ │ @ TrueNode (location: (8,19)-(8,23)) - │ │ │ └── flags: static_literal - │ │ ├── then_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (8,6)-(8,11)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ BreakNode (location: (8,6)-(8,11)) - │ │ │ ├── flags: newline - │ │ │ ├── arguments: ∅ - │ │ │ └── keyword_loc: (8,6)-(8,11) = "break" - │ │ ├── else_clause: ∅ - │ │ └── end_keyword_loc: ∅ - │ ├── opening_loc: (8,4)-(8,5) = "{" - │ └── closing_loc: (8,24)-(8,25) = "}" - ├── @ CallNode (location: (10,0)-(10,24)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (10,0)-(10,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (10,4)-(10,24)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (10,6)-(10,22)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ UnlessNode (location: (10,6)-(10,22)) - │ │ ├── flags: newline - │ │ ├── keyword_loc: (10,11)-(10,17) = "unless" - │ │ ├── predicate: - │ │ │ @ TrueNode (location: (10,18)-(10,22)) - │ │ │ └── flags: static_literal - │ │ ├── then_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (10,6)-(10,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ NextNode (location: (10,6)-(10,10)) - │ │ │ ├── flags: newline - │ │ │ ├── arguments: ∅ - │ │ │ └── keyword_loc: (10,6)-(10,10) = "next" - │ │ ├── else_clause: ∅ - │ │ └── end_keyword_loc: ∅ - │ ├── opening_loc: (10,4)-(10,5) = "{" - │ └── closing_loc: (10,23)-(10,24) = "}" - ├── @ UnlessNode (location: (12,0)-(12,18)) - │ ├── flags: newline - │ ├── keyword_loc: (12,7)-(12,13) = "unless" - │ ├── predicate: - │ │ @ TrueNode (location: (12,14)-(12,18)) - │ │ └── flags: static_literal - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (12,0)-(12,6)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ ReturnNode (location: (12,0)-(12,6)) - │ │ ├── flags: newline - │ │ ├── keyword_loc: (12,0)-(12,6) = "return" - │ │ └── arguments: ∅ - │ ├── else_clause: ∅ - │ └── end_keyword_loc: ∅ - └── @ UnlessNode (location: (14,0)-(14,22)) - ├── flags: newline - ├── keyword_loc: (14,11)-(14,17) = "unless" - ├── predicate: - │ @ CallNode (location: (14,18)-(14,22)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar? - │ ├── message_loc: (14,18)-(14,22) = "bar?" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── then_keyword_loc: ∅ - ├── statements: - │ @ StatementsNode (location: (14,0)-(14,10)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (14,0)-(14,10)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (14,0)-(14,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (14,4)-(14,10)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ SymbolNode (location: (14,4)-(14,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (14,4)-(14,5) = ":" - │ │ │ ├── value_loc: (14,5)-(14,6) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ └── @ SymbolNode (location: (14,8)-(14,10)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (14,8)-(14,9) = ":" - │ │ ├── value_loc: (14,9)-(14,10) = "b" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── else_clause: ∅ - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/unparser/corpus/literal/alias.txt b/test/prism/snapshots/unparser/corpus/literal/alias.txt deleted file mode 100644 index 6ce892b54d..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/alias.txt +++ /dev/null @@ -1,35 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,15)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ AliasGlobalVariableNode (location: (1,0)-(1,15)) - │ ├── flags: newline - │ ├── new_name: - │ │ @ GlobalVariableReadNode (location: (1,6)-(1,10)) - │ │ ├── flags: ∅ - │ │ └── name: :$foo - │ ├── old_name: - │ │ @ GlobalVariableReadNode (location: (1,11)-(1,15)) - │ │ ├── flags: ∅ - │ │ └── name: :$bar - │ └── keyword_loc: (1,0)-(1,5) = "alias" - └── @ AliasMethodNode (location: (2,0)-(2,15)) - ├── flags: newline - ├── new_name: - │ @ SymbolNode (location: (2,6)-(2,10)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (2,6)-(2,7) = ":" - │ ├── value_loc: (2,7)-(2,10) = "foo" - │ ├── closing_loc: ∅ - │ └── unescaped: "foo" - ├── old_name: - │ @ SymbolNode (location: (2,11)-(2,15)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (2,11)-(2,12) = ":" - │ ├── value_loc: (2,12)-(2,15) = "bar" - │ ├── closing_loc: ∅ - │ └── unescaped: "bar" - └── keyword_loc: (2,0)-(2,5) = "alias" diff --git a/test/prism/snapshots/unparser/corpus/literal/assignment.txt b/test/prism/snapshots/unparser/corpus/literal/assignment.txt deleted file mode 100644 index 4e4ed86e7b..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/assignment.txt +++ /dev/null @@ -1,1181 +0,0 @@ -@ ProgramNode (location: (1,0)-(51,17)) -├── flags: ∅ -├── locals: [:a, :b, :foo, :c, :x] -└── statements: - @ StatementsNode (location: (1,0)-(51,17)) - ├── flags: ∅ - └── body: (length: 43) - ├── @ GlobalVariableWriteNode (location: (1,0)-(1,6)) - │ ├── flags: newline - │ ├── name: :$a - │ ├── name_loc: (1,0)-(1,2) = "$a" - │ ├── value: - │ │ @ IntegerNode (location: (1,5)-(1,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (1,3)-(1,4) = "=" - ├── @ MultiWriteNode (location: (2,0)-(2,17)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ GlobalVariableTargetNode (location: (2,1)-(2,3)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :$a - │ │ └── @ GlobalVariableTargetNode (location: (2,5)-(2,7)) - │ │ ├── flags: ∅ - │ │ └── name: :$b - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: (2,0)-(2,1) = "(" - │ ├── rparen_loc: (2,7)-(2,8) = ")" - │ ├── operator_loc: (2,9)-(2,10) = "=" - │ └── value: - │ @ ArrayNode (location: (2,11)-(2,17)) - │ ├── flags: static_literal - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (2,12)-(2,13)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (2,15)-(2,16)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── opening_loc: (2,11)-(2,12) = "[" - │ └── closing_loc: (2,16)-(2,17) = "]" - ├── @ MultiWriteNode (location: (3,0)-(3,13)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ MultiTargetNode (location: (3,1)-(3,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 1) - │ │ │ │ └── @ LocalVariableTargetNode (location: (3,2)-(3,3)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ └── depth: 0 - │ │ │ ├── rest: - │ │ │ │ @ ImplicitRestNode (location: (3,3)-(3,4)) - │ │ │ │ └── flags: ∅ - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: (3,1)-(3,2) = "(" - │ │ │ └── rparen_loc: (3,4)-(3,5) = ")" - │ │ └── @ LocalVariableTargetNode (location: (3,7)-(3,8)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ └── depth: 0 - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: (3,0)-(3,1) = "(" - │ ├── rparen_loc: (3,8)-(3,9) = ")" - │ ├── operator_loc: (3,10)-(3,11) = "=" - │ └── value: - │ @ IntegerNode (location: (3,12)-(3,13)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ MultiWriteNode (location: (4,0)-(4,9)) - │ ├── flags: newline - │ ├── lefts: (length: 0) - │ ├── rest: - │ │ @ SplatNode (location: (4,1)-(4,3)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (4,1)-(4,2) = "*" - │ │ └── expression: - │ │ @ LocalVariableTargetNode (location: (4,2)-(4,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── rights: (length: 0) - │ ├── lparen_loc: (4,0)-(4,1) = "(" - │ ├── rparen_loc: (4,3)-(4,4) = ")" - │ ├── operator_loc: (4,5)-(4,6) = "=" - │ └── value: - │ @ ArrayNode (location: (4,7)-(4,9)) - │ ├── flags: static_literal - │ ├── elements: (length: 0) - │ ├── opening_loc: (4,7)-(4,8) = "[" - │ └── closing_loc: (4,8)-(4,9) = "]" - ├── @ MultiWriteNode (location: (5,0)-(5,15)) - │ ├── flags: newline - │ ├── lefts: (length: 0) - │ ├── rest: - │ │ @ SplatNode (location: (5,1)-(5,5)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (5,1)-(5,2) = "*" - │ │ └── expression: - │ │ @ LocalVariableTargetNode (location: (5,2)-(5,5)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── rights: (length: 0) - │ ├── lparen_loc: (5,0)-(5,1) = "(" - │ ├── rparen_loc: (5,5)-(5,6) = ")" - │ ├── operator_loc: (5,7)-(5,8) = "=" - │ └── value: - │ @ ArrayNode (location: (5,9)-(5,15)) - │ ├── flags: static_literal - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (5,10)-(5,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (5,13)-(5,14)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── opening_loc: (5,9)-(5,10) = "[" - │ └── closing_loc: (5,14)-(5,15) = "]" - ├── @ MultiWriteNode (location: (6,0)-(6,19)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ ClassVariableTargetNode (location: (6,1)-(6,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :@@a - │ │ └── @ ClassVariableTargetNode (location: (6,6)-(6,9)) - │ │ ├── flags: ∅ - │ │ └── name: :@@b - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: (6,0)-(6,1) = "(" - │ ├── rparen_loc: (6,9)-(6,10) = ")" - │ ├── operator_loc: (6,11)-(6,12) = "=" - │ └── value: - │ @ ArrayNode (location: (6,13)-(6,19)) - │ ├── flags: static_literal - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (6,14)-(6,15)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (6,17)-(6,18)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── opening_loc: (6,13)-(6,14) = "[" - │ └── closing_loc: (6,18)-(6,19) = "]" - ├── @ MultiWriteNode (location: (7,0)-(7,17)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ InstanceVariableTargetNode (location: (7,1)-(7,3)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :@a - │ │ └── @ InstanceVariableTargetNode (location: (7,5)-(7,7)) - │ │ ├── flags: ∅ - │ │ └── name: :@b - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: (7,0)-(7,1) = "(" - │ ├── rparen_loc: (7,7)-(7,8) = ")" - │ ├── operator_loc: (7,9)-(7,10) = "=" - │ └── value: - │ @ ArrayNode (location: (7,11)-(7,17)) - │ ├── flags: static_literal - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (7,12)-(7,13)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (7,15)-(7,16)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── opening_loc: (7,11)-(7,12) = "[" - │ └── closing_loc: (7,16)-(7,17) = "]" - ├── @ MultiWriteNode (location: (8,0)-(8,25)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ LocalVariableTargetNode (location: (8,1)-(8,2)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ └── @ MultiTargetNode (location: (8,4)-(8,10)) - │ │ ├── flags: ∅ - │ │ ├── lefts: (length: 2) - │ │ │ ├── @ LocalVariableTargetNode (location: (8,5)-(8,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ └── depth: 0 - │ │ │ └── @ LocalVariableTargetNode (location: (8,8)-(8,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ └── depth: 0 - │ │ ├── rest: ∅ - │ │ ├── rights: (length: 0) - │ │ ├── lparen_loc: (8,4)-(8,5) = "(" - │ │ └── rparen_loc: (8,9)-(8,10) = ")" - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: (8,0)-(8,1) = "(" - │ ├── rparen_loc: (8,10)-(8,11) = ")" - │ ├── operator_loc: (8,12)-(8,13) = "=" - │ └── value: - │ @ ArrayNode (location: (8,14)-(8,25)) - │ ├── flags: ∅ - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (8,15)-(8,16)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ ArrayNode (location: (8,18)-(8,24)) - │ │ ├── flags: static_literal - │ │ ├── elements: (length: 2) - │ │ │ ├── @ IntegerNode (location: (8,19)-(8,20)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ └── @ IntegerNode (location: (8,22)-(8,23)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 3 - │ │ ├── opening_loc: (8,18)-(8,19) = "[" - │ │ └── closing_loc: (8,23)-(8,24) = "]" - │ ├── opening_loc: (8,14)-(8,15) = "[" - │ └── closing_loc: (8,24)-(8,25) = "]" - ├── @ MultiWriteNode (location: (9,0)-(9,15)) - │ ├── flags: newline - │ ├── lefts: (length: 1) - │ │ └── @ LocalVariableTargetNode (location: (9,1)-(9,2)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── rest: - │ │ @ SplatNode (location: (9,4)-(9,5)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (9,4)-(9,5) = "*" - │ │ └── expression: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: (9,0)-(9,1) = "(" - │ ├── rparen_loc: (9,5)-(9,6) = ")" - │ ├── operator_loc: (9,7)-(9,8) = "=" - │ └── value: - │ @ ArrayNode (location: (9,9)-(9,15)) - │ ├── flags: static_literal - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (9,10)-(9,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (9,13)-(9,14)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── opening_loc: (9,9)-(9,10) = "[" - │ └── closing_loc: (9,14)-(9,15) = "]" - ├── @ MultiWriteNode (location: (10,0)-(10,18)) - │ ├── flags: newline - │ ├── lefts: (length: 1) - │ │ └── @ LocalVariableTargetNode (location: (10,1)-(10,2)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── rest: - │ │ @ SplatNode (location: (10,4)-(10,8)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (10,4)-(10,5) = "*" - │ │ └── expression: - │ │ @ LocalVariableTargetNode (location: (10,5)-(10,8)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── rights: (length: 0) - │ ├── lparen_loc: (10,0)-(10,1) = "(" - │ ├── rparen_loc: (10,8)-(10,9) = ")" - │ ├── operator_loc: (10,10)-(10,11) = "=" - │ └── value: - │ @ ArrayNode (location: (10,12)-(10,18)) - │ ├── flags: static_literal - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (10,13)-(10,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (10,16)-(10,17)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── opening_loc: (10,12)-(10,13) = "[" - │ └── closing_loc: (10,17)-(10,18) = "]" - ├── @ MultiWriteNode (location: (11,0)-(11,15)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ LocalVariableTargetNode (location: (11,1)-(11,2)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ └── @ LocalVariableTargetNode (location: (11,4)-(11,5)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ └── depth: 0 - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: (11,0)-(11,1) = "(" - │ ├── rparen_loc: (11,5)-(11,6) = ")" - │ ├── operator_loc: (11,7)-(11,8) = "=" - │ └── value: - │ @ ArrayNode (location: (11,9)-(11,15)) - │ ├── flags: static_literal - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (11,10)-(11,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (11,13)-(11,14)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── opening_loc: (11,9)-(11,10) = "[" - │ └── closing_loc: (11,14)-(11,15) = "]" - ├── @ MultiWriteNode (location: (12,0)-(12,12)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ LocalVariableTargetNode (location: (12,1)-(12,2)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ └── @ LocalVariableTargetNode (location: (12,4)-(12,5)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ └── depth: 0 - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: (12,0)-(12,1) = "(" - │ ├── rparen_loc: (12,5)-(12,6) = ")" - │ ├── operator_loc: (12,7)-(12,8) = "=" - │ └── value: - │ @ LocalVariableReadNode (location: (12,9)-(12,12)) - │ ├── flags: ∅ - │ ├── name: :foo - │ └── depth: 0 - ├── @ MultiWriteNode (location: (13,0)-(13,10)) - │ ├── flags: newline - │ ├── lefts: (length: 1) - │ │ └── @ LocalVariableTargetNode (location: (13,1)-(13,2)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── rest: - │ │ @ ImplicitRestNode (location: (13,2)-(13,3)) - │ │ └── flags: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: (13,0)-(13,1) = "(" - │ ├── rparen_loc: (13,3)-(13,4) = ")" - │ ├── operator_loc: (13,5)-(13,6) = "=" - │ └── value: - │ @ LocalVariableReadNode (location: (13,7)-(13,10)) - │ ├── flags: ∅ - │ ├── name: :foo - │ └── depth: 0 - ├── @ MultiWriteNode (location: (14,0)-(14,23)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ CallTargetNode (location: (14,1)-(14,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── receiver: - │ │ │ │ @ LocalVariableReadNode (location: (14,1)-(14,2)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ └── depth: 0 - │ │ │ ├── call_operator_loc: (14,2)-(14,3) = "." - │ │ │ ├── name: :foo= - │ │ │ └── message_loc: (14,3)-(14,6) = "foo" - │ │ └── @ CallTargetNode (location: (14,8)-(14,13)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ LocalVariableReadNode (location: (14,8)-(14,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ ├── call_operator_loc: (14,9)-(14,10) = "." - │ │ ├── name: :bar= - │ │ └── message_loc: (14,10)-(14,13) = "bar" - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: (14,0)-(14,1) = "(" - │ ├── rparen_loc: (14,13)-(14,14) = ")" - │ ├── operator_loc: (14,15)-(14,16) = "=" - │ └── value: - │ @ ArrayNode (location: (14,17)-(14,23)) - │ ├── flags: static_literal - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (14,18)-(14,19)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (14,21)-(14,22)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── opening_loc: (14,17)-(14,18) = "[" - │ └── closing_loc: (14,22)-(14,23) = "]" - ├── @ MultiWriteNode (location: (15,0)-(15,24)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ IndexTargetNode (location: (15,1)-(15,8)) - │ │ │ ├── flags: attribute_write - │ │ │ ├── receiver: - │ │ │ │ @ LocalVariableReadNode (location: (15,1)-(15,2)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ └── depth: 0 - │ │ │ ├── opening_loc: (15,2)-(15,3) = "[" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (15,3)-(15,7)) - │ │ │ │ ├── flags: contains_splat - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ SplatNode (location: (15,3)-(15,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (15,3)-(15,4) = "*" - │ │ │ │ └── expression: - │ │ │ │ @ LocalVariableReadNode (location: (15,4)-(15,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :foo - │ │ │ │ └── depth: 0 - │ │ │ ├── closing_loc: (15,7)-(15,8) = "]" - │ │ │ └── block: ∅ - │ │ └── @ IndexTargetNode (location: (15,10)-(15,14)) - │ │ ├── flags: attribute_write - │ │ ├── receiver: - │ │ │ @ LocalVariableReadNode (location: (15,10)-(15,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ ├── opening_loc: (15,11)-(15,12) = "[" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (15,12)-(15,13)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (15,12)-(15,13)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: (15,13)-(15,14) = "]" - │ │ └── block: ∅ - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: (15,0)-(15,1) = "(" - │ ├── rparen_loc: (15,14)-(15,15) = ")" - │ ├── operator_loc: (15,16)-(15,17) = "=" - │ └── value: - │ @ ArrayNode (location: (15,18)-(15,24)) - │ ├── flags: static_literal - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (15,19)-(15,20)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (15,22)-(15,23)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── opening_loc: (15,18)-(15,19) = "[" - │ └── closing_loc: (15,23)-(15,24) = "]" - ├── @ MultiWriteNode (location: (16,0)-(16,21)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ IndexTargetNode (location: (16,1)-(16,5)) - │ │ │ ├── flags: attribute_write - │ │ │ ├── receiver: - │ │ │ │ @ LocalVariableReadNode (location: (16,1)-(16,2)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ └── depth: 0 - │ │ │ ├── opening_loc: (16,2)-(16,3) = "[" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (16,3)-(16,4)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (16,3)-(16,4)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 0 - │ │ │ ├── closing_loc: (16,4)-(16,5) = "]" - │ │ │ └── block: ∅ - │ │ └── @ IndexTargetNode (location: (16,7)-(16,11)) - │ │ ├── flags: attribute_write - │ │ ├── receiver: - │ │ │ @ LocalVariableReadNode (location: (16,7)-(16,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ ├── opening_loc: (16,8)-(16,9) = "[" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (16,9)-(16,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (16,9)-(16,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: (16,10)-(16,11) = "]" - │ │ └── block: ∅ - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: (16,0)-(16,1) = "(" - │ ├── rparen_loc: (16,11)-(16,12) = ")" - │ ├── operator_loc: (16,13)-(16,14) = "=" - │ └── value: - │ @ ArrayNode (location: (16,15)-(16,21)) - │ ├── flags: static_literal - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (16,16)-(16,17)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (16,19)-(16,20)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── opening_loc: (16,15)-(16,16) = "[" - │ └── closing_loc: (16,20)-(16,21) = "]" - ├── @ MultiWriteNode (location: (17,0)-(17,12)) - │ ├── flags: newline - │ ├── lefts: (length: 0) - │ ├── rest: - │ │ @ SplatNode (location: (17,1)-(17,7)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (17,1)-(17,2) = "*" - │ │ └── expression: - │ │ @ CallTargetNode (location: (17,2)-(17,7)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ LocalVariableReadNode (location: (17,2)-(17,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ └── depth: 0 - │ │ ├── call_operator_loc: (17,3)-(17,4) = "." - │ │ ├── name: :foo= - │ │ └── message_loc: (17,4)-(17,7) = "foo" - │ ├── rights: (length: 0) - │ ├── lparen_loc: (17,0)-(17,1) = "(" - │ ├── rparen_loc: (17,7)-(17,8) = ")" - │ ├── operator_loc: (17,9)-(17,10) = "=" - │ └── value: - │ @ IntegerNode (location: (17,11)-(17,12)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ ConstantPathWriteNode (location: (18,0)-(18,13)) - │ ├── flags: newline - │ ├── target: - │ │ @ ConstantPathNode (location: (18,0)-(18,5)) - │ │ ├── flags: ∅ - │ │ ├── parent: ∅ - │ │ ├── name: :Foo - │ │ ├── delimiter_loc: (18,0)-(18,2) = "::" - │ │ └── name_loc: (18,2)-(18,5) = "Foo" - │ ├── operator_loc: (18,6)-(18,7) = "=" - │ └── value: - │ @ ConstantPathNode (location: (18,8)-(18,13)) - │ ├── flags: ∅ - │ ├── parent: ∅ - │ ├── name: :Bar - │ ├── delimiter_loc: (18,8)-(18,10) = "::" - │ └── name_loc: (18,10)-(18,13) = "Bar" - ├── @ ClassVariableWriteNode (location: (19,0)-(19,7)) - │ ├── flags: newline - │ ├── name: :@@a - │ ├── name_loc: (19,0)-(19,3) = "@@a" - │ ├── value: - │ │ @ IntegerNode (location: (19,6)-(19,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (19,4)-(19,5) = "=" - ├── @ InstanceVariableWriteNode (location: (20,0)-(20,6)) - │ ├── flags: newline - │ ├── name: :@a - │ ├── name_loc: (20,0)-(20,2) = "@a" - │ ├── value: - │ │ @ IntegerNode (location: (20,5)-(20,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (20,3)-(20,4) = "=" - ├── @ ConstantWriteNode (location: (21,0)-(21,9)) - │ ├── flags: newline - │ ├── name: :CONST - │ ├── name_loc: (21,0)-(21,5) = "CONST" - │ ├── value: - │ │ @ IntegerNode (location: (21,8)-(21,9)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (21,6)-(21,7) = "=" - ├── @ ConstantPathWriteNode (location: (22,0)-(22,23)) - │ ├── flags: newline - │ ├── target: - │ │ @ ConstantPathNode (location: (22,0)-(22,19)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ ConstantPathNode (location: (22,0)-(22,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parent: - │ │ │ │ @ ConstantReadNode (location: (22,0)-(22,4)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :Name - │ │ │ ├── name: :Spaced - │ │ │ ├── delimiter_loc: (22,4)-(22,6) = "::" - │ │ │ └── name_loc: (22,6)-(22,12) = "Spaced" - │ │ ├── name: :CONST - │ │ ├── delimiter_loc: (22,12)-(22,14) = "::" - │ │ └── name_loc: (22,14)-(22,19) = "CONST" - │ ├── operator_loc: (22,20)-(22,21) = "=" - │ └── value: - │ @ IntegerNode (location: (22,22)-(22,23)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ LocalVariableWriteNode (location: (23,0)-(23,16)) - │ ├── flags: newline - │ ├── name: :a - │ ├── depth: 0 - │ ├── name_loc: (23,0)-(23,1) = "a" - │ ├── value: - │ │ @ ParenthesesNode (location: (23,4)-(23,16)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (23,5)-(23,15)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ MultiWriteNode (location: (23,5)-(23,15)) - │ │ │ ├── flags: newline - │ │ │ ├── lefts: (length: 2) - │ │ │ │ ├── @ LocalVariableTargetNode (location: (23,6)-(23,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :b - │ │ │ │ │ └── depth: 0 - │ │ │ │ └── @ LocalVariableTargetNode (location: (23,9)-(23,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ └── depth: 0 - │ │ │ ├── rest: ∅ - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: (23,5)-(23,6) = "(" - │ │ │ ├── rparen_loc: (23,10)-(23,11) = ")" - │ │ │ ├── operator_loc: (23,12)-(23,13) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (23,14)-(23,15)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── opening_loc: (23,4)-(23,5) = "(" - │ │ └── closing_loc: (23,15)-(23,16) = ")" - │ └── operator_loc: (23,2)-(23,3) = "=" - ├── @ LocalVariableWriteNode (location: (24,0)-(24,5)) - │ ├── flags: newline - │ ├── name: :a - │ ├── depth: 0 - │ ├── name_loc: (24,0)-(24,1) = "a" - │ ├── value: - │ │ @ IntegerNode (location: (24,4)-(24,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (24,2)-(24,3) = "=" - ├── @ LocalVariableWriteNode (location: (25,0)-(25,11)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── depth: 0 - │ ├── name_loc: (25,0)-(25,3) = "foo" - │ ├── value: - │ │ @ CallNode (location: (25,6)-(25,11)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (25,6)-(25,9) = "foo" - │ │ ├── opening_loc: (25,9)-(25,10) = "(" - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: (25,10)-(25,11) = ")" - │ │ └── block: ∅ - │ └── operator_loc: (25,4)-(25,5) = "=" - ├── @ CallNode (location: (26,0)-(26,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (26,0)-(26,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── call_operator_loc: (26,3)-(26,4) = "." - │ ├── name: :[]= - │ ├── message_loc: (26,4)-(26,7) = "[]=" - │ ├── opening_loc: (26,7)-(26,8) = "(" - │ ├── arguments: ∅ - │ ├── closing_loc: (26,8)-(26,9) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (27,0)-(27,13)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (27,0)-(27,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── call_operator_loc: (27,3)-(27,4) = "." - │ ├── name: :[]= - │ ├── message_loc: (27,4)-(27,7) = "[]=" - │ ├── opening_loc: (27,7)-(27,8) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (27,8)-(27,12)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ IntegerNode (location: (27,8)-(27,9)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (27,11)-(27,12)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: (27,12)-(27,13) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (28,0)-(28,11)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (28,0)-(28,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── call_operator_loc: (28,3)-(28,4) = "." - │ ├── name: :[]= - │ ├── message_loc: (28,4)-(28,7) = "[]=" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (28,7)-(28,11)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ TrueNode (location: (28,7)-(28,11)) - │ │ └── flags: static_literal - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (29,0)-(29,19)) - │ ├── flags: newline, attribute_write - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (29,0)-(29,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── name: :[]= - │ ├── message_loc: (29,3)-(29,11) = "[*index]" - │ ├── opening_loc: (29,3)-(29,4) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (29,4)-(29,19)) - │ │ ├── flags: contains_splat - │ │ └── arguments: (length: 2) - │ │ ├── @ SplatNode (location: (29,4)-(29,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (29,4)-(29,5) = "*" - │ │ │ └── expression: - │ │ │ @ CallNode (location: (29,5)-(29,10)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :index - │ │ │ ├── message_loc: (29,5)-(29,10) = "index" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ CallNode (location: (29,14)-(29,19)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :value - │ │ ├── message_loc: (29,14)-(29,19) = "value" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (29,10)-(29,11) = "]" - │ └── block: ∅ - ├── @ CallNode (location: (30,0)-(30,17)) - │ ├── flags: newline, attribute_write - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (30,0)-(30,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── name: :[]= - │ ├── message_loc: (30,3)-(30,9) = "[1..2]" - │ ├── opening_loc: (30,3)-(30,4) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (30,4)-(30,17)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ RangeNode (location: (30,4)-(30,8)) - │ │ │ ├── flags: static_literal - │ │ │ ├── left: - │ │ │ │ @ IntegerNode (location: (30,4)-(30,5)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── right: - │ │ │ │ @ IntegerNode (location: (30,7)-(30,8)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ └── operator_loc: (30,5)-(30,7) = ".." - │ │ └── @ CallNode (location: (30,12)-(30,17)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :value - │ │ ├── message_loc: (30,12)-(30,17) = "value" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (30,8)-(30,9) = "]" - │ └── block: ∅ - ├── @ CallNode (location: (31,0)-(31,9)) - │ ├── flags: newline, attribute_write - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (31,0)-(31,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── name: :[]= - │ ├── message_loc: (31,3)-(31,5) = "[]" - │ ├── opening_loc: (31,3)-(31,4) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (31,8)-(31,9)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (31,8)-(31,9)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: (31,4)-(31,5) = "]" - │ └── block: ∅ - ├── @ CallNode (location: (32,0)-(32,17)) - │ ├── flags: newline, attribute_write - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (32,0)-(32,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── name: :[]= - │ ├── message_loc: (32,3)-(32,9) = "[a, b]" - │ ├── opening_loc: (32,3)-(32,4) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (32,4)-(32,17)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 3) - │ │ ├── @ LocalVariableReadNode (location: (32,4)-(32,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ ├── @ LocalVariableReadNode (location: (32,7)-(32,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ └── depth: 0 - │ │ └── @ CallNode (location: (32,12)-(32,17)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :value - │ │ ├── message_loc: (32,12)-(32,17) = "value" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (32,8)-(32,9) = "]" - │ └── block: ∅ - ├── @ CallNode (location: (33,0)-(33,18)) - │ ├── flags: newline, attribute_write - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (33,0)-(33,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── name: :[]= - │ ├── message_loc: (33,3)-(33,10) = "[index]" - │ ├── opening_loc: (33,3)-(33,4) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (33,4)-(33,18)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (33,4)-(33,9)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :index - │ │ │ ├── message_loc: (33,4)-(33,9) = "index" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ CallNode (location: (33,13)-(33,18)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :value - │ │ ├── message_loc: (33,13)-(33,18) = "value" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (33,9)-(33,10) = "]" - │ └── block: ∅ - ├── @ LocalVariableWriteNode (location: (34,0)-(34,7)) - │ ├── flags: newline - │ ├── name: :x - │ ├── depth: 0 - │ ├── name_loc: (34,0)-(34,1) = "x" - │ ├── value: - │ │ @ StringNode (location: (34,4)-(34,7)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (34,4)-(34,6) = "%(" - │ │ ├── content_loc: (34,6)-(34,6) = "" - │ │ ├── closing_loc: (34,6)-(34,7) = ")" - │ │ └── unescaped: "" - │ └── operator_loc: (34,2)-(34,3) = "=" - ├── @ CallNode (location: (35,0)-(35,7)) - │ ├── flags: newline, attribute_write - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (35,0)-(35,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :x - │ │ └── depth: 0 - │ ├── call_operator_loc: (35,1)-(35,2) = "." - │ ├── name: :x= - │ ├── message_loc: (35,2)-(35,3) = "x" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (35,4)-(35,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (35,4)-(35,7)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (35,4)-(35,6) = "%(" - │ │ ├── content_loc: (35,6)-(35,6) = "" - │ │ ├── closing_loc: (35,6)-(35,7) = ")" - │ │ └── unescaped: "" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (36,0)-(36,12)) - │ ├── flags: newline, attribute_write - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (36,0)-(36,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :x - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── name: :[]= - │ ├── message_loc: (36,1)-(36,6) = "[%()]" - │ ├── opening_loc: (36,1)-(36,2) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (36,2)-(36,12)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ StringNode (location: (36,2)-(36,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (36,2)-(36,4) = "%(" - │ │ │ ├── content_loc: (36,4)-(36,4) = "" - │ │ │ ├── closing_loc: (36,4)-(36,5) = ")" - │ │ │ └── unescaped: "" - │ │ └── @ CallNode (location: (36,9)-(36,12)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (36,9)-(36,12) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (36,5)-(36,6) = "]" - │ └── block: ∅ - ├── @ IndexOrWriteNode (location: (37,0)-(37,14)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (37,0)-(37,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── opening_loc: (37,1)-(37,2) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (37,2)-(37,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (37,2)-(37,5)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (37,2)-(37,4) = "%(" - │ │ ├── content_loc: (37,4)-(37,4) = "" - │ │ ├── closing_loc: (37,4)-(37,5) = ")" - │ │ └── unescaped: "" - │ ├── closing_loc: (37,5)-(37,6) = "]" - │ ├── block: ∅ - │ ├── operator_loc: (37,7)-(37,10) = "||=" - │ └── value: - │ @ CallNode (location: (37,11)-(37,14)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (37,11)-(37,14) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ InstanceVariableOrWriteNode (location: (38,0)-(38,10)) - │ ├── flags: newline - │ ├── name: :@a - │ ├── name_loc: (38,0)-(38,2) = "@a" - │ ├── operator_loc: (38,3)-(38,6) = "||=" - │ └── value: - │ @ StringNode (location: (38,7)-(38,10)) - │ ├── flags: ∅ - │ ├── opening_loc: (38,7)-(38,9) = "%(" - │ ├── content_loc: (38,9)-(38,9) = "" - │ ├── closing_loc: (38,9)-(38,10) = ")" - │ └── unescaped: "" - ├── @ LocalVariableWriteNode (location: (39,0)-(39,14)) - │ ├── flags: newline - │ ├── name: :x - │ ├── depth: 0 - │ ├── name_loc: (39,0)-(39,1) = "x" - │ ├── value: - │ │ @ InterpolatedStringNode (location: (39,4)-(39,14)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (39,4)-(39,14) = "<<-HEREDOC" - │ │ ├── parts: (length: 3) - │ │ │ ├── @ StringNode (location: (40,0)-(40,2)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (40,0)-(40,2) = " " - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: " " - │ │ │ ├── @ EmbeddedStatementsNode (location: (40,2)-(40,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (40,2)-(40,4) = "\#{" - │ │ │ │ ├── statements: ∅ - │ │ │ │ └── closing_loc: (40,4)-(40,5) = "}" - │ │ │ └── @ StringNode (location: (40,5)-(41,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (40,5)-(41,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ └── closing_loc: (41,0)-(42,0) = "HEREDOC\n" - │ └── operator_loc: (39,2)-(39,3) = "=" - ├── @ CallNode (location: (42,0)-(42,14)) - │ ├── flags: newline, attribute_write - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (42,0)-(42,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :x - │ │ └── depth: 0 - │ ├── call_operator_loc: (42,1)-(42,2) = "." - │ ├── name: :x= - │ ├── message_loc: (42,2)-(42,3) = "x" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (42,4)-(42,14)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (42,4)-(42,14)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (42,4)-(42,14) = "<<-HEREDOC" - │ │ ├── parts: (length: 3) - │ │ │ ├── @ StringNode (location: (43,0)-(43,2)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (43,0)-(43,2) = " " - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: " " - │ │ │ ├── @ EmbeddedStatementsNode (location: (43,2)-(43,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (43,2)-(43,4) = "\#{" - │ │ │ │ ├── statements: ∅ - │ │ │ │ └── closing_loc: (43,4)-(43,5) = "}" - │ │ │ └── @ StringNode (location: (43,5)-(44,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (43,5)-(44,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ └── closing_loc: (44,0)-(45,0) = "HEREDOC\n" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (45,0)-(45,16)) - │ ├── flags: newline, attribute_write - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (45,0)-(45,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :x - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── name: :[]= - │ ├── message_loc: (45,1)-(45,3) = "[]" - │ ├── opening_loc: (45,1)-(45,2) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (45,6)-(45,16)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (45,6)-(45,16)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (45,6)-(45,16) = "<<-HEREDOC" - │ │ ├── parts: (length: 3) - │ │ │ ├── @ StringNode (location: (46,0)-(46,2)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (46,0)-(46,2) = " " - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: " " - │ │ │ ├── @ EmbeddedStatementsNode (location: (46,2)-(46,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (46,2)-(46,4) = "\#{" - │ │ │ │ ├── statements: ∅ - │ │ │ │ └── closing_loc: (46,4)-(46,5) = "}" - │ │ │ └── @ StringNode (location: (46,5)-(47,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (46,5)-(47,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ └── closing_loc: (47,0)-(48,0) = "HEREDOC\n" - │ ├── closing_loc: (45,2)-(45,3) = "]" - │ └── block: ∅ - ├── @ IndexOrWriteNode (location: (48,0)-(48,21)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (48,0)-(48,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── opening_loc: (48,1)-(48,2) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (48,2)-(48,12)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (48,2)-(48,12)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (48,2)-(48,12) = "<<-HEREDOC" - │ │ ├── parts: (length: 3) - │ │ │ ├── @ StringNode (location: (49,0)-(49,2)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (49,0)-(49,2) = " " - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: " " - │ │ │ ├── @ EmbeddedStatementsNode (location: (49,2)-(49,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (49,2)-(49,4) = "\#{" - │ │ │ │ ├── statements: ∅ - │ │ │ │ └── closing_loc: (49,4)-(49,5) = "}" - │ │ │ └── @ StringNode (location: (49,5)-(50,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (49,5)-(50,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ └── closing_loc: (50,0)-(51,0) = "HEREDOC\n" - │ ├── closing_loc: (48,12)-(48,13) = "]" - │ ├── block: ∅ - │ ├── operator_loc: (48,14)-(48,17) = "||=" - │ └── value: - │ @ CallNode (location: (48,18)-(48,21)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (48,18)-(48,21) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ InstanceVariableOrWriteNode (location: (51,0)-(51,17)) - ├── flags: newline - ├── name: :@a - ├── name_loc: (51,0)-(51,2) = "@a" - ├── operator_loc: (51,3)-(51,6) = "||=" - └── value: - @ InterpolatedStringNode (location: (51,7)-(51,17)) - ├── flags: ∅ - ├── opening_loc: (51,7)-(51,17) = "<<-HEREDOC" - ├── parts: (length: 3) - │ ├── @ StringNode (location: (52,0)-(52,2)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (52,0)-(52,2) = " " - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: " " - │ ├── @ EmbeddedStatementsNode (location: (52,2)-(52,5)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (52,2)-(52,4) = "\#{" - │ │ ├── statements: ∅ - │ │ └── closing_loc: (52,4)-(52,5) = "}" - │ └── @ StringNode (location: (52,5)-(53,0)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (52,5)-(53,0) = "\n" - │ ├── closing_loc: ∅ - │ └── unescaped: "\n" - └── closing_loc: (53,0)-(54,0) = "HEREDOC\n" diff --git a/test/prism/snapshots/unparser/corpus/literal/block.txt b/test/prism/snapshots/unparser/corpus/literal/block.txt deleted file mode 100644 index 4320ede87b..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/block.txt +++ /dev/null @@ -1,1541 +0,0 @@ -@ ProgramNode (location: (1,0)-(96,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(96,1)) - ├── flags: ∅ - └── body: (length: 30) - ├── @ CallNode (location: (1,0)-(2,1)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,0)-(1,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (1,4)-(2,1)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (1,4)-(1,5) = "{" - │ └── closing_loc: (2,0)-(2,1) = "}" - ├── @ CallNode (location: (3,0)-(4,1)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (3,0)-(3,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (3,4)-(4,1)) - │ ├── flags: ∅ - │ ├── locals: [:a] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (3,6)-(3,9)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (3,7)-(3,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (3,7)-(3,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (3,6)-(3,7) = "|" - │ │ └── closing_loc: (3,8)-(3,9) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (3,4)-(3,5) = "{" - │ └── closing_loc: (4,0)-(4,1) = "}" - ├── @ CallNode (location: (5,0)-(6,1)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (5,0)-(5,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (5,4)-(6,1)) - │ ├── flags: ∅ - │ ├── locals: [:a] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (5,6)-(5,10)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (5,7)-(5,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (5,7)-(5,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ ImplicitRestNode (location: (5,8)-(5,9)) - │ │ │ │ └── flags: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (5,6)-(5,7) = "|" - │ │ └── closing_loc: (5,9)-(5,10) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (5,4)-(5,5) = "{" - │ └── closing_loc: (6,0)-(6,1) = "}" - ├── @ CallNode (location: (7,0)-(8,1)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (7,0)-(7,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (7,4)-(8,1)) - │ ├── flags: ∅ - │ ├── locals: [:a, :x] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (7,6)-(7,13)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (7,7)-(7,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (7,7)-(7,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ ImplicitRestNode (location: (7,8)-(7,9)) - │ │ │ │ └── flags: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 1) - │ │ │ └── @ BlockLocalVariableNode (location: (7,11)-(7,12)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :x - │ │ ├── opening_loc: (7,6)-(7,7) = "|" - │ │ └── closing_loc: (7,12)-(7,13) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (7,4)-(7,5) = "{" - │ └── closing_loc: (8,0)-(8,1) = "}" - ├── @ CallNode (location: (9,0)-(10,1)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (9,0)-(9,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (9,4)-(10,1)) - │ ├── flags: ∅ - │ ├── locals: [:a, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (9,6)-(9,12)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (9,7)-(9,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 2) - │ │ │ │ ├── @ RequiredParameterNode (location: (9,7)-(9,8)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :a - │ │ │ │ └── @ RequiredParameterNode (location: (9,10)-(9,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :b - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (9,6)-(9,7) = "|" - │ │ └── closing_loc: (9,11)-(9,12) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (9,4)-(9,5) = "{" - │ └── closing_loc: (10,0)-(10,1) = "}" - ├── @ CallNode (location: (11,0)-(13,1)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (11,0)-(11,3) = "foo" - │ ├── opening_loc: (11,3)-(11,4) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (11,4)-(11,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (11,4)-(11,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: (11,5)-(11,6) = ")" - │ └── block: - │ @ BlockNode (location: (11,7)-(13,1)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (12,2)-(12,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ NilNode (location: (12,2)-(12,5)) - │ │ └── flags: newline, static_literal - │ ├── opening_loc: (11,7)-(11,8) = "{" - │ └── closing_loc: (13,0)-(13,1) = "}" - ├── @ CallNode (location: (14,0)-(16,1)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (14,0)-(14,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (14,4)-(16,1)) - │ ├── flags: ∅ - │ ├── locals: [:a, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (14,6)-(14,13)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (14,7)-(14,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (14,7)-(14,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ RestParameterNode (location: (14,10)-(14,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── name_loc: (14,11)-(14,12) = "b" - │ │ │ │ └── operator_loc: (14,10)-(14,11) = "*" - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (14,6)-(14,7) = "|" - │ │ └── closing_loc: (14,12)-(14,13) = "|" - │ ├── body: - │ │ @ StatementsNode (location: (15,2)-(15,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ NilNode (location: (15,2)-(15,5)) - │ │ └── flags: newline, static_literal - │ ├── opening_loc: (14,4)-(14,5) = "{" - │ └── closing_loc: (16,0)-(16,1) = "}" - ├── @ CallNode (location: (17,0)-(19,1)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (17,0)-(17,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (17,4)-(19,1)) - │ ├── flags: ∅ - │ ├── locals: [:a] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (17,6)-(17,12)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (17,7)-(17,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (17,7)-(17,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ RestParameterNode (location: (17,10)-(17,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: ∅ - │ │ │ │ ├── name_loc: ∅ - │ │ │ │ └── operator_loc: (17,10)-(17,11) = "*" - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (17,6)-(17,7) = "|" - │ │ └── closing_loc: (17,11)-(17,12) = "|" - │ ├── body: - │ │ @ StatementsNode (location: (18,2)-(18,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ NilNode (location: (18,2)-(18,5)) - │ │ └── flags: newline, static_literal - │ ├── opening_loc: (17,4)-(17,5) = "{" - │ └── closing_loc: (19,0)-(19,1) = "}" - ├── @ CallNode (location: (20,0)-(22,1)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (20,0)-(20,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (20,4)-(22,1)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (21,2)-(21,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (21,2)-(21,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (21,2)-(21,5) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (20,4)-(20,5) = "{" - │ └── closing_loc: (22,0)-(22,1) = "}" - ├── @ CallNode (location: (23,0)-(25,1)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (23,0)-(23,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (23,0)-(23,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (23,3)-(23,4) = "." - │ ├── name: :bar - │ ├── message_loc: (23,4)-(23,7) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (23,8)-(25,1)) - │ ├── flags: ∅ - │ ├── locals: [:a, :b, :c] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (23,10)-(23,21)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (23,11)-(23,20)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 2) - │ │ │ │ ├── @ MultiTargetNode (location: (23,11)-(23,17)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── lefts: (length: 2) - │ │ │ │ │ │ ├── @ RequiredParameterNode (location: (23,12)-(23,13)) - │ │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ │ └── name: :a - │ │ │ │ │ │ └── @ RequiredParameterNode (location: (23,15)-(23,16)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── name: :b - │ │ │ │ │ ├── rest: ∅ - │ │ │ │ │ ├── rights: (length: 0) - │ │ │ │ │ ├── lparen_loc: (23,11)-(23,12) = "(" - │ │ │ │ │ └── rparen_loc: (23,16)-(23,17) = ")" - │ │ │ │ └── @ RequiredParameterNode (location: (23,19)-(23,20)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :c - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (23,10)-(23,11) = "|" - │ │ └── closing_loc: (23,20)-(23,21) = "|" - │ ├── body: - │ │ @ StatementsNode (location: (24,2)-(24,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (24,2)-(24,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :d - │ │ ├── message_loc: (24,2)-(24,3) = "d" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (23,8)-(23,9) = "{" - │ └── closing_loc: (25,0)-(25,1) = "}" - ├── @ CallNode (location: (26,0)-(27,1)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (26,0)-(26,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (26,0)-(26,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (26,3)-(26,4) = "." - │ ├── name: :bar - │ ├── message_loc: (26,4)-(26,7) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (26,8)-(27,1)) - │ ├── flags: ∅ - │ ├── locals: [:a, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (26,10)-(26,17)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (26,11)-(26,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ RestParameterNode (location: (26,11)-(26,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ ├── name_loc: (26,12)-(26,13) = "a" - │ │ │ │ └── operator_loc: (26,11)-(26,12) = "*" - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 1) - │ │ │ └── @ BlockLocalVariableNode (location: (26,15)-(26,16)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :b - │ │ ├── opening_loc: (26,10)-(26,11) = "|" - │ │ └── closing_loc: (26,16)-(26,17) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (26,8)-(26,9) = "{" - │ └── closing_loc: (27,0)-(27,1) = "}" - ├── @ CallNode (location: (28,0)-(29,1)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (28,0)-(28,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (28,0)-(28,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (28,3)-(28,4) = "." - │ ├── name: :bar - │ ├── message_loc: (28,4)-(28,7) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (28,8)-(29,1)) - │ ├── flags: ∅ - │ ├── locals: [:a, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (28,10)-(28,16)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (28,11)-(28,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (28,11)-(28,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 1) - │ │ │ └── @ BlockLocalVariableNode (location: (28,14)-(28,15)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :b - │ │ ├── opening_loc: (28,10)-(28,11) = "|" - │ │ └── closing_loc: (28,15)-(28,16) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (28,8)-(28,9) = "{" - │ └── closing_loc: (29,0)-(29,1) = "}" - ├── @ CallNode (location: (30,0)-(31,1)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (30,0)-(30,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (30,0)-(30,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (30,3)-(30,4) = "." - │ ├── name: :bar - │ ├── message_loc: (30,4)-(30,7) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (30,8)-(31,1)) - │ ├── flags: ∅ - │ ├── locals: [:a, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (30,10)-(30,18)) - │ │ ├── flags: ∅ - │ │ ├── parameters: ∅ - │ │ ├── locals: (length: 2) - │ │ │ ├── @ BlockLocalVariableNode (location: (30,13)-(30,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ └── @ BlockLocalVariableNode (location: (30,16)-(30,17)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :b - │ │ ├── opening_loc: (30,10)-(30,11) = "|" - │ │ └── closing_loc: (30,17)-(30,18) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (30,8)-(30,9) = "{" - │ └── closing_loc: (31,0)-(31,1) = "}" - ├── @ CallNode (location: (32,0)-(34,1)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (32,0)-(32,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (32,0)-(32,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (32,3)-(32,4) = "." - │ ├── name: :bar - │ ├── message_loc: (32,4)-(32,7) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (32,8)-(34,1)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (32,10)-(32,13)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (32,11)-(32,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ RestParameterNode (location: (32,11)-(32,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: ∅ - │ │ │ │ ├── name_loc: ∅ - │ │ │ │ └── operator_loc: (32,11)-(32,12) = "*" - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (32,10)-(32,11) = "|" - │ │ └── closing_loc: (32,12)-(32,13) = "|" - │ ├── body: - │ │ @ StatementsNode (location: (33,2)-(33,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (33,2)-(33,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :d - │ │ ├── message_loc: (33,2)-(33,3) = "d" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (32,8)-(32,9) = "{" - │ └── closing_loc: (34,0)-(34,1) = "}" - ├── @ CallNode (location: (35,0)-(37,1)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (35,0)-(35,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (35,0)-(35,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (35,3)-(35,4) = "." - │ ├── name: :bar - │ ├── message_loc: (35,4)-(35,7) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (35,8)-(37,1)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (35,10)-(35,15)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (35,11)-(35,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ MultiTargetNode (location: (35,11)-(35,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── lefts: (length: 0) - │ │ │ │ ├── rest: - │ │ │ │ │ @ SplatNode (location: (35,12)-(35,13)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── operator_loc: (35,12)-(35,13) = "*" - │ │ │ │ │ └── expression: ∅ - │ │ │ │ ├── rights: (length: 0) - │ │ │ │ ├── lparen_loc: (35,11)-(35,12) = "(" - │ │ │ │ └── rparen_loc: (35,13)-(35,14) = ")" - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (35,10)-(35,11) = "|" - │ │ └── closing_loc: (35,14)-(35,15) = "|" - │ ├── body: - │ │ @ StatementsNode (location: (36,2)-(36,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (36,2)-(36,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :d - │ │ ├── message_loc: (36,2)-(36,3) = "d" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (35,8)-(35,9) = "{" - │ └── closing_loc: (37,0)-(37,1) = "}" - ├── @ CallNode (location: (38,0)-(40,1)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (38,0)-(38,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (38,0)-(38,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (38,3)-(38,4) = "." - │ ├── name: :bar - │ ├── message_loc: (38,4)-(38,7) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (38,8)-(40,1)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (38,10)-(38,17)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (38,11)-(38,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ MultiTargetNode (location: (38,11)-(38,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── lefts: (length: 1) - │ │ │ │ │ └── @ MultiTargetNode (location: (38,12)-(38,15)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── lefts: (length: 0) - │ │ │ │ │ ├── rest: - │ │ │ │ │ │ @ SplatNode (location: (38,13)-(38,14)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ ├── operator_loc: (38,13)-(38,14) = "*" - │ │ │ │ │ │ └── expression: ∅ - │ │ │ │ │ ├── rights: (length: 0) - │ │ │ │ │ ├── lparen_loc: (38,12)-(38,13) = "(" - │ │ │ │ │ └── rparen_loc: (38,14)-(38,15) = ")" - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── rights: (length: 0) - │ │ │ │ ├── lparen_loc: (38,11)-(38,12) = "(" - │ │ │ │ └── rparen_loc: (38,15)-(38,16) = ")" - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (38,10)-(38,11) = "|" - │ │ └── closing_loc: (38,16)-(38,17) = "|" - │ ├── body: - │ │ @ StatementsNode (location: (39,2)-(39,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (39,2)-(39,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :d - │ │ ├── message_loc: (39,2)-(39,3) = "d" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (38,8)-(38,9) = "{" - │ └── closing_loc: (40,0)-(40,1) = "}" - ├── @ CallNode (location: (41,0)-(43,1)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (41,0)-(41,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (41,0)-(41,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (41,3)-(41,4) = "." - │ ├── name: :bar - │ ├── message_loc: (41,4)-(41,7) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (41,8)-(43,1)) - │ ├── flags: ∅ - │ ├── locals: [:a] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (41,10)-(41,20)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (41,11)-(41,19)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ MultiTargetNode (location: (41,11)-(41,19)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── lefts: (length: 2) - │ │ │ │ │ ├── @ RequiredParameterNode (location: (41,12)-(41,13)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── name: :a - │ │ │ │ │ └── @ MultiTargetNode (location: (41,15)-(41,18)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── lefts: (length: 0) - │ │ │ │ │ ├── rest: - │ │ │ │ │ │ @ SplatNode (location: (41,16)-(41,17)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ ├── operator_loc: (41,16)-(41,17) = "*" - │ │ │ │ │ │ └── expression: ∅ - │ │ │ │ │ ├── rights: (length: 0) - │ │ │ │ │ ├── lparen_loc: (41,15)-(41,16) = "(" - │ │ │ │ │ └── rparen_loc: (41,17)-(41,18) = ")" - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── rights: (length: 0) - │ │ │ │ ├── lparen_loc: (41,11)-(41,12) = "(" - │ │ │ │ └── rparen_loc: (41,18)-(41,19) = ")" - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (41,10)-(41,11) = "|" - │ │ └── closing_loc: (41,19)-(41,20) = "|" - │ ├── body: - │ │ @ StatementsNode (location: (42,2)-(42,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (42,2)-(42,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :d - │ │ ├── message_loc: (42,2)-(42,3) = "d" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (41,8)-(41,9) = "{" - │ └── closing_loc: (43,0)-(43,1) = "}" - ├── @ CallNode (location: (44,0)-(46,1)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (44,0)-(44,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (44,0)-(44,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (44,3)-(44,4) = "." - │ ├── name: :bar - │ ├── message_loc: (44,4)-(44,7) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (44,8)-(46,1)) - │ ├── flags: ∅ - │ ├── locals: [:a, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (44,10)-(44,18)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (44,11)-(44,17)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ MultiTargetNode (location: (44,11)-(44,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── lefts: (length: 2) - │ │ │ │ │ ├── @ RequiredParameterNode (location: (44,12)-(44,13)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── name: :a - │ │ │ │ │ └── @ RequiredParameterNode (location: (44,15)-(44,16)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :b - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── rights: (length: 0) - │ │ │ │ ├── lparen_loc: (44,11)-(44,12) = "(" - │ │ │ │ └── rparen_loc: (44,16)-(44,17) = ")" - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (44,10)-(44,11) = "|" - │ │ └── closing_loc: (44,17)-(44,18) = "|" - │ ├── body: - │ │ @ StatementsNode (location: (45,2)-(45,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (45,2)-(45,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :d - │ │ ├── message_loc: (45,2)-(45,3) = "d" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (44,8)-(44,9) = "{" - │ └── closing_loc: (46,0)-(46,1) = "}" - ├── @ CallNode (location: (47,0)-(48,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (47,0)-(48,1)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (47,0)-(47,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (47,0)-(47,3) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (47,3)-(47,4) = "." - │ │ ├── name: :bar - │ │ ├── message_loc: (47,4)-(47,7) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (47,8)-(48,1)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (47,8)-(47,9) = "{" - │ │ └── closing_loc: (48,0)-(48,1) = "}" - │ ├── call_operator_loc: (48,1)-(48,2) = "." - │ ├── name: :baz - │ ├── message_loc: (48,2)-(48,5) = "baz" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (49,0)-(51,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (49,0)-(49,1) = "m" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (49,2)-(51,3)) - │ ├── flags: ∅ - │ ├── locals: [:e] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ BeginNode (location: (49,2)-(51,3)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── rescue_clause: - │ │ │ @ RescueNode (location: (50,0)-(50,21)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (50,0)-(50,6) = "rescue" - │ │ │ ├── exceptions: (length: 1) - │ │ │ │ └── @ ConstantReadNode (location: (50,7)-(50,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :Exception - │ │ │ ├── operator_loc: (50,17)-(50,19) = "=>" - │ │ │ ├── reference: - │ │ │ │ @ LocalVariableTargetNode (location: (50,20)-(50,21)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :e - │ │ │ │ └── depth: 0 - │ │ │ ├── statements: ∅ - │ │ │ └── subsequent: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: ∅ - │ │ └── end_keyword_loc: (51,0)-(51,3) = "end" - │ ├── opening_loc: (49,2)-(49,4) = "do" - │ └── closing_loc: (51,0)-(51,3) = "end" - ├── @ CallNode (location: (52,0)-(56,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (52,0)-(52,1) = "m" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (52,2)-(56,3)) - │ ├── flags: ∅ - │ ├── locals: [:bar] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ BeginNode (location: (52,2)-(56,3)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (53,2)-(53,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (53,2)-(53,5)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (53,2)-(53,5) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── rescue_clause: - │ │ │ @ RescueNode (location: (54,0)-(55,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (54,0)-(54,6) = "rescue" - │ │ │ ├── exceptions: (length: 1) - │ │ │ │ └── @ ConstantReadNode (location: (54,7)-(54,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :Exception - │ │ │ ├── operator_loc: (54,17)-(54,19) = "=>" - │ │ │ ├── reference: - │ │ │ │ @ LocalVariableTargetNode (location: (54,20)-(54,23)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ └── depth: 0 - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (55,2)-(55,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ LocalVariableReadNode (location: (55,2)-(55,5)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── name: :bar - │ │ │ │ └── depth: 0 - │ │ │ └── subsequent: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: ∅ - │ │ └── end_keyword_loc: (56,0)-(56,3) = "end" - │ ├── opening_loc: (52,2)-(52,4) = "do" - │ └── closing_loc: (56,0)-(56,3) = "end" - ├── @ CallNode (location: (57,0)-(61,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (57,0)-(57,1) = "m" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (57,2)-(61,3)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ BeginNode (location: (57,2)-(61,3)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (58,2)-(58,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (58,2)-(58,5)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (58,2)-(58,5) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── rescue_clause: - │ │ │ @ RescueNode (location: (59,0)-(60,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (59,0)-(59,6) = "rescue" - │ │ │ ├── exceptions: (length: 2) - │ │ │ │ ├── @ ConstantReadNode (location: (59,7)-(59,16)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :SomeError - │ │ │ │ └── @ SplatNode (location: (59,18)-(59,22)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (59,18)-(59,19) = "*" - │ │ │ │ └── expression: - │ │ │ │ @ CallNode (location: (59,19)-(59,22)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (59,19)-(59,22) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── operator_loc: ∅ - │ │ │ ├── reference: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (60,2)-(60,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (60,2)-(60,5)) - │ │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ ├── message_loc: (60,2)-(60,5) = "baz" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── subsequent: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: ∅ - │ │ └── end_keyword_loc: (61,0)-(61,3) = "end" - │ ├── opening_loc: (57,2)-(57,4) = "do" - │ └── closing_loc: (61,0)-(61,3) = "end" - ├── @ CallNode (location: (62,0)-(66,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (62,0)-(62,1) = "m" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (62,2)-(66,3)) - │ ├── flags: ∅ - │ ├── locals: [:exception] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ BeginNode (location: (62,2)-(66,3)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (63,2)-(63,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (63,2)-(63,5)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (63,2)-(63,5) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── rescue_clause: - │ │ │ @ RescueNode (location: (64,0)-(65,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (64,0)-(64,6) = "rescue" - │ │ │ ├── exceptions: (length: 2) - │ │ │ │ ├── @ ConstantReadNode (location: (64,7)-(64,16)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :SomeError - │ │ │ │ └── @ SplatNode (location: (64,18)-(64,22)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (64,18)-(64,19) = "*" - │ │ │ │ └── expression: - │ │ │ │ @ CallNode (location: (64,19)-(64,22)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (64,19)-(64,22) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── operator_loc: (64,23)-(64,25) = "=>" - │ │ │ ├── reference: - │ │ │ │ @ LocalVariableTargetNode (location: (64,26)-(64,35)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :exception - │ │ │ │ └── depth: 0 - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (65,2)-(65,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (65,2)-(65,5)) - │ │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ ├── message_loc: (65,2)-(65,5) = "baz" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── subsequent: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: ∅ - │ │ └── end_keyword_loc: (66,0)-(66,3) = "end" - │ ├── opening_loc: (62,2)-(62,4) = "do" - │ └── closing_loc: (66,0)-(66,3) = "end" - ├── @ CallNode (location: (67,0)-(71,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (67,0)-(67,1) = "m" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (67,2)-(71,3)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ BeginNode (location: (67,2)-(71,3)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (68,2)-(68,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (68,2)-(68,5)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (68,2)-(68,5) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── rescue_clause: - │ │ │ @ RescueNode (location: (69,0)-(70,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (69,0)-(69,6) = "rescue" - │ │ │ ├── exceptions: (length: 1) - │ │ │ │ └── @ SplatNode (location: (69,7)-(69,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (69,7)-(69,8) = "*" - │ │ │ │ └── expression: - │ │ │ │ @ CallNode (location: (69,8)-(69,11)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (69,8)-(69,11) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── operator_loc: ∅ - │ │ │ ├── reference: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (70,2)-(70,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (70,2)-(70,5)) - │ │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ ├── message_loc: (70,2)-(70,5) = "baz" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── subsequent: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: ∅ - │ │ └── end_keyword_loc: (71,0)-(71,3) = "end" - │ ├── opening_loc: (67,2)-(67,4) = "do" - │ └── closing_loc: (71,0)-(71,3) = "end" - ├── @ CallNode (location: (72,0)-(75,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (72,0)-(72,1) = "m" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (72,2)-(75,3)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ BeginNode (location: (72,2)-(75,3)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (73,2)-(73,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (73,2)-(73,5)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (73,2)-(73,5) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── rescue_clause: - │ │ │ @ RescueNode (location: (74,0)-(74,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (74,0)-(74,6) = "rescue" - │ │ │ ├── exceptions: (length: 1) - │ │ │ │ └── @ ConstantReadNode (location: (74,7)-(74,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :LoadError - │ │ │ ├── operator_loc: ∅ - │ │ │ ├── reference: ∅ - │ │ │ ├── statements: ∅ - │ │ │ └── subsequent: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: ∅ - │ │ └── end_keyword_loc: (75,0)-(75,3) = "end" - │ ├── opening_loc: (72,2)-(72,4) = "do" - │ └── closing_loc: (75,0)-(75,3) = "end" - ├── @ CallNode (location: (76,0)-(81,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (76,0)-(76,1) = "m" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (76,2)-(81,3)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ BeginNode (location: (76,2)-(81,3)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (77,2)-(77,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (77,2)-(77,5)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (77,2)-(77,5) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── rescue_clause: - │ │ │ @ RescueNode (location: (78,0)-(78,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (78,0)-(78,6) = "rescue" - │ │ │ ├── exceptions: (length: 0) - │ │ │ ├── operator_loc: ∅ - │ │ │ ├── reference: ∅ - │ │ │ ├── statements: ∅ - │ │ │ └── subsequent: ∅ - │ │ ├── else_clause: - │ │ │ @ ElseNode (location: (79,0)-(81,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── else_keyword_loc: (79,0)-(79,4) = "else" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (80,2)-(80,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (80,2)-(80,5)) - │ │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ ├── message_loc: (80,2)-(80,5) = "baz" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── end_keyword_loc: (81,0)-(81,3) = "end" - │ │ ├── ensure_clause: ∅ - │ │ └── end_keyword_loc: (81,0)-(81,3) = "end" - │ ├── opening_loc: (76,2)-(76,4) = "do" - │ └── closing_loc: (81,0)-(81,3) = "end" - ├── @ CallNode (location: (82,0)-(86,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (82,0)-(82,1) = "m" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (82,2)-(86,3)) - │ ├── flags: ∅ - │ ├── locals: [:exception] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ BeginNode (location: (82,2)-(86,3)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (83,2)-(83,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (83,2)-(83,5)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (83,2)-(83,5) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── rescue_clause: - │ │ │ @ RescueNode (location: (84,0)-(85,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (84,0)-(84,6) = "rescue" - │ │ │ ├── exceptions: (length: 1) - │ │ │ │ └── @ SplatNode (location: (84,7)-(84,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (84,7)-(84,8) = "*" - │ │ │ │ └── expression: - │ │ │ │ @ CallNode (location: (84,8)-(84,11)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (84,8)-(84,11) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── operator_loc: (84,12)-(84,14) = "=>" - │ │ │ ├── reference: - │ │ │ │ @ LocalVariableTargetNode (location: (84,15)-(84,24)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :exception - │ │ │ │ └── depth: 0 - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (85,2)-(85,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (85,2)-(85,5)) - │ │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ ├── message_loc: (85,2)-(85,5) = "baz" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── subsequent: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: ∅ - │ │ └── end_keyword_loc: (86,0)-(86,3) = "end" - │ ├── opening_loc: (82,2)-(82,4) = "do" - │ └── closing_loc: (86,0)-(86,3) = "end" - ├── @ CallNode (location: (87,0)-(89,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (87,0)-(87,1) = "m" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (87,2)-(89,3)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ BeginNode (location: (87,2)-(89,3)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── rescue_clause: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: - │ │ │ @ EnsureNode (location: (88,0)-(89,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── ensure_keyword_loc: (88,0)-(88,6) = "ensure" - │ │ │ ├── statements: ∅ - │ │ │ └── end_keyword_loc: (89,0)-(89,3) = "end" - │ │ └── end_keyword_loc: (89,0)-(89,3) = "end" - │ ├── opening_loc: (87,2)-(87,4) = "do" - │ └── closing_loc: (89,0)-(89,3) = "end" - ├── @ CallNode (location: (90,0)-(93,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (90,0)-(90,1) = "m" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (90,2)-(93,3)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ BeginNode (location: (90,2)-(93,3)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── rescue_clause: - │ │ │ @ RescueNode (location: (91,0)-(91,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (91,0)-(91,6) = "rescue" - │ │ │ ├── exceptions: (length: 0) - │ │ │ ├── operator_loc: ∅ - │ │ │ ├── reference: ∅ - │ │ │ ├── statements: ∅ - │ │ │ └── subsequent: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: - │ │ │ @ EnsureNode (location: (92,0)-(93,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── ensure_keyword_loc: (92,0)-(92,6) = "ensure" - │ │ │ ├── statements: ∅ - │ │ │ └── end_keyword_loc: (93,0)-(93,3) = "end" - │ │ └── end_keyword_loc: (93,0)-(93,3) = "end" - │ ├── opening_loc: (90,2)-(90,4) = "do" - │ └── closing_loc: (93,0)-(93,3) = "end" - └── @ CallNode (location: (94,0)-(96,1)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :bar - ├── message_loc: (94,0)-(94,3) = "bar" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (94,4)-(96,1)) - ├── flags: ∅ - ├── locals: [:_1, :_2] - ├── parameters: - │ @ NumberedParametersNode (location: (94,4)-(96,1)) - │ ├── flags: ∅ - │ └── maximum: 2 - ├── body: - │ @ StatementsNode (location: (95,2)-(95,9)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (95,2)-(95,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (95,2)-(95,4)) - │ │ ├── flags: ∅ - │ │ ├── name: :_1 - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (95,5)-(95,6) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (95,7)-(95,9)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (95,7)-(95,9)) - │ │ ├── flags: ∅ - │ │ ├── name: :_2 - │ │ └── depth: 0 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── opening_loc: (94,4)-(94,5) = "{" - └── closing_loc: (96,0)-(96,1) = "}" diff --git a/test/prism/snapshots/unparser/corpus/literal/case.txt b/test/prism/snapshots/unparser/corpus/literal/case.txt deleted file mode 100644 index 5e831cc6c3..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/case.txt +++ /dev/null @@ -1,480 +0,0 @@ -@ ProgramNode (location: (1,0)-(37,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(37,3)) - ├── flags: ∅ - └── body: (length: 8) - ├── @ CaseNode (location: (1,0)-(6,3)) - │ ├── flags: newline - │ ├── predicate: ∅ - │ ├── conditions: (length: 2) - │ │ ├── @ WhenNode (location: (2,0)-(3,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (2,0)-(2,4) = "when" - │ │ │ ├── conditions: (length: 1) - │ │ │ │ └── @ CallNode (location: (2,5)-(2,8)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (2,5)-(2,8) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ └── statements: - │ │ │ @ StatementsNode (location: (3,2)-(3,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (3,2)-(3,5)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (3,2)-(3,5) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ WhenNode (location: (4,0)-(5,5)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (4,0)-(4,4) = "when" - │ │ ├── conditions: (length: 1) - │ │ │ └── @ CallNode (location: (4,5)-(4,8)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (4,5)-(4,8) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── then_keyword_loc: ∅ - │ │ └── statements: - │ │ @ StatementsNode (location: (5,2)-(5,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (5,2)-(5,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (5,2)-(5,5) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (1,0)-(1,4) = "case" - │ └── end_keyword_loc: (6,0)-(6,3) = "end" - ├── @ CaseNode (location: (7,0)-(11,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (7,5)-(7,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (7,5)-(7,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 2) - │ │ ├── @ WhenNode (location: (8,0)-(8,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (8,0)-(8,4) = "when" - │ │ │ ├── conditions: (length: 1) - │ │ │ │ └── @ CallNode (location: (8,5)-(8,8)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (8,5)-(8,8) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ └── statements: ∅ - │ │ └── @ WhenNode (location: (9,0)-(10,5)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (9,0)-(9,4) = "when" - │ │ ├── conditions: (length: 1) - │ │ │ └── @ CallNode (location: (9,5)-(9,8)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (9,5)-(9,8) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── then_keyword_loc: ∅ - │ │ └── statements: - │ │ @ StatementsNode (location: (10,2)-(10,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (10,2)-(10,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (10,2)-(10,5) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (7,0)-(7,4) = "case" - │ └── end_keyword_loc: (11,0)-(11,3) = "end" - ├── @ CaseNode (location: (12,0)-(17,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (12,5)-(12,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (12,5)-(12,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 2) - │ │ ├── @ WhenNode (location: (13,0)-(14,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (13,0)-(13,4) = "when" - │ │ │ ├── conditions: (length: 1) - │ │ │ │ └── @ CallNode (location: (13,5)-(13,8)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (13,5)-(13,8) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ └── statements: - │ │ │ @ StatementsNode (location: (14,2)-(14,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (14,2)-(14,5)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (14,2)-(14,5) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ WhenNode (location: (15,0)-(16,5)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (15,0)-(15,4) = "when" - │ │ ├── conditions: (length: 1) - │ │ │ └── @ CallNode (location: (15,5)-(15,8)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (15,5)-(15,8) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── then_keyword_loc: ∅ - │ │ └── statements: - │ │ @ StatementsNode (location: (16,2)-(16,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (16,2)-(16,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (16,2)-(16,5) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (12,0)-(12,4) = "case" - │ └── end_keyword_loc: (17,0)-(17,3) = "end" - ├── @ CaseNode (location: (18,0)-(21,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (18,5)-(18,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (18,5)-(18,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ WhenNode (location: (19,0)-(20,8)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (19,0)-(19,4) = "when" - │ │ ├── conditions: (length: 2) - │ │ │ ├── @ CallNode (location: (19,5)-(19,8)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (19,5)-(19,8) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── @ CallNode (location: (19,10)-(19,13)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (19,10)-(19,13) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── then_keyword_loc: ∅ - │ │ └── statements: - │ │ @ StatementsNode (location: (20,2)-(20,8)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SymbolNode (location: (20,2)-(20,8)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (20,2)-(20,3) = ":" - │ │ ├── value_loc: (20,3)-(20,8) = "other" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "other" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (18,0)-(18,4) = "case" - │ └── end_keyword_loc: (21,0)-(21,3) = "end" - ├── @ CaseNode (location: (22,0)-(25,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (22,5)-(22,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (22,5)-(22,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ WhenNode (location: (23,0)-(24,8)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (23,0)-(23,4) = "when" - │ │ ├── conditions: (length: 1) - │ │ │ └── @ SplatNode (location: (23,5)-(23,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (23,5)-(23,6) = "*" - │ │ │ └── expression: - │ │ │ @ CallNode (location: (23,6)-(23,9)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (23,6)-(23,9) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── then_keyword_loc: ∅ - │ │ └── statements: - │ │ @ StatementsNode (location: (24,2)-(24,8)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SymbolNode (location: (24,2)-(24,8)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (24,2)-(24,3) = ":" - │ │ ├── value_loc: (24,3)-(24,8) = "value" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "value" - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (22,0)-(22,4) = "case" - │ └── end_keyword_loc: (25,0)-(25,3) = "end" - ├── @ CaseNode (location: (26,0)-(31,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (26,5)-(26,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (26,5)-(26,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ WhenNode (location: (27,0)-(28,5)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (27,0)-(27,4) = "when" - │ │ ├── conditions: (length: 1) - │ │ │ └── @ CallNode (location: (27,5)-(27,8)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (27,5)-(27,8) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── then_keyword_loc: ∅ - │ │ └── statements: - │ │ @ StatementsNode (location: (28,2)-(28,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (28,2)-(28,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (28,2)-(28,5) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── else_clause: - │ │ @ ElseNode (location: (29,0)-(31,3)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (29,0)-(29,4) = "else" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (30,2)-(30,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ SymbolNode (location: (30,2)-(30,6)) - │ │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (30,2)-(30,3) = ":" - │ │ │ ├── value_loc: (30,3)-(30,6) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ └── end_keyword_loc: (31,0)-(31,3) = "end" - │ ├── case_keyword_loc: (26,0)-(26,4) = "case" - │ └── end_keyword_loc: (31,0)-(31,3) = "end" - ├── @ CaseNode (location: (32,0)-(34,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (32,5)-(32,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (32,5)-(32,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ WhenNode (location: (33,0)-(33,15)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (33,0)-(33,4) = "when" - │ │ ├── conditions: (length: 1) - │ │ │ └── @ SplatNode (location: (33,5)-(33,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (33,5)-(33,6) = "*" - │ │ │ └── expression: - │ │ │ @ CallNode (location: (33,6)-(33,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── receiver: - │ │ │ │ @ CallNode (location: (33,6)-(33,9)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (33,6)-(33,9) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :| - │ │ │ ├── message_loc: (33,10)-(33,11) = "|" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (33,12)-(33,15)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (33,12)-(33,15)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ ├── message_loc: (33,12)-(33,15) = "baz" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── then_keyword_loc: ∅ - │ │ └── statements: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (32,0)-(32,4) = "case" - │ └── end_keyword_loc: (34,0)-(34,3) = "end" - └── @ CaseNode (location: (35,0)-(37,3)) - ├── flags: newline - ├── predicate: - │ @ CallNode (location: (35,5)-(35,8)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (35,5)-(35,8) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── conditions: (length: 1) - │ └── @ WhenNode (location: (36,0)-(36,15)) - │ ├── flags: ∅ - │ ├── keyword_loc: (36,0)-(36,4) = "when" - │ ├── conditions: (length: 1) - │ │ └── @ SplatNode (location: (36,5)-(36,15)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (36,5)-(36,6) = "*" - │ │ └── expression: - │ │ @ CallNode (location: (36,6)-(36,15)) - │ │ ├── flags: attribute_write - │ │ ├── receiver: - │ │ │ @ CallNode (location: (36,6)-(36,9)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (36,6)-(36,9) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (36,9)-(36,10) = "." - │ │ ├── name: :baz= - │ │ ├── message_loc: (36,10)-(36,13) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (36,14)-(36,15)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (36,14)-(36,15)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: ∅ - │ └── statements: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (35,0)-(35,4) = "case" - └── end_keyword_loc: (37,0)-(37,3) = "end" diff --git a/test/prism/snapshots/unparser/corpus/literal/class.txt b/test/prism/snapshots/unparser/corpus/literal/class.txt deleted file mode 100644 index add60ce305..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/class.txt +++ /dev/null @@ -1,260 +0,0 @@ -@ ProgramNode (location: (1,0)-(35,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(35,3)) - ├── flags: ∅ - └── body: (length: 10) - ├── @ ClassNode (location: (1,0)-(2,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (1,0)-(1,5) = "class" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (1,6)-(1,7)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── inheritance_operator_loc: ∅ - │ ├── superclass: ∅ - │ ├── body: ∅ - │ ├── end_keyword_loc: (2,0)-(2,3) = "end" - │ └── name: :A - ├── @ SingletonClassNode (location: (4,0)-(5,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (4,0)-(4,5) = "class" - │ ├── operator_loc: (4,6)-(4,8) = "<<" - │ ├── expression: - │ │ @ CallNode (location: (4,9)-(4,10)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (4,9)-(4,10) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ └── end_keyword_loc: (5,0)-(5,3) = "end" - ├── @ SingletonClassNode (location: (7,0)-(9,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (7,0)-(7,5) = "class" - │ ├── operator_loc: (7,6)-(7,8) = "<<" - │ ├── expression: - │ │ @ CallNode (location: (7,9)-(7,10)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (7,9)-(7,10) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (8,2)-(8,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (8,2)-(8,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (8,2)-(8,3) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── end_keyword_loc: (9,0)-(9,3) = "end" - ├── @ ClassNode (location: (11,0)-(12,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (11,0)-(11,5) = "class" - │ ├── constant_path: - │ │ @ ConstantPathNode (location: (11,6)-(11,10)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ ConstantReadNode (location: (11,6)-(11,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :A - │ │ ├── name: :B - │ │ ├── delimiter_loc: (11,7)-(11,9) = "::" - │ │ └── name_loc: (11,9)-(11,10) = "B" - │ ├── inheritance_operator_loc: ∅ - │ ├── superclass: ∅ - │ ├── body: ∅ - │ ├── end_keyword_loc: (12,0)-(12,3) = "end" - │ └── name: :B - ├── @ ClassNode (location: (14,0)-(15,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (14,0)-(14,5) = "class" - │ ├── constant_path: - │ │ @ ConstantPathNode (location: (14,6)-(14,13)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ ConstantPathNode (location: (14,6)-(14,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parent: - │ │ │ │ @ ConstantReadNode (location: (14,6)-(14,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :A - │ │ │ ├── name: :B - │ │ │ ├── delimiter_loc: (14,7)-(14,9) = "::" - │ │ │ └── name_loc: (14,9)-(14,10) = "B" - │ │ ├── name: :C - │ │ ├── delimiter_loc: (14,10)-(14,12) = "::" - │ │ └── name_loc: (14,12)-(14,13) = "C" - │ ├── inheritance_operator_loc: ∅ - │ ├── superclass: ∅ - │ ├── body: ∅ - │ ├── end_keyword_loc: (15,0)-(15,3) = "end" - │ └── name: :C - ├── @ ClassNode (location: (17,0)-(18,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (17,0)-(17,5) = "class" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (17,6)-(17,7)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── inheritance_operator_loc: (17,8)-(17,9) = "<" - │ ├── superclass: - │ │ @ ConstantReadNode (location: (17,10)-(17,11)) - │ │ ├── flags: ∅ - │ │ └── name: :B - │ ├── body: ∅ - │ ├── end_keyword_loc: (18,0)-(18,3) = "end" - │ └── name: :A - ├── @ ClassNode (location: (20,0)-(21,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (20,0)-(20,5) = "class" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (20,6)-(20,7)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── inheritance_operator_loc: (20,8)-(20,9) = "<" - │ ├── superclass: - │ │ @ ConstantPathNode (location: (20,10)-(20,14)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ ConstantReadNode (location: (20,10)-(20,11)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :B - │ │ ├── name: :C - │ │ ├── delimiter_loc: (20,11)-(20,13) = "::" - │ │ └── name_loc: (20,13)-(20,14) = "C" - │ ├── body: ∅ - │ ├── end_keyword_loc: (21,0)-(21,3) = "end" - │ └── name: :A - ├── @ ClassNode (location: (23,0)-(24,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (23,0)-(23,5) = "class" - │ ├── constant_path: - │ │ @ ConstantPathNode (location: (23,6)-(23,10)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ ConstantReadNode (location: (23,6)-(23,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :A - │ │ ├── name: :B - │ │ ├── delimiter_loc: (23,7)-(23,9) = "::" - │ │ └── name_loc: (23,9)-(23,10) = "B" - │ ├── inheritance_operator_loc: (23,11)-(23,12) = "<" - │ ├── superclass: - │ │ @ ConstantPathNode (location: (23,13)-(23,17)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ ConstantReadNode (location: (23,13)-(23,14)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :C - │ │ ├── name: :D - │ │ ├── delimiter_loc: (23,14)-(23,16) = "::" - │ │ └── name_loc: (23,16)-(23,17) = "D" - │ ├── body: ∅ - │ ├── end_keyword_loc: (24,0)-(24,3) = "end" - │ └── name: :B - ├── @ ClassNode (location: (26,0)-(32,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (26,0)-(26,5) = "class" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (26,6)-(26,7)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── inheritance_operator_loc: ∅ - │ ├── superclass: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (27,2)-(31,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 2) - │ │ ├── @ CallNode (location: (27,2)-(27,16)) - │ │ │ ├── flags: newline, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :include - │ │ │ ├── message_loc: (27,2)-(27,9) = "include" - │ │ │ ├── opening_loc: (27,9)-(27,10) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (27,10)-(27,15)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (27,10)-(27,15)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── receiver: - │ │ │ │ │ @ ConstantReadNode (location: (27,10)-(27,11)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :B - │ │ │ │ ├── call_operator_loc: (27,11)-(27,12) = "." - │ │ │ │ ├── name: :new - │ │ │ │ ├── message_loc: (27,12)-(27,15) = "new" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: (27,15)-(27,16) = ")" - │ │ │ └── block: ∅ - │ │ └── @ DefNode (location: (29,2)-(31,5)) - │ │ ├── flags: newline - │ │ ├── name: :foo - │ │ ├── name_loc: (29,6)-(29,9) = "foo" - │ │ ├── receiver: ∅ - │ │ ├── parameters: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (30,4)-(30,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ SymbolNode (location: (30,4)-(30,8)) - │ │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (30,4)-(30,5) = ":" - │ │ │ ├── value_loc: (30,5)-(30,8) = "bar" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "bar" - │ │ ├── locals: [] - │ │ ├── def_keyword_loc: (29,2)-(29,5) = "def" - │ │ ├── operator_loc: ∅ - │ │ ├── lparen_loc: ∅ - │ │ ├── rparen_loc: ∅ - │ │ ├── equal_loc: ∅ - │ │ └── end_keyword_loc: (31,2)-(31,5) = "end" - │ ├── end_keyword_loc: (32,0)-(32,3) = "end" - │ └── name: :A - └── @ ClassNode (location: (34,0)-(35,3)) - ├── flags: newline - ├── locals: [] - ├── class_keyword_loc: (34,0)-(34,5) = "class" - ├── constant_path: - │ @ ConstantPathNode (location: (34,6)-(34,9)) - │ ├── flags: ∅ - │ ├── parent: ∅ - │ ├── name: :A - │ ├── delimiter_loc: (34,6)-(34,8) = "::" - │ └── name_loc: (34,8)-(34,9) = "A" - ├── inheritance_operator_loc: ∅ - ├── superclass: ∅ - ├── body: ∅ - ├── end_keyword_loc: (35,0)-(35,3) = "end" - └── name: :A diff --git a/test/prism/snapshots/unparser/corpus/literal/def.txt b/test/prism/snapshots/unparser/corpus/literal/def.txt deleted file mode 100644 index d27977cbde..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/def.txt +++ /dev/null @@ -1,1325 +0,0 @@ -@ ProgramNode (location: (1,0)-(134,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(134,3)) - ├── flags: ∅ - └── body: (length: 30) - ├── @ DefNode (location: (1,0)-(9,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (1,4)-(1,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ BeginNode (location: (1,0)-(9,3)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (2,2)-(2,3)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (2,2)-(2,3)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (2,2)-(2,3) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── rescue_clause: - │ │ │ @ RescueNode (location: (3,0)-(4,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (3,0)-(3,6) = "rescue" - │ │ │ ├── exceptions: (length: 0) - │ │ │ ├── operator_loc: ∅ - │ │ │ ├── reference: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (4,2)-(4,3)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (4,2)-(4,3)) - │ │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── message_loc: (4,2)-(4,3) = "b" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── subsequent: ∅ - │ │ ├── else_clause: - │ │ │ @ ElseNode (location: (5,0)-(7,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── else_keyword_loc: (5,0)-(5,4) = "else" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (6,2)-(6,3)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (6,2)-(6,3)) - │ │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (6,2)-(6,3) = "c" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── end_keyword_loc: (7,0)-(7,6) = "ensure" - │ │ ├── ensure_clause: - │ │ │ @ EnsureNode (location: (7,0)-(9,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── ensure_keyword_loc: (7,0)-(7,6) = "ensure" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (8,2)-(8,3)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (8,2)-(8,3)) - │ │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :d - │ │ │ │ ├── message_loc: (8,2)-(8,3) = "d" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── end_keyword_loc: (9,0)-(9,3) = "end" - │ │ └── end_keyword_loc: (9,0)-(9,3) = "end" - │ ├── locals: [] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (9,0)-(9,3) = "end" - ├── @ DefNode (location: (11,0)-(19,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (11,4)-(11,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ BeginNode (location: (11,0)-(19,3)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (12,2)-(12,12)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ RescueModifierNode (location: (12,2)-(12,12)) - │ │ │ ├── flags: newline - │ │ │ ├── expression: - │ │ │ │ @ CallNode (location: (12,2)-(12,3)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ ├── message_loc: (12,2)-(12,3) = "a" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── keyword_loc: (12,4)-(12,10) = "rescue" - │ │ │ └── rescue_expression: - │ │ │ @ CallNode (location: (12,11)-(12,12)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (12,11)-(12,12) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── rescue_clause: - │ │ │ @ RescueNode (location: (13,0)-(14,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (13,0)-(13,6) = "rescue" - │ │ │ ├── exceptions: (length: 0) - │ │ │ ├── operator_loc: ∅ - │ │ │ ├── reference: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (14,2)-(14,3)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (14,2)-(14,3)) - │ │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── message_loc: (14,2)-(14,3) = "b" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── subsequent: ∅ - │ │ ├── else_clause: - │ │ │ @ ElseNode (location: (15,0)-(17,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── else_keyword_loc: (15,0)-(15,4) = "else" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (16,2)-(16,3)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (16,2)-(16,3)) - │ │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (16,2)-(16,3) = "c" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── end_keyword_loc: (17,0)-(17,6) = "ensure" - │ │ ├── ensure_clause: - │ │ │ @ EnsureNode (location: (17,0)-(19,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── ensure_keyword_loc: (17,0)-(17,6) = "ensure" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (18,2)-(18,3)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (18,2)-(18,3)) - │ │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :d - │ │ │ │ ├── message_loc: (18,2)-(18,3) = "d" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── end_keyword_loc: (19,0)-(19,3) = "end" - │ │ └── end_keyword_loc: (19,0)-(19,3) = "end" - │ ├── locals: [] - │ ├── def_keyword_loc: (11,0)-(11,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (19,0)-(19,3) = "end" - ├── @ DefNode (location: (21,0)-(22,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (21,4)-(21,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (21,8)-(21,18)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 2) - │ │ │ ├── @ RequiredKeywordParameterNode (location: (21,8)-(21,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ └── name_loc: (21,8)-(21,12) = "bar:" - │ │ │ └── @ RequiredKeywordParameterNode (location: (21,14)-(21,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :baz - │ │ │ └── name_loc: (21,14)-(21,18) = "baz:" - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:bar, :baz] - │ ├── def_keyword_loc: (21,0)-(21,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (21,7)-(21,8) = "(" - │ ├── rparen_loc: (21,18)-(21,19) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (22,0)-(22,3) = "end" - ├── @ DefNode (location: (24,0)-(25,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (24,4)-(24,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (24,0)-(24,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (25,0)-(25,3) = "end" - ├── @ DefNode (location: (27,0)-(29,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (27,4)-(27,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (28,2)-(28,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (28,2)-(28,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (28,2)-(28,5) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (27,0)-(27,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (29,0)-(29,3) = "end" - ├── @ DefNode (location: (31,0)-(37,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (31,4)-(31,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ BeginNode (location: (31,0)-(37,3)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (32,2)-(32,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (32,2)-(32,5)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (32,2)-(32,5) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── rescue_clause: - │ │ │ @ RescueNode (location: (33,0)-(34,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (33,0)-(33,6) = "rescue" - │ │ │ ├── exceptions: (length: 0) - │ │ │ ├── operator_loc: ∅ - │ │ │ ├── reference: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (34,2)-(34,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (34,2)-(34,5)) - │ │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (34,2)-(34,5) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── subsequent: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: - │ │ │ @ EnsureNode (location: (35,0)-(37,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── ensure_keyword_loc: (35,0)-(35,6) = "ensure" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (36,2)-(36,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (36,2)-(36,5)) - │ │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ ├── message_loc: (36,2)-(36,5) = "baz" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── end_keyword_loc: (37,0)-(37,3) = "end" - │ │ └── end_keyword_loc: (37,0)-(37,3) = "end" - │ ├── locals: [] - │ ├── def_keyword_loc: (31,0)-(31,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (37,0)-(37,3) = "end" - ├── @ DefNode (location: (39,0)-(43,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (39,4)-(39,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ BeginNode (location: (39,0)-(43,3)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (40,2)-(40,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (40,2)-(40,5)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (40,2)-(40,5) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── rescue_clause: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: - │ │ │ @ EnsureNode (location: (41,0)-(43,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── ensure_keyword_loc: (41,0)-(41,6) = "ensure" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (42,2)-(42,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (42,2)-(42,5)) - │ │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ ├── message_loc: (42,2)-(42,5) = "baz" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── end_keyword_loc: (43,0)-(43,3) = "end" - │ │ └── end_keyword_loc: (43,0)-(43,3) = "end" - │ ├── locals: [] - │ ├── def_keyword_loc: (39,0)-(39,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (43,0)-(43,3) = "end" - ├── @ DefNode (location: (45,0)-(49,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (45,4)-(45,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ BeginNode (location: (45,0)-(49,3)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (46,2)-(46,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (46,2)-(46,5)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (46,2)-(46,5) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── rescue_clause: - │ │ │ @ RescueNode (location: (47,0)-(48,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (47,0)-(47,6) = "rescue" - │ │ │ ├── exceptions: (length: 0) - │ │ │ ├── operator_loc: ∅ - │ │ │ ├── reference: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (48,2)-(48,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (48,2)-(48,5)) - │ │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ ├── message_loc: (48,2)-(48,5) = "baz" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── subsequent: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: ∅ - │ │ └── end_keyword_loc: (49,0)-(49,3) = "end" - │ ├── locals: [] - │ ├── def_keyword_loc: (45,0)-(45,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (49,0)-(49,3) = "end" - ├── @ DefNode (location: (51,0)-(53,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (51,4)-(51,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (51,8)-(51,11)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (51,8)-(51,11)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :bar - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (52,2)-(52,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (52,2)-(52,5)) - │ │ ├── flags: newline - │ │ ├── name: :bar - │ │ └── depth: 0 - │ ├── locals: [:bar] - │ ├── def_keyword_loc: (51,0)-(51,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (51,7)-(51,8) = "(" - │ ├── rparen_loc: (51,11)-(51,12) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (53,0)-(53,3) = "end" - ├── @ DefNode (location: (55,0)-(57,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (55,4)-(55,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (55,8)-(55,16)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ RequiredParameterNode (location: (55,8)-(55,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :bar - │ │ │ └── @ RequiredParameterNode (location: (55,13)-(55,16)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :baz - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (56,2)-(56,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (56,2)-(56,5)) - │ │ ├── flags: newline - │ │ ├── name: :bar - │ │ └── depth: 0 - │ ├── locals: [:bar, :baz] - │ ├── def_keyword_loc: (55,0)-(55,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (55,7)-(55,8) = "(" - │ ├── rparen_loc: (55,16)-(55,17) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (57,0)-(57,3) = "end" - ├── @ DefNode (location: (59,0)-(61,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (59,4)-(59,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (59,8)-(59,16)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (59,8)-(59,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── name_loc: (59,8)-(59,11) = "bar" - │ │ │ ├── operator_loc: (59,12)-(59,13) = "=" - │ │ │ └── value: - │ │ │ @ ParenthesesNode (location: (59,14)-(59,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: ∅ - │ │ │ ├── opening_loc: (59,14)-(59,15) = "(" - │ │ │ └── closing_loc: (59,15)-(59,16) = ")" - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (60,2)-(60,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (60,2)-(60,5)) - │ │ ├── flags: newline - │ │ ├── name: :bar - │ │ └── depth: 0 - │ ├── locals: [:bar] - │ ├── def_keyword_loc: (59,0)-(59,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (59,7)-(59,8) = "(" - │ ├── rparen_loc: (59,16)-(59,17) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (61,0)-(61,3) = "end" - ├── @ DefNode (location: (63,0)-(64,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (63,4)-(63,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (63,8)-(63,24)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (63,8)-(63,24)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── name_loc: (63,8)-(63,11) = "bar" - │ │ │ ├── operator_loc: (63,12)-(63,13) = "=" - │ │ │ └── value: - │ │ │ @ ParenthesesNode (location: (63,14)-(63,24)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (63,15)-(63,23)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 2) - │ │ │ │ ├── @ CallNode (location: (63,15)-(63,18)) - │ │ │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :baz - │ │ │ │ │ ├── message_loc: (63,15)-(63,18) = "baz" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ └── @ NilNode (location: (63,20)-(63,23)) - │ │ │ │ └── flags: newline, static_literal - │ │ │ ├── opening_loc: (63,14)-(63,15) = "(" - │ │ │ └── closing_loc: (63,23)-(63,24) = ")" - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:bar] - │ ├── def_keyword_loc: (63,0)-(63,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (63,7)-(63,8) = "(" - │ ├── rparen_loc: (63,24)-(63,25) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (64,0)-(64,3) = "end" - ├── @ DefNode (location: (66,0)-(68,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (66,4)-(66,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (66,8)-(66,18)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (66,8)-(66,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── name_loc: (66,8)-(66,11) = "bar" - │ │ │ ├── operator_loc: (66,12)-(66,13) = "=" - │ │ │ └── value: - │ │ │ @ TrueNode (location: (66,14)-(66,18)) - │ │ │ └── flags: static_literal - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (67,2)-(67,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (67,2)-(67,5)) - │ │ ├── flags: newline - │ │ ├── name: :bar - │ │ └── depth: 0 - │ ├── locals: [:bar] - │ ├── def_keyword_loc: (66,0)-(66,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (66,7)-(66,8) = "(" - │ ├── rparen_loc: (66,18)-(66,19) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (68,0)-(68,3) = "end" - ├── @ DefNode (location: (70,0)-(72,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (70,4)-(70,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (70,8)-(70,23)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (70,8)-(70,11)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :bar - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (70,13)-(70,23)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── name_loc: (70,13)-(70,16) = "baz" - │ │ │ ├── operator_loc: (70,17)-(70,18) = "=" - │ │ │ └── value: - │ │ │ @ TrueNode (location: (70,19)-(70,23)) - │ │ │ └── flags: static_literal - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (71,2)-(71,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (71,2)-(71,5)) - │ │ ├── flags: newline - │ │ ├── name: :bar - │ │ └── depth: 0 - │ ├── locals: [:bar, :baz] - │ ├── def_keyword_loc: (70,0)-(70,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (70,7)-(70,8) = "(" - │ ├── rparen_loc: (70,23)-(70,24) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (72,0)-(72,3) = "end" - ├── @ DefNode (location: (74,0)-(75,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (74,4)-(74,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (74,8)-(74,14)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ OptionalKeywordParameterNode (location: (74,8)-(74,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── name_loc: (74,8)-(74,12) = "bar:" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (74,13)-(74,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:bar] - │ ├── def_keyword_loc: (74,0)-(74,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (74,7)-(74,8) = "(" - │ ├── rparen_loc: (74,14)-(74,15) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (75,0)-(75,3) = "end" - ├── @ DefNode (location: (77,0)-(78,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (77,4)-(77,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (77,8)-(77,16)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ OptionalKeywordParameterNode (location: (77,8)-(77,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── name_loc: (77,8)-(77,12) = "bar:" - │ │ │ └── value: - │ │ │ @ CallNode (location: (77,13)-(77,16)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (77,13)-(77,16) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:bar] - │ ├── def_keyword_loc: (77,0)-(77,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (77,7)-(77,8) = "(" - │ ├── rparen_loc: (77,16)-(77,17) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (78,0)-(78,3) = "end" - ├── @ DefNode (location: (80,0)-(81,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (80,4)-(80,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (80,8)-(80,18)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ OptionalKeywordParameterNode (location: (80,8)-(80,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── name_loc: (80,8)-(80,12) = "bar:" - │ │ │ └── value: - │ │ │ @ CallNode (location: (80,13)-(80,18)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (80,13)-(80,16) = "bar" - │ │ │ ├── opening_loc: (80,16)-(80,17) = "(" - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: (80,17)-(80,18) = ")" - │ │ │ └── block: ∅ - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:bar] - │ ├── def_keyword_loc: (80,0)-(80,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (80,7)-(80,8) = "(" - │ ├── rparen_loc: (80,18)-(80,19) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (81,0)-(81,3) = "end" - ├── @ DefNode (location: (83,0)-(85,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (83,4)-(83,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (83,8)-(83,9)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (83,8)-(83,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: ∅ - │ │ │ ├── name_loc: ∅ - │ │ │ └── operator_loc: (83,8)-(83,9) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (84,2)-(84,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (84,2)-(84,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (84,2)-(84,5) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (83,0)-(83,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (83,7)-(83,8) = "(" - │ ├── rparen_loc: (83,9)-(83,10) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (85,0)-(85,3) = "end" - ├── @ DefNode (location: (87,0)-(89,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (87,4)-(87,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (87,8)-(87,12)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (87,8)-(87,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── name_loc: (87,9)-(87,12) = "bar" - │ │ │ └── operator_loc: (87,8)-(87,9) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (88,2)-(88,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (88,2)-(88,5)) - │ │ ├── flags: newline - │ │ ├── name: :bar - │ │ └── depth: 0 - │ ├── locals: [:bar] - │ ├── def_keyword_loc: (87,0)-(87,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (87,7)-(87,8) = "(" - │ ├── rparen_loc: (87,12)-(87,13) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (89,0)-(89,3) = "end" - ├── @ DefNode (location: (91,0)-(93,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (91,4)-(91,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (91,8)-(91,17)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (91,8)-(91,11)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :bar - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (91,13)-(91,17)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── name_loc: (91,14)-(91,17) = "baz" - │ │ │ └── operator_loc: (91,13)-(91,14) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (92,2)-(92,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (92,2)-(92,5)) - │ │ ├── flags: newline - │ │ ├── name: :bar - │ │ └── depth: 0 - │ ├── locals: [:bar, :baz] - │ ├── def_keyword_loc: (91,0)-(91,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (91,7)-(91,8) = "(" - │ ├── rparen_loc: (91,17)-(91,18) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (93,0)-(93,3) = "end" - ├── @ DefNode (location: (95,0)-(97,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (95,4)-(95,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (95,8)-(95,24)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (95,8)-(95,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── name_loc: (95,8)-(95,11) = "baz" - │ │ │ ├── operator_loc: (95,12)-(95,13) = "=" - │ │ │ └── value: - │ │ │ @ TrueNode (location: (95,14)-(95,18)) - │ │ │ └── flags: static_literal - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (95,20)-(95,24)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bor - │ │ │ ├── name_loc: (95,21)-(95,24) = "bor" - │ │ │ └── operator_loc: (95,20)-(95,21) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (96,2)-(96,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (96,2)-(96,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (96,2)-(96,5) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [:baz, :bor] - │ ├── def_keyword_loc: (95,0)-(95,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (95,7)-(95,8) = "(" - │ ├── rparen_loc: (95,24)-(95,25) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (97,0)-(97,3) = "end" - ├── @ DefNode (location: (99,0)-(101,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (99,4)-(99,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (99,8)-(99,32)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (99,8)-(99,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── name_loc: (99,8)-(99,11) = "baz" - │ │ │ ├── operator_loc: (99,12)-(99,13) = "=" - │ │ │ └── value: - │ │ │ @ TrueNode (location: (99,14)-(99,18)) - │ │ │ └── flags: static_literal - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (99,20)-(99,24)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bor - │ │ │ ├── name_loc: (99,21)-(99,24) = "bor" - │ │ │ └── operator_loc: (99,20)-(99,21) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (99,26)-(99,32)) - │ │ ├── flags: ∅ - │ │ ├── name: :block - │ │ ├── name_loc: (99,27)-(99,32) = "block" - │ │ └── operator_loc: (99,26)-(99,27) = "&" - │ ├── body: - │ │ @ StatementsNode (location: (100,2)-(100,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (100,2)-(100,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (100,2)-(100,5) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [:baz, :bor, :block] - │ ├── def_keyword_loc: (99,0)-(99,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (99,7)-(99,8) = "(" - │ ├── rparen_loc: (99,32)-(99,33) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (101,0)-(101,3) = "end" - ├── @ DefNode (location: (103,0)-(105,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (103,4)-(103,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (103,8)-(103,29)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (103,8)-(103,11)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :bar - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (103,13)-(103,23)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── name_loc: (103,13)-(103,16) = "baz" - │ │ │ ├── operator_loc: (103,17)-(103,18) = "=" - │ │ │ └── value: - │ │ │ @ TrueNode (location: (103,19)-(103,23)) - │ │ │ └── flags: static_literal - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (103,25)-(103,29)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bor - │ │ │ ├── name_loc: (103,26)-(103,29) = "bor" - │ │ │ └── operator_loc: (103,25)-(103,26) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (104,2)-(104,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (104,2)-(104,5)) - │ │ ├── flags: newline - │ │ ├── name: :bar - │ │ └── depth: 0 - │ ├── locals: [:bar, :baz, :bor] - │ ├── def_keyword_loc: (103,0)-(103,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (103,7)-(103,8) = "(" - │ ├── rparen_loc: (103,29)-(103,30) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (105,0)-(105,3) = "end" - ├── @ DefNode (location: (107,0)-(109,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (107,4)-(107,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (107,8)-(107,14)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (107,8)-(107,14)) - │ │ ├── flags: ∅ - │ │ ├── name: :block - │ │ ├── name_loc: (107,9)-(107,14) = "block" - │ │ └── operator_loc: (107,8)-(107,9) = "&" - │ ├── body: - │ │ @ StatementsNode (location: (108,2)-(108,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (108,2)-(108,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (108,2)-(108,5) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [:block] - │ ├── def_keyword_loc: (107,0)-(107,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (107,7)-(107,8) = "(" - │ ├── rparen_loc: (107,14)-(107,15) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (109,0)-(109,3) = "end" - ├── @ DefNode (location: (111,0)-(113,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (111,4)-(111,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (111,8)-(111,19)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (111,8)-(111,11)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :bar - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (111,13)-(111,19)) - │ │ ├── flags: ∅ - │ │ ├── name: :block - │ │ ├── name_loc: (111,14)-(111,19) = "block" - │ │ └── operator_loc: (111,13)-(111,14) = "&" - │ ├── body: - │ │ @ StatementsNode (location: (112,2)-(112,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (112,2)-(112,5)) - │ │ ├── flags: newline - │ │ ├── name: :bar - │ │ └── depth: 0 - │ ├── locals: [:bar, :block] - │ ├── def_keyword_loc: (111,0)-(111,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (111,7)-(111,8) = "(" - │ ├── rparen_loc: (111,19)-(111,20) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (113,0)-(113,3) = "end" - ├── @ DefNode (location: (115,0)-(118,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (115,4)-(115,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (116,2)-(117,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 2) - │ │ ├── @ CallNode (location: (116,2)-(116,5)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (116,2)-(116,5) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ CallNode (location: (117,2)-(117,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (117,2)-(117,5) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (115,0)-(115,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (118,0)-(118,3) = "end" - ├── @ DefNode (location: (120,0)-(121,3)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (120,4)-(120,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (120,6)-(120,11)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ MultiTargetNode (location: (120,6)-(120,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 1) - │ │ │ │ └── @ MultiTargetNode (location: (120,7)-(120,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── lefts: (length: 1) - │ │ │ │ │ └── @ RequiredParameterNode (location: (120,8)-(120,9)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :a - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── rights: (length: 0) - │ │ │ │ ├── lparen_loc: (120,7)-(120,8) = "(" - │ │ │ │ └── rparen_loc: (120,9)-(120,10) = ")" - │ │ │ ├── rest: ∅ - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: (120,6)-(120,7) = "(" - │ │ │ └── rparen_loc: (120,10)-(120,11) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:a] - │ ├── def_keyword_loc: (120,0)-(120,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (120,5)-(120,6) = "(" - │ ├── rparen_loc: (120,11)-(120,12) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (121,0)-(121,3) = "end" - ├── @ DefNode (location: (123,0)-(124,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (123,4)-(123,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (123,8)-(123,26)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 2) - │ │ │ ├── @ RequiredKeywordParameterNode (location: (123,8)-(123,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ └── name_loc: (123,8)-(123,12) = "bar:" - │ │ │ └── @ OptionalKeywordParameterNode (location: (123,14)-(123,26)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── name_loc: (123,14)-(123,18) = "baz:" - │ │ │ └── value: - │ │ │ @ StringNode (location: (123,19)-(123,26)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (123,19)-(123,20) = "\"" - │ │ │ ├── content_loc: (123,20)-(123,25) = "value" - │ │ │ ├── closing_loc: (123,25)-(123,26) = "\"" - │ │ │ └── unescaped: "value" - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:bar, :baz] - │ ├── def_keyword_loc: (123,0)-(123,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (123,7)-(123,8) = "(" - │ ├── rparen_loc: (123,26)-(123,27) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (124,0)-(124,3) = "end" - ├── @ DefNode (location: (126,0)-(130,3)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (126,4)-(126,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (127,2)-(127,12)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (127,2)-(127,12)) - │ │ ├── flags: newline - │ │ ├── opening_loc: (127,2)-(127,12) = "<<-HEREDOC" - │ │ ├── parts: (length: 3) - │ │ │ ├── @ StringNode (location: (128,0)-(128,4)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (128,0)-(128,4) = " " - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: " " - │ │ │ ├── @ EmbeddedStatementsNode (location: (128,4)-(128,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (128,4)-(128,6) = "\#{" - │ │ │ │ ├── statements: ∅ - │ │ │ │ └── closing_loc: (128,6)-(128,7) = "}" - │ │ │ └── @ StringNode (location: (128,7)-(129,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (128,7)-(129,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ └── closing_loc: (129,0)-(130,0) = " HEREDOC\n" - │ ├── locals: [] - │ ├── def_keyword_loc: (126,0)-(126,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (130,0)-(130,3) = "end" - └── @ DefNode (location: (132,0)-(134,3)) - ├── flags: newline - ├── name: :f - ├── name_loc: (132,4)-(132,5) = "f" - ├── receiver: ∅ - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (133,2)-(133,5)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ StringNode (location: (133,2)-(133,5)) - │ ├── flags: newline - │ ├── opening_loc: (133,2)-(133,4) = "%(" - │ ├── content_loc: (133,4)-(133,4) = "" - │ ├── closing_loc: (133,4)-(133,5) = ")" - │ └── unescaped: "" - ├── locals: [] - ├── def_keyword_loc: (132,0)-(132,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (134,0)-(134,3) = "end" diff --git a/test/prism/snapshots/unparser/corpus/literal/defined.txt b/test/prism/snapshots/unparser/corpus/literal/defined.txt deleted file mode 100644 index d1b5a15685..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/defined.txt +++ /dev/null @@ -1,67 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,27)) -├── flags: ∅ -├── locals: [:a, :b] -└── statements: - @ StatementsNode (location: (1,0)-(3,27)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ DefinedNode (location: (1,0)-(1,14)) - │ ├── flags: newline - │ ├── lparen_loc: (1,8)-(1,9) = "(" - │ ├── value: - │ │ @ InstanceVariableReadNode (location: (1,9)-(1,13)) - │ │ ├── flags: ∅ - │ │ └── name: :@foo - │ ├── rparen_loc: (1,13)-(1,14) = ")" - │ └── keyword_loc: (1,0)-(1,8) = "defined?" - ├── @ DefinedNode (location: (2,0)-(2,13)) - │ ├── flags: newline - │ ├── lparen_loc: (2,8)-(2,9) = "(" - │ ├── value: - │ │ @ ConstantReadNode (location: (2,9)-(2,12)) - │ │ ├── flags: ∅ - │ │ └── name: :Foo - │ ├── rparen_loc: (2,12)-(2,13) = ")" - │ └── keyword_loc: (2,0)-(2,8) = "defined?" - └── @ DefinedNode (location: (3,0)-(3,27)) - ├── flags: newline - ├── lparen_loc: (3,8)-(3,9) = "(" - ├── value: - │ @ ParenthesesNode (location: (3,9)-(3,26)) - │ ├── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (3,10)-(3,25)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ MultiWriteNode (location: (3,10)-(3,25)) - │ │ ├── flags: newline - │ │ ├── lefts: (length: 2) - │ │ │ ├── @ LocalVariableTargetNode (location: (3,11)-(3,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ └── depth: 0 - │ │ │ └── @ LocalVariableTargetNode (location: (3,14)-(3,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ └── depth: 0 - │ │ ├── rest: ∅ - │ │ ├── rights: (length: 0) - │ │ ├── lparen_loc: (3,10)-(3,11) = "(" - │ │ ├── rparen_loc: (3,15)-(3,16) = ")" - │ │ ├── operator_loc: (3,17)-(3,18) = "=" - │ │ └── value: - │ │ @ ArrayNode (location: (3,19)-(3,25)) - │ │ ├── flags: static_literal - │ │ ├── elements: (length: 2) - │ │ │ ├── @ IntegerNode (location: (3,20)-(3,21)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── @ IntegerNode (location: (3,23)-(3,24)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── opening_loc: (3,19)-(3,20) = "[" - │ │ └── closing_loc: (3,24)-(3,25) = "]" - │ ├── opening_loc: (3,9)-(3,10) = "(" - │ └── closing_loc: (3,25)-(3,26) = ")" - ├── rparen_loc: (3,26)-(3,27) = ")" - └── keyword_loc: (3,0)-(3,8) = "defined?" diff --git a/test/prism/snapshots/unparser/corpus/literal/defs.txt b/test/prism/snapshots/unparser/corpus/literal/defs.txt deleted file mode 100644 index 33c24f3b24..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/defs.txt +++ /dev/null @@ -1,395 +0,0 @@ -@ ProgramNode (location: (1,0)-(40,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(40,3)) - ├── flags: ∅ - └── body: (length: 10) - ├── @ DefNode (location: (1,0)-(2,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (1,9)-(1,12) = "foo" - │ ├── receiver: - │ │ @ SelfNode (location: (1,4)-(1,8)) - │ │ └── flags: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: (1,8)-(1,9) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (2,0)-(2,3) = "end" - ├── @ DefNode (location: (4,0)-(6,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (4,9)-(4,12) = "foo" - │ ├── receiver: - │ │ @ SelfNode (location: (4,4)-(4,8)) - │ │ └── flags: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (5,2)-(5,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (5,2)-(5,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (5,2)-(5,5) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (4,0)-(4,3) = "def" - │ ├── operator_loc: (4,8)-(4,9) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (6,0)-(6,3) = "end" - ├── @ DefNode (location: (8,0)-(11,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (8,9)-(8,12) = "foo" - │ ├── receiver: - │ │ @ SelfNode (location: (8,4)-(8,8)) - │ │ └── flags: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (9,2)-(10,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 2) - │ │ ├── @ CallNode (location: (9,2)-(9,5)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (9,2)-(9,5) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ CallNode (location: (10,2)-(10,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (10,2)-(10,5) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (8,0)-(8,3) = "def" - │ ├── operator_loc: (8,8)-(8,9) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (11,0)-(11,3) = "end" - ├── @ DefNode (location: (13,0)-(15,3)) - │ ├── flags: newline - │ ├── name: :bar - │ ├── name_loc: (13,8)-(13,11) = "bar" - │ ├── receiver: - │ │ @ ConstantReadNode (location: (13,4)-(13,7)) - │ │ ├── flags: ∅ - │ │ └── name: :Foo - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (14,2)-(14,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (14,2)-(14,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (14,2)-(14,5) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (13,0)-(13,3) = "def" - │ ├── operator_loc: (13,7)-(13,8) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (15,0)-(15,3) = "end" - ├── @ DefNode (location: (17,0)-(20,3)) - │ ├── flags: newline - │ ├── name: :bar - │ ├── name_loc: (18,3)-(18,6) = "bar" - │ ├── receiver: - │ │ @ ParenthesesNode (location: (17,4)-(18,2)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ CallNode (location: (17,5)-(18,1)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (17,5)-(17,8) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (17,9)-(18,1)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [:bar] - │ │ │ ├── parameters: - │ │ │ │ @ BlockParametersNode (location: (17,11)-(17,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── parameters: - │ │ │ │ │ @ ParametersNode (location: (17,12)-(17,15)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── requireds: (length: 1) - │ │ │ │ │ │ └── @ RequiredParameterNode (location: (17,12)-(17,15)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── name: :bar - │ │ │ │ │ ├── optionals: (length: 0) - │ │ │ │ │ ├── rest: ∅ - │ │ │ │ │ ├── posts: (length: 0) - │ │ │ │ │ ├── keywords: (length: 0) - │ │ │ │ │ ├── keyword_rest: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── locals: (length: 0) - │ │ │ │ ├── opening_loc: (17,11)-(17,12) = "|" - │ │ │ │ └── closing_loc: (17,15)-(17,16) = "|" - │ │ │ ├── body: ∅ - │ │ │ ├── opening_loc: (17,9)-(17,10) = "{" - │ │ │ └── closing_loc: (18,0)-(18,1) = "}" - │ │ ├── opening_loc: (17,4)-(17,5) = "(" - │ │ └── closing_loc: (18,1)-(18,2) = ")" - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (19,2)-(19,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (19,2)-(19,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (19,2)-(19,5) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (17,0)-(17,3) = "def" - │ ├── operator_loc: (18,2)-(18,3) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (20,0)-(20,3) = "end" - ├── @ DefNode (location: (22,0)-(24,3)) - │ ├── flags: newline - │ ├── name: :bar - │ ├── name_loc: (22,13)-(22,16) = "bar" - │ ├── receiver: - │ │ @ ParenthesesNode (location: (22,4)-(22,12)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ CallNode (location: (22,5)-(22,11)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (22,5)-(22,8) = "foo" - │ │ │ ├── opening_loc: (22,8)-(22,9) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (22,9)-(22,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (22,9)-(22,10)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── closing_loc: (22,10)-(22,11) = ")" - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (22,4)-(22,5) = "(" - │ │ └── closing_loc: (22,11)-(22,12) = ")" - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (23,2)-(23,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (23,2)-(23,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (23,2)-(23,5) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (22,0)-(22,3) = "def" - │ ├── operator_loc: (22,12)-(22,13) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (24,0)-(24,3) = "end" - ├── @ DefNode (location: (26,0)-(28,3)) - │ ├── flags: newline - │ ├── name: :bar - │ ├── name_loc: (26,19)-(26,22) = "bar" - │ ├── receiver: - │ │ @ ParenthesesNode (location: (26,4)-(26,18)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ CallNode (location: (26,5)-(26,17)) - │ │ │ ├── flags: ∅ - │ │ │ ├── receiver: - │ │ │ │ @ ConstantPathNode (location: (26,5)-(26,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── parent: - │ │ │ │ │ @ ConstantReadNode (location: (26,5)-(26,8)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :Foo - │ │ │ │ ├── name: :Bar - │ │ │ │ ├── delimiter_loc: (26,8)-(26,10) = "::" - │ │ │ │ └── name_loc: (26,10)-(26,13) = "Bar" - │ │ │ ├── call_operator_loc: (26,13)-(26,14) = "." - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (26,14)-(26,17) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (26,4)-(26,5) = "(" - │ │ └── closing_loc: (26,17)-(26,18) = ")" - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (27,2)-(27,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (27,2)-(27,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (27,2)-(27,5) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (26,0)-(26,3) = "def" - │ ├── operator_loc: (26,18)-(26,19) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (28,0)-(28,3) = "end" - ├── @ DefNode (location: (30,0)-(32,3)) - │ ├── flags: newline - │ ├── name: :bar - │ ├── name_loc: (30,15)-(30,18) = "bar" - │ ├── receiver: - │ │ @ ParenthesesNode (location: (30,4)-(30,14)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ ConstantPathNode (location: (30,5)-(30,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parent: - │ │ │ │ @ ConstantReadNode (location: (30,5)-(30,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :Foo - │ │ │ ├── name: :Bar - │ │ │ ├── delimiter_loc: (30,8)-(30,10) = "::" - │ │ │ └── name_loc: (30,10)-(30,13) = "Bar" - │ │ ├── opening_loc: (30,4)-(30,5) = "(" - │ │ └── closing_loc: (30,13)-(30,14) = ")" - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (31,2)-(31,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (31,2)-(31,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (31,2)-(31,5) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (30,0)-(30,3) = "def" - │ ├── operator_loc: (30,14)-(30,15) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (32,0)-(32,3) = "end" - ├── @ DefNode (location: (34,0)-(36,3)) - │ ├── flags: newline - │ ├── name: :bar - │ ├── name_loc: (34,8)-(34,11) = "bar" - │ ├── receiver: - │ │ @ ConstantReadNode (location: (34,4)-(34,7)) - │ │ ├── flags: ∅ - │ │ └── name: :Foo - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (35,2)-(35,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (35,2)-(35,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (35,2)-(35,5) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (34,0)-(34,3) = "def" - │ ├── operator_loc: (34,7)-(34,8) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (36,0)-(36,3) = "end" - └── @ DefNode (location: (38,0)-(40,3)) - ├── flags: newline - ├── name: :bar - ├── name_loc: (38,8)-(38,11) = "bar" - ├── receiver: - │ @ CallNode (location: (38,4)-(38,7)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (38,4)-(38,7) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (39,2)-(39,5)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (39,2)-(39,5)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :baz - │ ├── message_loc: (39,2)-(39,5) = "baz" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── locals: [] - ├── def_keyword_loc: (38,0)-(38,3) = "def" - ├── operator_loc: (38,7)-(38,8) = "." - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (40,0)-(40,3) = "end" diff --git a/test/prism/snapshots/unparser/corpus/literal/dstr.txt b/test/prism/snapshots/unparser/corpus/literal/dstr.txt deleted file mode 100644 index 64cb3ff1b2..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/dstr.txt +++ /dev/null @@ -1,389 +0,0 @@ -@ ProgramNode (location: (1,0)-(37,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(37,1)) - ├── flags: ∅ - └── body: (length: 11) - ├── @ IfNode (location: (1,0)-(3,3)) - │ ├── flags: newline - │ ├── if_keyword_loc: (1,0)-(1,2) = "if" - │ ├── predicate: - │ │ @ TrueNode (location: (1,3)-(1,7)) - │ │ └── flags: static_literal - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (2,2)-(2,8)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (2,2)-(2,8)) - │ │ ├── flags: newline - │ │ ├── opening_loc: (2,2)-(2,3) = "\"" - │ │ ├── parts: (length: 2) - │ │ │ ├── @ EmbeddedStatementsNode (location: (2,3)-(2,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (2,3)-(2,5) = "\#{" - │ │ │ │ ├── statements: ∅ - │ │ │ │ └── closing_loc: (2,5)-(2,6) = "}" - │ │ │ └── @ StringNode (location: (2,6)-(2,7)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (2,6)-(2,7) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ └── closing_loc: (2,7)-(2,8) = "\"" - │ ├── subsequent: ∅ - │ └── end_keyword_loc: (3,0)-(3,3) = "end" - ├── @ IfNode (location: (4,0)-(11,3)) - │ ├── flags: newline - │ ├── if_keyword_loc: (4,0)-(4,2) = "if" - │ ├── predicate: - │ │ @ TrueNode (location: (4,3)-(4,7)) - │ │ └── flags: static_literal - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (5,2)-(10,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 2) - │ │ ├── @ InterpolatedStringNode (location: (5,2)-(5,12)) - │ │ │ ├── flags: newline - │ │ │ ├── opening_loc: (5,2)-(5,12) = "<<-HEREDOC" - │ │ │ ├── parts: (length: 3) - │ │ │ │ ├── @ StringNode (location: (6,0)-(7,0)) - │ │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── content_loc: (6,0)-(7,0) = "a\n" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "a\n" - │ │ │ │ ├── @ EmbeddedStatementsNode (location: (7,0)-(7,3)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── opening_loc: (7,0)-(7,2) = "\#{" - │ │ │ │ │ ├── statements: ∅ - │ │ │ │ │ └── closing_loc: (7,2)-(7,3) = "}" - │ │ │ │ └── @ StringNode (location: (7,3)-(9,0)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (7,3)-(9,0) = "a\nb\n" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "a\nb\n" - │ │ │ └── closing_loc: (9,0)-(10,0) = " HEREDOC\n" - │ │ └── @ CallNode (location: (10,2)-(10,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :x - │ │ ├── message_loc: (10,2)-(10,3) = "x" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── subsequent: ∅ - │ └── end_keyword_loc: (11,0)-(11,3) = "end" - ├── @ InterpolatedStringNode (location: (12,0)-(12,10)) - │ ├── flags: newline - │ ├── opening_loc: (12,0)-(12,10) = "<<-HEREDOC" - │ ├── parts: (length: 7) - │ │ ├── @ StringNode (location: (13,0)-(14,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (13,0)-(14,0) = "\\\#{}\\\#{}\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\#{}\#{}\n" - │ │ ├── @ EmbeddedStatementsNode (location: (14,0)-(14,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (14,0)-(14,2) = "\#{" - │ │ │ ├── statements: ∅ - │ │ │ └── closing_loc: (14,2)-(14,3) = "}" - │ │ ├── @ StringNode (location: (14,3)-(15,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (14,3)-(15,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ ├── @ EmbeddedStatementsNode (location: (15,0)-(15,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (15,0)-(15,2) = "\#{" - │ │ │ ├── statements: ∅ - │ │ │ └── closing_loc: (15,2)-(15,3) = "}" - │ │ ├── @ StringNode (location: (15,3)-(16,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (15,3)-(16,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ ├── @ EmbeddedStatementsNode (location: (16,0)-(16,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (16,0)-(16,2) = "\#{" - │ │ │ ├── statements: ∅ - │ │ │ └── closing_loc: (16,2)-(16,3) = "}" - │ │ └── @ StringNode (location: (16,3)-(17,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (16,3)-(17,0) = "\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\n" - │ └── closing_loc: (17,0)-(18,0) = "HEREDOC\n" - ├── @ RescueModifierNode (location: (18,0)-(18,21)) - │ ├── flags: newline - │ ├── expression: - │ │ @ InterpolatedStringNode (location: (18,0)-(18,10)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (18,0)-(18,10) = "<<-HEREDOC" - │ │ ├── parts: (length: 2) - │ │ │ ├── @ EmbeddedStatementsNode (location: (19,0)-(19,3)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (19,0)-(19,2) = "\#{" - │ │ │ │ ├── statements: ∅ - │ │ │ │ └── closing_loc: (19,2)-(19,3) = "}" - │ │ │ └── @ StringNode (location: (19,3)-(21,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (19,3)-(21,0) = "\na\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\na\n" - │ │ └── closing_loc: (21,0)-(22,0) = "HEREDOC\n" - │ ├── keyword_loc: (18,11)-(18,17) = "rescue" - │ └── rescue_expression: - │ @ NilNode (location: (18,18)-(18,21)) - │ └── flags: static_literal - ├── @ InterpolatedStringNode (location: (22,0)-(22,6)) - │ ├── flags: newline - │ ├── opening_loc: (22,0)-(22,1) = "\"" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (22,1)-(22,2)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (22,1)-(22,2) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ └── @ EmbeddedVariableNode (location: (22,2)-(22,5)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (22,2)-(22,3) = "#" - │ │ └── variable: - │ │ @ NumberedReferenceReadNode (location: (22,3)-(22,5)) - │ │ ├── flags: ∅ - │ │ └── number: 1 - │ └── closing_loc: (22,5)-(22,6) = "\"" - ├── @ InterpolatedStringNode (location: (23,0)-(23,6)) - │ ├── flags: newline - │ ├── opening_loc: (23,0)-(23,1) = "\"" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (23,1)-(23,2)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (23,1)-(23,2) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ └── @ EmbeddedVariableNode (location: (23,2)-(23,5)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (23,2)-(23,3) = "#" - │ │ └── variable: - │ │ @ GlobalVariableReadNode (location: (23,3)-(23,5)) - │ │ ├── flags: ∅ - │ │ └── name: :$a - │ └── closing_loc: (23,5)-(23,6) = "\"" - ├── @ InterpolatedStringNode (location: (24,0)-(24,6)) - │ ├── flags: newline - │ ├── opening_loc: (24,0)-(24,1) = "\"" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (24,1)-(24,2)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (24,1)-(24,2) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ └── @ EmbeddedVariableNode (location: (24,2)-(24,5)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (24,2)-(24,3) = "#" - │ │ └── variable: - │ │ @ InstanceVariableReadNode (location: (24,3)-(24,5)) - │ │ ├── flags: ∅ - │ │ └── name: :@a - │ └── closing_loc: (24,5)-(24,6) = "\"" - ├── @ InterpolatedStringNode (location: (25,0)-(25,7)) - │ ├── flags: newline - │ ├── opening_loc: (25,0)-(25,1) = "\"" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (25,1)-(25,2)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (25,1)-(25,2) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ └── @ EmbeddedVariableNode (location: (25,2)-(25,6)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (25,2)-(25,3) = "#" - │ │ └── variable: - │ │ @ ClassVariableReadNode (location: (25,3)-(25,6)) - │ │ ├── flags: ∅ - │ │ └── name: :@@a - │ └── closing_loc: (25,6)-(25,7) = "\"" - ├── @ IfNode (location: (26,0)-(30,3)) - │ ├── flags: newline - │ ├── if_keyword_loc: (26,0)-(26,2) = "if" - │ ├── predicate: - │ │ @ TrueNode (location: (26,3)-(26,7)) - │ │ └── flags: static_literal - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (27,2)-(27,19)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ ReturnNode (location: (27,2)-(27,19)) - │ │ ├── flags: newline - │ │ ├── keyword_loc: (27,2)-(27,8) = "return" - │ │ └── arguments: - │ │ @ ArgumentsNode (location: (27,9)-(27,19)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (27,9)-(27,19)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (27,9)-(27,19) = "<<-HEREDOC" - │ │ ├── parts: (length: 3) - │ │ │ ├── @ StringNode (location: (28,0)-(28,4)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (28,0)-(28,4) = " " - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: " " - │ │ │ ├── @ EmbeddedStatementsNode (location: (28,4)-(28,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (28,4)-(28,6) = "\#{" - │ │ │ │ ├── statements: - │ │ │ │ │ @ StatementsNode (location: (28,6)-(28,8)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ IntegerNode (location: (28,6)-(28,8)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 42 - │ │ │ │ └── closing_loc: (28,8)-(28,9) = "}" - │ │ │ └── @ StringNode (location: (28,9)-(29,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (28,9)-(29,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ └── closing_loc: (29,0)-(30,0) = " HEREDOC\n" - │ ├── subsequent: ∅ - │ └── end_keyword_loc: (30,0)-(30,3) = "end" - ├── @ CallNode (location: (31,0)-(31,15)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (31,0)-(31,3) = "foo" - │ ├── opening_loc: (31,3)-(31,4) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (31,4)-(31,14)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (31,4)-(31,14)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (31,4)-(31,14) = "<<-HEREDOC" - │ │ ├── parts: (length: 3) - │ │ │ ├── @ StringNode (location: (32,0)-(32,2)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (32,0)-(32,2) = " " - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: " " - │ │ │ ├── @ EmbeddedStatementsNode (location: (32,2)-(32,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (32,2)-(32,4) = "\#{" - │ │ │ │ ├── statements: - │ │ │ │ │ @ StatementsNode (location: (32,4)-(32,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (32,4)-(32,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :bar - │ │ │ │ │ ├── message_loc: (32,4)-(32,7) = "bar" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ └── closing_loc: (32,7)-(32,8) = "}" - │ │ │ └── @ StringNode (location: (32,8)-(33,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (32,8)-(33,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ └── closing_loc: (33,0)-(34,0) = "HEREDOC\n" - │ ├── closing_loc: (31,14)-(31,15) = ")" - │ └── block: ∅ - └── @ CallNode (location: (34,0)-(37,1)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :foo - ├── message_loc: (34,0)-(34,3) = "foo" - ├── opening_loc: (34,3)-(34,4) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (34,4)-(34,14)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ InterpolatedStringNode (location: (34,4)-(34,14)) - │ ├── flags: ∅ - │ ├── opening_loc: (34,4)-(34,14) = "<<-HEREDOC" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (35,0)-(35,2)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (35,0)-(35,2) = " " - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: " " - │ │ ├── @ EmbeddedStatementsNode (location: (35,2)-(35,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (35,2)-(35,4) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (35,4)-(35,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (35,4)-(35,7)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (35,4)-(35,7) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── closing_loc: (35,7)-(35,8) = "}" - │ │ └── @ StringNode (location: (35,8)-(36,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (35,8)-(36,0) = "\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\n" - │ └── closing_loc: (36,0)-(37,0) = "HEREDOC\n" - ├── closing_loc: (34,14)-(34,15) = ")" - └── block: - @ BlockNode (location: (34,16)-(37,1)) - ├── flags: ∅ - ├── locals: [:x] - ├── parameters: - │ @ BlockParametersNode (location: (34,18)-(34,21)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (34,19)-(34,20)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (34,19)-(34,20)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :x - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (34,18)-(34,19) = "|" - │ └── closing_loc: (34,20)-(34,21) = "|" - ├── body: ∅ - ├── opening_loc: (34,16)-(34,17) = "{" - └── closing_loc: (37,0)-(37,1) = "}" diff --git a/test/prism/snapshots/unparser/corpus/literal/empty.txt b/test/prism/snapshots/unparser/corpus/literal/empty.txt deleted file mode 100644 index 5756285aaf..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/empty.txt +++ /dev/null @@ -1,7 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,0)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,0)) - ├── flags: ∅ - └── body: (length: 0) diff --git a/test/prism/snapshots/unparser/corpus/literal/empty_begin.txt b/test/prism/snapshots/unparser/corpus/literal/empty_begin.txt deleted file mode 100644 index 25dc0b26a2..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/empty_begin.txt +++ /dev/null @@ -1,12 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,2)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,2)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ParenthesesNode (location: (1,0)-(1,2)) - ├── flags: newline - ├── body: ∅ - ├── opening_loc: (1,0)-(1,1) = "(" - └── closing_loc: (1,1)-(1,2) = ")" diff --git a/test/prism/snapshots/unparser/corpus/literal/flipflop.txt b/test/prism/snapshots/unparser/corpus/literal/flipflop.txt deleted file mode 100644 index 418aa242cb..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/flipflop.txt +++ /dev/null @@ -1,257 +0,0 @@ -@ ProgramNode (location: (1,0)-(10,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(10,3)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ IfNode (location: (1,0)-(3,3)) - │ ├── flags: newline - │ ├── if_keyword_loc: (1,0)-(1,2) = "if" - │ ├── predicate: - │ │ @ ParenthesesNode (location: (1,3)-(1,23)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (1,4)-(1,22)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ FlipFlopNode (location: (1,4)-(1,22)) - │ │ │ ├── flags: newline - │ │ │ ├── left: - │ │ │ │ @ ParenthesesNode (location: (1,4)-(1,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── body: - │ │ │ │ │ @ StatementsNode (location: (1,5)-(1,11)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (1,5)-(1,11)) - │ │ │ │ │ ├── flags: newline - │ │ │ │ │ ├── receiver: - │ │ │ │ │ │ @ CallNode (location: (1,5)-(1,6)) - │ │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ │ ├── name: :i - │ │ │ │ │ │ ├── message_loc: (1,5)-(1,6) = "i" - │ │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ │ └── block: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :== - │ │ │ │ │ ├── message_loc: (1,7)-(1,9) = "==" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: - │ │ │ │ │ │ @ ArgumentsNode (location: (1,10)-(1,11)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ │ └── @ IntegerNode (location: (1,10)-(1,11)) - │ │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ │ └── value: 4 - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── opening_loc: (1,4)-(1,5) = "(" - │ │ │ │ └── closing_loc: (1,11)-(1,12) = ")" - │ │ │ ├── right: - │ │ │ │ @ ParenthesesNode (location: (1,14)-(1,22)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── body: - │ │ │ │ │ @ StatementsNode (location: (1,15)-(1,21)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (1,15)-(1,21)) - │ │ │ │ │ ├── flags: newline - │ │ │ │ │ ├── receiver: - │ │ │ │ │ │ @ CallNode (location: (1,15)-(1,16)) - │ │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ │ ├── name: :i - │ │ │ │ │ │ ├── message_loc: (1,15)-(1,16) = "i" - │ │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ │ └── block: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :== - │ │ │ │ │ ├── message_loc: (1,17)-(1,19) = "==" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: - │ │ │ │ │ │ @ ArgumentsNode (location: (1,20)-(1,21)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ │ └── @ IntegerNode (location: (1,20)-(1,21)) - │ │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ │ └── value: 4 - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── opening_loc: (1,14)-(1,15) = "(" - │ │ │ │ └── closing_loc: (1,21)-(1,22) = ")" - │ │ │ └── operator_loc: (1,12)-(1,14) = ".." - │ │ ├── opening_loc: (1,3)-(1,4) = "(" - │ │ └── closing_loc: (1,22)-(1,23) = ")" - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (2,2)-(2,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (2,2)-(2,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (2,2)-(2,5) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── subsequent: ∅ - │ └── end_keyword_loc: (3,0)-(3,3) = "end" - ├── @ IfNode (location: (4,0)-(6,3)) - │ ├── flags: newline - │ ├── if_keyword_loc: (4,0)-(4,2) = "if" - │ ├── predicate: - │ │ @ ParenthesesNode (location: (4,3)-(4,24)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (4,4)-(4,23)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ FlipFlopNode (location: (4,4)-(4,23)) - │ │ │ ├── flags: newline, exclude_end - │ │ │ ├── left: - │ │ │ │ @ ParenthesesNode (location: (4,4)-(4,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── body: - │ │ │ │ │ @ StatementsNode (location: (4,5)-(4,11)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (4,5)-(4,11)) - │ │ │ │ │ ├── flags: newline - │ │ │ │ │ ├── receiver: - │ │ │ │ │ │ @ CallNode (location: (4,5)-(4,6)) - │ │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ │ ├── name: :i - │ │ │ │ │ │ ├── message_loc: (4,5)-(4,6) = "i" - │ │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ │ └── block: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :== - │ │ │ │ │ ├── message_loc: (4,7)-(4,9) = "==" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: - │ │ │ │ │ │ @ ArgumentsNode (location: (4,10)-(4,11)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ │ └── @ IntegerNode (location: (4,10)-(4,11)) - │ │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ │ └── value: 4 - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── opening_loc: (4,4)-(4,5) = "(" - │ │ │ │ └── closing_loc: (4,11)-(4,12) = ")" - │ │ │ ├── right: - │ │ │ │ @ ParenthesesNode (location: (4,15)-(4,23)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── body: - │ │ │ │ │ @ StatementsNode (location: (4,16)-(4,22)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (4,16)-(4,22)) - │ │ │ │ │ ├── flags: newline - │ │ │ │ │ ├── receiver: - │ │ │ │ │ │ @ CallNode (location: (4,16)-(4,17)) - │ │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ │ ├── name: :i - │ │ │ │ │ │ ├── message_loc: (4,16)-(4,17) = "i" - │ │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ │ └── block: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :== - │ │ │ │ │ ├── message_loc: (4,18)-(4,20) = "==" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: - │ │ │ │ │ │ @ ArgumentsNode (location: (4,21)-(4,22)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ │ └── @ IntegerNode (location: (4,21)-(4,22)) - │ │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ │ └── value: 4 - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── opening_loc: (4,15)-(4,16) = "(" - │ │ │ │ └── closing_loc: (4,22)-(4,23) = ")" - │ │ │ └── operator_loc: (4,12)-(4,15) = "..." - │ │ ├── opening_loc: (4,3)-(4,4) = "(" - │ │ └── closing_loc: (4,23)-(4,24) = ")" - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (5,2)-(5,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (5,2)-(5,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (5,2)-(5,5) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── subsequent: ∅ - │ └── end_keyword_loc: (6,0)-(6,3) = "end" - ├── @ IfNode (location: (7,0)-(8,3)) - │ ├── flags: newline - │ ├── if_keyword_loc: (7,0)-(7,2) = "if" - │ ├── predicate: - │ │ @ FlipFlopNode (location: (7,3)-(7,8)) - │ │ ├── flags: ∅ - │ │ ├── left: ∅ - │ │ ├── right: - │ │ │ @ CallNode (location: (7,5)-(7,8)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (7,5)-(7,8) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (7,3)-(7,5) = ".." - │ ├── then_keyword_loc: ∅ - │ ├── statements: ∅ - │ ├── subsequent: ∅ - │ └── end_keyword_loc: (8,0)-(8,3) = "end" - └── @ IfNode (location: (9,0)-(10,3)) - ├── flags: newline - ├── if_keyword_loc: (9,0)-(9,2) = "if" - ├── predicate: - │ @ FlipFlopNode (location: (9,3)-(9,8)) - │ ├── flags: ∅ - │ ├── left: - │ │ @ CallNode (location: (9,3)-(9,6)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (9,3)-(9,6) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── right: ∅ - │ └── operator_loc: (9,6)-(9,8) = ".." - ├── then_keyword_loc: ∅ - ├── statements: ∅ - ├── subsequent: ∅ - └── end_keyword_loc: (10,0)-(10,3) = "end" diff --git a/test/prism/snapshots/unparser/corpus/literal/for.txt b/test/prism/snapshots/unparser/corpus/literal/for.txt deleted file mode 100644 index a1722a8a09..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/for.txt +++ /dev/null @@ -1,190 +0,0 @@ -@ ProgramNode (location: (1,0)-(12,3)) -├── flags: ∅ -├── locals: [:a, :b] -└── statements: - @ StatementsNode (location: (1,0)-(12,3)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ CallNode (location: (1,0)-(3,4)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (1,0)-(1,3) = "bar" - │ ├── opening_loc: (1,3)-(1,4) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,4)-(3,3)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ ForNode (location: (1,4)-(3,3)) - │ │ ├── flags: ∅ - │ │ ├── index: - │ │ │ @ LocalVariableTargetNode (location: (1,8)-(1,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ ├── collection: - │ │ │ @ CallNode (location: (1,13)-(1,16)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (1,13)-(1,16) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (2,2)-(2,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (2,2)-(2,5)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (2,2)-(2,5) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── for_keyword_loc: (1,4)-(1,7) = "for" - │ │ ├── in_keyword_loc: (1,10)-(1,12) = "in" - │ │ ├── do_keyword_loc: (1,17)-(1,19) = "do" - │ │ └── end_keyword_loc: (3,0)-(3,3) = "end" - │ ├── closing_loc: (3,3)-(3,4) = ")" - │ └── block: ∅ - ├── @ ForNode (location: (4,0)-(6,3)) - │ ├── flags: newline - │ ├── index: - │ │ @ LocalVariableTargetNode (location: (4,4)-(4,5)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── collection: - │ │ @ CallNode (location: (4,9)-(4,12)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (4,9)-(4,12) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (5,2)-(5,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (5,2)-(5,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (5,2)-(5,5) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── for_keyword_loc: (4,0)-(4,3) = "for" - │ ├── in_keyword_loc: (4,6)-(4,8) = "in" - │ ├── do_keyword_loc: (4,13)-(4,15) = "do" - │ └── end_keyword_loc: (6,0)-(6,3) = "end" - ├── @ ForNode (location: (7,0)-(9,3)) - │ ├── flags: newline - │ ├── index: - │ │ @ MultiTargetNode (location: (7,4)-(7,11)) - │ │ ├── flags: ∅ - │ │ ├── lefts: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (7,5)-(7,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ ├── rest: - │ │ │ @ SplatNode (location: (7,8)-(7,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (7,8)-(7,9) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableTargetNode (location: (7,9)-(7,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ └── depth: 0 - │ │ ├── rights: (length: 0) - │ │ ├── lparen_loc: (7,4)-(7,5) = "(" - │ │ └── rparen_loc: (7,10)-(7,11) = ")" - │ ├── collection: - │ │ @ CallNode (location: (7,15)-(7,18)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (7,15)-(7,18) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (8,2)-(8,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (8,2)-(8,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (8,2)-(8,5) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── for_keyword_loc: (7,0)-(7,3) = "for" - │ ├── in_keyword_loc: (7,12)-(7,14) = "in" - │ ├── do_keyword_loc: (7,19)-(7,21) = "do" - │ └── end_keyword_loc: (9,0)-(9,3) = "end" - └── @ ForNode (location: (10,0)-(12,3)) - ├── flags: newline - ├── index: - │ @ MultiTargetNode (location: (10,4)-(10,10)) - │ ├── flags: ∅ - │ ├── lefts: (length: 2) - │ │ ├── @ LocalVariableTargetNode (location: (10,5)-(10,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ └── @ LocalVariableTargetNode (location: (10,8)-(10,9)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ └── depth: 0 - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: (10,4)-(10,5) = "(" - │ └── rparen_loc: (10,9)-(10,10) = ")" - ├── collection: - │ @ CallNode (location: (10,14)-(10,17)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (10,14)-(10,17) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── statements: - │ @ StatementsNode (location: (11,2)-(11,5)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (11,2)-(11,5)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :baz - │ ├── message_loc: (11,2)-(11,5) = "baz" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── for_keyword_loc: (10,0)-(10,3) = "for" - ├── in_keyword_loc: (10,11)-(10,13) = "in" - ├── do_keyword_loc: (10,18)-(10,20) = "do" - └── end_keyword_loc: (12,0)-(12,3) = "end" diff --git a/test/prism/snapshots/unparser/corpus/literal/hookexe.txt b/test/prism/snapshots/unparser/corpus/literal/hookexe.txt deleted file mode 100644 index bbcb8fee1b..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/hookexe.txt +++ /dev/null @@ -1,55 +0,0 @@ -@ ProgramNode (location: (1,0)-(7,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(7,1)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ PreExecutionNode (location: (1,0)-(3,1)) - │ ├── flags: newline - │ ├── statements: - │ │ @ StatementsNode (location: (2,2)-(2,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (2,2)-(2,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (2,2)-(2,5) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── keyword_loc: (1,0)-(1,5) = "BEGIN" - │ ├── opening_loc: (1,6)-(1,7) = "{" - │ └── closing_loc: (3,0)-(3,1) = "}" - ├── @ CallNode (location: (4,0)-(4,3)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (4,0)-(4,3) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ PostExecutionNode (location: (5,0)-(7,1)) - ├── flags: newline - ├── statements: - │ @ StatementsNode (location: (6,2)-(6,5)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (6,2)-(6,5)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :baz - │ ├── message_loc: (6,2)-(6,5) = "baz" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── keyword_loc: (5,0)-(5,3) = "END" - ├── opening_loc: (5,4)-(5,5) = "{" - └── closing_loc: (7,0)-(7,1) = "}" diff --git a/test/prism/snapshots/unparser/corpus/literal/if.txt b/test/prism/snapshots/unparser/corpus/literal/if.txt deleted file mode 100644 index 10240962c5..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/if.txt +++ /dev/null @@ -1,330 +0,0 @@ -@ ProgramNode (location: (1,0)-(36,3)) -├── flags: ∅ -├── locals: [:foo, :pair] -└── statements: - @ StatementsNode (location: (1,0)-(36,3)) - ├── flags: ∅ - └── body: (length: 10) - ├── @ IfNode (location: (1,0)-(3,3)) - │ ├── flags: newline - │ ├── if_keyword_loc: (1,0)-(1,2) = "if" - │ ├── predicate: - │ │ @ MatchLastLineNode (location: (1,3)-(1,8)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,3)-(1,4) = "/" - │ │ ├── content_loc: (1,4)-(1,7) = "foo" - │ │ ├── closing_loc: (1,7)-(1,8) = "/" - │ │ └── unescaped: "foo" - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (2,2)-(2,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (2,2)-(2,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (2,2)-(2,5) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── subsequent: ∅ - │ └── end_keyword_loc: (3,0)-(3,3) = "end" - ├── @ IfNode (location: (4,0)-(6,3)) - │ ├── flags: newline - │ ├── if_keyword_loc: (4,0)-(4,2) = "if" - │ ├── predicate: - │ │ @ IntegerNode (location: (4,3)-(4,4)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 3 - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (5,2)-(5,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (5,2)-(5,3)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 9 - │ ├── subsequent: ∅ - │ └── end_keyword_loc: (6,0)-(6,3) = "end" - ├── @ IfNode (location: (7,0)-(11,3)) - │ ├── flags: newline - │ ├── if_keyword_loc: (7,0)-(7,2) = "if" - │ ├── predicate: - │ │ @ IntegerNode (location: (7,3)-(7,4)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 4 - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (8,2)-(8,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (8,2)-(8,3)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 5 - │ ├── subsequent: - │ │ @ ElseNode (location: (9,0)-(11,3)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (9,0)-(9,4) = "else" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (10,2)-(10,3)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ IntegerNode (location: (10,2)-(10,3)) - │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ └── value: 6 - │ │ └── end_keyword_loc: (11,0)-(11,3) = "end" - │ └── end_keyword_loc: (11,0)-(11,3) = "end" - ├── @ UnlessNode (location: (12,0)-(14,3)) - │ ├── flags: newline - │ ├── keyword_loc: (12,0)-(12,6) = "unless" - │ ├── predicate: - │ │ @ IntegerNode (location: (12,7)-(12,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 3 - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (13,2)-(13,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ NilNode (location: (13,2)-(13,5)) - │ │ └── flags: newline, static_literal - │ ├── else_clause: ∅ - │ └── end_keyword_loc: (14,0)-(14,3) = "end" - ├── @ UnlessNode (location: (15,0)-(17,3)) - │ ├── flags: newline - │ ├── keyword_loc: (15,0)-(15,6) = "unless" - │ ├── predicate: - │ │ @ IntegerNode (location: (15,7)-(15,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 3 - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (16,2)-(16,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (16,2)-(16,3)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 9 - │ ├── else_clause: ∅ - │ └── end_keyword_loc: (17,0)-(17,3) = "end" - ├── @ IfNode (location: (18,0)-(19,3)) - │ ├── flags: newline - │ ├── if_keyword_loc: (18,0)-(18,2) = "if" - │ ├── predicate: - │ │ @ CallNode (location: (18,3)-(18,6)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (18,3)-(18,6) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: ∅ - │ ├── statements: ∅ - │ ├── subsequent: ∅ - │ └── end_keyword_loc: (19,0)-(19,3) = "end" - ├── @ ModuleNode (location: (21,0)-(23,3)) - │ ├── flags: newline - │ ├── locals: [:foo] - │ ├── module_keyword_loc: (21,0)-(21,6) = "module" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (21,7)-(21,8)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── body: - │ │ @ StatementsNode (location: (22,2)-(22,18)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IfNode (location: (22,2)-(22,18)) - │ │ ├── flags: newline - │ │ ├── if_keyword_loc: (22,12)-(22,14) = "if" - │ │ ├── predicate: - │ │ │ @ LocalVariableReadNode (location: (22,15)-(22,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :foo - │ │ │ └── depth: 0 - │ │ ├── then_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (22,2)-(22,11)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ LocalVariableWriteNode (location: (22,2)-(22,11)) - │ │ │ ├── flags: newline - │ │ │ ├── name: :foo - │ │ │ ├── depth: 0 - │ │ │ ├── name_loc: (22,2)-(22,5) = "foo" - │ │ │ ├── value: - │ │ │ │ @ CallNode (location: (22,8)-(22,11)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (22,8)-(22,11) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── operator_loc: (22,6)-(22,7) = "=" - │ │ ├── subsequent: ∅ - │ │ └── end_keyword_loc: ∅ - │ ├── end_keyword_loc: (23,0)-(23,3) = "end" - │ └── name: :A - ├── @ ModuleNode (location: (25,0)-(27,3)) - │ ├── flags: newline - │ ├── locals: [:foo] - │ ├── module_keyword_loc: (25,0)-(25,6) = "module" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (25,7)-(25,8)) - │ │ ├── flags: ∅ - │ │ └── name: :B - │ ├── body: - │ │ @ StatementsNode (location: (26,2)-(26,22)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ UnlessNode (location: (26,2)-(26,22)) - │ │ ├── flags: newline - │ │ ├── keyword_loc: (26,12)-(26,18) = "unless" - │ │ ├── predicate: - │ │ │ @ LocalVariableReadNode (location: (26,19)-(26,22)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :foo - │ │ │ └── depth: 0 - │ │ ├── then_keyword_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (26,2)-(26,11)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ LocalVariableWriteNode (location: (26,2)-(26,11)) - │ │ │ ├── flags: newline - │ │ │ ├── name: :foo - │ │ │ ├── depth: 0 - │ │ │ ├── name_loc: (26,2)-(26,5) = "foo" - │ │ │ ├── value: - │ │ │ │ @ CallNode (location: (26,8)-(26,11)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (26,8)-(26,11) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── operator_loc: (26,6)-(26,7) = "=" - │ │ ├── else_clause: ∅ - │ │ └── end_keyword_loc: ∅ - │ ├── end_keyword_loc: (27,0)-(27,3) = "end" - │ └── name: :B - ├── @ UnlessNode (location: (28,0)-(30,3)) - │ ├── flags: newline - │ ├── keyword_loc: (28,0)-(28,6) = "unless" - │ ├── predicate: - │ │ @ CallNode (location: (28,7)-(28,10)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (28,7)-(28,10) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (29,2)-(29,11)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableWriteNode (location: (29,2)-(29,11)) - │ │ ├── flags: newline - │ │ ├── name: :foo - │ │ ├── depth: 0 - │ │ ├── name_loc: (29,2)-(29,5) = "foo" - │ │ ├── value: - │ │ │ @ CallNode (location: (29,8)-(29,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (29,8)-(29,11) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (29,6)-(29,7) = "=" - │ ├── else_clause: ∅ - │ └── end_keyword_loc: (30,0)-(30,3) = "end" - └── @ IfNode (location: (31,0)-(36,3)) - ├── flags: newline - ├── if_keyword_loc: (31,0)-(31,2) = "if" - ├── predicate: - │ @ CallNode (location: (31,3)-(33,1)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (31,3)-(31,6) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (31,7)-(33,1)) - │ ├── flags: ∅ - │ ├── locals: [:pair] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (31,9)-(31,15)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (31,10)-(31,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (31,10)-(31,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :pair - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (31,9)-(31,10) = "|" - │ │ └── closing_loc: (31,14)-(31,15) = "|" - │ ├── body: - │ │ @ StatementsNode (location: (32,2)-(32,6)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (32,2)-(32,6)) - │ │ ├── flags: newline - │ │ ├── name: :pair - │ │ └── depth: 0 - │ ├── opening_loc: (31,7)-(31,8) = "{" - │ └── closing_loc: (33,0)-(33,1) = "}" - ├── then_keyword_loc: ∅ - ├── statements: - │ @ StatementsNode (location: (34,2)-(35,5)) - │ ├── flags: ∅ - │ └── body: (length: 2) - │ ├── @ LocalVariableWriteNode (location: (34,2)-(34,13)) - │ │ ├── flags: newline - │ │ ├── name: :pair - │ │ ├── depth: 0 - │ │ ├── name_loc: (34,2)-(34,6) = "pair" - │ │ ├── value: - │ │ │ @ SymbolNode (location: (34,9)-(34,13)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (34,9)-(34,10) = ":" - │ │ │ ├── value_loc: (34,10)-(34,13) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ └── operator_loc: (34,7)-(34,8) = "=" - │ └── @ LocalVariableReadNode (location: (35,2)-(35,5)) - │ ├── flags: newline - │ ├── name: :foo - │ └── depth: 0 - ├── subsequent: ∅ - └── end_keyword_loc: (36,0)-(36,3) = "end" diff --git a/test/prism/snapshots/unparser/corpus/literal/kwbegin.txt b/test/prism/snapshots/unparser/corpus/literal/kwbegin.txt deleted file mode 100644 index 9c7febe206..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/kwbegin.txt +++ /dev/null @@ -1,570 +0,0 @@ -@ ProgramNode (location: (1,0)-(80,3)) -├── flags: ∅ -├── locals: [:foo, :bar, :exception] -└── statements: - @ StatementsNode (location: (1,0)-(80,3)) - ├── flags: ∅ - └── body: (length: 14) - ├── @ BeginNode (location: (1,0)-(3,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (1,0)-(1,5) = "begin" - │ ├── statements: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (2,0)-(2,6)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (2,0)-(2,6) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (3,0)-(3,3) = "end" - ├── @ BeginNode (location: (5,0)-(7,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (5,0)-(5,5) = "begin" - │ ├── statements: ∅ - │ ├── rescue_clause: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: - │ │ @ EnsureNode (location: (6,0)-(7,3)) - │ │ ├── flags: ∅ - │ │ ├── ensure_keyword_loc: (6,0)-(6,6) = "ensure" - │ │ ├── statements: ∅ - │ │ └── end_keyword_loc: (7,0)-(7,3) = "end" - │ └── end_keyword_loc: (7,0)-(7,3) = "end" - ├── @ BeginNode (location: (9,0)-(11,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (9,0)-(9,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (10,2)-(10,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (10,2)-(10,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (10,2)-(10,3) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (11,0)-(11,3) = "end" - ├── @ BeginNode (location: (13,0)-(17,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (13,0)-(13,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (14,2)-(14,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (14,2)-(14,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (14,2)-(14,3) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (15,0)-(16,3)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (15,0)-(15,6) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (16,2)-(16,3)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (16,2)-(16,3)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (16,2)-(16,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (17,0)-(17,3) = "end" - ├── @ BeginNode (location: (19,0)-(24,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (19,0)-(19,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (20,2)-(21,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 2) - │ │ ├── @ CallNode (location: (20,2)-(20,3)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (20,2)-(20,3) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ CallNode (location: (21,2)-(21,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (21,2)-(21,3) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (22,0)-(23,3)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (22,0)-(22,6) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (23,2)-(23,3)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (23,2)-(23,3)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (23,2)-(23,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (24,0)-(24,3) = "end" - ├── @ BeginNode (location: (26,0)-(28,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (26,0)-(26,5) = "begin" - │ ├── statements: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (27,0)-(27,8)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (27,0)-(27,6) = "rescue" - │ │ ├── exceptions: (length: 1) - │ │ │ └── @ ConstantReadNode (location: (27,7)-(27,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :A - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (28,0)-(28,3) = "end" - ├── @ BeginNode (location: (30,0)-(32,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (30,0)-(30,5) = "begin" - │ ├── statements: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (31,0)-(31,15)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (31,0)-(31,6) = "rescue" - │ │ ├── exceptions: (length: 1) - │ │ │ └── @ ConstantReadNode (location: (31,7)-(31,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :A - │ │ ├── operator_loc: (31,9)-(31,11) = "=>" - │ │ ├── reference: - │ │ │ @ LocalVariableTargetNode (location: (31,12)-(31,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :foo - │ │ │ └── depth: 0 - │ │ ├── statements: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (32,0)-(32,3) = "end" - ├── @ BeginNode (location: (34,0)-(42,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (34,0)-(34,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (35,2)-(35,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (35,2)-(35,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (35,2)-(35,3) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (36,0)-(39,3)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (36,0)-(36,6) = "rescue" - │ │ ├── exceptions: (length: 1) - │ │ │ └── @ ConstantReadNode (location: (36,7)-(36,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :A - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (37,2)-(37,3)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (37,2)-(37,3)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (37,2)-(37,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: - │ │ @ RescueNode (location: (38,0)-(39,3)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (38,0)-(38,6) = "rescue" - │ │ ├── exceptions: (length: 1) - │ │ │ └── @ ConstantReadNode (location: (38,7)-(38,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :B - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (39,2)-(39,3)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (39,2)-(39,3)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :c - │ │ │ ├── message_loc: (39,2)-(39,3) = "c" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: - │ │ @ EnsureNode (location: (40,0)-(42,3)) - │ │ ├── flags: ∅ - │ │ ├── ensure_keyword_loc: (40,0)-(40,6) = "ensure" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (41,2)-(41,3)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (41,2)-(41,3)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :d - │ │ │ ├── message_loc: (41,2)-(41,3) = "d" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── end_keyword_loc: (42,0)-(42,3) = "end" - │ └── end_keyword_loc: (42,0)-(42,3) = "end" - ├── @ BeginNode (location: (44,0)-(53,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (44,0)-(44,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (45,2)-(49,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ BeginNode (location: (45,2)-(49,5)) - │ │ ├── flags: newline - │ │ ├── begin_keyword_loc: (45,2)-(45,7) = "begin" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (46,4)-(47,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 2) - │ │ │ ├── @ LocalVariableReadNode (location: (46,4)-(46,7)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── name: :foo - │ │ │ │ └── depth: 0 - │ │ │ └── @ CallNode (location: (47,4)-(47,7)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (47,4)-(47,7) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── rescue_clause: - │ │ │ @ RescueNode (location: (48,2)-(48,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (48,2)-(48,8) = "rescue" - │ │ │ ├── exceptions: (length: 0) - │ │ │ ├── operator_loc: ∅ - │ │ │ ├── reference: ∅ - │ │ │ ├── statements: ∅ - │ │ │ └── subsequent: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: ∅ - │ │ └── end_keyword_loc: (49,2)-(49,5) = "end" - │ ├── rescue_clause: - │ │ @ RescueNode (location: (50,0)-(52,5)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (50,0)-(50,6) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (51,2)-(52,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 2) - │ │ │ ├── @ CallNode (location: (51,2)-(51,5)) - │ │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ ├── message_loc: (51,2)-(51,5) = "baz" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── @ CallNode (location: (52,2)-(52,5)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (52,2)-(52,5) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (53,0)-(53,3) = "end" - ├── @ BeginNode (location: (55,0)-(58,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (55,0)-(55,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (56,2)-(56,35)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ RescueModifierNode (location: (56,2)-(56,35)) - │ │ ├── flags: newline - │ │ ├── expression: - │ │ │ @ CallNode (location: (56,2)-(56,18)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :raise - │ │ │ ├── message_loc: (56,2)-(56,7) = "raise" - │ │ │ ├── opening_loc: (56,7)-(56,8) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (56,8)-(56,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ ConstantReadNode (location: (56,8)-(56,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :Exception - │ │ │ ├── closing_loc: (56,17)-(56,18) = ")" - │ │ │ └── block: ∅ - │ │ ├── keyword_loc: (56,19)-(56,25) = "rescue" - │ │ └── rescue_expression: - │ │ @ LocalVariableWriteNode (location: (56,26)-(56,35)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ ├── depth: 0 - │ │ ├── name_loc: (56,26)-(56,29) = "foo" - │ │ ├── value: - │ │ │ @ CallNode (location: (56,32)-(56,35)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (56,32)-(56,35) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (56,30)-(56,31) = "=" - │ ├── rescue_clause: - │ │ @ RescueNode (location: (57,0)-(57,16)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (57,0)-(57,6) = "rescue" - │ │ ├── exceptions: (length: 1) - │ │ │ └── @ ConstantReadNode (location: (57,7)-(57,16)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Exception - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (58,0)-(58,3) = "end" - ├── @ BeginNode (location: (60,0)-(64,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (60,0)-(60,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (61,2)-(61,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (61,2)-(61,5)) - │ │ ├── flags: newline - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── rescue_clause: - │ │ @ RescueNode (location: (62,0)-(63,5)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (62,0)-(62,6) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: (62,7)-(62,9) = "=>" - │ │ ├── reference: - │ │ │ @ LocalVariableTargetNode (location: (62,10)-(62,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (63,2)-(63,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ LocalVariableReadNode (location: (63,2)-(63,5)) - │ │ │ ├── flags: newline - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (64,0)-(64,3) = "end" - ├── @ BeginNode (location: (66,0)-(70,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (66,0)-(66,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (67,2)-(67,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (67,2)-(67,5)) - │ │ ├── flags: newline - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── rescue_clause: - │ │ @ RescueNode (location: (68,0)-(69,5)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (68,0)-(68,6) = "rescue" - │ │ ├── exceptions: (length: 2) - │ │ │ ├── @ ConstantReadNode (location: (68,7)-(68,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :Exception - │ │ │ └── @ ConstantReadNode (location: (68,18)-(68,23)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Other - │ │ ├── operator_loc: (68,24)-(68,26) = "=>" - │ │ ├── reference: - │ │ │ @ LocalVariableTargetNode (location: (68,27)-(68,30)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (69,2)-(69,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ LocalVariableReadNode (location: (69,2)-(69,5)) - │ │ │ ├── flags: newline - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (70,0)-(70,3) = "end" - ├── @ BeginNode (location: (72,0)-(76,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (72,0)-(72,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (73,2)-(73,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (73,2)-(73,5)) - │ │ ├── flags: newline - │ │ ├── name: :bar - │ │ └── depth: 0 - │ ├── rescue_clause: - │ │ @ RescueNode (location: (74,0)-(75,5)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (74,0)-(74,6) = "rescue" - │ │ ├── exceptions: (length: 2) - │ │ │ ├── @ ConstantReadNode (location: (74,7)-(74,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :SomeError - │ │ │ └── @ SplatNode (location: (74,18)-(74,22)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (74,18)-(74,19) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableReadNode (location: (74,19)-(74,22)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── operator_loc: (74,23)-(74,25) = "=>" - │ │ ├── reference: - │ │ │ @ LocalVariableTargetNode (location: (74,26)-(74,35)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :exception - │ │ │ └── depth: 0 - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (75,2)-(75,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (75,2)-(75,5)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (75,2)-(75,5) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (76,0)-(76,3) = "end" - └── @ SingletonClassNode (location: (78,0)-(80,3)) - ├── flags: newline - ├── locals: [] - ├── class_keyword_loc: (78,0)-(78,5) = "class" - ├── operator_loc: (78,6)-(78,8) = "<<" - ├── expression: - │ @ SelfNode (location: (78,9)-(78,13)) - │ └── flags: ∅ - ├── body: - │ @ StatementsNode (location: (79,2)-(79,23)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ RescueModifierNode (location: (79,2)-(79,23)) - │ ├── flags: newline - │ ├── expression: - │ │ @ UndefNode (location: (79,2)-(79,12)) - │ │ ├── flags: ∅ - │ │ ├── names: (length: 1) - │ │ │ └── @ SymbolNode (location: (79,8)-(79,12)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (79,8)-(79,9) = ":" - │ │ │ ├── value_loc: (79,9)-(79,12) = "bar" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "bar" - │ │ └── keyword_loc: (79,2)-(79,7) = "undef" - │ ├── keyword_loc: (79,13)-(79,19) = "rescue" - │ └── rescue_expression: - │ @ NilNode (location: (79,20)-(79,23)) - │ └── flags: static_literal - └── end_keyword_loc: (80,0)-(80,3) = "end" diff --git a/test/prism/snapshots/unparser/corpus/literal/lambda.txt b/test/prism/snapshots/unparser/corpus/literal/lambda.txt deleted file mode 100644 index 863678f17b..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/lambda.txt +++ /dev/null @@ -1,170 +0,0 @@ -@ ProgramNode (location: (1,0)-(13,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(13,1)) - ├── flags: ∅ - └── body: (length: 6) - ├── @ CallNode (location: (1,0)-(2,1)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :lambda - │ ├── message_loc: (1,0)-(1,6) = "lambda" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (1,7)-(2,1)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (1,7)-(1,8) = "{" - │ └── closing_loc: (2,0)-(2,1) = "}" - ├── @ CallNode (location: (3,0)-(5,1)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :lambda - │ ├── message_loc: (3,0)-(3,6) = "lambda" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (3,7)-(5,1)) - │ ├── flags: ∅ - │ ├── locals: [:a, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (3,9)-(3,15)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (3,10)-(3,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 2) - │ │ │ │ ├── @ RequiredParameterNode (location: (3,10)-(3,11)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :a - │ │ │ │ └── @ RequiredParameterNode (location: (3,13)-(3,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :b - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (3,9)-(3,10) = "|" - │ │ └── closing_loc: (3,14)-(3,15) = "|" - │ ├── body: - │ │ @ StatementsNode (location: (4,2)-(4,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (4,2)-(4,3)) - │ │ ├── flags: newline - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── opening_loc: (3,7)-(3,8) = "{" - │ └── closing_loc: (5,0)-(5,1) = "}" - ├── @ LambdaNode (location: (6,0)-(7,1)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── operator_loc: (6,0)-(6,2) = "->" - │ ├── opening_loc: (6,5)-(6,6) = "{" - │ ├── closing_loc: (7,0)-(7,1) = "}" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (6,2)-(6,4)) - │ │ ├── flags: ∅ - │ │ ├── parameters: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (6,2)-(6,3) = "(" - │ │ └── closing_loc: (6,3)-(6,4) = ")" - │ └── body: ∅ - ├── @ LambdaNode (location: (8,0)-(9,1)) - │ ├── flags: newline - │ ├── locals: [:a] - │ ├── operator_loc: (8,0)-(8,2) = "->" - │ ├── opening_loc: (8,6)-(8,7) = "{" - │ ├── closing_loc: (9,0)-(9,1) = "}" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (8,2)-(8,5)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (8,3)-(8,4)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (8,3)-(8,4)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (8,2)-(8,3) = "(" - │ │ └── closing_loc: (8,4)-(8,5) = ")" - │ └── body: ∅ - ├── @ LambdaNode (location: (10,0)-(11,1)) - │ ├── flags: newline - │ ├── locals: [:a, :b] - │ ├── operator_loc: (10,0)-(10,2) = "->" - │ ├── opening_loc: (10,9)-(10,10) = "{" - │ ├── closing_loc: (11,0)-(11,1) = "}" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (10,2)-(10,8)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (10,3)-(10,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 2) - │ │ │ │ ├── @ RequiredParameterNode (location: (10,3)-(10,4)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :a - │ │ │ │ └── @ RequiredParameterNode (location: (10,6)-(10,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :b - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (10,2)-(10,3) = "(" - │ │ └── closing_loc: (10,7)-(10,8) = ")" - │ └── body: ∅ - └── @ LambdaNode (location: (12,0)-(13,1)) - ├── flags: newline - ├── locals: [:a, :b, :c] - ├── operator_loc: (12,0)-(12,2) = "->" - ├── opening_loc: (12,12)-(12,13) = "{" - ├── closing_loc: (13,0)-(13,1) = "}" - ├── parameters: - │ @ BlockParametersNode (location: (12,2)-(12,11)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (12,3)-(12,7)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ RequiredParameterNode (location: (12,3)-(12,4)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ └── @ RequiredParameterNode (location: (12,6)-(12,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :b - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 1) - │ │ └── @ BlockLocalVariableNode (location: (12,9)-(12,10)) - │ │ ├── flags: ∅ - │ │ └── name: :c - │ ├── opening_loc: (12,2)-(12,3) = "(" - │ └── closing_loc: (12,10)-(12,11) = ")" - └── body: ∅ diff --git a/test/prism/snapshots/unparser/corpus/literal/literal.txt b/test/prism/snapshots/unparser/corpus/literal/literal.txt deleted file mode 100644 index 430a8a0679..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/literal.txt +++ /dev/null @@ -1,1309 +0,0 @@ -@ ProgramNode (location: (1,0)-(91,2)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(91,2)) - ├── flags: ∅ - └── body: (length: 78) - ├── @ HashNode (location: (1,0)-(1,38)) - │ ├── flags: newline - │ ├── opening_loc: (1,0)-(1,1) = "{" - │ ├── elements: (length: 2) - │ │ ├── @ AssocNode (location: (1,2)-(1,21)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ StringNode (location: (1,2)-(1,7)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: (1,2)-(1,3) = "\"" - │ │ │ │ ├── content_loc: (1,3)-(1,6) = "foo" - │ │ │ │ ├── closing_loc: (1,6)-(1,7) = "\"" - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── value: - │ │ │ │ @ InterpolatedStringNode (location: (1,11)-(1,21)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (1,11)-(1,21) = "<<-HEREDOC" - │ │ │ │ ├── parts: (length: 3) - │ │ │ │ │ ├── @ StringNode (location: (2,0)-(2,2)) - │ │ │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ │ ├── content_loc: (2,0)-(2,2) = " " - │ │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ │ └── unescaped: " " - │ │ │ │ │ ├── @ EmbeddedStatementsNode (location: (2,2)-(2,5)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ ├── opening_loc: (2,2)-(2,4) = "\#{" - │ │ │ │ │ │ ├── statements: ∅ - │ │ │ │ │ │ └── closing_loc: (2,4)-(2,5) = "}" - │ │ │ │ │ └── @ StringNode (location: (2,5)-(3,0)) - │ │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── content_loc: (2,5)-(3,0) = "\n" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "\n" - │ │ │ │ └── closing_loc: (3,0)-(4,0) = "HEREDOC\n" - │ │ │ └── operator_loc: (1,8)-(1,10) = "=>" - │ │ └── @ AssocNode (location: (1,23)-(1,36)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ StringNode (location: (1,23)-(1,28)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: (1,23)-(1,24) = "\"" - │ │ │ ├── content_loc: (1,24)-(1,27) = "bar" - │ │ │ ├── closing_loc: (1,27)-(1,28) = "\"" - │ │ │ └── unescaped: "bar" - │ │ ├── value: - │ │ │ @ SymbolNode (location: (1,32)-(1,36)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (1,32)-(1,33) = ":" - │ │ │ ├── value_loc: (1,33)-(1,36) = "baz" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "baz" - │ │ └── operator_loc: (1,29)-(1,31) = "=>" - │ └── closing_loc: (1,37)-(1,38) = "}" - ├── @ HashNode (location: (4,0)-(4,31)) - │ ├── flags: newline - │ ├── opening_loc: (4,0)-(4,1) = "{" - │ ├── elements: (length: 2) - │ │ ├── @ AssocNode (location: (4,2)-(4,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ StringNode (location: (4,2)-(4,7)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: (4,2)-(4,3) = "\"" - │ │ │ │ ├── content_loc: (4,3)-(4,6) = "foo" - │ │ │ │ ├── closing_loc: (4,6)-(4,7) = "\"" - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── value: - │ │ │ │ @ StringNode (location: (4,11)-(4,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (4,11)-(4,13) = "%(" - │ │ │ │ ├── content_loc: (4,13)-(4,13) = "" - │ │ │ │ ├── closing_loc: (4,13)-(4,14) = ")" - │ │ │ │ └── unescaped: "" - │ │ │ └── operator_loc: (4,8)-(4,10) = "=>" - │ │ └── @ AssocNode (location: (4,16)-(4,29)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ StringNode (location: (4,16)-(4,21)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: (4,16)-(4,17) = "\"" - │ │ │ ├── content_loc: (4,17)-(4,20) = "bar" - │ │ │ ├── closing_loc: (4,20)-(4,21) = "\"" - │ │ │ └── unescaped: "bar" - │ │ ├── value: - │ │ │ @ SymbolNode (location: (4,25)-(4,29)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (4,25)-(4,26) = ":" - │ │ │ ├── value_loc: (4,26)-(4,29) = "baz" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "baz" - │ │ └── operator_loc: (4,22)-(4,24) = "=>" - │ └── closing_loc: (4,30)-(4,31) = "}" - ├── @ ArrayNode (location: (5,0)-(5,12)) - │ ├── flags: newline - │ ├── elements: (length: 2) - │ │ ├── @ StringNode (location: (5,1)-(5,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (5,1)-(5,2) = "\"" - │ │ │ ├── content_loc: (5,2)-(5,5) = "foo" - │ │ │ ├── closing_loc: (5,5)-(5,6) = "\"" - │ │ │ └── unescaped: "foo" - │ │ └── @ StringNode (location: (5,8)-(5,11)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (5,8)-(5,10) = "%(" - │ │ ├── content_loc: (5,10)-(5,10) = "" - │ │ ├── closing_loc: (5,10)-(5,11) = ")" - │ │ └── unescaped: "" - │ ├── opening_loc: (5,0)-(5,1) = "[" - │ └── closing_loc: (5,11)-(5,12) = "]" - ├── @ CallNode (location: (6,0)-(6,15)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (6,0)-(6,13)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (6,0)-(6,1) = "a" - │ │ ├── opening_loc: (6,1)-(6,2) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (6,2)-(6,12)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ InterpolatedStringNode (location: (6,2)-(6,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (6,2)-(6,12) = "<<-HEREDOC" - │ │ │ ├── parts: (length: 3) - │ │ │ │ ├── @ StringNode (location: (7,0)-(7,2)) - │ │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── content_loc: (7,0)-(7,2) = " " - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: " " - │ │ │ │ ├── @ EmbeddedStatementsNode (location: (7,2)-(7,5)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── opening_loc: (7,2)-(7,4) = "\#{" - │ │ │ │ │ ├── statements: ∅ - │ │ │ │ │ └── closing_loc: (7,4)-(7,5) = "}" - │ │ │ │ └── @ StringNode (location: (7,5)-(8,0)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (7,5)-(8,0) = "\n" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "\n" - │ │ │ └── closing_loc: (8,0)-(9,0) = "HEREDOC\n" - │ │ ├── closing_loc: (6,12)-(6,13) = ")" - │ │ └── block: ∅ - │ ├── call_operator_loc: (6,13)-(6,14) = "." - │ ├── name: :a - │ ├── message_loc: (6,14)-(6,15) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (9,0)-(9,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (9,0)-(9,6)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (9,0)-(9,1) = "a" - │ │ ├── opening_loc: (9,1)-(9,2) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (9,2)-(9,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ StringNode (location: (9,2)-(9,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (9,2)-(9,4) = "%(" - │ │ │ ├── content_loc: (9,4)-(9,4) = "" - │ │ │ ├── closing_loc: (9,4)-(9,5) = ")" - │ │ │ └── unescaped: "" - │ │ ├── closing_loc: (9,5)-(9,6) = ")" - │ │ └── block: ∅ - │ ├── call_operator_loc: (9,6)-(9,7) = "." - │ ├── name: :a - │ ├── message_loc: (9,7)-(9,8) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ HashNode (location: (10,0)-(10,30)) - │ ├── flags: newline - │ ├── opening_loc: (10,0)-(10,1) = "{" - │ ├── elements: (length: 2) - │ │ ├── @ AssocNode (location: (10,2)-(10,21)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ StringNode (location: (10,2)-(10,7)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: (10,2)-(10,3) = "\"" - │ │ │ │ ├── content_loc: (10,3)-(10,6) = "foo" - │ │ │ │ ├── closing_loc: (10,6)-(10,7) = "\"" - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── value: - │ │ │ │ @ InterpolatedStringNode (location: (10,11)-(10,21)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (10,11)-(10,21) = "<<-HEREDOC" - │ │ │ │ ├── parts: (length: 3) - │ │ │ │ │ ├── @ StringNode (location: (11,0)-(11,2)) - │ │ │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ │ ├── content_loc: (11,0)-(11,2) = " " - │ │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ │ └── unescaped: " " - │ │ │ │ │ ├── @ EmbeddedStatementsNode (location: (11,2)-(11,5)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ ├── opening_loc: (11,2)-(11,4) = "\#{" - │ │ │ │ │ │ ├── statements: ∅ - │ │ │ │ │ │ └── closing_loc: (11,4)-(11,5) = "}" - │ │ │ │ │ └── @ StringNode (location: (11,5)-(12,0)) - │ │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── content_loc: (11,5)-(12,0) = "\n" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "\n" - │ │ │ │ └── closing_loc: (12,0)-(13,0) = "HEREDOC\n" - │ │ │ └── operator_loc: (10,8)-(10,10) = "=>" - │ │ └── @ AssocSplatNode (location: (10,23)-(10,28)) - │ │ ├── flags: ∅ - │ │ ├── value: - │ │ │ @ CallNode (location: (10,25)-(10,28)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (10,25)-(10,28) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (10,23)-(10,25) = "**" - │ └── closing_loc: (10,29)-(10,30) = "}" - ├── @ HashNode (location: (13,0)-(13,23)) - │ ├── flags: newline - │ ├── opening_loc: (13,0)-(13,1) = "{" - │ ├── elements: (length: 2) - │ │ ├── @ AssocNode (location: (13,2)-(13,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ StringNode (location: (13,2)-(13,7)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: (13,2)-(13,3) = "\"" - │ │ │ │ ├── content_loc: (13,3)-(13,6) = "foo" - │ │ │ │ ├── closing_loc: (13,6)-(13,7) = "\"" - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── value: - │ │ │ │ @ StringNode (location: (13,11)-(13,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (13,11)-(13,13) = "%(" - │ │ │ │ ├── content_loc: (13,13)-(13,13) = "" - │ │ │ │ ├── closing_loc: (13,13)-(13,14) = ")" - │ │ │ │ └── unescaped: "" - │ │ │ └── operator_loc: (13,8)-(13,10) = "=>" - │ │ └── @ AssocSplatNode (location: (13,16)-(13,21)) - │ │ ├── flags: ∅ - │ │ ├── value: - │ │ │ @ CallNode (location: (13,18)-(13,21)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (13,18)-(13,21) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (13,16)-(13,18) = "**" - │ └── closing_loc: (13,22)-(13,23) = "}" - ├── @ InterpolatedStringNode (location: (14,0)-(14,14)) - │ ├── flags: newline - │ ├── opening_loc: (14,0)-(14,1) = "\"" - │ ├── parts: (length: 5) - │ │ ├── @ EmbeddedVariableNode (location: (14,1)-(14,4)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (14,1)-(14,2) = "#" - │ │ │ └── variable: - │ │ │ @ InstanceVariableReadNode (location: (14,2)-(14,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :@a - │ │ ├── @ StringNode (location: (14,4)-(14,5)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (14,4)-(14,5) = " " - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: " " - │ │ ├── @ EmbeddedVariableNode (location: (14,5)-(14,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (14,5)-(14,6) = "#" - │ │ │ └── variable: - │ │ │ @ ClassVariableReadNode (location: (14,6)-(14,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :@@a - │ │ ├── @ StringNode (location: (14,9)-(14,10)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (14,9)-(14,10) = " " - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: " " - │ │ └── @ EmbeddedVariableNode (location: (14,10)-(14,13)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (14,10)-(14,11) = "#" - │ │ └── variable: - │ │ @ GlobalVariableReadNode (location: (14,11)-(14,13)) - │ │ ├── flags: ∅ - │ │ └── name: :$a - │ └── closing_loc: (14,13)-(14,14) = "\"" - ├── @ IntegerNode (location: (15,0)-(15,1)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 0 - ├── @ CallNode (location: (16,0)-(16,3)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (16,1)-(16,3)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :+@ - │ ├── message_loc: (16,0)-(16,1) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ IntegerNode (location: (17,0)-(17,1)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 1 - ├── @ IntegerNode (location: (18,0)-(18,1)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 1 - ├── @ RationalNode (location: (19,0)-(19,2)) - │ ├── flags: newline, static_literal, decimal - │ ├── numerator: 1 - │ └── denominator: 1 - ├── @ RationalNode (location: (20,0)-(20,4)) - │ ├── flags: newline, static_literal, decimal - │ ├── numerator: 3 - │ └── denominator: 2 - ├── @ RationalNode (location: (21,0)-(21,4)) - │ ├── flags: newline, static_literal, decimal - │ ├── numerator: 13 - │ └── denominator: 10 - ├── @ ImaginaryNode (location: (22,0)-(22,2)) - │ ├── flags: newline, static_literal - │ └── numeric: - │ @ IntegerNode (location: (22,0)-(22,1)) - │ ├── flags: static_literal, decimal - │ └── value: 5 - ├── @ ImaginaryNode (location: (23,0)-(23,3)) - │ ├── flags: newline, static_literal - │ └── numeric: - │ @ IntegerNode (location: (23,0)-(23,2)) - │ ├── flags: static_literal, decimal - │ └── value: -5 - ├── @ ImaginaryNode (location: (24,0)-(24,4)) - │ ├── flags: newline, static_literal - │ └── numeric: - │ @ FloatNode (location: (24,0)-(24,3)) - │ ├── flags: static_literal - │ └── value: 0.6 - ├── @ ImaginaryNode (location: (25,0)-(25,5)) - │ ├── flags: newline, static_literal - │ └── numeric: - │ @ FloatNode (location: (25,0)-(25,4)) - │ ├── flags: static_literal - │ └── value: -0.6 - ├── @ ImaginaryNode (location: (26,0)-(26,32)) - │ ├── flags: newline, static_literal - │ └── numeric: - │ @ IntegerNode (location: (26,0)-(26,31)) - │ ├── flags: static_literal, decimal - │ └── value: 1000000000000000000000000000000 - ├── @ ImaginaryNode (location: (27,0)-(27,3)) - │ ├── flags: newline, static_literal - │ └── numeric: - │ @ RationalNode (location: (27,0)-(27,2)) - │ ├── flags: static_literal, decimal - │ ├── numerator: 1 - │ └── denominator: 1 - ├── @ InterpolatedStringNode (location: (28,0)-(28,11)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: ∅ - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (28,0)-(28,5)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: (28,0)-(28,1) = "\"" - │ │ │ ├── content_loc: (28,1)-(28,4) = "foo" - │ │ │ ├── closing_loc: (28,4)-(28,5) = "\"" - │ │ │ └── unescaped: "foo" - │ │ └── @ StringNode (location: (28,6)-(28,11)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: (28,6)-(28,7) = "\"" - │ │ ├── content_loc: (28,7)-(28,10) = "bar" - │ │ ├── closing_loc: (28,10)-(28,11) = "\"" - │ │ └── unescaped: "bar" - │ └── closing_loc: ∅ - ├── @ InterpolatedStringNode (location: (29,0)-(29,15)) - │ ├── flags: newline - │ ├── opening_loc: (29,0)-(29,1) = "\"" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (29,1)-(29,8)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (29,1)-(29,8) = "foobar " - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foobar " - │ │ └── @ EmbeddedStatementsNode (location: (29,8)-(29,14)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (29,8)-(29,10) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (29,10)-(29,13)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (29,10)-(29,13)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (29,10)-(29,13) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── closing_loc: (29,13)-(29,14) = "}" - │ └── closing_loc: (29,14)-(29,15) = "\"" - ├── @ InterpolatedStringNode (location: (30,0)-(30,12)) - │ ├── flags: newline - │ ├── opening_loc: (30,0)-(30,1) = "\"" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (30,1)-(30,4)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (30,1)-(30,4) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ ├── @ EmbeddedStatementsNode (location: (30,4)-(30,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (30,4)-(30,6) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (30,6)-(30,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (30,6)-(30,7)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── closing_loc: (30,7)-(30,8) = "}" - │ │ └── @ StringNode (location: (30,8)-(30,11)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (30,8)-(30,11) = "bar" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "bar" - │ └── closing_loc: (30,11)-(30,12) = "\"" - ├── @ InterpolatedStringNode (location: (31,0)-(31,9)) - │ ├── flags: newline - │ ├── opening_loc: (31,0)-(31,1) = "\"" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (31,1)-(31,5)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (31,1)-(31,5) = "\\\\\\\\" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\\\\" - │ │ └── @ EmbeddedStatementsNode (location: (31,5)-(31,8)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (31,5)-(31,7) = "\#{" - │ │ ├── statements: ∅ - │ │ └── closing_loc: (31,7)-(31,8) = "}" - │ └── closing_loc: (31,8)-(31,9) = "\"" - ├── @ InterpolatedStringNode (location: (32,0)-(32,9)) - │ ├── flags: newline - │ ├── opening_loc: (32,0)-(32,1) = "\"" - │ ├── parts: (length: 2) - │ │ ├── @ EmbeddedStatementsNode (location: (32,1)-(32,4)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (32,1)-(32,3) = "\#{" - │ │ │ ├── statements: ∅ - │ │ │ └── closing_loc: (32,3)-(32,4) = "}" - │ │ └── @ StringNode (location: (32,4)-(32,8)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (32,4)-(32,8) = "\\\#{}" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\#{}" - │ └── closing_loc: (32,8)-(32,9) = "\"" - ├── @ InterpolatedStringNode (location: (33,0)-(33,9)) - │ ├── flags: newline - │ ├── opening_loc: (33,0)-(33,1) = "\"" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (33,1)-(33,5)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (33,1)-(33,5) = "\\\#{}" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\#{}" - │ │ └── @ EmbeddedStatementsNode (location: (33,5)-(33,8)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (33,5)-(33,7) = "\#{" - │ │ ├── statements: ∅ - │ │ └── closing_loc: (33,7)-(33,8) = "}" - │ └── closing_loc: (33,8)-(33,9) = "\"" - ├── @ StringNode (location: (34,0)-(34,15)) - │ ├── flags: newline - │ ├── opening_loc: (34,0)-(34,1) = "\"" - │ ├── content_loc: (34,1)-(34,14) = "foo\\\\\\\#{@bar}" - │ ├── closing_loc: (34,14)-(34,15) = "\"" - │ └── unescaped: "foo\\\#{@bar}" - ├── @ StringNode (location: (35,0)-(35,4)) - │ ├── flags: newline - │ ├── opening_loc: (35,0)-(35,1) = "\"" - │ ├── content_loc: (35,1)-(35,3) = "\\\"" - │ ├── closing_loc: (35,3)-(35,4) = "\"" - │ └── unescaped: "\"" - ├── @ StringNode (location: (36,0)-(36,9)) - │ ├── flags: newline - │ ├── opening_loc: (36,0)-(36,1) = "\"" - │ ├── content_loc: (36,1)-(36,8) = "foo bar" - │ ├── closing_loc: (36,8)-(36,9) = "\"" - │ └── unescaped: "foo bar" - ├── @ StringNode (location: (37,0)-(37,10)) - │ ├── flags: newline - │ ├── opening_loc: (37,0)-(37,1) = "\"" - │ ├── content_loc: (37,1)-(37,9) = "foo\\nbar" - │ ├── closing_loc: (37,9)-(37,10) = "\"" - │ └── unescaped: "foo\nbar" - ├── @ XStringNode (location: (38,0)-(38,5)) - │ ├── flags: newline - │ ├── opening_loc: (38,0)-(38,1) = "`" - │ ├── content_loc: (38,1)-(38,4) = "foo" - │ ├── closing_loc: (38,4)-(38,5) = "`" - │ └── unescaped: "foo" - ├── @ InterpolatedXStringNode (location: (39,0)-(39,12)) - │ ├── flags: newline - │ ├── opening_loc: (39,0)-(39,1) = "`" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (39,1)-(39,4)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (39,1)-(39,4) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ └── @ EmbeddedStatementsNode (location: (39,4)-(39,11)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (39,4)-(39,6) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (39,6)-(39,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ InstanceVariableReadNode (location: (39,6)-(39,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :@bar - │ │ └── closing_loc: (39,10)-(39,11) = "}" - │ └── closing_loc: (39,11)-(39,12) = "`" - ├── @ XStringNode (location: (40,0)-(40,3)) - │ ├── flags: newline - │ ├── opening_loc: (40,0)-(40,1) = "`" - │ ├── content_loc: (40,1)-(40,2) = ")" - │ ├── closing_loc: (40,2)-(40,3) = "`" - │ └── unescaped: ")" - ├── @ XStringNode (location: (41,0)-(41,4)) - │ ├── flags: newline - │ ├── opening_loc: (41,0)-(41,1) = "`" - │ ├── content_loc: (41,1)-(41,3) = "\\`" - │ ├── closing_loc: (41,3)-(41,4) = "`" - │ └── unescaped: "`" - ├── @ XStringNode (location: (42,0)-(42,3)) - │ ├── flags: newline - │ ├── opening_loc: (42,0)-(42,1) = "`" - │ ├── content_loc: (42,1)-(42,2) = "\"" - │ ├── closing_loc: (42,2)-(42,3) = "`" - │ └── unescaped: "\"" - ├── @ SymbolNode (location: (43,0)-(43,4)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (43,0)-(43,1) = ":" - │ ├── value_loc: (43,1)-(43,4) = "foo" - │ ├── closing_loc: ∅ - │ └── unescaped: "foo" - ├── @ SymbolNode (location: (44,0)-(44,6)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (44,0)-(44,2) = ":\"" - │ ├── value_loc: (44,2)-(44,5) = "A B" - │ ├── closing_loc: (44,5)-(44,6) = "\"" - │ └── unescaped: "A B" - ├── @ SymbolNode (location: (45,0)-(45,4)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (45,0)-(45,1) = ":" - │ ├── value_loc: (45,1)-(45,4) = "foo" - │ ├── closing_loc: ∅ - │ └── unescaped: "foo" - ├── @ SymbolNode (location: (46,0)-(46,6)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (46,0)-(46,2) = ":\"" - │ ├── value_loc: (46,2)-(46,5) = "A B" - │ ├── closing_loc: (46,5)-(46,6) = "\"" - │ └── unescaped: "A B" - ├── @ SymbolNode (location: (47,0)-(47,7)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (47,0)-(47,2) = ":\"" - │ ├── value_loc: (47,2)-(47,6) = "A\\\"B" - │ ├── closing_loc: (47,6)-(47,7) = "\"" - │ └── unescaped: "A\"B" - ├── @ SymbolNode (location: (48,0)-(48,3)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (48,0)-(48,2) = ":\"" - │ ├── value_loc: (1,0)-(1,0) = "" - │ ├── closing_loc: (48,2)-(48,3) = "\"" - │ └── unescaped: "" - ├── @ RegularExpressionNode (location: (49,0)-(49,5)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (49,0)-(49,1) = "/" - │ ├── content_loc: (49,1)-(49,4) = "foo" - │ ├── closing_loc: (49,4)-(49,5) = "/" - │ └── unescaped: "foo" - ├── @ RegularExpressionNode (location: (50,0)-(50,28)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (50,0)-(50,1) = "/" - │ ├── content_loc: (50,1)-(50,27) = "[^-+',.\\/:@[:alnum:]\\[\\]]+" - │ ├── closing_loc: (50,27)-(50,28) = "/" - │ └── unescaped: "[^-+',./:@[:alnum:]\\[\\]]+" - ├── @ InterpolatedRegularExpressionNode (location: (51,0)-(51,12)) - │ ├── flags: newline - │ ├── opening_loc: (51,0)-(51,1) = "/" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (51,1)-(51,4)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (51,1)-(51,4) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ └── @ EmbeddedStatementsNode (location: (51,4)-(51,11)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (51,4)-(51,6) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (51,6)-(51,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ InstanceVariableReadNode (location: (51,6)-(51,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :@bar - │ │ └── closing_loc: (51,10)-(51,11) = "}" - │ └── closing_loc: (51,11)-(51,12) = "/" - ├── @ InterpolatedRegularExpressionNode (location: (52,0)-(52,15)) - │ ├── flags: newline, ignore_case, extended, multi_line - │ ├── opening_loc: (52,0)-(52,1) = "/" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (52,1)-(52,4)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (52,1)-(52,4) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ └── @ EmbeddedStatementsNode (location: (52,4)-(52,11)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (52,4)-(52,6) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (52,6)-(52,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ InstanceVariableReadNode (location: (52,6)-(52,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :@bar - │ │ └── closing_loc: (52,10)-(52,11) = "}" - │ └── closing_loc: (52,11)-(52,15) = "/imx" - ├── @ InterpolatedRegularExpressionNode (location: (53,0)-(53,13)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (53,0)-(53,1) = "/" - │ ├── parts: (length: 1) - │ │ └── @ EmbeddedStatementsNode (location: (53,1)-(53,12)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (53,1)-(53,3) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (53,3)-(53,11)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ StringNode (location: (53,3)-(53,11)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: (53,3)-(53,4) = "\"" - │ │ │ ├── content_loc: (53,4)-(53,10) = "\\u0000" - │ │ │ ├── closing_loc: (53,10)-(53,11) = "\"" - │ │ │ └── unescaped: "\u0000" - │ │ └── closing_loc: (53,11)-(53,12) = "}" - │ └── closing_loc: (53,12)-(53,13) = "/" - ├── @ RegularExpressionNode (location: (54,0)-(54,4)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (54,0)-(54,1) = "/" - │ ├── content_loc: (54,1)-(54,3) = "\\n" - │ ├── closing_loc: (54,3)-(54,4) = "/" - │ └── unescaped: "\\n" - ├── @ RegularExpressionNode (location: (55,0)-(55,4)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (55,0)-(55,1) = "/" - │ ├── content_loc: (55,1)-(55,3) = "\\n" - │ ├── closing_loc: (55,3)-(55,4) = "/" - │ └── unescaped: "\\n" - ├── @ RegularExpressionNode (location: (56,0)-(56,5)) - │ ├── flags: newline, static_literal, extended, forced_us_ascii_encoding - │ ├── opening_loc: (56,0)-(56,1) = "/" - │ ├── content_loc: (56,1)-(56,3) = "\\n" - │ ├── closing_loc: (56,3)-(56,5) = "/x" - │ └── unescaped: "\\n" - ├── @ RegularExpressionNode (location: (57,0)-(57,7)) - │ ├── flags: newline, static_literal, extended, forced_us_ascii_encoding - │ ├── opening_loc: (57,0)-(57,1) = "/" - │ ├── content_loc: (57,1)-(57,5) = "\\/\\/" - │ ├── closing_loc: (57,5)-(57,7) = "/x" - │ └── unescaped: "//" - ├── @ InterpolatedSymbolNode (location: (58,0)-(58,15)) - │ ├── flags: newline - │ ├── opening_loc: (58,0)-(58,2) = ":\"" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (58,2)-(58,5)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (58,2)-(58,5) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ ├── @ EmbeddedStatementsNode (location: (58,5)-(58,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (58,5)-(58,7) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (58,7)-(58,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (58,7)-(58,10)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (58,7)-(58,10) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── closing_loc: (58,10)-(58,11) = "}" - │ │ └── @ StringNode (location: (58,11)-(58,14)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (58,11)-(58,14) = "baz" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "baz" - │ └── closing_loc: (58,14)-(58,15) = "\"" - ├── @ InterpolatedSymbolNode (location: (59,0)-(59,11)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (59,0)-(59,2) = ":\"" - │ ├── parts: (length: 1) - │ │ └── @ EmbeddedStatementsNode (location: (59,2)-(59,10)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (59,2)-(59,4) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (59,4)-(59,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ StringNode (location: (59,4)-(59,9)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: (59,4)-(59,5) = "\"" - │ │ │ ├── content_loc: (59,5)-(59,8) = "foo" - │ │ │ ├── closing_loc: (59,8)-(59,9) = "\"" - │ │ │ └── unescaped: "foo" - │ │ └── closing_loc: (59,9)-(59,10) = "}" - │ └── closing_loc: (59,10)-(59,11) = "\"" - ├── @ RangeNode (location: (60,0)-(60,14)) - │ ├── flags: newline - │ ├── left: - │ │ @ ParenthesesNode (location: (60,0)-(60,11)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (60,1)-(60,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (60,1)-(60,10)) - │ │ │ ├── flags: newline - │ │ │ ├── receiver: - │ │ │ │ @ FloatNode (location: (60,1)-(60,4)) - │ │ │ │ ├── flags: static_literal - │ │ │ │ └── value: 0.0 - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :/ - │ │ │ ├── message_loc: (60,5)-(60,6) = "/" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (60,7)-(60,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ FloatNode (location: (60,7)-(60,10)) - │ │ │ │ ├── flags: static_literal - │ │ │ │ └── value: 0.0 - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (60,0)-(60,1) = "(" - │ │ └── closing_loc: (60,10)-(60,11) = ")" - │ ├── right: - │ │ @ IntegerNode (location: (60,13)-(60,14)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (60,11)-(60,13) = ".." - ├── @ RangeNode (location: (61,0)-(61,14)) - │ ├── flags: newline - │ ├── left: - │ │ @ IntegerNode (location: (61,0)-(61,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── right: - │ │ @ ParenthesesNode (location: (61,3)-(61,14)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (61,4)-(61,13)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (61,4)-(61,13)) - │ │ │ ├── flags: newline - │ │ │ ├── receiver: - │ │ │ │ @ FloatNode (location: (61,4)-(61,7)) - │ │ │ │ ├── flags: static_literal - │ │ │ │ └── value: 0.0 - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :/ - │ │ │ ├── message_loc: (61,8)-(61,9) = "/" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (61,10)-(61,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ FloatNode (location: (61,10)-(61,13)) - │ │ │ │ ├── flags: static_literal - │ │ │ │ └── value: 0.0 - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (61,3)-(61,4) = "(" - │ │ └── closing_loc: (61,13)-(61,14) = ")" - │ └── operator_loc: (61,1)-(61,3) = ".." - ├── @ RangeNode (location: (62,0)-(62,16)) - │ ├── flags: newline - │ ├── left: - │ │ @ ParenthesesNode (location: (62,0)-(62,11)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (62,1)-(62,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (62,1)-(62,10)) - │ │ │ ├── flags: newline - │ │ │ ├── receiver: - │ │ │ │ @ FloatNode (location: (62,1)-(62,4)) - │ │ │ │ ├── flags: static_literal - │ │ │ │ └── value: 0.0 - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :/ - │ │ │ ├── message_loc: (62,5)-(62,6) = "/" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (62,7)-(62,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ FloatNode (location: (62,7)-(62,10)) - │ │ │ │ ├── flags: static_literal - │ │ │ │ └── value: 0.0 - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (62,0)-(62,1) = "(" - │ │ └── closing_loc: (62,10)-(62,11) = ")" - │ ├── right: - │ │ @ IntegerNode (location: (62,13)-(62,16)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 100 - │ └── operator_loc: (62,11)-(62,13) = ".." - ├── @ FloatNode (location: (63,0)-(63,4)) - │ ├── flags: newline, static_literal - │ └── value: -0.1 - ├── @ FloatNode (location: (64,0)-(64,3)) - │ ├── flags: newline, static_literal - │ └── value: 0.1 - ├── @ ArrayNode (location: (65,0)-(65,6)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (65,1)-(65,2)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (65,4)-(65,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── opening_loc: (65,0)-(65,1) = "[" - │ └── closing_loc: (65,5)-(65,6) = "]" - ├── @ ArrayNode (location: (66,0)-(66,11)) - │ ├── flags: newline - │ ├── elements: (length: 3) - │ │ ├── @ IntegerNode (location: (66,1)-(66,2)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── @ ParenthesesNode (location: (66,4)-(66,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: ∅ - │ │ │ ├── opening_loc: (66,4)-(66,5) = "(" - │ │ │ └── closing_loc: (66,5)-(66,6) = ")" - │ │ └── @ CallNode (location: (66,8)-(66,10)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :n2 - │ │ ├── message_loc: (66,8)-(66,10) = "n2" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (66,0)-(66,1) = "[" - │ └── closing_loc: (66,10)-(66,11) = "]" - ├── @ ArrayNode (location: (67,0)-(67,3)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 1) - │ │ └── @ IntegerNode (location: (67,1)-(67,2)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── opening_loc: (67,0)-(67,1) = "[" - │ └── closing_loc: (67,2)-(67,3) = "]" - ├── @ ArrayNode (location: (68,0)-(68,2)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 0) - │ ├── opening_loc: (68,0)-(68,1) = "[" - │ └── closing_loc: (68,1)-(68,2) = "]" - ├── @ ArrayNode (location: (69,0)-(69,10)) - │ ├── flags: newline, contains_splat - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (69,1)-(69,2)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ SplatNode (location: (69,4)-(69,9)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (69,4)-(69,5) = "*" - │ │ └── expression: - │ │ @ InstanceVariableReadNode (location: (69,5)-(69,9)) - │ │ ├── flags: ∅ - │ │ └── name: :@foo - │ ├── opening_loc: (69,0)-(69,1) = "[" - │ └── closing_loc: (69,9)-(69,10) = "]" - ├── @ ArrayNode (location: (70,0)-(70,10)) - │ ├── flags: newline, contains_splat - │ ├── elements: (length: 2) - │ │ ├── @ SplatNode (location: (70,1)-(70,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (70,1)-(70,2) = "*" - │ │ │ └── expression: - │ │ │ @ InstanceVariableReadNode (location: (70,2)-(70,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :@foo - │ │ └── @ IntegerNode (location: (70,8)-(70,9)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── opening_loc: (70,0)-(70,1) = "[" - │ └── closing_loc: (70,9)-(70,10) = "]" - ├── @ ArrayNode (location: (71,0)-(71,14)) - │ ├── flags: newline, contains_splat - │ ├── elements: (length: 2) - │ │ ├── @ SplatNode (location: (71,1)-(71,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (71,1)-(71,2) = "*" - │ │ │ └── expression: - │ │ │ @ InstanceVariableReadNode (location: (71,2)-(71,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :@foo - │ │ └── @ SplatNode (location: (71,8)-(71,13)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (71,8)-(71,9) = "*" - │ │ └── expression: - │ │ @ InstanceVariableReadNode (location: (71,9)-(71,13)) - │ │ ├── flags: ∅ - │ │ └── name: :@baz - │ ├── opening_loc: (71,0)-(71,1) = "[" - │ └── closing_loc: (71,13)-(71,14) = "]" - ├── @ HashNode (location: (72,0)-(72,2)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (72,0)-(72,1) = "{" - │ ├── elements: (length: 0) - │ └── closing_loc: (72,1)-(72,2) = "}" - ├── @ HashNode (location: (73,0)-(73,12)) - │ ├── flags: newline - │ ├── opening_loc: (73,0)-(73,1) = "{" - │ ├── elements: (length: 1) - │ │ └── @ AssocNode (location: (73,2)-(73,10)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ ParenthesesNode (location: (73,2)-(73,4)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: ∅ - │ │ │ ├── opening_loc: (73,2)-(73,3) = "(" - │ │ │ └── closing_loc: (73,3)-(73,4) = ")" - │ │ ├── value: - │ │ │ @ ParenthesesNode (location: (73,8)-(73,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: ∅ - │ │ │ ├── opening_loc: (73,8)-(73,9) = "(" - │ │ │ └── closing_loc: (73,9)-(73,10) = ")" - │ │ └── operator_loc: (73,5)-(73,7) = "=>" - │ └── closing_loc: (73,11)-(73,12) = "}" - ├── @ HashNode (location: (74,0)-(74,10)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (74,0)-(74,1) = "{" - │ ├── elements: (length: 1) - │ │ └── @ AssocNode (location: (74,2)-(74,8)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ IntegerNode (location: (74,2)-(74,3)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── value: - │ │ │ @ IntegerNode (location: (74,7)-(74,8)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── operator_loc: (74,4)-(74,6) = "=>" - │ └── closing_loc: (74,9)-(74,10) = "}" - ├── @ HashNode (location: (75,0)-(75,18)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (75,0)-(75,1) = "{" - │ ├── elements: (length: 2) - │ │ ├── @ AssocNode (location: (75,2)-(75,8)) - │ │ │ ├── flags: static_literal - │ │ │ ├── key: - │ │ │ │ @ IntegerNode (location: (75,2)-(75,3)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── value: - │ │ │ │ @ IntegerNode (location: (75,7)-(75,8)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ └── operator_loc: (75,4)-(75,6) = "=>" - │ │ └── @ AssocNode (location: (75,10)-(75,16)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ IntegerNode (location: (75,10)-(75,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 3 - │ │ ├── value: - │ │ │ @ IntegerNode (location: (75,15)-(75,16)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 4 - │ │ └── operator_loc: (75,12)-(75,14) = "=>" - │ └── closing_loc: (75,17)-(75,18) = "}" - ├── @ HashNode (location: (76,0)-(76,27)) - │ ├── flags: newline - │ ├── opening_loc: (76,0)-(76,1) = "{" - │ ├── elements: (length: 2) - │ │ ├── @ AssocNode (location: (76,2)-(76,19)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (76,2)-(76,4)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (76,2)-(76,3) = "a" - │ │ │ │ ├── closing_loc: (76,3)-(76,4) = ":" - │ │ │ │ └── unescaped: "a" - │ │ │ ├── value: - │ │ │ │ @ ParenthesesNode (location: (76,5)-(76,19)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── body: - │ │ │ │ │ @ StatementsNode (location: (76,6)-(76,18)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ RescueModifierNode (location: (76,6)-(76,18)) - │ │ │ │ │ ├── flags: newline - │ │ │ │ │ ├── expression: - │ │ │ │ │ │ @ IntegerNode (location: (76,6)-(76,7)) - │ │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ │ └── value: 1 - │ │ │ │ │ ├── keyword_loc: (76,8)-(76,14) = "rescue" - │ │ │ │ │ └── rescue_expression: - │ │ │ │ │ @ CallNode (location: (76,15)-(76,18)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :foo - │ │ │ │ │ ├── message_loc: (76,15)-(76,18) = "foo" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── opening_loc: (76,5)-(76,6) = "(" - │ │ │ │ └── closing_loc: (76,18)-(76,19) = ")" - │ │ │ └── operator_loc: ∅ - │ │ └── @ AssocNode (location: (76,21)-(76,25)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (76,21)-(76,23)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (76,21)-(76,22) = "b" - │ │ │ ├── closing_loc: (76,22)-(76,23) = ":" - │ │ │ └── unescaped: "b" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (76,24)-(76,25)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── operator_loc: ∅ - │ └── closing_loc: (76,26)-(76,27) = "}" - ├── @ HashNode (location: (77,0)-(77,14)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (77,0)-(77,1) = "{" - │ ├── elements: (length: 2) - │ │ ├── @ AssocNode (location: (77,2)-(77,6)) - │ │ │ ├── flags: static_literal - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (77,2)-(77,4)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (77,2)-(77,3) = "a" - │ │ │ │ ├── closing_loc: (77,3)-(77,4) = ":" - │ │ │ │ └── unescaped: "a" - │ │ │ ├── value: - │ │ │ │ @ IntegerNode (location: (77,5)-(77,6)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── operator_loc: ∅ - │ │ └── @ AssocNode (location: (77,8)-(77,12)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (77,8)-(77,10)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (77,8)-(77,9) = "b" - │ │ │ ├── closing_loc: (77,9)-(77,10) = ":" - │ │ │ └── unescaped: "b" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (77,11)-(77,12)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── operator_loc: ∅ - │ └── closing_loc: (77,13)-(77,14) = "}" - ├── @ HashNode (location: (78,0)-(78,9)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (78,0)-(78,1) = "{" - │ ├── elements: (length: 1) - │ │ └── @ AssocNode (location: (78,2)-(78,7)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (78,2)-(78,4)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (78,2)-(78,3) = "a" - │ │ │ ├── closing_loc: (78,3)-(78,4) = ":" - │ │ │ └── unescaped: "a" - │ │ ├── value: - │ │ │ @ SymbolNode (location: (78,5)-(78,7)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (78,5)-(78,6) = ":" - │ │ │ ├── value_loc: (78,6)-(78,7) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ └── operator_loc: ∅ - │ └── closing_loc: (78,8)-(78,9) = "}" - ├── @ HashNode (location: (79,0)-(79,15)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (79,0)-(79,1) = "{" - │ ├── elements: (length: 1) - │ │ └── @ AssocNode (location: (79,2)-(79,13)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (79,2)-(79,8)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (79,2)-(79,4) = ":\"" - │ │ │ ├── value_loc: (79,4)-(79,7) = "a b" - │ │ │ ├── closing_loc: (79,7)-(79,8) = "\"" - │ │ │ └── unescaped: "a b" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (79,12)-(79,13)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── operator_loc: (79,9)-(79,11) = "=>" - │ └── closing_loc: (79,14)-(79,15) = "}" - ├── @ HashNode (location: (80,0)-(80,12)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (80,0)-(80,1) = "{" - │ ├── elements: (length: 1) - │ │ └── @ AssocNode (location: (80,2)-(80,10)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (80,2)-(80,5)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (80,2)-(80,3) = ":" - │ │ │ ├── value_loc: (80,3)-(80,5) = "-@" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "-@" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (80,9)-(80,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── operator_loc: (80,6)-(80,8) = "=>" - │ └── closing_loc: (80,11)-(80,12) = "}" - ├── @ InterpolatedStringNode (location: (81,0)-(82,7)) - │ ├── flags: newline - │ ├── opening_loc: (81,0)-(81,1) = "\"" - │ ├── parts: (length: 4) - │ │ ├── @ EmbeddedStatementsNode (location: (81,1)-(81,4)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (81,1)-(81,3) = "\#{" - │ │ │ ├── statements: ∅ - │ │ │ └── closing_loc: (81,3)-(81,4) = "}" - │ │ ├── @ StringNode (location: (81,4)-(82,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (81,4)-(82,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ ├── @ EmbeddedStatementsNode (location: (82,0)-(82,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (82,0)-(82,2) = "\#{" - │ │ │ ├── statements: ∅ - │ │ │ └── closing_loc: (82,2)-(82,3) = "}" - │ │ └── @ StringNode (location: (82,3)-(82,6)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (82,3)-(82,6) = "\\na" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\na" - │ └── closing_loc: (82,6)-(82,7) = "\"" - ├── @ CallNode (location: (83,0)-(86,1)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (83,0)-(83,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (83,4)-(86,1)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (84,2)-(85,7)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (84,2)-(85,7)) - │ │ ├── flags: newline - │ │ ├── opening_loc: (84,2)-(84,3) = "\"" - │ │ ├── parts: (length: 4) - │ │ │ ├── @ EmbeddedStatementsNode (location: (84,3)-(84,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (84,3)-(84,5) = "\#{" - │ │ │ │ ├── statements: ∅ - │ │ │ │ └── closing_loc: (84,5)-(84,6) = "}" - │ │ │ ├── @ StringNode (location: (84,6)-(85,0)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (84,6)-(85,0) = "\n" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "\n" - │ │ │ ├── @ EmbeddedStatementsNode (location: (85,0)-(85,3)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (85,0)-(85,2) = "\#{" - │ │ │ │ ├── statements: ∅ - │ │ │ │ └── closing_loc: (85,2)-(85,3) = "}" - │ │ │ └── @ StringNode (location: (85,3)-(85,6)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (85,3)-(85,6) = "\\na" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\na" - │ │ └── closing_loc: (85,6)-(85,7) = "\"" - │ ├── opening_loc: (83,4)-(83,5) = "{" - │ └── closing_loc: (86,0)-(86,1) = "}" - ├── @ SymbolNode (location: (87,0)-(88,2)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (87,0)-(87,2) = ":\"" - │ ├── value_loc: (87,2)-(88,1) = "a\\\\\nb" - │ ├── closing_loc: (88,1)-(88,2) = "\"" - │ └── unescaped: "a\\\nb" - └── @ InterpolatedXStringNode (location: (89,0)-(91,2)) - ├── flags: newline - ├── opening_loc: (89,0)-(89,1) = "`" - ├── parts: (length: 3) - │ ├── @ StringNode (location: (89,1)-(90,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (89,1)-(90,0) = " x\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: " x\n" - │ ├── @ EmbeddedStatementsNode (location: (90,0)-(90,6)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (90,0)-(90,2) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (90,2)-(90,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (90,2)-(90,5)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (90,2)-(90,5) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── closing_loc: (90,5)-(90,6) = "}" - │ └── @ StringNode (location: (90,6)-(91,1)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (90,6)-(91,1) = "\n#" - │ ├── closing_loc: ∅ - │ └── unescaped: "\n#" - └── closing_loc: (91,1)-(91,2) = "`" diff --git a/test/prism/snapshots/unparser/corpus/literal/module.txt b/test/prism/snapshots/unparser/corpus/literal/module.txt deleted file mode 100644 index 9ad15d2dcd..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/module.txt +++ /dev/null @@ -1,121 +0,0 @@ -@ ProgramNode (location: (1,0)-(16,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(16,3)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ ModuleNode (location: (1,0)-(2,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── module_keyword_loc: (1,0)-(1,6) = "module" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (1,7)-(1,8)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── body: ∅ - │ ├── end_keyword_loc: (2,0)-(2,3) = "end" - │ └── name: :A - ├── @ ModuleNode (location: (4,0)-(5,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── module_keyword_loc: (4,0)-(4,6) = "module" - │ ├── constant_path: - │ │ @ ConstantPathNode (location: (4,7)-(4,11)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ ConstantReadNode (location: (4,7)-(4,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :A - │ │ ├── name: :B - │ │ ├── delimiter_loc: (4,8)-(4,10) = "::" - │ │ └── name_loc: (4,10)-(4,11) = "B" - │ ├── body: ∅ - │ ├── end_keyword_loc: (5,0)-(5,3) = "end" - │ └── name: :B - ├── @ ModuleNode (location: (7,0)-(8,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── module_keyword_loc: (7,0)-(7,6) = "module" - │ ├── constant_path: - │ │ @ ConstantPathNode (location: (7,7)-(7,14)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ ConstantPathNode (location: (7,7)-(7,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parent: - │ │ │ │ @ ConstantReadNode (location: (7,7)-(7,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :A - │ │ │ ├── name: :B - │ │ │ ├── delimiter_loc: (7,8)-(7,10) = "::" - │ │ │ └── name_loc: (7,10)-(7,11) = "B" - │ │ ├── name: :C - │ │ ├── delimiter_loc: (7,11)-(7,13) = "::" - │ │ └── name_loc: (7,13)-(7,14) = "C" - │ ├── body: ∅ - │ ├── end_keyword_loc: (8,0)-(8,3) = "end" - │ └── name: :C - └── @ ModuleNode (location: (10,0)-(16,3)) - ├── flags: newline - ├── locals: [] - ├── module_keyword_loc: (10,0)-(10,6) = "module" - ├── constant_path: - │ @ ConstantReadNode (location: (10,7)-(10,8)) - │ ├── flags: ∅ - │ └── name: :A - ├── body: - │ @ StatementsNode (location: (11,2)-(15,5)) - │ ├── flags: ∅ - │ └── body: (length: 2) - │ ├── @ CallNode (location: (11,2)-(11,16)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :include - │ │ ├── message_loc: (11,2)-(11,9) = "include" - │ │ ├── opening_loc: (11,9)-(11,10) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (11,10)-(11,15)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ CallNode (location: (11,10)-(11,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── receiver: - │ │ │ │ @ ConstantReadNode (location: (11,10)-(11,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :B - │ │ │ ├── call_operator_loc: (11,11)-(11,12) = "." - │ │ │ ├── name: :new - │ │ │ ├── message_loc: (11,12)-(11,15) = "new" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── closing_loc: (11,15)-(11,16) = ")" - │ │ └── block: ∅ - │ └── @ DefNode (location: (13,2)-(15,5)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (13,6)-(13,9) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (14,4)-(14,8)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SymbolNode (location: (14,4)-(14,8)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (14,4)-(14,5) = ":" - │ │ ├── value_loc: (14,5)-(14,8) = "bar" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "bar" - │ ├── locals: [] - │ ├── def_keyword_loc: (13,2)-(13,5) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (15,2)-(15,5) = "end" - ├── end_keyword_loc: (16,0)-(16,3) = "end" - └── name: :A diff --git a/test/prism/snapshots/unparser/corpus/literal/opasgn.txt b/test/prism/snapshots/unparser/corpus/literal/opasgn.txt deleted file mode 100644 index 3df6248d4b..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/opasgn.txt +++ /dev/null @@ -1,539 +0,0 @@ -@ ProgramNode (location: (1,0)-(24,10)) -├── flags: ∅ -├── locals: [:a, :h] -└── statements: - @ StatementsNode (location: (1,0)-(24,10)) - ├── flags: ∅ - └── body: (length: 24) - ├── @ LocalVariableOperatorWriteNode (location: (1,0)-(1,6)) - │ ├── flags: newline - │ ├── name_loc: (1,0)-(1,1) = "a" - │ ├── binary_operator_loc: (1,2)-(1,4) = "+=" - │ ├── value: - │ │ @ IntegerNode (location: (1,5)-(1,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── name: :a - │ ├── binary_operator: :+ - │ └── depth: 0 - ├── @ LocalVariableOperatorWriteNode (location: (2,0)-(2,6)) - │ ├── flags: newline - │ ├── name_loc: (2,0)-(2,1) = "a" - │ ├── binary_operator_loc: (2,2)-(2,4) = "-=" - │ ├── value: - │ │ @ IntegerNode (location: (2,5)-(2,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── name: :a - │ ├── binary_operator: :- - │ └── depth: 0 - ├── @ LocalVariableOperatorWriteNode (location: (3,0)-(3,7)) - │ ├── flags: newline - │ ├── name_loc: (3,0)-(3,1) = "a" - │ ├── binary_operator_loc: (3,2)-(3,5) = "**=" - │ ├── value: - │ │ @ IntegerNode (location: (3,6)-(3,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── name: :a - │ ├── binary_operator: :** - │ └── depth: 0 - ├── @ LocalVariableOperatorWriteNode (location: (4,0)-(4,6)) - │ ├── flags: newline - │ ├── name_loc: (4,0)-(4,1) = "a" - │ ├── binary_operator_loc: (4,2)-(4,4) = "*=" - │ ├── value: - │ │ @ IntegerNode (location: (4,5)-(4,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── name: :a - │ ├── binary_operator: :* - │ └── depth: 0 - ├── @ LocalVariableOperatorWriteNode (location: (5,0)-(5,6)) - │ ├── flags: newline - │ ├── name_loc: (5,0)-(5,1) = "a" - │ ├── binary_operator_loc: (5,2)-(5,4) = "/=" - │ ├── value: - │ │ @ IntegerNode (location: (5,5)-(5,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── name: :a - │ ├── binary_operator: :/ - │ └── depth: 0 - ├── @ LocalVariableAndWriteNode (location: (6,0)-(6,7)) - │ ├── flags: newline - │ ├── name_loc: (6,0)-(6,1) = "a" - │ ├── operator_loc: (6,2)-(6,5) = "&&=" - │ ├── value: - │ │ @ CallNode (location: (6,6)-(6,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (6,6)-(6,7) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── name: :a - │ └── depth: 0 - ├── @ LocalVariableOrWriteNode (location: (7,0)-(7,7)) - │ ├── flags: newline - │ ├── name_loc: (7,0)-(7,1) = "a" - │ ├── operator_loc: (7,2)-(7,5) = "||=" - │ ├── value: - │ │ @ IntegerNode (location: (7,6)-(7,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── name: :a - │ └── depth: 0 - ├── @ CallNode (location: (8,0)-(8,13)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ParenthesesNode (location: (8,0)-(8,9)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (8,1)-(8,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ LocalVariableOrWriteNode (location: (8,1)-(8,8)) - │ │ │ ├── flags: newline - │ │ │ ├── name_loc: (8,1)-(8,2) = "a" - │ │ │ ├── operator_loc: (8,3)-(8,6) = "||=" - │ │ │ ├── value: - │ │ │ │ @ IntegerNode (location: (8,7)-(8,8)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ ├── opening_loc: (8,0)-(8,1) = "(" - │ │ └── closing_loc: (8,8)-(8,9) = ")" - │ ├── call_operator_loc: (8,9)-(8,10) = "." - │ ├── name: :bar - │ ├── message_loc: (8,10)-(8,13) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (9,0)-(9,17)) - │ ├── flags: newline, attribute_write - │ ├── receiver: - │ │ @ ParenthesesNode (location: (9,0)-(9,10)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (9,1)-(9,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ LocalVariableOrWriteNode (location: (9,1)-(9,9)) - │ │ │ ├── flags: newline - │ │ │ ├── name_loc: (9,1)-(9,2) = "h" - │ │ │ ├── operator_loc: (9,3)-(9,6) = "||=" - │ │ │ ├── value: - │ │ │ │ @ HashNode (location: (9,7)-(9,9)) - │ │ │ │ ├── flags: static_literal - │ │ │ │ ├── opening_loc: (9,7)-(9,8) = "{" - │ │ │ │ ├── elements: (length: 0) - │ │ │ │ └── closing_loc: (9,8)-(9,9) = "}" - │ │ │ ├── name: :h - │ │ │ └── depth: 0 - │ │ ├── opening_loc: (9,0)-(9,1) = "(" - │ │ └── closing_loc: (9,9)-(9,10) = ")" - │ ├── call_operator_loc: ∅ - │ ├── name: :[]= - │ ├── message_loc: (9,10)-(9,13) = "[k]" - │ ├── opening_loc: (9,10)-(9,11) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (9,11)-(9,17)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (9,11)-(9,12)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :k - │ │ │ ├── message_loc: (9,11)-(9,12) = "k" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ CallNode (location: (9,16)-(9,17)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :v - │ │ ├── message_loc: (9,16)-(9,17) = "v" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (9,12)-(9,13) = "]" - │ └── block: ∅ - ├── @ CallOperatorWriteNode (location: (10,0)-(10,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (10,0)-(10,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── call_operator_loc: (10,1)-(10,2) = "." - │ ├── message_loc: (10,2)-(10,3) = "b" - │ ├── read_name: :b - │ ├── write_name: :b= - │ ├── binary_operator: :+ - │ ├── binary_operator_loc: (10,4)-(10,6) = "+=" - │ └── value: - │ @ IntegerNode (location: (10,7)-(10,8)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── @ CallOperatorWriteNode (location: (11,0)-(11,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (11,0)-(11,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── call_operator_loc: (11,1)-(11,2) = "." - │ ├── message_loc: (11,2)-(11,3) = "b" - │ ├── read_name: :b - │ ├── write_name: :b= - │ ├── binary_operator: :- - │ ├── binary_operator_loc: (11,4)-(11,6) = "-=" - │ └── value: - │ @ IntegerNode (location: (11,7)-(11,8)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── @ CallOperatorWriteNode (location: (12,0)-(12,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (12,0)-(12,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── call_operator_loc: (12,1)-(12,2) = "." - │ ├── message_loc: (12,2)-(12,3) = "b" - │ ├── read_name: :b - │ ├── write_name: :b= - │ ├── binary_operator: :** - │ ├── binary_operator_loc: (12,4)-(12,7) = "**=" - │ └── value: - │ @ IntegerNode (location: (12,8)-(12,9)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── @ CallOperatorWriteNode (location: (13,0)-(13,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (13,0)-(13,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── call_operator_loc: (13,1)-(13,2) = "." - │ ├── message_loc: (13,2)-(13,3) = "b" - │ ├── read_name: :b - │ ├── write_name: :b= - │ ├── binary_operator: :* - │ ├── binary_operator_loc: (13,4)-(13,6) = "*=" - │ └── value: - │ @ IntegerNode (location: (13,7)-(13,8)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── @ CallOperatorWriteNode (location: (14,0)-(14,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (14,0)-(14,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── call_operator_loc: (14,1)-(14,2) = "." - │ ├── message_loc: (14,2)-(14,3) = "b" - │ ├── read_name: :b - │ ├── write_name: :b= - │ ├── binary_operator: :/ - │ ├── binary_operator_loc: (14,4)-(14,6) = "/=" - │ └── value: - │ @ IntegerNode (location: (14,7)-(14,8)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── @ CallAndWriteNode (location: (15,0)-(15,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (15,0)-(15,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── call_operator_loc: (15,1)-(15,2) = "." - │ ├── message_loc: (15,2)-(15,3) = "b" - │ ├── read_name: :b - │ ├── write_name: :b= - │ ├── operator_loc: (15,4)-(15,7) = "&&=" - │ └── value: - │ @ CallNode (location: (15,8)-(15,9)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :b - │ ├── message_loc: (15,8)-(15,9) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallOrWriteNode (location: (16,0)-(16,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (16,0)-(16,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── call_operator_loc: (16,1)-(16,2) = "." - │ ├── message_loc: (16,2)-(16,3) = "b" - │ ├── read_name: :b - │ ├── write_name: :b= - │ ├── operator_loc: (16,4)-(16,7) = "||=" - │ └── value: - │ @ IntegerNode (location: (16,8)-(16,9)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── @ IndexOperatorWriteNode (location: (17,0)-(17,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (17,0)-(17,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── opening_loc: (17,1)-(17,2) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (17,2)-(17,3)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (17,2)-(17,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (17,2)-(17,3) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (17,3)-(17,4) = "]" - │ ├── block: ∅ - │ ├── binary_operator: :+ - │ ├── binary_operator_loc: (17,5)-(17,7) = "+=" - │ └── value: - │ @ IntegerNode (location: (17,8)-(17,9)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── @ IndexOperatorWriteNode (location: (18,0)-(18,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (18,0)-(18,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── opening_loc: (18,1)-(18,2) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (18,2)-(18,3)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (18,2)-(18,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (18,2)-(18,3) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (18,3)-(18,4) = "]" - │ ├── block: ∅ - │ ├── binary_operator: :- - │ ├── binary_operator_loc: (18,5)-(18,7) = "-=" - │ └── value: - │ @ IntegerNode (location: (18,8)-(18,9)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── @ IndexOperatorWriteNode (location: (19,0)-(19,10)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (19,0)-(19,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── opening_loc: (19,1)-(19,2) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (19,2)-(19,3)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (19,2)-(19,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (19,2)-(19,3) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (19,3)-(19,4) = "]" - │ ├── block: ∅ - │ ├── binary_operator: :** - │ ├── binary_operator_loc: (19,5)-(19,8) = "**=" - │ └── value: - │ @ IntegerNode (location: (19,9)-(19,10)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── @ IndexOperatorWriteNode (location: (20,0)-(20,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (20,0)-(20,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── opening_loc: (20,1)-(20,2) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (20,2)-(20,3)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (20,2)-(20,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (20,2)-(20,3) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (20,3)-(20,4) = "]" - │ ├── block: ∅ - │ ├── binary_operator: :* - │ ├── binary_operator_loc: (20,5)-(20,7) = "*=" - │ └── value: - │ @ IntegerNode (location: (20,8)-(20,9)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── @ IndexOperatorWriteNode (location: (21,0)-(21,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (21,0)-(21,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── opening_loc: (21,1)-(21,2) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (21,2)-(21,3)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (21,2)-(21,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (21,2)-(21,3) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (21,3)-(21,4) = "]" - │ ├── block: ∅ - │ ├── binary_operator: :/ - │ ├── binary_operator_loc: (21,5)-(21,7) = "/=" - │ └── value: - │ @ IntegerNode (location: (21,8)-(21,9)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── @ IndexAndWriteNode (location: (22,0)-(22,10)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (22,0)-(22,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── opening_loc: (22,1)-(22,2) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (22,2)-(22,3)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (22,2)-(22,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (22,2)-(22,3) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (22,3)-(22,4) = "]" - │ ├── block: ∅ - │ ├── operator_loc: (22,5)-(22,8) = "&&=" - │ └── value: - │ @ CallNode (location: (22,9)-(22,10)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :b - │ ├── message_loc: (22,9)-(22,10) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ IndexOrWriteNode (location: (23,0)-(23,10)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (23,0)-(23,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── opening_loc: (23,1)-(23,2) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (23,2)-(23,3)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (23,2)-(23,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (23,2)-(23,3) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (23,3)-(23,4) = "]" - │ ├── block: ∅ - │ ├── operator_loc: (23,5)-(23,8) = "||=" - │ └── value: - │ @ IntegerNode (location: (23,9)-(23,10)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - └── @ CallOperatorWriteNode (location: (24,0)-(24,10)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (24,0)-(24,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (24,0)-(24,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (24,3)-(24,4) = "." - ├── message_loc: (24,4)-(24,5) = "A" - ├── read_name: :A - ├── write_name: :A= - ├── binary_operator: :+ - ├── binary_operator_loc: (24,6)-(24,8) = "+=" - └── value: - @ IntegerNode (location: (24,9)-(24,10)) - ├── flags: static_literal, decimal - └── value: 1 diff --git a/test/prism/snapshots/unparser/corpus/literal/pattern.txt b/test/prism/snapshots/unparser/corpus/literal/pattern.txt deleted file mode 100644 index 200837c450..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/pattern.txt +++ /dev/null @@ -1,542 +0,0 @@ -@ ProgramNode (location: (1,0)-(41,8)) -├── flags: ∅ -├── locals: [:a, :x, :y] -└── statements: - @ StatementsNode (location: (1,0)-(41,8)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ CaseMatchNode (location: (1,0)-(33,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (1,5)-(1,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,5)-(1,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 15) - │ │ ├── @ InNode (location: (2,0)-(3,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── pattern: - │ │ │ │ @ ArrayPatternNode (location: (2,3)-(2,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── constant: - │ │ │ │ │ @ ConstantReadNode (location: (2,3)-(2,4)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :A - │ │ │ │ ├── requireds: (length: 2) - │ │ │ │ │ ├── @ IntegerNode (location: (2,5)-(2,6)) - │ │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ │ └── value: 1 - │ │ │ │ │ └── @ IntegerNode (location: (2,8)-(2,9)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 2 - │ │ │ │ ├── rest: - │ │ │ │ │ @ SplatNode (location: (2,11)-(2,13)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── operator_loc: (2,11)-(2,12) = "*" - │ │ │ │ │ └── expression: - │ │ │ │ │ @ LocalVariableTargetNode (location: (2,12)-(2,13)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :a - │ │ │ │ │ └── depth: 0 - │ │ │ │ ├── posts: (length: 1) - │ │ │ │ │ └── @ IntegerNode (location: (2,15)-(2,16)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 3 - │ │ │ │ ├── opening_loc: (2,4)-(2,5) = "[" - │ │ │ │ └── closing_loc: (2,16)-(2,17) = "]" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (3,2)-(3,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ TrueNode (location: (3,2)-(3,6)) - │ │ │ │ └── flags: newline, static_literal - │ │ │ ├── in_loc: (2,0)-(2,2) = "in" - │ │ │ └── then_loc: (2,18)-(2,22) = "then" - │ │ ├── @ InNode (location: (4,0)-(5,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── pattern: - │ │ │ │ @ ArrayPatternNode (location: (4,3)-(4,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── constant: ∅ - │ │ │ │ ├── requireds: (length: 2) - │ │ │ │ │ ├── @ IntegerNode (location: (4,4)-(4,5)) - │ │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ │ └── value: 1 - │ │ │ │ │ └── @ IntegerNode (location: (4,7)-(4,8)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 2 - │ │ │ │ ├── rest: - │ │ │ │ │ @ ImplicitRestNode (location: (4,8)-(4,9)) - │ │ │ │ │ └── flags: ∅ - │ │ │ │ ├── posts: (length: 0) - │ │ │ │ ├── opening_loc: (4,3)-(4,4) = "[" - │ │ │ │ └── closing_loc: (4,10)-(4,11) = "]" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (5,2)-(5,3)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (5,2)-(5,3)) - │ │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :y - │ │ │ │ ├── message_loc: (5,2)-(5,3) = "y" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── in_loc: (4,0)-(4,2) = "in" - │ │ │ └── then_loc: (4,12)-(4,16) = "then" - │ │ ├── @ InNode (location: (6,0)-(7,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── pattern: - │ │ │ │ @ HashPatternNode (location: (6,3)-(6,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── constant: - │ │ │ │ │ @ ConstantReadNode (location: (6,3)-(6,4)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :A - │ │ │ │ ├── elements: (length: 1) - │ │ │ │ │ └── @ AssocNode (location: (6,5)-(6,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── key: - │ │ │ │ │ │ @ SymbolNode (location: (6,5)-(6,7)) - │ │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ │ ├── value_loc: (6,5)-(6,6) = "x" - │ │ │ │ │ │ ├── closing_loc: (6,6)-(6,7) = ":" - │ │ │ │ │ │ └── unescaped: "x" - │ │ │ │ │ ├── value: - │ │ │ │ │ │ @ ImplicitNode (location: (6,5)-(6,6)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── value: - │ │ │ │ │ │ @ LocalVariableTargetNode (location: (6,5)-(6,6)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ ├── name: :x - │ │ │ │ │ │ └── depth: 0 - │ │ │ │ │ └── operator_loc: ∅ - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── opening_loc: (6,4)-(6,5) = "(" - │ │ │ │ └── closing_loc: (6,7)-(6,8) = ")" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (7,2)-(7,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ TrueNode (location: (7,2)-(7,6)) - │ │ │ │ └── flags: newline, static_literal - │ │ │ ├── in_loc: (6,0)-(6,2) = "in" - │ │ │ └── then_loc: (6,9)-(6,13) = "then" - │ │ ├── @ InNode (location: (8,0)-(9,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── pattern: - │ │ │ │ @ HashPatternNode (location: (8,3)-(8,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── constant: ∅ - │ │ │ │ ├── elements: (length: 0) - │ │ │ │ ├── rest: - │ │ │ │ │ @ AssocSplatNode (location: (8,4)-(8,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── value: - │ │ │ │ │ │ @ LocalVariableTargetNode (location: (8,6)-(8,7)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ ├── name: :a - │ │ │ │ │ │ └── depth: 0 - │ │ │ │ │ └── operator_loc: (8,4)-(8,6) = "**" - │ │ │ │ ├── opening_loc: (8,3)-(8,4) = "{" - │ │ │ │ └── closing_loc: (8,7)-(8,8) = "}" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (9,2)-(9,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ TrueNode (location: (9,2)-(9,6)) - │ │ │ │ └── flags: newline, static_literal - │ │ │ ├── in_loc: (8,0)-(8,2) = "in" - │ │ │ └── then_loc: (8,9)-(8,13) = "then" - │ │ ├── @ InNode (location: (10,0)-(11,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── pattern: - │ │ │ │ @ IfNode (location: (10,3)-(10,13)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── if_keyword_loc: (10,6)-(10,8) = "if" - │ │ │ │ ├── predicate: - │ │ │ │ │ @ TrueNode (location: (10,9)-(10,13)) - │ │ │ │ │ └── flags: static_literal - │ │ │ │ ├── then_keyword_loc: ∅ - │ │ │ │ ├── statements: - │ │ │ │ │ @ StatementsNode (location: (10,3)-(10,5)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ HashPatternNode (location: (10,3)-(10,5)) - │ │ │ │ │ ├── flags: newline - │ │ │ │ │ ├── constant: ∅ - │ │ │ │ │ ├── elements: (length: 0) - │ │ │ │ │ ├── rest: ∅ - │ │ │ │ │ ├── opening_loc: (10,3)-(10,4) = "{" - │ │ │ │ │ └── closing_loc: (10,4)-(10,5) = "}" - │ │ │ │ ├── subsequent: ∅ - │ │ │ │ └── end_keyword_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (11,2)-(11,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ TrueNode (location: (11,2)-(11,6)) - │ │ │ │ └── flags: newline, static_literal - │ │ │ ├── in_loc: (10,0)-(10,2) = "in" - │ │ │ └── then_loc: (10,14)-(10,18) = "then" - │ │ ├── @ InNode (location: (12,0)-(13,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── pattern: - │ │ │ │ @ ArrayPatternNode (location: (12,3)-(12,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── constant: ∅ - │ │ │ │ ├── requireds: (length: 2) - │ │ │ │ │ ├── @ LocalVariableTargetNode (location: (12,4)-(12,5)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ ├── name: :x - │ │ │ │ │ │ └── depth: 0 - │ │ │ │ │ └── @ LocalVariableTargetNode (location: (12,7)-(12,8)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :y - │ │ │ │ │ └── depth: 0 - │ │ │ │ ├── rest: - │ │ │ │ │ @ SplatNode (location: (12,10)-(12,11)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── operator_loc: (12,10)-(12,11) = "*" - │ │ │ │ │ └── expression: ∅ - │ │ │ │ ├── posts: (length: 0) - │ │ │ │ ├── opening_loc: (12,3)-(12,4) = "[" - │ │ │ │ └── closing_loc: (12,11)-(12,12) = "]" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (13,2)-(13,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ TrueNode (location: (13,2)-(13,6)) - │ │ │ │ └── flags: newline, static_literal - │ │ │ ├── in_loc: (12,0)-(12,2) = "in" - │ │ │ └── then_loc: (12,13)-(12,17) = "then" - │ │ ├── @ InNode (location: (14,0)-(15,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── pattern: - │ │ │ │ @ HashPatternNode (location: (14,3)-(14,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── constant: ∅ - │ │ │ │ ├── elements: (length: 2) - │ │ │ │ │ ├── @ AssocNode (location: (14,4)-(14,8)) - │ │ │ │ │ │ ├── flags: static_literal - │ │ │ │ │ │ ├── key: - │ │ │ │ │ │ │ @ SymbolNode (location: (14,4)-(14,6)) - │ │ │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ │ │ ├── value_loc: (14,4)-(14,5) = "a" - │ │ │ │ │ │ │ ├── closing_loc: (14,5)-(14,6) = ":" - │ │ │ │ │ │ │ └── unescaped: "a" - │ │ │ │ │ │ ├── value: - │ │ │ │ │ │ │ @ IntegerNode (location: (14,7)-(14,8)) - │ │ │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ │ │ └── value: 1 - │ │ │ │ │ │ └── operator_loc: ∅ - │ │ │ │ │ └── @ AssocNode (location: (14,10)-(14,15)) - │ │ │ │ │ ├── flags: static_literal - │ │ │ │ │ ├── key: - │ │ │ │ │ │ @ SymbolNode (location: (14,10)-(14,13)) - │ │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ │ ├── value_loc: (14,10)-(14,12) = "aa" - │ │ │ │ │ │ ├── closing_loc: (14,12)-(14,13) = ":" - │ │ │ │ │ │ └── unescaped: "aa" - │ │ │ │ │ ├── value: - │ │ │ │ │ │ @ IntegerNode (location: (14,14)-(14,15)) - │ │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ │ └── value: 2 - │ │ │ │ │ └── operator_loc: ∅ - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── opening_loc: (14,3)-(14,4) = "{" - │ │ │ │ └── closing_loc: (14,15)-(14,16) = "}" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (15,2)-(15,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ TrueNode (location: (15,2)-(15,6)) - │ │ │ │ └── flags: newline, static_literal - │ │ │ ├── in_loc: (14,0)-(14,2) = "in" - │ │ │ └── then_loc: (14,17)-(14,21) = "then" - │ │ ├── @ InNode (location: (16,0)-(17,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── pattern: - │ │ │ │ @ HashPatternNode (location: (16,3)-(16,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── constant: ∅ - │ │ │ │ ├── elements: (length: 0) - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── opening_loc: (16,3)-(16,4) = "{" - │ │ │ │ └── closing_loc: (16,4)-(16,5) = "}" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (17,2)-(17,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ TrueNode (location: (17,2)-(17,6)) - │ │ │ │ └── flags: newline, static_literal - │ │ │ ├── in_loc: (16,0)-(16,2) = "in" - │ │ │ └── then_loc: (16,6)-(16,10) = "then" - │ │ ├── @ InNode (location: (18,0)-(19,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── pattern: - │ │ │ │ @ HashPatternNode (location: (18,3)-(18,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── constant: ∅ - │ │ │ │ ├── elements: (length: 0) - │ │ │ │ ├── rest: - │ │ │ │ │ @ NoKeywordsParameterNode (location: (18,4)-(18,9)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── operator_loc: (18,4)-(18,6) = "**" - │ │ │ │ │ └── keyword_loc: (18,6)-(18,9) = "nil" - │ │ │ │ ├── opening_loc: (18,3)-(18,4) = "{" - │ │ │ │ └── closing_loc: (18,9)-(18,10) = "}" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (19,2)-(19,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ TrueNode (location: (19,2)-(19,6)) - │ │ │ │ └── flags: newline, static_literal - │ │ │ ├── in_loc: (18,0)-(18,2) = "in" - │ │ │ └── then_loc: (18,11)-(18,15) = "then" - │ │ ├── @ InNode (location: (20,0)-(21,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── pattern: - │ │ │ │ @ HashPatternNode (location: (20,3)-(20,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── constant: ∅ - │ │ │ │ ├── elements: (length: 1) - │ │ │ │ │ └── @ AssocNode (location: (20,4)-(20,10)) - │ │ │ │ │ ├── flags: static_literal - │ │ │ │ │ ├── key: - │ │ │ │ │ │ @ SymbolNode (location: (20,4)-(20,8)) - │ │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ │ ├── opening_loc: (20,4)-(20,5) = "\"" - │ │ │ │ │ │ ├── value_loc: (20,5)-(20,6) = "a" - │ │ │ │ │ │ ├── closing_loc: (20,6)-(20,8) = "\":" - │ │ │ │ │ │ └── unescaped: "a" - │ │ │ │ │ ├── value: - │ │ │ │ │ │ @ IntegerNode (location: (20,9)-(20,10)) - │ │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ │ └── value: 1 - │ │ │ │ │ └── operator_loc: ∅ - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── opening_loc: (20,3)-(20,4) = "{" - │ │ │ │ └── closing_loc: (20,10)-(20,11) = "}" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (21,2)-(21,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ TrueNode (location: (21,2)-(21,6)) - │ │ │ │ └── flags: newline, static_literal - │ │ │ ├── in_loc: (20,0)-(20,2) = "in" - │ │ │ └── then_loc: (20,12)-(20,16) = "then" - │ │ ├── @ InNode (location: (22,0)-(23,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── pattern: - │ │ │ │ @ AlternationPatternNode (location: (22,3)-(22,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── left: - │ │ │ │ │ @ IntegerNode (location: (22,3)-(22,4)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ ├── right: - │ │ │ │ │ @ IntegerNode (location: (22,7)-(22,8)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 2 - │ │ │ │ └── operator_loc: (22,5)-(22,6) = "|" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (23,2)-(23,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ TrueNode (location: (23,2)-(23,6)) - │ │ │ │ └── flags: newline, static_literal - │ │ │ ├── in_loc: (22,0)-(22,2) = "in" - │ │ │ └── then_loc: (22,9)-(22,13) = "then" - │ │ ├── @ InNode (location: (24,0)-(25,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── pattern: - │ │ │ │ @ CapturePatternNode (location: (24,3)-(24,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── value: - │ │ │ │ │ @ IntegerNode (location: (24,3)-(24,4)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ ├── target: - │ │ │ │ │ @ LocalVariableTargetNode (location: (24,8)-(24,9)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :a - │ │ │ │ │ └── depth: 0 - │ │ │ │ └── operator_loc: (24,5)-(24,7) = "=>" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (25,2)-(25,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ TrueNode (location: (25,2)-(25,6)) - │ │ │ │ └── flags: newline, static_literal - │ │ │ ├── in_loc: (24,0)-(24,2) = "in" - │ │ │ └── then_loc: (24,10)-(24,14) = "then" - │ │ ├── @ InNode (location: (26,0)-(27,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── pattern: - │ │ │ │ @ PinnedVariableNode (location: (26,3)-(26,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── variable: - │ │ │ │ │ @ LocalVariableReadNode (location: (26,4)-(26,5)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :x - │ │ │ │ │ └── depth: 0 - │ │ │ │ └── operator_loc: (26,3)-(26,4) = "^" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (27,2)-(27,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ TrueNode (location: (27,2)-(27,6)) - │ │ │ │ └── flags: newline, static_literal - │ │ │ ├── in_loc: (26,0)-(26,2) = "in" - │ │ │ └── then_loc: (26,6)-(26,10) = "then" - │ │ ├── @ InNode (location: (28,0)-(28,4)) - │ │ │ ├── flags: ∅ - │ │ │ ├── pattern: - │ │ │ │ @ IntegerNode (location: (28,3)-(28,4)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── statements: ∅ - │ │ │ ├── in_loc: (28,0)-(28,2) = "in" - │ │ │ └── then_loc: ∅ - │ │ └── @ InNode (location: (29,0)-(30,6)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ IntegerNode (location: (29,3)-(29,4)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (30,2)-(30,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ TrueNode (location: (30,2)-(30,6)) - │ │ │ └── flags: newline, static_literal - │ │ ├── in_loc: (29,0)-(29,2) = "in" - │ │ └── then_loc: (29,5)-(29,9) = "then" - │ ├── else_clause: - │ │ @ ElseNode (location: (31,0)-(33,3)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (31,0)-(31,4) = "else" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (32,2)-(32,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ TrueNode (location: (32,2)-(32,6)) - │ │ │ └── flags: newline, static_literal - │ │ └── end_keyword_loc: (33,0)-(33,3) = "end" - │ ├── case_keyword_loc: (1,0)-(1,4) = "case" - │ └── end_keyword_loc: (33,0)-(33,3) = "end" - ├── @ CaseMatchNode (location: (34,0)-(36,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (34,5)-(34,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (34,5)-(34,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (35,0)-(35,17)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ArrayPatternNode (location: (35,3)-(35,17)) - │ │ │ ├── flags: ∅ - │ │ │ ├── constant: - │ │ │ │ @ ConstantReadNode (location: (35,3)-(35,4)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :A - │ │ │ ├── requireds: (length: 2) - │ │ │ │ ├── @ IntegerNode (location: (35,5)-(35,6)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ └── @ IntegerNode (location: (35,8)-(35,9)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (35,11)-(35,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (35,11)-(35,12) = "*" - │ │ │ │ └── expression: - │ │ │ │ @ LocalVariableTargetNode (location: (35,12)-(35,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ └── depth: 0 - │ │ │ ├── posts: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (35,15)-(35,16)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 3 - │ │ │ ├── opening_loc: (35,4)-(35,5) = "[" - │ │ │ └── closing_loc: (35,16)-(35,17) = "]" - │ │ ├── statements: ∅ - │ │ ├── in_loc: (35,0)-(35,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (34,0)-(34,4) = "case" - │ └── end_keyword_loc: (36,0)-(36,3) = "end" - ├── @ CaseMatchNode (location: (37,0)-(40,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (37,5)-(37,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (37,5)-(37,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 1) - │ │ └── @ InNode (location: (38,0)-(38,4)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ ConstantReadNode (location: (38,3)-(38,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :A - │ │ ├── statements: ∅ - │ │ ├── in_loc: (38,0)-(38,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: - │ │ @ ElseNode (location: (39,0)-(40,3)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (39,0)-(39,4) = "else" - │ │ ├── statements: ∅ - │ │ └── end_keyword_loc: (40,0)-(40,3) = "end" - │ ├── case_keyword_loc: (37,0)-(37,4) = "case" - │ └── end_keyword_loc: (40,0)-(40,3) = "end" - └── @ MatchPredicateNode (location: (41,0)-(41,8)) - ├── flags: newline - ├── value: - │ @ IntegerNode (location: (41,0)-(41,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── pattern: - │ @ ArrayPatternNode (location: (41,5)-(41,8)) - │ ├── flags: ∅ - │ ├── constant: ∅ - │ ├── requireds: (length: 1) - │ │ └── @ LocalVariableTargetNode (location: (41,6)-(41,7)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── opening_loc: (41,5)-(41,6) = "[" - │ └── closing_loc: (41,7)-(41,8) = "]" - └── operator_loc: (41,2)-(41,4) = "in" diff --git a/test/prism/snapshots/unparser/corpus/literal/pragma.txt b/test/prism/snapshots/unparser/corpus/literal/pragma.txt deleted file mode 100644 index 2a82f0c860..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/pragma.txt +++ /dev/null @@ -1,24 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,7)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ SourceEncodingNode (location: (1,0)-(1,12)) - │ └── flags: newline, static_literal - ├── @ SourceFileNode (location: (2,0)-(2,8)) - │ ├── flags: newline - │ └── filepath: "unparser/corpus/literal/pragma.txt" - ├── @ SourceLineNode (location: (3,0)-(3,8)) - │ └── flags: newline, static_literal - └── @ CallNode (location: (4,0)-(4,7)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :__dir__ - ├── message_loc: (4,0)-(4,7) = "__dir__" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/unparser/corpus/literal/range.txt b/test/prism/snapshots/unparser/corpus/literal/range.txt deleted file mode 100644 index d6bbe34b34..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/range.txt +++ /dev/null @@ -1,61 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,5)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ ParenthesesNode (location: (1,0)-(1,5)) - │ ├── flags: newline - │ ├── body: - │ │ @ StatementsNode (location: (1,1)-(1,4)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ RangeNode (location: (1,1)-(1,4)) - │ │ ├── flags: newline, static_literal - │ │ ├── left: - │ │ │ @ IntegerNode (location: (1,1)-(1,2)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: ∅ - │ │ └── operator_loc: (1,2)-(1,4) = ".." - │ ├── opening_loc: (1,0)-(1,1) = "(" - │ └── closing_loc: (1,4)-(1,5) = ")" - ├── @ RangeNode (location: (2,0)-(2,4)) - │ ├── flags: newline, static_literal - │ ├── left: - │ │ @ IntegerNode (location: (2,0)-(2,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── right: - │ │ @ IntegerNode (location: (2,3)-(2,4)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ └── operator_loc: (2,1)-(2,3) = ".." - ├── @ ParenthesesNode (location: (3,0)-(3,6)) - │ ├── flags: newline - │ ├── body: - │ │ @ StatementsNode (location: (3,1)-(3,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ RangeNode (location: (3,1)-(3,5)) - │ │ ├── flags: newline, static_literal, exclude_end - │ │ ├── left: - │ │ │ @ IntegerNode (location: (3,1)-(3,2)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── right: ∅ - │ │ └── operator_loc: (3,2)-(3,5) = "..." - │ ├── opening_loc: (3,0)-(3,1) = "(" - │ └── closing_loc: (3,5)-(3,6) = ")" - └── @ RangeNode (location: (4,0)-(4,5)) - ├── flags: newline, static_literal, exclude_end - ├── left: - │ @ IntegerNode (location: (4,0)-(4,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── right: - │ @ IntegerNode (location: (4,4)-(4,5)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - └── operator_loc: (4,1)-(4,4) = "..." diff --git a/test/prism/snapshots/unparser/corpus/literal/rescue.txt b/test/prism/snapshots/unparser/corpus/literal/rescue.txt deleted file mode 100644 index 78801c1d90..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/rescue.txt +++ /dev/null @@ -1,111 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,27)) -├── flags: ∅ -├── locals: [:x] -└── statements: - @ StatementsNode (location: (1,0)-(3,27)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ RescueModifierNode (location: (1,0)-(1,14)) - │ ├── flags: newline - │ ├── expression: - │ │ @ CallNode (location: (1,0)-(1,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,0)-(1,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── keyword_loc: (1,4)-(1,10) = "rescue" - │ └── rescue_expression: - │ @ CallNode (location: (1,11)-(1,14)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (1,11)-(1,14) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ RescueModifierNode (location: (2,0)-(2,21)) - │ ├── flags: newline - │ ├── expression: - │ │ @ CallNode (location: (2,0)-(2,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (2,0)-(2,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── keyword_loc: (2,4)-(2,10) = "rescue" - │ └── rescue_expression: - │ @ ReturnNode (location: (2,11)-(2,21)) - │ ├── flags: ∅ - │ ├── keyword_loc: (2,11)-(2,17) = "return" - │ └── arguments: - │ @ ArgumentsNode (location: (2,18)-(2,21)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (2,18)-(2,21)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (2,18)-(2,21) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ LocalVariableWriteNode (location: (3,0)-(3,27)) - ├── flags: newline - ├── name: :x - ├── depth: 0 - ├── name_loc: (3,0)-(3,1) = "x" - ├── value: - │ @ ParenthesesNode (location: (3,4)-(3,27)) - │ ├── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (3,5)-(3,26)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ RescueModifierNode (location: (3,5)-(3,26)) - │ │ ├── flags: newline - │ │ ├── expression: - │ │ │ @ CallNode (location: (3,5)-(3,8)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (3,5)-(3,8) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── keyword_loc: (3,9)-(3,15) = "rescue" - │ │ └── rescue_expression: - │ │ @ ReturnNode (location: (3,16)-(3,26)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (3,16)-(3,22) = "return" - │ │ └── arguments: - │ │ @ ArgumentsNode (location: (3,23)-(3,26)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (3,23)-(3,26)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (3,23)-(3,26) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (3,4)-(3,5) = "(" - │ └── closing_loc: (3,26)-(3,27) = ")" - └── operator_loc: (3,2)-(3,3) = "=" diff --git a/test/prism/snapshots/unparser/corpus/literal/send.txt b/test/prism/snapshots/unparser/corpus/literal/send.txt deleted file mode 100644 index 4800b4e2e6..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/send.txt +++ /dev/null @@ -1,2274 +0,0 @@ -@ ProgramNode (location: (1,0)-(84,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(84,7)) - ├── flags: ∅ - └── body: (length: 62) - ├── @ ModuleNode (location: (1,0)-(3,3)) - │ ├── flags: newline - │ ├── locals: [:foo, :a, :_] - │ ├── module_keyword_loc: (1,0)-(1,6) = "module" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (1,7)-(1,8)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── body: - │ │ @ StatementsNode (location: (2,2)-(2,22)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableOrWriteNode (location: (2,2)-(2,22)) - │ │ ├── flags: newline - │ │ ├── name_loc: (2,2)-(2,5) = "foo" - │ │ ├── operator_loc: (2,6)-(2,9) = "||=" - │ │ ├── value: - │ │ │ @ ParenthesesNode (location: (2,10)-(2,22)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (2,11)-(2,21)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ MultiWriteNode (location: (2,11)-(2,21)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── lefts: (length: 2) - │ │ │ │ │ ├── @ LocalVariableTargetNode (location: (2,12)-(2,13)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ ├── name: :a - │ │ │ │ │ │ └── depth: 0 - │ │ │ │ │ └── @ LocalVariableTargetNode (location: (2,15)-(2,16)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :_ - │ │ │ │ │ └── depth: 0 - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── rights: (length: 0) - │ │ │ │ ├── lparen_loc: (2,11)-(2,12) = "(" - │ │ │ │ ├── rparen_loc: (2,16)-(2,17) = ")" - │ │ │ │ ├── operator_loc: (2,18)-(2,19) = "=" - │ │ │ │ └── value: - │ │ │ │ @ CallNode (location: (2,20)-(2,21)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── message_loc: (2,20)-(2,21) = "b" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── opening_loc: (2,10)-(2,11) = "(" - │ │ │ └── closing_loc: (2,21)-(2,22) = ")" - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── end_keyword_loc: (3,0)-(3,3) = "end" - │ └── name: :A - ├── @ ModuleNode (location: (5,0)-(8,3)) - │ ├── flags: newline - │ ├── locals: [:local] - │ ├── module_keyword_loc: (5,0)-(5,6) = "module" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (5,7)-(5,8)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── body: - │ │ @ StatementsNode (location: (6,2)-(7,11)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 2) - │ │ ├── @ LocalVariableWriteNode (location: (6,2)-(6,11)) - │ │ │ ├── flags: newline - │ │ │ ├── name: :local - │ │ │ ├── depth: 0 - │ │ │ ├── name_loc: (6,2)-(6,7) = "local" - │ │ │ ├── value: - │ │ │ │ @ IntegerNode (location: (6,10)-(6,11)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── operator_loc: (6,8)-(6,9) = "=" - │ │ └── @ CallNode (location: (7,2)-(7,11)) - │ │ ├── flags: newline - │ │ ├── receiver: - │ │ │ @ LocalVariableReadNode (location: (7,2)-(7,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :local - │ │ │ └── depth: 0 - │ │ ├── call_operator_loc: (7,7)-(7,8) = "." - │ │ ├── name: :bar - │ │ ├── message_loc: (7,8)-(7,11) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── end_keyword_loc: (8,0)-(8,3) = "end" - │ └── name: :A - ├── @ CallNode (location: (9,0)-(10,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ClassNode (location: (9,0)-(10,3)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── class_keyword_loc: (9,0)-(9,5) = "class" - │ │ ├── constant_path: - │ │ │ @ ConstantReadNode (location: (9,6)-(9,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :A - │ │ ├── inheritance_operator_loc: ∅ - │ │ ├── superclass: ∅ - │ │ ├── body: ∅ - │ │ ├── end_keyword_loc: (10,0)-(10,3) = "end" - │ │ └── name: :A - │ ├── call_operator_loc: (10,3)-(10,4) = "." - │ ├── name: :bar - │ ├── message_loc: (10,4)-(10,7) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (11,0)-(12,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ModuleNode (location: (11,0)-(12,3)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── module_keyword_loc: (11,0)-(11,6) = "module" - │ │ ├── constant_path: - │ │ │ @ ConstantReadNode (location: (11,7)-(11,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :A - │ │ ├── body: ∅ - │ │ ├── end_keyword_loc: (12,0)-(12,3) = "end" - │ │ └── name: :A - │ ├── call_operator_loc: (12,3)-(12,4) = "." - │ ├── name: :bar - │ ├── message_loc: (12,4)-(12,7) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (13,0)-(15,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ BeginNode (location: (13,0)-(15,3)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: (13,0)-(13,5) = "begin" - │ │ ├── statements: ∅ - │ │ ├── rescue_clause: - │ │ │ @ RescueNode (location: (14,0)-(14,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (14,0)-(14,6) = "rescue" - │ │ │ ├── exceptions: (length: 0) - │ │ │ ├── operator_loc: ∅ - │ │ │ ├── reference: ∅ - │ │ │ ├── statements: ∅ - │ │ │ └── subsequent: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: ∅ - │ │ └── end_keyword_loc: (15,0)-(15,3) = "end" - │ ├── call_operator_loc: (15,3)-(15,4) = "." - │ ├── name: :bar - │ ├── message_loc: (15,4)-(15,7) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (16,0)-(19,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CaseNode (location: (16,0)-(19,3)) - │ │ ├── flags: ∅ - │ │ ├── predicate: - │ │ │ @ ParenthesesNode (location: (16,5)-(17,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (16,6)-(17,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 2) - │ │ │ │ ├── @ DefNode (location: (16,6)-(17,3)) - │ │ │ │ │ ├── flags: newline - │ │ │ │ │ ├── name: :foo - │ │ │ │ │ ├── name_loc: (16,10)-(16,13) = "foo" - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── parameters: ∅ - │ │ │ │ │ ├── body: ∅ - │ │ │ │ │ ├── locals: [] - │ │ │ │ │ ├── def_keyword_loc: (16,6)-(16,9) = "def" - │ │ │ │ │ ├── operator_loc: ∅ - │ │ │ │ │ ├── lparen_loc: ∅ - │ │ │ │ │ ├── rparen_loc: ∅ - │ │ │ │ │ ├── equal_loc: ∅ - │ │ │ │ │ └── end_keyword_loc: (17,0)-(17,3) = "end" - │ │ │ │ └── @ SymbolNode (location: (17,5)-(17,9)) - │ │ │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (17,5)-(17,6) = ":" - │ │ │ │ ├── value_loc: (17,6)-(17,9) = "bar" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "bar" - │ │ │ ├── opening_loc: (16,5)-(16,6) = "(" - │ │ │ └── closing_loc: (17,9)-(17,10) = ")" - │ │ ├── conditions: (length: 1) - │ │ │ └── @ WhenNode (location: (18,0)-(18,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (18,0)-(18,4) = "when" - │ │ │ ├── conditions: (length: 1) - │ │ │ │ └── @ CallNode (location: (18,5)-(18,8)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (18,5)-(18,8) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ └── statements: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── case_keyword_loc: (16,0)-(16,4) = "case" - │ │ └── end_keyword_loc: (19,0)-(19,3) = "end" - │ ├── call_operator_loc: (19,3)-(19,4) = "." - │ ├── name: :baz - │ ├── message_loc: (19,4)-(19,7) = "baz" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (20,0)-(22,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CaseNode (location: (20,0)-(22,3)) - │ │ ├── flags: ∅ - │ │ ├── predicate: - │ │ │ @ CallNode (location: (20,5)-(20,8)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (20,5)-(20,8) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── conditions: (length: 1) - │ │ │ └── @ WhenNode (location: (21,0)-(21,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (21,0)-(21,4) = "when" - │ │ │ ├── conditions: (length: 1) - │ │ │ │ └── @ CallNode (location: (21,5)-(21,8)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (21,5)-(21,8) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── then_keyword_loc: ∅ - │ │ │ └── statements: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── case_keyword_loc: (20,0)-(20,4) = "case" - │ │ └── end_keyword_loc: (22,0)-(22,3) = "end" - │ ├── call_operator_loc: (22,3)-(22,4) = "." - │ ├── name: :baz - │ ├── message_loc: (22,4)-(22,7) = "baz" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (23,0)-(24,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ SingletonClassNode (location: (23,0)-(24,3)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── class_keyword_loc: (23,0)-(23,5) = "class" - │ │ ├── operator_loc: (23,6)-(23,8) = "<<" - │ │ ├── expression: - │ │ │ @ SelfNode (location: (23,9)-(23,13)) - │ │ │ └── flags: ∅ - │ │ ├── body: ∅ - │ │ └── end_keyword_loc: (24,0)-(24,3) = "end" - │ ├── call_operator_loc: (24,3)-(24,4) = "." - │ ├── name: :bar - │ ├── message_loc: (24,4)-(24,7) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (25,0)-(26,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ DefNode (location: (25,0)-(26,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ ├── name_loc: (25,9)-(25,12) = "foo" - │ │ ├── receiver: - │ │ │ @ SelfNode (location: (25,4)-(25,8)) - │ │ │ └── flags: ∅ - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── locals: [] - │ │ ├── def_keyword_loc: (25,0)-(25,3) = "def" - │ │ ├── operator_loc: (25,8)-(25,9) = "." - │ │ ├── lparen_loc: ∅ - │ │ ├── rparen_loc: ∅ - │ │ ├── equal_loc: ∅ - │ │ └── end_keyword_loc: (26,0)-(26,3) = "end" - │ ├── call_operator_loc: (26,3)-(26,4) = "." - │ ├── name: :bar - │ ├── message_loc: (26,4)-(26,7) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (27,0)-(28,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ DefNode (location: (27,0)-(28,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ ├── name_loc: (27,4)-(27,7) = "foo" - │ │ ├── receiver: ∅ - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── locals: [] - │ │ ├── def_keyword_loc: (27,0)-(27,3) = "def" - │ │ ├── operator_loc: ∅ - │ │ ├── lparen_loc: ∅ - │ │ ├── rparen_loc: ∅ - │ │ ├── equal_loc: ∅ - │ │ └── end_keyword_loc: (28,0)-(28,3) = "end" - │ ├── call_operator_loc: (28,3)-(28,4) = "." - │ ├── name: :bar - │ ├── message_loc: (28,4)-(28,7) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (29,0)-(30,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ UntilNode (location: (29,0)-(30,3)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (29,0)-(29,5) = "until" - │ │ ├── closing_loc: (30,0)-(30,3) = "end" - │ │ ├── predicate: - │ │ │ @ CallNode (location: (29,6)-(29,9)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (29,6)-(29,9) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── statements: ∅ - │ ├── call_operator_loc: (30,3)-(30,4) = "." - │ ├── name: :bar - │ ├── message_loc: (30,4)-(30,7) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (31,0)-(32,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ WhileNode (location: (31,0)-(32,3)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (31,0)-(31,5) = "while" - │ │ ├── closing_loc: (32,0)-(32,3) = "end" - │ │ ├── predicate: - │ │ │ @ CallNode (location: (31,6)-(31,9)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (31,6)-(31,9) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── statements: ∅ - │ ├── call_operator_loc: (32,3)-(32,4) = "." - │ ├── name: :bar - │ ├── message_loc: (32,4)-(32,7) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (33,0)-(34,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (33,0)-(34,1)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :loop - │ │ ├── message_loc: (33,0)-(33,4) = "loop" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (33,5)-(34,1)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (33,5)-(33,6) = "{" - │ │ └── closing_loc: (34,0)-(34,1) = "}" - │ ├── call_operator_loc: (34,1)-(34,2) = "." - │ ├── name: :bar - │ ├── message_loc: (34,2)-(34,5) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (35,0)-(36,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IfNode (location: (35,0)-(36,3)) - │ │ ├── flags: newline - │ │ ├── if_keyword_loc: (35,0)-(35,2) = "if" - │ │ ├── predicate: - │ │ │ @ CallNode (location: (35,3)-(35,6)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (35,3)-(35,6) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── then_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── subsequent: ∅ - │ │ └── end_keyword_loc: (36,0)-(36,3) = "end" - │ ├── call_operator_loc: (36,3)-(36,4) = "." - │ ├── name: :baz - │ ├── message_loc: (36,4)-(36,7) = "baz" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (37,0)-(37,19)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ParenthesesNode (location: (37,0)-(37,15)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (37,1)-(37,14)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (37,1)-(37,14)) - │ │ │ ├── flags: newline - │ │ │ ├── receiver: - │ │ │ │ @ RegularExpressionNode (location: (37,1)-(37,6)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (37,1)-(37,2) = "/" - │ │ │ │ ├── content_loc: (37,2)-(37,5) = "bar" - │ │ │ │ ├── closing_loc: (37,5)-(37,6) = "/" - │ │ │ │ └── unescaped: "bar" - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :=~ - │ │ │ ├── message_loc: (37,7)-(37,9) = "=~" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (37,10)-(37,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ SymbolNode (location: (37,10)-(37,14)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (37,10)-(37,11) = ":" - │ │ │ │ ├── value_loc: (37,11)-(37,14) = "foo" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (37,0)-(37,1) = "(" - │ │ └── closing_loc: (37,14)-(37,15) = ")" - │ ├── call_operator_loc: (37,15)-(37,16) = "." - │ ├── name: :foo - │ ├── message_loc: (37,16)-(37,19) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (38,0)-(38,10)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ParenthesesNode (location: (38,0)-(38,6)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (38,1)-(38,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ RangeNode (location: (38,1)-(38,5)) - │ │ │ ├── flags: newline, static_literal - │ │ │ ├── left: - │ │ │ │ @ IntegerNode (location: (38,1)-(38,2)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── right: - │ │ │ │ @ IntegerNode (location: (38,4)-(38,5)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ └── operator_loc: (38,2)-(38,4) = ".." - │ │ ├── opening_loc: (38,0)-(38,1) = "(" - │ │ └── closing_loc: (38,5)-(38,6) = ")" - │ ├── call_operator_loc: (38,6)-(38,7) = "." - │ ├── name: :max - │ ├── message_loc: (38,7)-(38,10) = "max" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (39,0)-(39,18)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ParenthesesNode (location: (39,0)-(39,14)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (39,1)-(39,13)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (39,1)-(39,13)) - │ │ │ ├── flags: newline - │ │ │ ├── receiver: - │ │ │ │ @ CallNode (location: (39,1)-(39,4)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :foo - │ │ │ │ ├── message_loc: (39,1)-(39,4) = "foo" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :=~ - │ │ │ ├── message_loc: (39,5)-(39,7) = "=~" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (39,8)-(39,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ RegularExpressionNode (location: (39,8)-(39,13)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (39,8)-(39,9) = "/" - │ │ │ │ ├── content_loc: (39,9)-(39,12) = "bar" - │ │ │ │ ├── closing_loc: (39,12)-(39,13) = "/" - │ │ │ │ └── unescaped: "bar" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (39,0)-(39,1) = "(" - │ │ └── closing_loc: (39,13)-(39,14) = ")" - │ ├── call_operator_loc: (39,14)-(39,15) = "." - │ ├── name: :foo - │ ├── message_loc: (39,15)-(39,18) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (40,0)-(40,13)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ RegularExpressionNode (location: (40,0)-(40,5)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (40,0)-(40,1) = "/" - │ │ ├── content_loc: (40,1)-(40,4) = "bar" - │ │ ├── closing_loc: (40,4)-(40,5) = "/" - │ │ └── unescaped: "bar" - │ ├── call_operator_loc: ∅ - │ ├── name: :=~ - │ ├── message_loc: (40,6)-(40,8) = "=~" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (40,9)-(40,13)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ SymbolNode (location: (40,9)-(40,13)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (40,9)-(40,10) = ":" - │ │ ├── value_loc: (40,10)-(40,13) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (41,0)-(41,12)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ RegularExpressionNode (location: (41,0)-(41,5)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (41,0)-(41,1) = "/" - │ │ ├── content_loc: (41,1)-(41,4) = "bar" - │ │ ├── closing_loc: (41,4)-(41,5) = "/" - │ │ └── unescaped: "bar" - │ ├── call_operator_loc: ∅ - │ ├── name: :=~ - │ ├── message_loc: (41,6)-(41,8) = "=~" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (41,9)-(41,12)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (41,9)-(41,12)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (41,9)-(41,12) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ RangeNode (location: (42,0)-(42,8)) - │ ├── flags: newline - │ ├── left: - │ │ @ IntegerNode (location: (42,0)-(42,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── right: - │ │ @ CallNode (location: (42,3)-(42,8)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ IntegerNode (location: (42,3)-(42,4)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── call_operator_loc: (42,4)-(42,5) = "." - │ │ ├── name: :max - │ │ ├── message_loc: (42,5)-(42,8) = "max" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (42,1)-(42,3) = ".." - ├── @ CallNode (location: (43,0)-(43,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ConstantReadNode (location: (43,0)-(43,1)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── call_operator_loc: (43,1)-(43,2) = "." - │ ├── name: :foo - │ ├── message_loc: (43,2)-(43,5) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (44,0)-(44,5)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :FOO - │ ├── message_loc: (44,0)-(44,3) = "FOO" - │ ├── opening_loc: (44,3)-(44,4) = "(" - │ ├── arguments: ∅ - │ ├── closing_loc: (44,4)-(44,5) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (45,0)-(45,4)) - │ ├── flags: newline, safe_navigation - │ ├── receiver: - │ │ @ CallNode (location: (45,0)-(45,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (45,0)-(45,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (45,1)-(45,3) = "&." - │ ├── name: :b - │ ├── message_loc: (45,3)-(45,4) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (46,0)-(46,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (46,0)-(46,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (46,0)-(46,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (46,1)-(46,2) = "." - │ ├── name: :foo - │ ├── message_loc: (46,2)-(46,5) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (47,0)-(47,3)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (47,0)-(47,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (48,0)-(48,18)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (48,0)-(48,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (48,0)-(48,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :<< - │ ├── message_loc: (48,4)-(48,6) = "<<" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (48,7)-(48,18)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ ParenthesesNode (location: (48,7)-(48,18)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (48,8)-(48,17)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (48,8)-(48,17)) - │ │ │ ├── flags: newline - │ │ │ ├── receiver: - │ │ │ │ @ CallNode (location: (48,8)-(48,11)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (48,8)-(48,11) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :* - │ │ │ ├── message_loc: (48,12)-(48,13) = "*" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (48,14)-(48,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (48,14)-(48,17)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ ├── message_loc: (48,14)-(48,17) = "baz" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (48,7)-(48,8) = "(" - │ │ └── closing_loc: (48,17)-(48,18) = ")" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (49,0)-(49,12)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (49,0)-(49,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (49,0)-(49,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :=~ - │ ├── message_loc: (49,4)-(49,6) = "=~" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (49,7)-(49,12)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ RegularExpressionNode (location: (49,7)-(49,12)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (49,7)-(49,8) = "/" - │ │ ├── content_loc: (49,8)-(49,11) = "bar" - │ │ ├── closing_loc: (49,11)-(49,12) = "/" - │ │ └── unescaped: "bar" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (50,0)-(50,17)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (50,0)-(50,3) = "foo" - │ ├── opening_loc: (50,3)-(50,4) = "(" - │ ├── arguments: ∅ - │ ├── closing_loc: (50,17)-(50,18) = ")" - │ └── block: - │ @ BlockArgumentNode (location: (50,4)-(50,17)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ ParenthesesNode (location: (50,5)-(50,17)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (50,6)-(50,16)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ OrNode (location: (50,6)-(50,16)) - │ │ │ ├── flags: newline - │ │ │ ├── left: - │ │ │ │ @ CallNode (location: (50,6)-(50,9)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :foo - │ │ │ │ ├── message_loc: (50,6)-(50,9) = "foo" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── right: - │ │ │ │ @ CallNode (location: (50,13)-(50,16)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (50,13)-(50,16) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── operator_loc: (50,10)-(50,12) = "||" - │ │ ├── opening_loc: (50,5)-(50,6) = "(" - │ │ └── closing_loc: (50,16)-(50,17) = ")" - │ └── operator_loc: (50,4)-(50,5) = "&" - ├── @ CallNode (location: (51,0)-(51,10)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (51,0)-(51,3) = "foo" - │ ├── opening_loc: (51,3)-(51,4) = "(" - │ ├── arguments: ∅ - │ ├── closing_loc: (51,10)-(51,11) = ")" - │ └── block: - │ @ BlockArgumentNode (location: (51,4)-(51,10)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (51,5)-(51,10)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :block - │ │ ├── message_loc: (51,5)-(51,10) = "block" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (51,4)-(51,5) = "&" - ├── @ CallNode (location: (52,0)-(52,17)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (52,0)-(52,3) = "foo" - │ ├── opening_loc: (52,3)-(52,4) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (52,4)-(52,9)) - │ │ ├── flags: contains_splat - │ │ └── arguments: (length: 1) - │ │ └── @ SplatNode (location: (52,4)-(52,9)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (52,4)-(52,5) = "*" - │ │ └── expression: - │ │ @ CallNode (location: (52,5)-(52,9)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :args - │ │ ├── message_loc: (52,5)-(52,9) = "args" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (52,17)-(52,18) = ")" - │ └── block: - │ @ BlockArgumentNode (location: (52,11)-(52,17)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (52,12)-(52,17)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :block - │ │ ├── message_loc: (52,12)-(52,17) = "block" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (52,11)-(52,12) = "&" - ├── @ CallNode (location: (53,0)-(53,15)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (53,0)-(53,3) = "foo" - │ ├── opening_loc: (53,3)-(53,4) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (53,4)-(53,14)) - │ │ ├── flags: contains_splat - │ │ └── arguments: (length: 1) - │ │ └── @ SplatNode (location: (53,4)-(53,14)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (53,4)-(53,5) = "*" - │ │ └── expression: - │ │ @ CallNode (location: (53,5)-(53,14)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :arguments - │ │ ├── message_loc: (53,5)-(53,14) = "arguments" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (53,14)-(53,15) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (54,0)-(54,9)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (54,0)-(54,3) = "foo" - │ ├── opening_loc: (54,3)-(54,4) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (54,4)-(54,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ IntegerNode (location: (54,4)-(54,5)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (54,7)-(54,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: (54,8)-(54,9) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (55,0)-(55,8)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (55,0)-(55,3) = "foo" - │ ├── opening_loc: (55,3)-(55,4) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (55,4)-(55,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (55,4)-(55,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (55,4)-(55,7) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (55,7)-(55,8) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (56,0)-(56,15)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (56,0)-(56,3) = "foo" - │ ├── opening_loc: (56,3)-(56,4) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (56,4)-(56,14)) - │ │ ├── flags: contains_splat - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (56,4)-(56,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (56,4)-(56,7) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ SplatNode (location: (56,9)-(56,14)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (56,9)-(56,10) = "*" - │ │ └── expression: - │ │ @ CallNode (location: (56,10)-(56,14)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :args - │ │ ├── message_loc: (56,10)-(56,14) = "args" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (56,14)-(56,15) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (57,0)-(57,17)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (57,0)-(57,3) = "foo" - │ ├── opening_loc: (57,3)-(57,4) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (57,4)-(57,16)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (57,4)-(57,16)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (57,4)-(57,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (57,4)-(57,7) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :=~ - │ │ ├── message_loc: (57,8)-(57,10) = "=~" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (57,11)-(57,16)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ RegularExpressionNode (location: (57,11)-(57,16)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (57,11)-(57,12) = "/" - │ │ │ ├── content_loc: (57,12)-(57,15) = "bar" - │ │ │ ├── closing_loc: (57,15)-(57,16) = "/" - │ │ │ └── unescaped: "bar" - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (57,16)-(57,17) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (58,0)-(58,13)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (58,0)-(58,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (58,0)-(58,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (58,3)-(58,4) = "." - │ ├── name: :bar - │ ├── message_loc: (58,4)-(58,7) = "bar" - │ ├── opening_loc: (58,7)-(58,8) = "(" - │ ├── arguments: ∅ - │ ├── closing_loc: (58,12)-(58,13) = ")" - │ └── block: - │ @ BlockArgumentNode (location: (58,8)-(58,12)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (58,9)-(58,12)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (58,9)-(58,12) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (58,8)-(58,9) = "&" - ├── @ CallNode (location: (59,0)-(59,26)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (59,0)-(59,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (59,0)-(59,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (59,3)-(59,4) = "." - │ ├── name: :bar - │ ├── message_loc: (59,4)-(59,7) = "bar" - │ ├── opening_loc: (59,7)-(59,8) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (59,8)-(59,25)) - │ │ ├── flags: contains_splat, contains_multiple_splats - │ │ └── arguments: (length: 3) - │ │ ├── @ SplatNode (location: (59,8)-(59,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (59,8)-(59,9) = "*" - │ │ │ └── expression: - │ │ │ @ CallNode (location: (59,9)-(59,13)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :arga - │ │ │ ├── message_loc: (59,9)-(59,13) = "arga" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── @ CallNode (location: (59,15)-(59,18)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (59,15)-(59,18) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ SplatNode (location: (59,20)-(59,25)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (59,20)-(59,21) = "*" - │ │ └── expression: - │ │ @ CallNode (location: (59,21)-(59,25)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :argb - │ │ ├── message_loc: (59,21)-(59,25) = "argb" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (59,25)-(59,26) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (60,0)-(60,14)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (60,0)-(60,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (60,0)-(60,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (60,3)-(60,4) = "." - │ ├── name: :bar - │ ├── message_loc: (60,4)-(60,7) = "bar" - │ ├── opening_loc: (60,7)-(60,8) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (60,8)-(60,13)) - │ │ ├── flags: contains_splat - │ │ └── arguments: (length: 1) - │ │ └── @ SplatNode (location: (60,8)-(60,13)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (60,8)-(60,9) = "*" - │ │ └── expression: - │ │ @ CallNode (location: (60,9)-(60,13)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :args - │ │ ├── message_loc: (60,9)-(60,13) = "args" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (60,13)-(60,14) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (61,0)-(61,19)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (61,0)-(61,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (61,0)-(61,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (61,3)-(61,4) = "." - │ ├── name: :bar - │ ├── message_loc: (61,4)-(61,7) = "bar" - │ ├── opening_loc: (61,7)-(61,8) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (61,8)-(61,18)) - │ │ ├── flags: contains_splat - │ │ └── arguments: (length: 2) - │ │ ├── @ SplatNode (location: (61,8)-(61,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (61,8)-(61,9) = "*" - │ │ │ └── expression: - │ │ │ @ CallNode (location: (61,9)-(61,13)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :args - │ │ │ ├── message_loc: (61,9)-(61,13) = "args" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ CallNode (location: (61,15)-(61,18)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (61,15)-(61,18) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (61,18)-(61,19) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (62,0)-(62,19)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (62,0)-(62,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (62,0)-(62,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (62,3)-(62,4) = "." - │ ├── name: :bar - │ ├── message_loc: (62,4)-(62,7) = "bar" - │ ├── opening_loc: (62,7)-(62,8) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (62,8)-(62,12)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ SymbolNode (location: (62,8)-(62,12)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (62,8)-(62,9) = ":" - │ │ ├── value_loc: (62,9)-(62,12) = "baz" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "baz" - │ ├── closing_loc: (62,18)-(62,19) = ")" - │ └── block: - │ @ BlockArgumentNode (location: (62,14)-(62,18)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (62,15)-(62,18)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (62,15)-(62,18) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (62,14)-(62,15) = "&" - ├── @ CallNode (location: (63,0)-(63,17)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (63,0)-(63,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (63,0)-(63,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (63,3)-(63,4) = "." - │ ├── name: :bar - │ ├── message_loc: (63,4)-(63,7) = "bar" - │ ├── opening_loc: (63,7)-(63,8) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (63,8)-(63,16)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (63,8)-(63,16)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (63,8)-(63,16)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ SymbolNode (location: (63,8)-(63,12)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (63,8)-(63,11) = "baz" - │ │ │ ├── closing_loc: (63,11)-(63,12) = ":" - │ │ │ └── unescaped: "baz" - │ │ ├── value: - │ │ │ @ CallNode (location: (63,13)-(63,16)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :boz - │ │ │ ├── message_loc: (63,13)-(63,16) = "boz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: ∅ - │ ├── closing_loc: (63,16)-(63,17) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (64,0)-(64,26)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (64,0)-(64,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (64,0)-(64,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (64,3)-(64,4) = "." - │ ├── name: :bar - │ ├── message_loc: (64,4)-(64,7) = "bar" - │ ├── opening_loc: (64,7)-(64,8) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (64,8)-(64,25)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (64,8)-(64,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (64,8)-(64,11) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ KeywordHashNode (location: (64,13)-(64,25)) - │ │ ├── flags: ∅ - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (64,13)-(64,25)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ StringNode (location: (64,13)-(64,18)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: (64,13)-(64,14) = "\"" - │ │ │ ├── content_loc: (64,14)-(64,17) = "baz" - │ │ │ ├── closing_loc: (64,17)-(64,18) = "\"" - │ │ │ └── unescaped: "baz" - │ │ ├── value: - │ │ │ @ CallNode (location: (64,22)-(64,25)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :boz - │ │ │ ├── message_loc: (64,22)-(64,25) = "boz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (64,19)-(64,21) = "=>" - │ ├── closing_loc: (64,25)-(64,26) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (65,0)-(65,19)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (65,0)-(65,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (65,0)-(65,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (65,3)-(65,4) = "." - │ ├── name: :bar - │ ├── message_loc: (65,4)-(65,7) = "bar" - │ ├── opening_loc: (65,7)-(65,8) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (65,8)-(65,18)) - │ │ ├── flags: contains_splat - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (65,8)-(65,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (65,8)-(65,11) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ SplatNode (location: (65,13)-(65,18)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (65,13)-(65,14) = "*" - │ │ └── expression: - │ │ @ CallNode (location: (65,14)-(65,18)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :args - │ │ ├── message_loc: (65,14)-(65,18) = "args" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (65,18)-(65,19) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (66,0)-(66,27)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (66,0)-(66,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (66,0)-(66,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (66,3)-(66,4) = "." - │ ├── name: :bar - │ ├── message_loc: (66,4)-(66,7) = "bar" - │ ├── opening_loc: (66,7)-(66,8) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (66,8)-(66,18)) - │ │ ├── flags: contains_splat - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (66,8)-(66,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (66,8)-(66,11) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ SplatNode (location: (66,13)-(66,18)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (66,13)-(66,14) = "*" - │ │ └── expression: - │ │ @ CallNode (location: (66,14)-(66,18)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :args - │ │ ├── message_loc: (66,14)-(66,18) = "args" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (66,26)-(66,27) = ")" - │ └── block: - │ @ BlockArgumentNode (location: (66,20)-(66,26)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (66,21)-(66,26)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :block - │ │ ├── message_loc: (66,21)-(66,26) = "block" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (66,20)-(66,21) = "&" - ├── @ CallNode (location: (67,0)-(67,16)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (67,0)-(67,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (67,0)-(67,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (67,3)-(67,4) = "." - │ ├── name: :bar - │ ├── message_loc: (67,4)-(67,7) = "bar" - │ ├── opening_loc: (67,7)-(67,8) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (67,8)-(67,15)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (67,8)-(67,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (67,8)-(67,11) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ HashNode (location: (67,13)-(67,15)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (67,13)-(67,14) = "{" - │ │ ├── elements: (length: 0) - │ │ └── closing_loc: (67,14)-(67,15) = "}" - │ ├── closing_loc: (67,15)-(67,16) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (68,0)-(68,26)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (68,0)-(68,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (68,0)-(68,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (68,3)-(68,4) = "." - │ ├── name: :bar - │ ├── message_loc: (68,4)-(68,7) = "bar" - │ ├── opening_loc: (68,7)-(68,8) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (68,8)-(68,25)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ HashNode (location: (68,8)-(68,20)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (68,8)-(68,9) = "{" - │ │ │ ├── elements: (length: 1) - │ │ │ │ └── @ AssocNode (location: (68,10)-(68,18)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── key: - │ │ │ │ │ @ SymbolNode (location: (68,10)-(68,14)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── value_loc: (68,10)-(68,13) = "foo" - │ │ │ │ │ ├── closing_loc: (68,13)-(68,14) = ":" - │ │ │ │ │ └── unescaped: "foo" - │ │ │ │ ├── value: - │ │ │ │ │ @ CallNode (location: (68,15)-(68,18)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :boz - │ │ │ │ │ ├── message_loc: (68,15)-(68,18) = "boz" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ └── operator_loc: ∅ - │ │ │ └── closing_loc: (68,19)-(68,20) = "}" - │ │ └── @ CallNode (location: (68,22)-(68,25)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :boz - │ │ ├── message_loc: (68,22)-(68,25) = "boz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (68,25)-(68,26) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (69,0)-(69,12)) - │ ├── flags: newline, attribute_write - │ ├── receiver: - │ │ @ CallNode (location: (69,0)-(69,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (69,0)-(69,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (69,3)-(69,4) = "." - │ ├── name: :bar= - │ ├── message_loc: (69,4)-(69,7) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (69,8)-(69,12)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ SymbolNode (location: (69,8)-(69,12)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (69,8)-(69,9) = ":" - │ │ ├── value_loc: (69,9)-(69,12) = "baz" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "baz" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (70,0)-(70,9)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (70,0)-(70,3) = "foo" - │ ├── opening_loc: (70,3)-(70,4) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (70,4)-(70,8)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (70,4)-(70,8)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (70,4)-(70,8)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ SymbolNode (location: (70,4)-(70,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (70,4)-(70,5) = "a" - │ │ │ ├── closing_loc: (70,5)-(70,6) = ":" - │ │ │ └── unescaped: "a" - │ │ ├── value: - │ │ │ @ CallNode (location: (70,7)-(70,8)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (70,7)-(70,8) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: ∅ - │ ├── closing_loc: (70,8)-(70,9) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (71,0)-(71,11)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (71,0)-(71,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (71,0)-(71,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (71,3)-(71,4) = "." - │ ├── name: :& - │ ├── message_loc: (71,4)-(71,5) = "&" - │ ├── opening_loc: (71,5)-(71,6) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (71,6)-(71,10)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (71,6)-(71,10)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (71,6)-(71,10)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ SymbolNode (location: (71,6)-(71,8)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (71,6)-(71,7) = "a" - │ │ │ ├── closing_loc: (71,7)-(71,8) = ":" - │ │ │ └── unescaped: "a" - │ │ ├── value: - │ │ │ @ CallNode (location: (71,9)-(71,10)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (71,9)-(71,10) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: ∅ - │ ├── closing_loc: (71,10)-(71,11) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (72,0)-(72,10)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (72,0)-(72,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (72,0)-(72,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (72,3)-(72,4) = "." - │ ├── name: :& - │ ├── message_loc: (72,4)-(72,5) = "&" - │ ├── opening_loc: (72,5)-(72,6) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (72,6)-(72,9)) - │ │ ├── flags: contains_keywords, contains_keyword_splat - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (72,6)-(72,9)) - │ │ ├── flags: ∅ - │ │ └── elements: (length: 1) - │ │ └── @ AssocSplatNode (location: (72,6)-(72,9)) - │ │ ├── flags: ∅ - │ │ ├── value: - │ │ │ @ CallNode (location: (72,8)-(72,9)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (72,8)-(72,9) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (72,6)-(72,8) = "**" - │ ├── closing_loc: (72,9)-(72,10) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (73,0)-(73,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (73,0)-(73,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (73,0)-(73,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :[] - │ ├── message_loc: (73,3)-(73,9) = "[*baz]" - │ ├── opening_loc: (73,3)-(73,4) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (73,4)-(73,8)) - │ │ ├── flags: contains_splat - │ │ └── arguments: (length: 1) - │ │ └── @ SplatNode (location: (73,4)-(73,8)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (73,4)-(73,5) = "*" - │ │ └── expression: - │ │ @ CallNode (location: (73,5)-(73,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (73,5)-(73,8) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (73,8)-(73,9) = "]" - │ └── block: ∅ - ├── @ CallNode (location: (74,0)-(74,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (74,0)-(74,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (74,0)-(74,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :[] - │ ├── message_loc: (74,3)-(74,9) = "[1, 2]" - │ ├── opening_loc: (74,3)-(74,4) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (74,4)-(74,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ IntegerNode (location: (74,4)-(74,5)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (74,7)-(74,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── closing_loc: (74,8)-(74,9) = "]" - │ └── block: ∅ - ├── @ CallNode (location: (75,0)-(75,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (75,0)-(75,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (75,0)-(75,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :[] - │ ├── message_loc: (75,3)-(75,5) = "[]" - │ ├── opening_loc: (75,3)-(75,4) = "[" - │ ├── arguments: ∅ - │ ├── closing_loc: (75,4)-(75,5) = "]" - │ └── block: ∅ - ├── @ CallNode (location: (76,0)-(76,8)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: - │ │ @ SelfNode (location: (76,0)-(76,4)) - │ │ └── flags: ∅ - │ ├── call_operator_loc: (76,4)-(76,5) = "." - │ ├── name: :foo - │ ├── message_loc: (76,5)-(76,8) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (77,0)-(77,13)) - │ ├── flags: newline, attribute_write, ignore_visibility - │ ├── receiver: - │ │ @ SelfNode (location: (77,0)-(77,4)) - │ │ └── flags: ∅ - │ ├── call_operator_loc: (77,4)-(77,5) = "." - │ ├── name: :foo= - │ ├── message_loc: (77,5)-(77,8) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (77,9)-(77,13)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ SymbolNode (location: (77,9)-(77,13)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (77,9)-(77,10) = ":" - │ │ ├── value_loc: (77,10)-(77,13) = "bar" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "bar" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (78,0)-(78,17)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ParenthesesNode (location: (78,0)-(78,7)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (78,1)-(78,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (78,1)-(78,6)) - │ │ │ ├── flags: newline - │ │ │ ├── receiver: - │ │ │ │ @ CallNode (location: (78,1)-(78,2)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ ├── message_loc: (78,1)-(78,2) = "a" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :+ - │ │ │ ├── message_loc: (78,3)-(78,4) = "+" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (78,5)-(78,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (78,5)-(78,6)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── message_loc: (78,5)-(78,6) = "b" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (78,0)-(78,1) = "(" - │ │ └── closing_loc: (78,6)-(78,7) = ")" - │ ├── call_operator_loc: ∅ - │ ├── name: :/ - │ ├── message_loc: (78,8)-(78,9) = "/" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (78,10)-(78,17)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ ParenthesesNode (location: (78,10)-(78,17)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (78,11)-(78,16)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (78,11)-(78,16)) - │ │ │ ├── flags: newline - │ │ │ ├── receiver: - │ │ │ │ @ CallNode (location: (78,11)-(78,12)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (78,11)-(78,12) = "c" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :- - │ │ │ ├── message_loc: (78,13)-(78,14) = "-" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (78,15)-(78,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (78,15)-(78,16)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :d - │ │ │ │ ├── message_loc: (78,15)-(78,16) = "d" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (78,10)-(78,11) = "(" - │ │ └── closing_loc: (78,16)-(78,17) = ")" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (79,0)-(79,19)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ParenthesesNode (location: (79,0)-(79,7)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (79,1)-(79,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (79,1)-(79,6)) - │ │ │ ├── flags: newline - │ │ │ ├── receiver: - │ │ │ │ @ CallNode (location: (79,1)-(79,2)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ ├── message_loc: (79,1)-(79,2) = "a" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :+ - │ │ │ ├── message_loc: (79,3)-(79,4) = "+" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (79,5)-(79,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (79,5)-(79,6)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── message_loc: (79,5)-(79,6) = "b" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (79,0)-(79,1) = "(" - │ │ └── closing_loc: (79,6)-(79,7) = ")" - │ ├── call_operator_loc: ∅ - │ ├── name: :/ - │ ├── message_loc: (79,8)-(79,9) = "/" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (79,10)-(79,19)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (79,10)-(79,19)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (79,10)-(79,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :c - │ │ │ ├── message_loc: (79,10)-(79,11) = "c" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (79,11)-(79,12) = "." - │ │ ├── name: :- - │ │ ├── message_loc: (79,12)-(79,13) = "-" - │ │ ├── opening_loc: (79,13)-(79,14) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (79,14)-(79,18)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 2) - │ │ │ ├── @ CallNode (location: (79,14)-(79,15)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :e - │ │ │ │ ├── message_loc: (79,14)-(79,15) = "e" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── @ CallNode (location: (79,17)-(79,18)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :f - │ │ │ ├── message_loc: (79,17)-(79,18) = "f" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── closing_loc: (79,18)-(79,19) = ")" - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (80,0)-(80,17)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ParenthesesNode (location: (80,0)-(80,7)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (80,1)-(80,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (80,1)-(80,6)) - │ │ │ ├── flags: newline - │ │ │ ├── receiver: - │ │ │ │ @ CallNode (location: (80,1)-(80,2)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ ├── message_loc: (80,1)-(80,2) = "a" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :+ - │ │ │ ├── message_loc: (80,3)-(80,4) = "+" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (80,5)-(80,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (80,5)-(80,6)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── message_loc: (80,5)-(80,6) = "b" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (80,0)-(80,1) = "(" - │ │ └── closing_loc: (80,6)-(80,7) = ")" - │ ├── call_operator_loc: ∅ - │ ├── name: :/ - │ ├── message_loc: (80,8)-(80,9) = "/" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (80,10)-(80,17)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (80,10)-(80,17)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (80,10)-(80,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :c - │ │ │ ├── message_loc: (80,10)-(80,11) = "c" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (80,11)-(80,12) = "." - │ │ ├── name: :- - │ │ ├── message_loc: (80,12)-(80,13) = "-" - │ │ ├── opening_loc: (80,13)-(80,14) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (80,14)-(80,16)) - │ │ │ ├── flags: contains_splat - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ SplatNode (location: (80,14)-(80,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (80,14)-(80,15) = "*" - │ │ │ └── expression: - │ │ │ @ CallNode (location: (80,15)-(80,16)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :f - │ │ │ ├── message_loc: (80,15)-(80,16) = "f" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── closing_loc: (80,16)-(80,17) = ")" - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (81,0)-(81,8)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :x - │ ├── message_loc: (81,0)-(81,1) = "x" - │ ├── opening_loc: (81,1)-(81,2) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (81,2)-(81,7)) - │ │ ├── flags: contains_keywords, contains_keyword_splat - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (81,2)-(81,7)) - │ │ ├── flags: ∅ - │ │ └── elements: (length: 1) - │ │ └── @ AssocSplatNode (location: (81,2)-(81,7)) - │ │ ├── flags: ∅ - │ │ ├── value: - │ │ │ @ CallNode (location: (81,4)-(81,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (81,4)-(81,7) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (81,2)-(81,4) = "**" - │ ├── closing_loc: (81,7)-(81,8) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (82,0)-(82,6)) - │ ├── flags: newline, safe_navigation - │ ├── receiver: - │ │ @ CallNode (location: (82,0)-(82,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (82,0)-(82,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (82,3)-(82,5) = "&." - │ ├── name: :! - │ ├── message_loc: (82,5)-(82,6) = "!" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (83,0)-(83,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (83,0)-(83,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (83,0)-(83,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (83,3)-(83,4) = "." - │ ├── name: :~ - │ ├── message_loc: (83,4)-(83,5) = "~" - │ ├── opening_loc: (83,5)-(83,6) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (83,6)-(83,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (83,6)-(83,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (83,6)-(83,7) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (83,7)-(83,8) = ")" - │ └── block: ∅ - └── @ CallNode (location: (84,0)-(84,7)) - ├── flags: newline, safe_navigation - ├── receiver: - │ @ CallNode (location: (84,0)-(84,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (84,0)-(84,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (84,1)-(84,3) = "&." - ├── name: :+ - ├── message_loc: (84,3)-(84,4) = "+" - ├── opening_loc: (84,4)-(84,5) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (84,5)-(84,6)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (84,5)-(84,6)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :b - │ ├── message_loc: (84,5)-(84,6) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: (84,6)-(84,7) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/unparser/corpus/literal/since/27.txt b/test/prism/snapshots/unparser/corpus/literal/since/27.txt deleted file mode 100644 index e4cda312f8..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/since/27.txt +++ /dev/null @@ -1,58 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,5)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ LambdaNode (location: (1,0)-(3,1)) - │ ├── flags: newline - │ ├── locals: [:_1, :_2] - │ ├── operator_loc: (1,0)-(1,2) = "->" - │ ├── opening_loc: (1,3)-(1,4) = "{" - │ ├── closing_loc: (3,0)-(3,1) = "}" - │ ├── parameters: - │ │ @ NumberedParametersNode (location: (1,0)-(3,1)) - │ │ ├── flags: ∅ - │ │ └── maximum: 2 - │ └── body: - │ @ StatementsNode (location: (2,2)-(2,9)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (2,2)-(2,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (2,2)-(2,4)) - │ │ ├── flags: ∅ - │ │ ├── name: :_1 - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (2,5)-(2,6) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (2,7)-(2,9)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (2,7)-(2,9)) - │ │ ├── flags: ∅ - │ │ ├── name: :_2 - │ │ └── depth: 0 - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ ParenthesesNode (location: (4,0)-(4,5)) - ├── flags: newline - ├── body: - │ @ StatementsNode (location: (4,1)-(4,4)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ RangeNode (location: (4,1)-(4,4)) - │ ├── flags: newline, static_literal - │ ├── left: ∅ - │ ├── right: - │ │ @ IntegerNode (location: (4,3)-(4,4)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (4,1)-(4,3) = ".." - ├── opening_loc: (4,0)-(4,1) = "(" - └── closing_loc: (4,4)-(4,5) = ")" diff --git a/test/prism/snapshots/unparser/corpus/literal/since/30.txt b/test/prism/snapshots/unparser/corpus/literal/since/30.txt deleted file mode 100644 index 0102b2c97b..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/since/30.txt +++ /dev/null @@ -1,106 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,17)) -├── flags: ∅ -├── locals: [:a, :foo] -└── statements: - @ StatementsNode (location: (1,0)-(4,17)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ MatchRequiredNode (location: (1,0)-(1,8)) - │ ├── flags: newline - │ ├── value: - │ │ @ IntegerNode (location: (1,0)-(1,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (1,5)-(1,8)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (1,6)-(1,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (1,5)-(1,6) = "[" - │ │ └── closing_loc: (1,7)-(1,8) = "]" - │ └── operator_loc: (1,2)-(1,4) = "=>" - ├── @ MatchRequiredNode (location: (2,0)-(2,8)) - │ ├── flags: newline - │ ├── value: - │ │ @ IntegerNode (location: (2,0)-(2,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (2,5)-(2,8)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── rest: - │ │ │ @ SplatNode (location: (2,6)-(2,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (2,6)-(2,7) = "*" - │ │ │ └── expression: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (2,5)-(2,6) = "[" - │ │ └── closing_loc: (2,7)-(2,8) = "]" - │ └── operator_loc: (2,2)-(2,4) = "=>" - ├── @ MatchPredicateNode (location: (3,0)-(3,15)) - │ ├── flags: newline - │ ├── value: - │ │ @ IntegerNode (location: (3,0)-(3,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── pattern: - │ │ @ FindPatternNode (location: (3,5)-(3,15)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── left: - │ │ │ @ SplatNode (location: (3,6)-(3,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (3,6)-(3,7) = "*" - │ │ │ └── expression: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ IntegerNode (location: (3,9)-(3,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 42 - │ │ ├── right: - │ │ │ @ SplatNode (location: (3,13)-(3,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (3,13)-(3,14) = "*" - │ │ │ └── expression: ∅ - │ │ ├── opening_loc: (3,5)-(3,6) = "[" - │ │ └── closing_loc: (3,14)-(3,15) = "]" - │ └── operator_loc: (3,2)-(3,4) = "in" - └── @ MatchPredicateNode (location: (4,0)-(4,17)) - ├── flags: newline - ├── value: - │ @ IntegerNode (location: (4,0)-(4,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── pattern: - │ @ FindPatternNode (location: (4,5)-(4,17)) - │ ├── flags: ∅ - │ ├── constant: ∅ - │ ├── left: - │ │ @ SplatNode (location: (4,6)-(4,7)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (4,6)-(4,7) = "*" - │ │ └── expression: ∅ - │ ├── requireds: (length: 1) - │ │ └── @ LocalVariableTargetNode (location: (4,9)-(4,10)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── right: - │ │ @ SplatNode (location: (4,12)-(4,16)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (4,12)-(4,13) = "*" - │ │ └── expression: - │ │ @ LocalVariableTargetNode (location: (4,13)-(4,16)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── opening_loc: (4,5)-(4,6) = "[" - │ └── closing_loc: (4,16)-(4,17) = "]" - └── operator_loc: (4,2)-(4,4) = "in" diff --git a/test/prism/snapshots/unparser/corpus/literal/since/31.txt b/test/prism/snapshots/unparser/corpus/literal/since/31.txt deleted file mode 100644 index 81bcd9662b..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/since/31.txt +++ /dev/null @@ -1,100 +0,0 @@ -@ ProgramNode (location: (1,0)-(7,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(7,3)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ DefNode (location: (1,0)-(3,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (1,4)-(1,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,8)-(1,9)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (1,8)-(1,9)) - │ │ ├── flags: ∅ - │ │ ├── name: ∅ - │ │ ├── name_loc: ∅ - │ │ └── operator_loc: (1,8)-(1,9) = "&" - │ ├── body: - │ │ @ StatementsNode (location: (2,2)-(2,7)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (2,2)-(2,7)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (2,2)-(2,5) = "bar" - │ │ ├── opening_loc: (2,5)-(2,6) = "(" - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: (2,7)-(2,8) = ")" - │ │ └── block: - │ │ @ BlockArgumentNode (location: (2,6)-(2,7)) - │ │ ├── flags: ∅ - │ │ ├── expression: ∅ - │ │ └── operator_loc: (2,6)-(2,7) = "&" - │ ├── locals: [] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (1,7)-(1,8) = "(" - │ ├── rparen_loc: (1,9)-(1,10) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (3,0)-(3,3) = "end" - └── @ DefNode (location: (5,0)-(7,3)) - ├── flags: newline - ├── name: :foo - ├── name_loc: (5,4)-(5,7) = "foo" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (5,8)-(5,12)) - │ ├── flags: ∅ - │ ├── requireds: (length: 1) - │ │ └── @ RequiredParameterNode (location: (5,8)-(5,9)) - │ │ ├── flags: ∅ - │ │ └── name: :a - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: - │ @ BlockParameterNode (location: (5,11)-(5,12)) - │ ├── flags: ∅ - │ ├── name: ∅ - │ ├── name_loc: ∅ - │ └── operator_loc: (5,11)-(5,12) = "&" - ├── body: - │ @ StatementsNode (location: (6,2)-(6,7)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (6,2)-(6,7)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (6,2)-(6,5) = "bar" - │ ├── opening_loc: (6,5)-(6,6) = "(" - │ ├── arguments: ∅ - │ ├── closing_loc: (6,7)-(6,8) = ")" - │ └── block: - │ @ BlockArgumentNode (location: (6,6)-(6,7)) - │ ├── flags: ∅ - │ ├── expression: ∅ - │ └── operator_loc: (6,6)-(6,7) = "&" - ├── locals: [:a] - ├── def_keyword_loc: (5,0)-(5,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (5,7)-(5,8) = "(" - ├── rparen_loc: (5,12)-(5,13) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (7,0)-(7,3) = "end" diff --git a/test/prism/snapshots/unparser/corpus/literal/since/32.txt b/test/prism/snapshots/unparser/corpus/literal/since/32.txt deleted file mode 100644 index 2b126a0cc5..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/since/32.txt +++ /dev/null @@ -1,174 +0,0 @@ -@ ProgramNode (location: (1,0)-(11,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(11,3)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ DefNode (location: (1,0)-(3,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (1,4)-(1,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,8)-(1,20)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,8)-(1,16)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :argument - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ KeywordRestParameterNode (location: (1,18)-(1,20)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: ∅ - │ │ │ ├── name_loc: ∅ - │ │ │ └── operator_loc: (1,18)-(1,20) = "**" - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (2,2)-(2,19)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (2,2)-(2,19)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (2,2)-(2,5) = "bar" - │ │ ├── opening_loc: (2,5)-(2,6) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (2,6)-(2,18)) - │ │ │ ├── flags: contains_keywords, contains_keyword_splat - │ │ │ └── arguments: (length: 2) - │ │ │ ├── @ LocalVariableReadNode (location: (2,6)-(2,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :argument - │ │ │ │ └── depth: 0 - │ │ │ └── @ KeywordHashNode (location: (2,16)-(2,18)) - │ │ │ ├── flags: ∅ - │ │ │ └── elements: (length: 1) - │ │ │ └── @ AssocSplatNode (location: (2,16)-(2,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── value: ∅ - │ │ │ └── operator_loc: (2,16)-(2,18) = "**" - │ │ ├── closing_loc: (2,18)-(2,19) = ")" - │ │ └── block: ∅ - │ ├── locals: [:argument] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (1,7)-(1,8) = "(" - │ ├── rparen_loc: (1,20)-(1,21) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (3,0)-(3,3) = "end" - ├── @ DefNode (location: (5,0)-(7,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (5,4)-(5,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (5,8)-(5,19)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (5,8)-(5,16)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :argument - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (5,18)-(5,19)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: ∅ - │ │ │ ├── name_loc: ∅ - │ │ │ └── operator_loc: (5,18)-(5,19) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (6,2)-(6,18)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (6,2)-(6,18)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (6,2)-(6,5) = "bar" - │ │ ├── opening_loc: (6,5)-(6,6) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (6,6)-(6,17)) - │ │ │ ├── flags: contains_splat - │ │ │ └── arguments: (length: 2) - │ │ │ ├── @ LocalVariableReadNode (location: (6,6)-(6,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :argument - │ │ │ │ └── depth: 0 - │ │ │ └── @ SplatNode (location: (6,16)-(6,17)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (6,16)-(6,17) = "*" - │ │ │ └── expression: ∅ - │ │ ├── closing_loc: (6,17)-(6,18) = ")" - │ │ └── block: ∅ - │ ├── locals: [:argument] - │ ├── def_keyword_loc: (5,0)-(5,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (5,7)-(5,8) = "(" - │ ├── rparen_loc: (5,19)-(5,20) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (7,0)-(7,3) = "end" - └── @ DefNode (location: (9,0)-(11,3)) - ├── flags: newline - ├── name: :foo - ├── name_loc: (9,4)-(9,7) = "foo" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (9,8)-(9,10)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: - │ │ @ KeywordRestParameterNode (location: (9,8)-(9,10)) - │ │ ├── flags: ∅ - │ │ ├── name: ∅ - │ │ ├── name_loc: ∅ - │ │ └── operator_loc: (9,8)-(9,10) = "**" - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (10,2)-(10,20)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ HashNode (location: (10,2)-(10,20)) - │ ├── flags: newline - │ ├── opening_loc: (10,2)-(10,3) = "{" - │ ├── elements: (length: 2) - │ │ ├── @ AssocNode (location: (10,4)-(10,14)) - │ │ │ ├── flags: static_literal - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (10,4)-(10,12)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (10,4)-(10,11) = "default" - │ │ │ │ ├── closing_loc: (10,11)-(10,12) = ":" - │ │ │ │ └── unescaped: "default" - │ │ │ ├── value: - │ │ │ │ @ IntegerNode (location: (10,13)-(10,14)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── operator_loc: ∅ - │ │ └── @ AssocSplatNode (location: (10,16)-(10,18)) - │ │ ├── flags: ∅ - │ │ ├── value: ∅ - │ │ └── operator_loc: (10,16)-(10,18) = "**" - │ └── closing_loc: (10,19)-(10,20) = "}" - ├── locals: [] - ├── def_keyword_loc: (9,0)-(9,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (9,7)-(9,8) = "(" - ├── rparen_loc: (9,10)-(9,11) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (11,0)-(11,3) = "end" diff --git a/test/prism/snapshots/unparser/corpus/literal/singletons.txt b/test/prism/snapshots/unparser/corpus/literal/singletons.txt deleted file mode 100644 index 23069207c9..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/singletons.txt +++ /dev/null @@ -1,15 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,4)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ FalseNode (location: (1,0)-(1,5)) - │ └── flags: newline, static_literal - ├── @ NilNode (location: (2,0)-(2,3)) - │ └── flags: newline, static_literal - ├── @ SelfNode (location: (3,0)-(3,4)) - │ └── flags: newline - └── @ TrueNode (location: (4,0)-(4,4)) - └── flags: newline, static_literal diff --git a/test/prism/snapshots/unparser/corpus/literal/super.txt b/test/prism/snapshots/unparser/corpus/literal/super.txt deleted file mode 100644 index a6311116ca..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/super.txt +++ /dev/null @@ -1,302 +0,0 @@ -@ ProgramNode (location: (1,0)-(21,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(21,1)) - ├── flags: ∅ - └── body: (length: 11) - ├── @ ForwardingSuperNode (location: (1,0)-(1,5)) - │ ├── flags: newline - │ └── block: ∅ - ├── @ SuperNode (location: (2,0)-(2,7)) - │ ├── flags: newline - │ ├── keyword_loc: (2,0)-(2,5) = "super" - │ ├── lparen_loc: (2,5)-(2,6) = "(" - │ ├── arguments: ∅ - │ ├── rparen_loc: (2,6)-(2,7) = ")" - │ └── block: ∅ - ├── @ SuperNode (location: (3,0)-(3,8)) - │ ├── flags: newline - │ ├── keyword_loc: (3,0)-(3,5) = "super" - │ ├── lparen_loc: (3,5)-(3,6) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (3,6)-(3,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (3,6)-(3,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (3,6)-(3,7) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rparen_loc: (3,7)-(3,8) = ")" - │ └── block: ∅ - ├── @ SuperNode (location: (4,0)-(4,11)) - │ ├── flags: newline - │ ├── keyword_loc: (4,0)-(4,5) = "super" - │ ├── lparen_loc: (4,5)-(4,6) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (4,6)-(4,10)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (4,6)-(4,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (4,6)-(4,7) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ CallNode (location: (4,9)-(4,10)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (4,9)-(4,10) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rparen_loc: (4,10)-(4,11) = ")" - │ └── block: ∅ - ├── @ SuperNode (location: (5,0)-(5,13)) - │ ├── flags: newline - │ ├── keyword_loc: (5,0)-(5,5) = "super" - │ ├── lparen_loc: (5,5)-(5,6) = "(" - │ ├── arguments: ∅ - │ ├── rparen_loc: (5,12)-(5,13) = ")" - │ └── block: - │ @ BlockArgumentNode (location: (5,6)-(5,12)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (5,7)-(5,12)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :block - │ │ ├── message_loc: (5,7)-(5,12) = "block" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (5,6)-(5,7) = "&" - ├── @ SuperNode (location: (6,0)-(6,16)) - │ ├── flags: newline - │ ├── keyword_loc: (6,0)-(6,5) = "super" - │ ├── lparen_loc: (6,5)-(6,6) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (6,6)-(6,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (6,6)-(6,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (6,6)-(6,7) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rparen_loc: (6,15)-(6,16) = ")" - │ └── block: - │ @ BlockArgumentNode (location: (6,9)-(6,15)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (6,10)-(6,15)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :block - │ │ ├── message_loc: (6,10)-(6,15) = "block" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (6,9)-(6,10) = "&" - ├── @ SuperNode (location: (7,0)-(9,2)) - │ ├── flags: newline - │ ├── keyword_loc: (7,0)-(7,5) = "super" - │ ├── lparen_loc: (7,5)-(7,6) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (7,6)-(9,1)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (7,6)-(9,1)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (7,6)-(7,7) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (7,8)-(9,1)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (8,2)-(8,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (8,2)-(8,5)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (8,2)-(8,5) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (7,8)-(7,9) = "{" - │ │ └── closing_loc: (9,0)-(9,1) = "}" - │ ├── rparen_loc: (9,1)-(9,2) = ")" - │ └── block: ∅ - ├── @ ForwardingSuperNode (location: (10,0)-(12,1)) - │ ├── flags: newline - │ └── block: - │ @ BlockNode (location: (10,6)-(12,1)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (11,2)-(11,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (11,2)-(11,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (11,2)-(11,5) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (10,6)-(10,7) = "{" - │ └── closing_loc: (12,0)-(12,1) = "}" - ├── @ SuperNode (location: (13,0)-(15,1)) - │ ├── flags: newline - │ ├── keyword_loc: (13,0)-(13,5) = "super" - │ ├── lparen_loc: (13,5)-(13,6) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (13,6)-(13,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (13,6)-(13,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (13,6)-(13,7) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rparen_loc: (13,7)-(13,8) = ")" - │ └── block: - │ @ BlockNode (location: (13,9)-(15,1)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (14,2)-(14,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (14,2)-(14,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (14,2)-(14,5) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (13,9)-(13,10) = "{" - │ └── closing_loc: (15,0)-(15,1) = "}" - ├── @ SuperNode (location: (16,0)-(18,1)) - │ ├── flags: newline - │ ├── keyword_loc: (16,0)-(16,5) = "super" - │ ├── lparen_loc: (16,5)-(16,6) = "(" - │ ├── arguments: ∅ - │ ├── rparen_loc: (16,6)-(16,7) = ")" - │ └── block: - │ @ BlockNode (location: (16,8)-(18,1)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (17,2)-(17,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (17,2)-(17,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (17,2)-(17,5) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (16,8)-(16,9) = "{" - │ └── closing_loc: (18,0)-(18,1) = "}" - └── @ SuperNode (location: (19,0)-(21,1)) - ├── flags: newline - ├── keyword_loc: (19,0)-(19,5) = "super" - ├── lparen_loc: (19,5)-(19,6) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (19,6)-(19,10)) - │ ├── flags: ∅ - │ └── arguments: (length: 2) - │ ├── @ CallNode (location: (19,6)-(19,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (19,6)-(19,7) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── @ CallNode (location: (19,9)-(19,10)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :b - │ ├── message_loc: (19,9)-(19,10) = "b" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── rparen_loc: (19,10)-(19,11) = ")" - └── block: - @ BlockNode (location: (19,12)-(21,1)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (20,2)-(20,5)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (20,2)-(20,5)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (20,2)-(20,5) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── opening_loc: (19,12)-(19,13) = "{" - └── closing_loc: (21,0)-(21,1) = "}" diff --git a/test/prism/snapshots/unparser/corpus/literal/unary.txt b/test/prism/snapshots/unparser/corpus/literal/unary.txt deleted file mode 100644 index ec2115e411..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/unary.txt +++ /dev/null @@ -1,309 +0,0 @@ -@ ProgramNode (location: (1,0)-(9,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(9,9)) - ├── flags: ∅ - └── body: (length: 9) - ├── @ CallNode (location: (1,0)-(1,2)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (1,1)-(1,2)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: ∅ - │ ├── name: :! - │ ├── message_loc: (1,0)-(1,1) = "!" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (2,0)-(2,5)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ParenthesesNode (location: (2,1)-(2,5)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (2,2)-(2,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (2,2)-(2,4)) - │ │ │ ├── flags: newline - │ │ │ ├── receiver: - │ │ │ │ @ IntegerNode (location: (2,3)-(2,4)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :! - │ │ │ ├── message_loc: (2,2)-(2,3) = "!" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (2,1)-(2,2) = "(" - │ │ └── closing_loc: (2,4)-(2,5) = ")" - │ ├── call_operator_loc: ∅ - │ ├── name: :! - │ ├── message_loc: (2,0)-(2,1) = "!" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (3,0)-(3,16)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ParenthesesNode (location: (3,1)-(3,16)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (3,2)-(3,15)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (3,2)-(3,15)) - │ │ │ ├── flags: newline - │ │ │ ├── receiver: - │ │ │ │ @ ParenthesesNode (location: (3,3)-(3,15)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── body: - │ │ │ │ │ @ StatementsNode (location: (3,4)-(3,14)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ OrNode (location: (3,4)-(3,14)) - │ │ │ │ │ ├── flags: newline - │ │ │ │ │ ├── left: - │ │ │ │ │ │ @ CallNode (location: (3,4)-(3,7)) - │ │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ │ ├── name: :foo - │ │ │ │ │ │ ├── message_loc: (3,4)-(3,7) = "foo" - │ │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ │ └── block: ∅ - │ │ │ │ │ ├── right: - │ │ │ │ │ │ @ CallNode (location: (3,11)-(3,14)) - │ │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ │ ├── name: :bar - │ │ │ │ │ │ ├── message_loc: (3,11)-(3,14) = "bar" - │ │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ │ └── block: ∅ - │ │ │ │ │ └── operator_loc: (3,8)-(3,10) = "||" - │ │ │ │ ├── opening_loc: (3,3)-(3,4) = "(" - │ │ │ │ └── closing_loc: (3,14)-(3,15) = ")" - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :! - │ │ │ ├── message_loc: (3,2)-(3,3) = "!" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (3,1)-(3,2) = "(" - │ │ └── closing_loc: (3,15)-(3,16) = ")" - │ ├── call_operator_loc: ∅ - │ ├── name: :! - │ ├── message_loc: (3,0)-(3,1) = "!" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (4,0)-(4,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (4,1)-(4,9)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ ParenthesesNode (location: (4,1)-(4,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (4,2)-(4,4)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (4,2)-(4,4)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── receiver: - │ │ │ │ │ @ IntegerNode (location: (4,3)-(4,4)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :! - │ │ │ │ ├── message_loc: (4,2)-(4,3) = "!" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── opening_loc: (4,1)-(4,2) = "(" - │ │ │ └── closing_loc: (4,4)-(4,5) = ")" - │ │ ├── call_operator_loc: (4,5)-(4,6) = "." - │ │ ├── name: :baz - │ │ ├── message_loc: (4,6)-(4,9) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :! - │ ├── message_loc: (4,0)-(4,1) = "!" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (5,0)-(5,2)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (5,1)-(5,2)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (5,1)-(5,2) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :~ - │ ├── message_loc: (5,0)-(5,1) = "~" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (6,0)-(6,2)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (6,1)-(6,2)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (6,1)-(6,2) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :-@ - │ ├── message_loc: (6,0)-(6,1) = "-" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (7,0)-(7,2)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (7,1)-(7,2)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (7,1)-(7,2) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :+@ - │ ├── message_loc: (7,0)-(7,1) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (8,0)-(8,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (8,1)-(8,9)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ ParenthesesNode (location: (8,1)-(8,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (8,2)-(8,4)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (8,2)-(8,4)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── receiver: - │ │ │ │ │ @ CallNode (location: (8,3)-(8,4)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :a - │ │ │ │ │ ├── message_loc: (8,3)-(8,4) = "a" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :-@ - │ │ │ │ ├── message_loc: (8,2)-(8,3) = "-" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── opening_loc: (8,1)-(8,2) = "(" - │ │ │ └── closing_loc: (8,4)-(8,5) = ")" - │ │ ├── call_operator_loc: (8,5)-(8,6) = "." - │ │ ├── name: :foo - │ │ ├── message_loc: (8,6)-(8,9) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :-@ - │ ├── message_loc: (8,0)-(8,1) = "-" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (9,0)-(9,9)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (9,1)-(9,9)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ ParenthesesNode (location: (9,1)-(9,5)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (9,2)-(9,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (9,2)-(9,4)) - │ │ │ ├── flags: newline - │ │ │ ├── receiver: - │ │ │ │ @ CallNode (location: (9,3)-(9,4)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ ├── message_loc: (9,3)-(9,4) = "a" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :+@ - │ │ │ ├── message_loc: (9,2)-(9,3) = "+" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (9,1)-(9,2) = "(" - │ │ └── closing_loc: (9,4)-(9,5) = ")" - │ ├── call_operator_loc: (9,5)-(9,6) = "." - │ ├── name: :foo - │ ├── message_loc: (9,6)-(9,9) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :+@ - ├── message_loc: (9,0)-(9,1) = "+" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/unparser/corpus/literal/undef.txt b/test/prism/snapshots/unparser/corpus/literal/undef.txt deleted file mode 100644 index b7ccf68e27..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/undef.txt +++ /dev/null @@ -1,33 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,16)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,16)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ UndefNode (location: (1,0)-(1,10)) - │ ├── flags: newline - │ ├── names: (length: 1) - │ │ └── @ SymbolNode (location: (1,6)-(1,10)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,6)-(1,7) = ":" - │ │ ├── value_loc: (1,7)-(1,10) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ └── keyword_loc: (1,0)-(1,5) = "undef" - └── @ UndefNode (location: (2,0)-(2,16)) - ├── flags: newline - ├── names: (length: 2) - │ ├── @ SymbolNode (location: (2,6)-(2,10)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (2,6)-(2,7) = ":" - │ │ ├── value_loc: (2,7)-(2,10) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ └── @ SymbolNode (location: (2,12)-(2,16)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (2,12)-(2,13) = ":" - │ ├── value_loc: (2,13)-(2,16) = "bar" - │ ├── closing_loc: ∅ - │ └── unescaped: "bar" - └── keyword_loc: (2,0)-(2,5) = "undef" diff --git a/test/prism/snapshots/unparser/corpus/literal/variables.txt b/test/prism/snapshots/unparser/corpus/literal/variables.txt deleted file mode 100644 index 3861af1a46..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/variables.txt +++ /dev/null @@ -1,62 +0,0 @@ -@ ProgramNode (location: (1,0)-(10,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(10,17)) - ├── flags: ∅ - └── body: (length: 10) - ├── @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ InstanceVariableReadNode (location: (2,0)-(2,2)) - │ ├── flags: newline - │ └── name: :@a - ├── @ ClassVariableReadNode (location: (3,0)-(3,3)) - │ ├── flags: newline - │ └── name: :@@a - ├── @ GlobalVariableReadNode (location: (4,0)-(4,2)) - │ ├── flags: newline - │ └── name: :$a - ├── @ NumberedReferenceReadNode (location: (5,0)-(5,2)) - │ ├── flags: newline - │ └── number: 1 - ├── @ BackReferenceReadNode (location: (6,0)-(6,2)) - │ ├── flags: newline - │ └── name: :$` - ├── @ ConstantReadNode (location: (7,0)-(7,5)) - │ ├── flags: newline - │ └── name: :CONST - ├── @ ConstantPathNode (location: (8,0)-(8,13)) - │ ├── flags: newline - │ ├── parent: - │ │ @ ConstantReadNode (location: (8,0)-(8,6)) - │ │ ├── flags: ∅ - │ │ └── name: :SCOPED - │ ├── name: :CONST - │ ├── delimiter_loc: (8,6)-(8,8) = "::" - │ └── name_loc: (8,8)-(8,13) = "CONST" - ├── @ ConstantPathNode (location: (9,0)-(9,10)) - │ ├── flags: newline - │ ├── parent: ∅ - │ ├── name: :TOPLEVEL - │ ├── delimiter_loc: (9,0)-(9,2) = "::" - │ └── name_loc: (9,2)-(9,10) = "TOPLEVEL" - └── @ ConstantPathNode (location: (10,0)-(10,17)) - ├── flags: newline - ├── parent: - │ @ ConstantPathNode (location: (10,0)-(10,10)) - │ ├── flags: ∅ - │ ├── parent: ∅ - │ ├── name: :TOPLEVEL - │ ├── delimiter_loc: (10,0)-(10,2) = "::" - │ └── name_loc: (10,2)-(10,10) = "TOPLEVEL" - ├── name: :CONST - ├── delimiter_loc: (10,10)-(10,12) = "::" - └── name_loc: (10,12)-(10,17) = "CONST" diff --git a/test/prism/snapshots/unparser/corpus/literal/while.txt b/test/prism/snapshots/unparser/corpus/literal/while.txt deleted file mode 100644 index 7d9a24ec62..0000000000 --- a/test/prism/snapshots/unparser/corpus/literal/while.txt +++ /dev/null @@ -1,786 +0,0 @@ -@ ProgramNode (location: (1,0)-(73,3)) -├── flags: ∅ -├── locals: [:x] -└── statements: - @ StatementsNode (location: (1,0)-(73,3)) - ├── flags: ∅ - └── body: (length: 17) - ├── @ ModuleNode (location: (1,0)-(7,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── module_keyword_loc: (1,0)-(1,6) = "module" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (1,7)-(1,8)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── body: - │ │ @ StatementsNode (location: (2,2)-(6,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (2,2)-(6,3)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (2,2)-(2,5) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (2,6)-(6,3)) - │ │ ├── flags: ∅ - │ │ ├── locals: [:bar, :foo] - │ │ ├── parameters: - │ │ │ @ BlockParametersNode (location: (2,8)-(2,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parameters: - │ │ │ │ @ ParametersNode (location: (2,9)-(2,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── requireds: (length: 1) - │ │ │ │ │ └── @ RequiredParameterNode (location: (2,9)-(2,12)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :bar - │ │ │ │ ├── optionals: (length: 0) - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── posts: (length: 0) - │ │ │ │ ├── keywords: (length: 0) - │ │ │ │ ├── keyword_rest: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── locals: (length: 0) - │ │ │ ├── opening_loc: (2,8)-(2,9) = "|" - │ │ │ └── closing_loc: (2,12)-(2,13) = "|" - │ │ ├── body: - │ │ │ @ StatementsNode (location: (3,4)-(5,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ WhileNode (location: (3,4)-(5,7)) - │ │ │ ├── flags: newline - │ │ │ ├── keyword_loc: (3,4)-(3,9) = "while" - │ │ │ ├── closing_loc: (5,4)-(5,7) = "end" - │ │ │ ├── predicate: - │ │ │ │ @ CallNode (location: (3,10)-(3,13)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :foo - │ │ │ │ ├── message_loc: (3,10)-(3,13) = "foo" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── statements: - │ │ │ @ StatementsNode (location: (4,6)-(4,15)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ LocalVariableWriteNode (location: (4,6)-(4,15)) - │ │ │ ├── flags: newline - │ │ │ ├── name: :foo - │ │ │ ├── depth: 0 - │ │ │ ├── name_loc: (4,6)-(4,9) = "foo" - │ │ │ ├── value: - │ │ │ │ @ LocalVariableReadNode (location: (4,12)-(4,15)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ └── depth: 0 - │ │ │ └── operator_loc: (4,10)-(4,11) = "=" - │ │ ├── opening_loc: (2,6)-(2,7) = "{" - │ │ └── closing_loc: (6,2)-(6,3) = "}" - │ ├── end_keyword_loc: (7,0)-(7,3) = "end" - │ └── name: :A - ├── @ DefNode (location: (9,0)-(11,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (9,4)-(9,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (10,2)-(10,28)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ WhileNode (location: (10,2)-(10,28)) - │ │ ├── flags: newline - │ │ ├── keyword_loc: (10,12)-(10,17) = "while" - │ │ ├── closing_loc: ∅ - │ │ ├── predicate: - │ │ │ @ CallNode (location: (10,18)-(10,28)) - │ │ │ ├── flags: ∅ - │ │ │ ├── receiver: - │ │ │ │ @ LocalVariableReadNode (location: (10,18)-(10,21)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :foo - │ │ │ │ └── depth: 0 - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :!= - │ │ │ ├── message_loc: (10,22)-(10,24) = "!=" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (10,25)-(10,28)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (10,25)-(10,28)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ ├── message_loc: (10,25)-(10,28) = "baz" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── statements: - │ │ @ StatementsNode (location: (10,2)-(10,11)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableWriteNode (location: (10,2)-(10,11)) - │ │ ├── flags: newline - │ │ ├── name: :foo - │ │ ├── depth: 0 - │ │ ├── name_loc: (10,2)-(10,5) = "foo" - │ │ ├── value: - │ │ │ @ CallNode (location: (10,8)-(10,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (10,8)-(10,11) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (10,6)-(10,7) = "=" - │ ├── locals: [:foo] - │ ├── def_keyword_loc: (9,0)-(9,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (11,0)-(11,3) = "end" - ├── @ ModuleNode (location: (13,0)-(15,3)) - │ ├── flags: newline - │ ├── locals: [:foo] - │ ├── module_keyword_loc: (13,0)-(13,6) = "module" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (13,7)-(13,8)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── body: - │ │ @ StatementsNode (location: (14,2)-(14,21)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ WhileNode (location: (14,2)-(14,21)) - │ │ ├── flags: newline - │ │ ├── keyword_loc: (14,12)-(14,17) = "while" - │ │ ├── closing_loc: ∅ - │ │ ├── predicate: - │ │ │ @ LocalVariableReadNode (location: (14,18)-(14,21)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :foo - │ │ │ └── depth: 0 - │ │ └── statements: - │ │ @ StatementsNode (location: (14,2)-(14,11)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableWriteNode (location: (14,2)-(14,11)) - │ │ ├── flags: newline - │ │ ├── name: :foo - │ │ ├── depth: 0 - │ │ ├── name_loc: (14,2)-(14,5) = "foo" - │ │ ├── value: - │ │ │ @ CallNode (location: (14,8)-(14,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (14,8)-(14,11) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (14,6)-(14,7) = "=" - │ ├── end_keyword_loc: (15,0)-(15,3) = "end" - │ └── name: :A - ├── @ ModuleNode (location: (17,0)-(19,3)) - │ ├── flags: newline - │ ├── locals: [:foo] - │ ├── module_keyword_loc: (17,0)-(17,6) = "module" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (17,7)-(17,8)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── body: - │ │ @ StatementsNode (location: (18,2)-(18,21)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ UntilNode (location: (18,2)-(18,21)) - │ │ ├── flags: newline - │ │ ├── keyword_loc: (18,12)-(18,17) = "until" - │ │ ├── closing_loc: ∅ - │ │ ├── predicate: - │ │ │ @ LocalVariableReadNode (location: (18,18)-(18,21)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :foo - │ │ │ └── depth: 0 - │ │ └── statements: - │ │ @ StatementsNode (location: (18,2)-(18,11)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableWriteNode (location: (18,2)-(18,11)) - │ │ ├── flags: newline - │ │ ├── name: :foo - │ │ ├── depth: 0 - │ │ ├── name_loc: (18,2)-(18,5) = "foo" - │ │ ├── value: - │ │ │ @ CallNode (location: (18,8)-(18,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (18,8)-(18,11) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (18,6)-(18,7) = "=" - │ ├── end_keyword_loc: (19,0)-(19,3) = "end" - │ └── name: :A - ├── @ ModuleNode (location: (21,0)-(25,3)) - │ ├── flags: newline - │ ├── locals: [:foo] - │ ├── module_keyword_loc: (21,0)-(21,6) = "module" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (21,7)-(21,8)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── body: - │ │ @ StatementsNode (location: (22,2)-(24,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ WhileNode (location: (22,2)-(24,5)) - │ │ ├── flags: newline - │ │ ├── keyword_loc: (22,2)-(22,7) = "while" - │ │ ├── closing_loc: (24,2)-(24,5) = "end" - │ │ ├── predicate: - │ │ │ @ CallNode (location: (22,8)-(22,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (22,8)-(22,11) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── statements: - │ │ @ StatementsNode (location: (23,4)-(23,13)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableWriteNode (location: (23,4)-(23,13)) - │ │ ├── flags: newline - │ │ ├── name: :foo - │ │ ├── depth: 0 - │ │ ├── name_loc: (23,4)-(23,7) = "foo" - │ │ ├── value: - │ │ │ @ CallNode (location: (23,10)-(23,13)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (23,10)-(23,13) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (23,8)-(23,9) = "=" - │ ├── end_keyword_loc: (25,0)-(25,3) = "end" - │ └── name: :A - ├── @ ModuleNode (location: (27,0)-(33,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── module_keyword_loc: (27,0)-(27,6) = "module" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (27,7)-(27,8)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── body: - │ │ @ StatementsNode (location: (28,2)-(32,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (28,2)-(32,3)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :each - │ │ ├── message_loc: (28,2)-(28,6) = "each" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (28,7)-(32,3)) - │ │ ├── flags: ∅ - │ │ ├── locals: [:baz, :foo] - │ │ ├── parameters: - │ │ │ @ BlockParametersNode (location: (28,9)-(28,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parameters: - │ │ │ │ @ ParametersNode (location: (28,10)-(28,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── requireds: (length: 1) - │ │ │ │ │ └── @ RequiredParameterNode (location: (28,10)-(28,13)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :baz - │ │ │ │ ├── optionals: (length: 0) - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── posts: (length: 0) - │ │ │ │ ├── keywords: (length: 0) - │ │ │ │ ├── keyword_rest: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── locals: (length: 0) - │ │ │ ├── opening_loc: (28,9)-(28,10) = "|" - │ │ │ └── closing_loc: (28,13)-(28,14) = "|" - │ │ ├── body: - │ │ │ @ StatementsNode (location: (29,4)-(31,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ WhileNode (location: (29,4)-(31,7)) - │ │ │ ├── flags: newline - │ │ │ ├── keyword_loc: (29,4)-(29,9) = "while" - │ │ │ ├── closing_loc: (31,4)-(31,7) = "end" - │ │ │ ├── predicate: - │ │ │ │ @ CallNode (location: (29,10)-(29,13)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :foo - │ │ │ │ ├── message_loc: (29,10)-(29,13) = "foo" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── statements: - │ │ │ @ StatementsNode (location: (30,6)-(30,15)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ LocalVariableWriteNode (location: (30,6)-(30,15)) - │ │ │ ├── flags: newline - │ │ │ ├── name: :foo - │ │ │ ├── depth: 0 - │ │ │ ├── name_loc: (30,6)-(30,9) = "foo" - │ │ │ ├── value: - │ │ │ │ @ CallNode (location: (30,12)-(30,15)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (30,12)-(30,15) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── operator_loc: (30,10)-(30,11) = "=" - │ │ ├── opening_loc: (28,7)-(28,8) = "{" - │ │ └── closing_loc: (32,2)-(32,3) = "}" - │ ├── end_keyword_loc: (33,0)-(33,3) = "end" - │ └── name: :A - ├── @ ModuleNode (location: (35,0)-(41,3)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── module_keyword_loc: (35,0)-(35,6) = "module" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (35,7)-(35,8)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── body: - │ │ @ StatementsNode (location: (36,2)-(40,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (36,2)-(40,3)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :each - │ │ ├── message_loc: (36,2)-(36,6) = "each" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (36,7)-(40,3)) - │ │ ├── flags: ∅ - │ │ ├── locals: [:foo] - │ │ ├── parameters: - │ │ │ @ BlockParametersNode (location: (36,9)-(36,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parameters: - │ │ │ │ @ ParametersNode (location: (36,10)-(36,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── requireds: (length: 1) - │ │ │ │ │ └── @ RequiredParameterNode (location: (36,10)-(36,13)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :foo - │ │ │ │ ├── optionals: (length: 0) - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── posts: (length: 0) - │ │ │ │ ├── keywords: (length: 0) - │ │ │ │ ├── keyword_rest: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── locals: (length: 0) - │ │ │ ├── opening_loc: (36,9)-(36,10) = "|" - │ │ │ └── closing_loc: (36,13)-(36,14) = "|" - │ │ ├── body: - │ │ │ @ StatementsNode (location: (37,4)-(39,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ WhileNode (location: (37,4)-(39,7)) - │ │ │ ├── flags: newline - │ │ │ ├── keyword_loc: (37,4)-(37,9) = "while" - │ │ │ ├── closing_loc: (39,4)-(39,7) = "end" - │ │ │ ├── predicate: - │ │ │ │ @ LocalVariableReadNode (location: (37,10)-(37,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :foo - │ │ │ │ └── depth: 0 - │ │ │ └── statements: - │ │ │ @ StatementsNode (location: (38,6)-(38,15)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ LocalVariableWriteNode (location: (38,6)-(38,15)) - │ │ │ ├── flags: newline - │ │ │ ├── name: :foo - │ │ │ ├── depth: 0 - │ │ │ ├── name_loc: (38,6)-(38,9) = "foo" - │ │ │ ├── value: - │ │ │ │ @ CallNode (location: (38,12)-(38,15)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (38,12)-(38,15) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── operator_loc: (38,10)-(38,11) = "=" - │ │ ├── opening_loc: (36,7)-(36,8) = "{" - │ │ └── closing_loc: (40,2)-(40,3) = "}" - │ ├── end_keyword_loc: (41,0)-(41,3) = "end" - │ └── name: :A - ├── @ LocalVariableWriteNode (location: (42,0)-(44,14)) - │ ├── flags: newline - │ ├── name: :x - │ ├── depth: 0 - │ ├── name_loc: (42,0)-(42,1) = "x" - │ ├── value: - │ │ @ ParenthesesNode (location: (42,4)-(44,14)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (42,5)-(44,13)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ WhileNode (location: (42,5)-(44,13)) - │ │ │ ├── flags: newline, begin_modifier - │ │ │ ├── keyword_loc: (44,4)-(44,9) = "while" - │ │ │ ├── closing_loc: ∅ - │ │ │ ├── predicate: - │ │ │ │ @ CallNode (location: (44,10)-(44,13)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ ├── message_loc: (44,10)-(44,13) = "baz" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── statements: - │ │ │ @ StatementsNode (location: (42,5)-(44,3)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ BeginNode (location: (42,5)-(44,3)) - │ │ │ ├── flags: newline - │ │ │ ├── begin_keyword_loc: (42,5)-(42,10) = "begin" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (43,2)-(43,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (43,2)-(43,5)) - │ │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :foo - │ │ │ │ ├── message_loc: (43,2)-(43,5) = "foo" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── rescue_clause: ∅ - │ │ │ ├── else_clause: ∅ - │ │ │ ├── ensure_clause: ∅ - │ │ │ └── end_keyword_loc: (44,0)-(44,3) = "end" - │ │ ├── opening_loc: (42,4)-(42,5) = "(" - │ │ └── closing_loc: (44,13)-(44,14) = ")" - │ └── operator_loc: (42,2)-(42,3) = "=" - ├── @ WhileNode (location: (45,0)-(47,13)) - │ ├── flags: newline, begin_modifier - │ ├── keyword_loc: (47,4)-(47,9) = "while" - │ ├── closing_loc: ∅ - │ ├── predicate: - │ │ @ CallNode (location: (47,10)-(47,13)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (47,10)-(47,13) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── statements: - │ @ StatementsNode (location: (45,0)-(47,3)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ BeginNode (location: (45,0)-(47,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (45,0)-(45,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (46,2)-(46,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (46,2)-(46,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (46,2)-(46,5) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (47,0)-(47,3) = "end" - ├── @ UntilNode (location: (48,0)-(51,13)) - │ ├── flags: newline, begin_modifier - │ ├── keyword_loc: (51,4)-(51,9) = "until" - │ ├── closing_loc: ∅ - │ ├── predicate: - │ │ @ CallNode (location: (51,10)-(51,13)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (51,10)-(51,13) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── statements: - │ @ StatementsNode (location: (48,0)-(51,3)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ BeginNode (location: (48,0)-(51,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (48,0)-(48,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (49,2)-(50,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 2) - │ │ ├── @ CallNode (location: (49,2)-(49,5)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (49,2)-(49,5) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ CallNode (location: (50,2)-(50,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (50,2)-(50,5) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (51,0)-(51,3) = "end" - ├── @ WhileNode (location: (52,0)-(55,13)) - │ ├── flags: newline, begin_modifier - │ ├── keyword_loc: (55,4)-(55,9) = "while" - │ ├── closing_loc: ∅ - │ ├── predicate: - │ │ @ CallNode (location: (55,10)-(55,13)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (55,10)-(55,13) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── statements: - │ @ StatementsNode (location: (52,0)-(55,3)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ BeginNode (location: (52,0)-(55,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (52,0)-(52,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (53,2)-(54,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 2) - │ │ ├── @ CallNode (location: (53,2)-(53,5)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (53,2)-(53,5) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ CallNode (location: (54,2)-(54,5)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (54,2)-(54,5) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (55,0)-(55,3) = "end" - ├── @ WhileNode (location: (56,0)-(57,3)) - │ ├── flags: newline - │ ├── keyword_loc: (56,0)-(56,5) = "while" - │ ├── closing_loc: (57,0)-(57,3) = "end" - │ ├── predicate: - │ │ @ FalseNode (location: (56,6)-(56,11)) - │ │ └── flags: static_literal - │ └── statements: ∅ - ├── @ WhileNode (location: (58,0)-(60,3)) - │ ├── flags: newline - │ ├── keyword_loc: (58,0)-(58,5) = "while" - │ ├── closing_loc: (60,0)-(60,3) = "end" - │ ├── predicate: - │ │ @ FalseNode (location: (58,6)-(58,11)) - │ │ └── flags: static_literal - │ └── statements: - │ @ StatementsNode (location: (59,2)-(59,3)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ IntegerNode (location: (59,2)-(59,3)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 3 - ├── @ WhileNode (location: (61,0)-(64,3)) - │ ├── flags: newline - │ ├── keyword_loc: (61,0)-(61,5) = "while" - │ ├── closing_loc: (64,0)-(64,3) = "end" - │ ├── predicate: - │ │ @ ParenthesesNode (location: (61,6)-(62,2)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (61,7)-(62,1)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (61,7)-(62,1)) - │ │ │ ├── flags: newline, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (61,7)-(61,10) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (61,11)-(62,1)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: ∅ - │ │ │ ├── opening_loc: (61,11)-(61,12) = "{" - │ │ │ └── closing_loc: (62,0)-(62,1) = "}" - │ │ ├── opening_loc: (61,6)-(61,7) = "(" - │ │ └── closing_loc: (62,1)-(62,2) = ")" - │ └── statements: - │ @ StatementsNode (location: (63,2)-(63,7)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ SymbolNode (location: (63,2)-(63,7)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (63,2)-(63,3) = ":" - │ ├── value_loc: (63,3)-(63,7) = "body" - │ ├── closing_loc: ∅ - │ └── unescaped: "body" - ├── @ UntilNode (location: (65,0)-(66,3)) - │ ├── flags: newline - │ ├── keyword_loc: (65,0)-(65,5) = "until" - │ ├── closing_loc: (66,0)-(66,3) = "end" - │ ├── predicate: - │ │ @ FalseNode (location: (65,6)-(65,11)) - │ │ └── flags: static_literal - │ └── statements: ∅ - ├── @ UntilNode (location: (67,0)-(69,3)) - │ ├── flags: newline - │ ├── keyword_loc: (67,0)-(67,5) = "until" - │ ├── closing_loc: (69,0)-(69,3) = "end" - │ ├── predicate: - │ │ @ FalseNode (location: (67,6)-(67,11)) - │ │ └── flags: static_literal - │ └── statements: - │ @ StatementsNode (location: (68,2)-(68,3)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ IntegerNode (location: (68,2)-(68,3)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 3 - └── @ UntilNode (location: (70,0)-(73,3)) - ├── flags: newline - ├── keyword_loc: (70,0)-(70,5) = "until" - ├── closing_loc: (73,0)-(73,3) = "end" - ├── predicate: - │ @ ParenthesesNode (location: (70,6)-(71,2)) - │ ├── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (70,7)-(71,1)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (70,7)-(71,1)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (70,7)-(70,10) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (70,11)-(71,1)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (70,11)-(70,12) = "{" - │ │ └── closing_loc: (71,0)-(71,1) = "}" - │ ├── opening_loc: (70,6)-(70,7) = "(" - │ └── closing_loc: (71,1)-(71,2) = ")" - └── statements: - @ StatementsNode (location: (72,2)-(72,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ SymbolNode (location: (72,2)-(72,7)) - ├── flags: newline, static_literal, forced_us_ascii_encoding - ├── opening_loc: (72,2)-(72,3) = ":" - ├── value_loc: (72,3)-(72,7) = "body" - ├── closing_loc: ∅ - └── unescaped: "body" diff --git a/test/prism/snapshots/unparser/corpus/semantic/and.txt b/test/prism/snapshots/unparser/corpus/semantic/and.txt deleted file mode 100644 index ad2b639777..0000000000 --- a/test/prism/snapshots/unparser/corpus/semantic/and.txt +++ /dev/null @@ -1,243 +0,0 @@ -@ ProgramNode (location: (1,0)-(8,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(8,3)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ OrNode (location: (1,0)-(1,14)) - │ ├── flags: newline - │ ├── left: - │ │ @ RangeNode (location: (1,0)-(1,5)) - │ │ ├── flags: exclude_end - │ │ ├── left: - │ │ │ @ CallNode (location: (1,0)-(1,1)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (1,0)-(1,1) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── right: - │ │ │ @ CallNode (location: (1,4)-(1,5)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (1,4)-(1,5) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (1,1)-(1,4) = "..." - │ ├── right: - │ │ @ RangeNode (location: (1,9)-(1,14)) - │ │ ├── flags: exclude_end - │ │ ├── left: - │ │ │ @ CallNode (location: (1,9)-(1,10)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :c - │ │ │ ├── message_loc: (1,9)-(1,10) = "c" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── right: - │ │ │ @ CallNode (location: (1,13)-(1,14)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :d - │ │ │ ├── message_loc: (1,13)-(1,14) = "d" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (1,10)-(1,13) = "..." - │ └── operator_loc: (1,6)-(1,8) = "or" - ├── @ AndNode (location: (2,0)-(2,15)) - │ ├── flags: newline - │ ├── left: - │ │ @ RangeNode (location: (2,0)-(2,5)) - │ │ ├── flags: exclude_end - │ │ ├── left: - │ │ │ @ CallNode (location: (2,0)-(2,1)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (2,0)-(2,1) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── right: - │ │ │ @ CallNode (location: (2,4)-(2,5)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (2,4)-(2,5) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (2,1)-(2,4) = "..." - │ ├── right: - │ │ @ RangeNode (location: (2,10)-(2,15)) - │ │ ├── flags: exclude_end - │ │ ├── left: - │ │ │ @ CallNode (location: (2,10)-(2,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :c - │ │ │ ├── message_loc: (2,10)-(2,11) = "c" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── right: - │ │ │ @ CallNode (location: (2,14)-(2,15)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :d - │ │ │ ├── message_loc: (2,14)-(2,15) = "d" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (2,11)-(2,14) = "..." - │ └── operator_loc: (2,6)-(2,9) = "and" - ├── @ IfNode (location: (4,0)-(5,3)) - │ ├── flags: newline - │ ├── if_keyword_loc: (4,0)-(4,2) = "if" - │ ├── predicate: - │ │ @ OrNode (location: (4,3)-(4,17)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ FlipFlopNode (location: (4,3)-(4,8)) - │ │ │ ├── flags: exclude_end - │ │ │ ├── left: - │ │ │ │ @ CallNode (location: (4,3)-(4,4)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ ├── message_loc: (4,3)-(4,4) = "a" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── right: - │ │ │ │ @ CallNode (location: (4,7)-(4,8)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── message_loc: (4,7)-(4,8) = "b" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── operator_loc: (4,4)-(4,7) = "..." - │ │ ├── right: - │ │ │ @ FlipFlopNode (location: (4,12)-(4,17)) - │ │ │ ├── flags: exclude_end - │ │ │ ├── left: - │ │ │ │ @ CallNode (location: (4,12)-(4,13)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (4,12)-(4,13) = "c" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── right: - │ │ │ │ @ CallNode (location: (4,16)-(4,17)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :d - │ │ │ │ ├── message_loc: (4,16)-(4,17) = "d" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── operator_loc: (4,13)-(4,16) = "..." - │ │ └── operator_loc: (4,9)-(4,11) = "or" - │ ├── then_keyword_loc: ∅ - │ ├── statements: ∅ - │ ├── subsequent: ∅ - │ └── end_keyword_loc: (5,0)-(5,3) = "end" - └── @ IfNode (location: (7,0)-(8,3)) - ├── flags: newline - ├── if_keyword_loc: (7,0)-(7,2) = "if" - ├── predicate: - │ @ AndNode (location: (7,3)-(7,18)) - │ ├── flags: ∅ - │ ├── left: - │ │ @ FlipFlopNode (location: (7,3)-(7,8)) - │ │ ├── flags: exclude_end - │ │ ├── left: - │ │ │ @ CallNode (location: (7,3)-(7,4)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (7,3)-(7,4) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── right: - │ │ │ @ CallNode (location: (7,7)-(7,8)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (7,7)-(7,8) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (7,4)-(7,7) = "..." - │ ├── right: - │ │ @ FlipFlopNode (location: (7,13)-(7,18)) - │ │ ├── flags: exclude_end - │ │ ├── left: - │ │ │ @ CallNode (location: (7,13)-(7,14)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :c - │ │ │ ├── message_loc: (7,13)-(7,14) = "c" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── right: - │ │ │ @ CallNode (location: (7,17)-(7,18)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :d - │ │ │ ├── message_loc: (7,17)-(7,18) = "d" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (7,14)-(7,17) = "..." - │ └── operator_loc: (7,9)-(7,12) = "and" - ├── then_keyword_loc: ∅ - ├── statements: ∅ - ├── subsequent: ∅ - └── end_keyword_loc: (8,0)-(8,3) = "end" diff --git a/test/prism/snapshots/unparser/corpus/semantic/block.txt b/test/prism/snapshots/unparser/corpus/semantic/block.txt deleted file mode 100644 index ea87b101ec..0000000000 --- a/test/prism/snapshots/unparser/corpus/semantic/block.txt +++ /dev/null @@ -1,213 +0,0 @@ -@ ProgramNode (location: (1,0)-(26,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(26,3)) - ├── flags: ∅ - └── body: (length: 6) - ├── @ CallNode (location: (1,0)-(2,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,0)-(1,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (1,4)-(2,3)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (1,4)-(1,6) = "do" - │ └── closing_loc: (2,0)-(2,3) = "end" - ├── @ CallNode (location: (4,0)-(6,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (4,0)-(4,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (4,4)-(6,3)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ BeginNode (location: (4,4)-(6,3)) - │ │ ├── flags: ∅ - │ │ ├── begin_keyword_loc: ∅ - │ │ ├── statements: ∅ - │ │ ├── rescue_clause: - │ │ │ @ RescueNode (location: (5,0)-(5,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── keyword_loc: (5,0)-(5,6) = "rescue" - │ │ │ ├── exceptions: (length: 0) - │ │ │ ├── operator_loc: ∅ - │ │ │ ├── reference: ∅ - │ │ │ ├── statements: ∅ - │ │ │ └── subsequent: ∅ - │ │ ├── else_clause: ∅ - │ │ ├── ensure_clause: ∅ - │ │ └── end_keyword_loc: (6,0)-(6,3) = "end" - │ ├── opening_loc: (4,4)-(4,6) = "do" - │ └── closing_loc: (6,0)-(6,3) = "end" - ├── @ CallNode (location: (8,0)-(11,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (8,0)-(8,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (8,4)-(11,3)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (9,2)-(10,5)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 2) - │ │ ├── @ RescueModifierNode (location: (9,2)-(9,16)) - │ │ │ ├── flags: newline - │ │ │ ├── expression: - │ │ │ │ @ NilNode (location: (9,2)-(9,5)) - │ │ │ │ └── flags: static_literal - │ │ │ ├── keyword_loc: (9,6)-(9,12) = "rescue" - │ │ │ └── rescue_expression: - │ │ │ @ NilNode (location: (9,13)-(9,16)) - │ │ │ └── flags: static_literal - │ │ └── @ NilNode (location: (10,2)-(10,5)) - │ │ └── flags: newline, static_literal - │ ├── opening_loc: (8,4)-(8,6) = "do" - │ └── closing_loc: (11,0)-(11,3) = "end" - ├── @ CallNode (location: (13,0)-(14,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (13,0)-(13,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (13,4)-(14,3)) - │ ├── flags: ∅ - │ ├── locals: [:a] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (13,7)-(13,10)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (13,8)-(13,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (13,8)-(13,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (13,7)-(13,8) = "|" - │ │ └── closing_loc: (13,9)-(13,10) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (13,4)-(13,6) = "do" - │ └── closing_loc: (14,0)-(14,3) = "end" - ├── @ CallNode (location: (16,0)-(20,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (16,0)-(16,3) = "foo" - │ ├── opening_loc: (16,3)-(16,4) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (16,4)-(16,10)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (16,4)-(16,10)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (16,4)-(16,10) = "<<-DOC" - │ │ ├── content_loc: (17,0)-(18,0) = " b\n" - │ │ ├── closing_loc: (18,0)-(19,0) = "DOC\n" - │ │ └── unescaped: " b\n" - │ ├── closing_loc: (16,10)-(16,11) = ")" - │ └── block: - │ @ BlockNode (location: (16,12)-(20,3)) - │ ├── flags: ∅ - │ ├── locals: [:a] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (16,15)-(16,18)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (16,16)-(16,17)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (16,16)-(16,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (16,15)-(16,16) = "|" - │ │ └── closing_loc: (16,17)-(16,18) = "|" - │ ├── body: - │ │ @ StatementsNode (location: (19,2)-(19,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (19,2)-(19,3)) - │ │ ├── flags: newline - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── opening_loc: (16,12)-(16,14) = "do" - │ └── closing_loc: (20,0)-(20,3) = "end" - └── @ CallNode (location: (22,0)-(26,3)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :foo - ├── message_loc: (22,0)-(22,3) = "foo" - ├── opening_loc: (22,3)-(22,4) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (22,4)-(22,10)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ StringNode (location: (22,4)-(22,10)) - │ ├── flags: ∅ - │ ├── opening_loc: (22,4)-(22,10) = "<<-DOC" - │ ├── content_loc: (23,0)-(24,0) = " b\n" - │ ├── closing_loc: (24,0)-(25,0) = "DOC\n" - │ └── unescaped: " b\n" - ├── closing_loc: (22,10)-(22,11) = ")" - └── block: - @ BlockNode (location: (22,12)-(26,3)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (25,2)-(25,3)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (25,2)-(25,3)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (25,2)-(25,3) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── opening_loc: (22,12)-(22,14) = "do" - └── closing_loc: (26,0)-(26,3) = "end" diff --git a/test/prism/snapshots/unparser/corpus/semantic/def.txt b/test/prism/snapshots/unparser/corpus/semantic/def.txt deleted file mode 100644 index f05ce02bca..0000000000 --- a/test/prism/snapshots/unparser/corpus/semantic/def.txt +++ /dev/null @@ -1,100 +0,0 @@ -@ ProgramNode (location: (1,0)-(7,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(7,3)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ DefNode (location: (1,0)-(3,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (1,4)-(1,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (2,2)-(2,9)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ ParenthesesNode (location: (2,2)-(2,9)) - │ │ ├── flags: newline - │ │ ├── body: - │ │ │ @ StatementsNode (location: (2,3)-(2,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (2,3)-(2,8)) - │ │ │ ├── flags: newline - │ │ │ ├── receiver: - │ │ │ │ @ CallNode (location: (2,3)-(2,4)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ ├── message_loc: (2,3)-(2,4) = "a" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :- - │ │ │ ├── message_loc: (2,5)-(2,6) = "-" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (2,7)-(2,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (2,7)-(2,8)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── message_loc: (2,7)-(2,8) = "b" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (2,2)-(2,3) = "(" - │ │ └── closing_loc: (2,8)-(2,9) = ")" - │ ├── locals: [] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (3,0)-(3,3) = "end" - └── @ DefNode (location: (5,0)-(7,3)) - ├── flags: newline - ├── name: :foo - ├── name_loc: (5,4)-(5,7) = "foo" - ├── receiver: ∅ - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (6,2)-(6,20)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ RescueModifierNode (location: (6,2)-(6,20)) - │ ├── flags: newline - │ ├── expression: - │ │ @ CallNode (location: (6,2)-(6,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (6,2)-(6,3) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── keyword_loc: (6,4)-(6,10) = "rescue" - │ └── rescue_expression: - │ @ ConstantReadNode (location: (6,11)-(6,20)) - │ ├── flags: ∅ - │ └── name: :Exception - ├── locals: [] - ├── def_keyword_loc: (5,0)-(5,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (7,0)-(7,3) = "end" diff --git a/test/prism/snapshots/unparser/corpus/semantic/dstr.txt b/test/prism/snapshots/unparser/corpus/semantic/dstr.txt deleted file mode 100644 index b1bfbefc8b..0000000000 --- a/test/prism/snapshots/unparser/corpus/semantic/dstr.txt +++ /dev/null @@ -1,639 +0,0 @@ -@ ProgramNode (location: (1,0)-(127,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(127,11)) - ├── flags: ∅ - └── body: (length: 33) - ├── @ StringNode (location: (1,0)-(1,5)) - │ ├── flags: newline - │ ├── opening_loc: (1,0)-(1,5) = "<<DOC" - │ ├── content_loc: (2,0)-(2,0) = "" - │ ├── closing_loc: (2,0)-(3,0) = "DOC\n" - │ └── unescaped: "" - ├── @ StringNode (location: (4,0)-(4,7)) - │ ├── flags: newline - │ ├── opening_loc: (4,0)-(4,7) = "<<'DOC'" - │ ├── content_loc: (5,0)-(5,0) = "" - │ ├── closing_loc: (5,0)-(6,0) = "DOC\n" - │ └── unescaped: "" - ├── @ StringNode (location: (7,0)-(7,6)) - │ ├── flags: newline - │ ├── opening_loc: (7,0)-(7,6) = "<<~DOC" - │ ├── content_loc: (8,0)-(8,0) = "" - │ ├── closing_loc: (8,0)-(9,0) = "DOC\n" - │ └── unescaped: "" - ├── @ StringNode (location: (10,0)-(10,8)) - │ ├── flags: newline - │ ├── opening_loc: (10,0)-(10,8) = "<<~'DOC'" - │ ├── content_loc: (11,0)-(11,0) = "" - │ ├── closing_loc: (11,0)-(12,0) = "DOC\n" - │ └── unescaped: "" - ├── @ StringNode (location: (13,0)-(13,5)) - │ ├── flags: newline - │ ├── opening_loc: (13,0)-(13,5) = "<<DOC" - │ ├── content_loc: (14,0)-(15,0) = " a\n" - │ ├── closing_loc: (15,0)-(16,0) = "DOC\n" - │ └── unescaped: " a\n" - ├── @ StringNode (location: (17,0)-(17,7)) - │ ├── flags: newline - │ ├── opening_loc: (17,0)-(17,7) = "<<'DOC'" - │ ├── content_loc: (18,0)-(19,0) = " a\n" - │ ├── closing_loc: (19,0)-(20,0) = "DOC\n" - │ └── unescaped: " a\n" - ├── @ InterpolatedStringNode (location: (21,0)-(21,5)) - │ ├── flags: newline - │ ├── opening_loc: (21,0)-(21,5) = "<<DOC" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (22,0)-(23,2)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (22,0)-(23,2) = " a\n " - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: " a\n " - │ │ ├── @ EmbeddedStatementsNode (location: (23,2)-(23,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (23,2)-(23,4) = "\#{" - │ │ │ ├── statements: ∅ - │ │ │ └── closing_loc: (23,4)-(23,5) = "}" - │ │ └── @ StringNode (location: (23,5)-(24,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (23,5)-(24,0) = "\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\n" - │ └── closing_loc: (24,0)-(25,0) = "DOC\n" - ├── @ InterpolatedStringNode (location: (26,0)-(26,6)) - │ ├── flags: newline - │ ├── opening_loc: (26,0)-(26,6) = "<<~DOC" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (27,0)-(28,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (27,0)-(28,0) = " a\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a\n" - │ │ ├── @ EmbeddedStatementsNode (location: (28,2)-(28,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (28,2)-(28,4) = "\#{" - │ │ │ ├── statements: ∅ - │ │ │ └── closing_loc: (28,4)-(28,5) = "}" - │ │ └── @ StringNode (location: (28,5)-(29,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (28,5)-(29,0) = "\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\n" - │ └── closing_loc: (29,0)-(30,0) = "DOC\n" - ├── @ InterpolatedStringNode (location: (31,0)-(31,6)) - │ ├── flags: newline - │ ├── opening_loc: (31,0)-(31,6) = "<<~DOC" - │ ├── parts: (length: 4) - │ │ ├── @ StringNode (location: (32,0)-(33,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (32,0)-(33,0) = " a\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a\n" - │ │ ├── @ EmbeddedStatementsNode (location: (33,2)-(33,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (33,2)-(33,4) = "\#{" - │ │ │ ├── statements: ∅ - │ │ │ └── closing_loc: (33,4)-(33,5) = "}" - │ │ ├── @ StringNode (location: (33,5)-(34,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (33,5)-(34,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ └── @ StringNode (location: (34,0)-(35,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (34,0)-(35,0) = " b\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b\n" - │ └── closing_loc: (35,0)-(36,0) = "DOC\n" - ├── @ InterpolatedStringNode (location: (37,0)-(37,6)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (37,0)-(37,6) = "<<~DOC" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (38,0)-(39,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (38,0)-(39,0) = " a\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a\n" - │ │ └── @ StringNode (location: (39,0)-(40,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (39,0)-(40,0) = " b\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: " b\n" - │ └── closing_loc: (40,0)-(41,0) = "DOC\n" - ├── @ StringNode (location: (42,0)-(42,7)) - │ ├── flags: newline - │ ├── opening_loc: (42,0)-(42,7) = "<<'DOC'" - │ ├── content_loc: (43,0)-(46,0) = "a\n\nb\n" - │ ├── closing_loc: (46,0)-(47,0) = "DOC\n" - │ └── unescaped: "a\n\nb\n" - ├── @ StringNode (location: (48,0)-(48,7)) - │ ├── flags: newline - │ ├── opening_loc: (48,0)-(48,7) = "<<'DOC'" - │ ├── content_loc: (49,0)-(52,0) = " a\n\n b\n" - │ ├── closing_loc: (52,0)-(53,0) = "DOC\n" - │ └── unescaped: " a\n\n b\n" - ├── @ StringNode (location: (54,0)-(54,7)) - │ ├── flags: newline - │ ├── opening_loc: (54,0)-(54,7) = "<<'DOC'" - │ ├── content_loc: (55,0)-(56,0) = " a\\nb\n" - │ ├── closing_loc: (56,0)-(57,0) = "DOC\n" - │ └── unescaped: " a\\nb\n" - ├── @ InterpolatedStringNode (location: (58,0)-(58,5)) - │ ├── flags: newline - │ ├── opening_loc: (58,0)-(58,5) = "<<DOC" - │ ├── parts: (length: 4) - │ │ ├── @ EmbeddedStatementsNode (location: (59,0)-(59,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (59,0)-(59,2) = "\#{" - │ │ │ ├── statements: ∅ - │ │ │ └── closing_loc: (59,2)-(59,3) = "}" - │ │ ├── @ StringNode (location: (59,3)-(60,1)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (59,3)-(60,1) = "a\n " - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a\n " - │ │ ├── @ EmbeddedStatementsNode (location: (60,1)-(60,4)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (60,1)-(60,3) = "\#{" - │ │ │ ├── statements: ∅ - │ │ │ └── closing_loc: (60,3)-(60,4) = "}" - │ │ └── @ StringNode (location: (60,4)-(61,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (60,4)-(61,0) = "a\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a\n" - │ └── closing_loc: (61,0)-(62,0) = "DOC\n" - ├── @ InterpolatedStringNode (location: (63,0)-(63,5)) - │ ├── flags: newline - │ ├── opening_loc: (63,0)-(63,5) = "<<DOC" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (64,0)-(64,2)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (64,0)-(64,2) = " " - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: " " - │ │ ├── @ EmbeddedStatementsNode (location: (64,2)-(64,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (64,2)-(64,4) = "\#{" - │ │ │ ├── statements: ∅ - │ │ │ └── closing_loc: (64,4)-(64,5) = "}" - │ │ └── @ StringNode (location: (64,5)-(66,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (64,5)-(66,0) = "\n \\\#{}\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\n \#{}\n" - │ └── closing_loc: (66,0)-(67,0) = "DOC\n" - ├── @ InterpolatedStringNode (location: (68,0)-(68,5)) - │ ├── flags: newline - │ ├── opening_loc: (68,0)-(68,5) = "<<DOC" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (69,0)-(69,2)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (69,0)-(69,2) = " a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: " a" - │ │ ├── @ EmbeddedStatementsNode (location: (69,2)-(69,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (69,2)-(69,4) = "\#{" - │ │ │ ├── statements: ∅ - │ │ │ └── closing_loc: (69,4)-(69,5) = "}" - │ │ └── @ StringNode (location: (69,5)-(71,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (69,5)-(71,0) = "b\n c\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b\n c\n" - │ └── closing_loc: (71,0)-(72,0) = "DOC\n" - ├── @ InterpolatedStringNode (location: (73,0)-(73,6)) - │ ├── flags: newline - │ ├── opening_loc: (73,0)-(73,6) = "<<~DOC" - │ ├── parts: (length: 2) - │ │ ├── @ EmbeddedStatementsNode (location: (74,2)-(74,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (74,2)-(74,4) = "\#{" - │ │ │ ├── statements: ∅ - │ │ │ └── closing_loc: (74,4)-(74,5) = "}" - │ │ └── @ StringNode (location: (74,5)-(75,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (74,5)-(75,0) = "\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\n" - │ └── closing_loc: (75,0)-(76,0) = "DOC\n" - ├── @ IfNode (location: (77,0)-(81,3)) - │ ├── flags: newline - │ ├── if_keyword_loc: (77,0)-(77,2) = "if" - │ ├── predicate: - │ │ @ TrueNode (location: (77,3)-(77,7)) - │ │ └── flags: static_literal - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (78,2)-(78,8)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (78,2)-(78,8)) - │ │ ├── flags: newline - │ │ ├── opening_loc: (78,2)-(78,8) = "<<~DOC" - │ │ ├── parts: (length: 2) - │ │ │ ├── @ EmbeddedStatementsNode (location: (79,4)-(79,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (79,4)-(79,6) = "\#{" - │ │ │ │ ├── statements: ∅ - │ │ │ │ └── closing_loc: (79,6)-(79,7) = "}" - │ │ │ └── @ StringNode (location: (79,7)-(80,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (79,7)-(80,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ └── closing_loc: (80,0)-(81,0) = " DOC\n" - │ ├── subsequent: ∅ - │ └── end_keyword_loc: (81,0)-(81,3) = "end" - ├── @ IfNode (location: (83,0)-(87,3)) - │ ├── flags: newline - │ ├── if_keyword_loc: (83,0)-(83,2) = "if" - │ ├── predicate: - │ │ @ TrueNode (location: (83,3)-(83,7)) - │ │ └── flags: static_literal - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (84,2)-(84,8)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (84,2)-(84,8)) - │ │ ├── flags: newline - │ │ ├── opening_loc: (84,2)-(84,8) = "<<~DOC" - │ │ ├── parts: (length: 3) - │ │ │ ├── @ StringNode (location: (85,0)-(85,5)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (85,0)-(85,5) = " b" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "b" - │ │ │ ├── @ EmbeddedStatementsNode (location: (85,5)-(85,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (85,5)-(85,7) = "\#{" - │ │ │ │ ├── statements: ∅ - │ │ │ │ └── closing_loc: (85,7)-(85,8) = "}" - │ │ │ └── @ StringNode (location: (85,8)-(86,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (85,8)-(86,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ └── closing_loc: (86,0)-(87,0) = " DOC\n" - │ ├── subsequent: ∅ - │ └── end_keyword_loc: (87,0)-(87,3) = "end" - ├── @ IfNode (location: (89,0)-(93,3)) - │ ├── flags: newline - │ ├── if_keyword_loc: (89,0)-(89,2) = "if" - │ ├── predicate: - │ │ @ TrueNode (location: (89,3)-(89,7)) - │ │ └── flags: static_literal - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (90,2)-(90,8)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (90,2)-(90,8)) - │ │ ├── flags: newline - │ │ ├── opening_loc: (90,2)-(90,8) = "<<~DOC" - │ │ ├── parts: (length: 2) - │ │ │ ├── @ EmbeddedStatementsNode (location: (91,4)-(91,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (91,4)-(91,6) = "\#{" - │ │ │ │ ├── statements: ∅ - │ │ │ │ └── closing_loc: (91,6)-(91,7) = "}" - │ │ │ └── @ StringNode (location: (91,7)-(92,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (91,7)-(92,0) = "a\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a\n" - │ │ └── closing_loc: (92,0)-(93,0) = " DOC\n" - │ ├── subsequent: ∅ - │ └── end_keyword_loc: (93,0)-(93,3) = "end" - ├── @ IfNode (location: (95,0)-(101,3)) - │ ├── flags: newline - │ ├── if_keyword_loc: (95,0)-(95,2) = "if" - │ ├── predicate: - │ │ @ TrueNode (location: (95,3)-(95,7)) - │ │ └── flags: static_literal - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (96,2)-(96,10)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ StringNode (location: (96,2)-(96,10)) - │ │ ├── flags: newline - │ │ ├── opening_loc: (96,2)-(96,10) = "<<-'DOC'" - │ │ ├── content_loc: (97,0)-(100,0) = " a\n\n b\n" - │ │ ├── closing_loc: (100,0)-(101,0) = " DOC\n" - │ │ └── unescaped: " a\n\n b\n" - │ ├── subsequent: ∅ - │ └── end_keyword_loc: (101,0)-(101,3) = "end" - ├── @ InterpolatedStringNode (location: (103,0)-(103,6)) - │ ├── flags: newline - │ ├── opening_loc: (103,0)-(103,1) = "\"" - │ ├── parts: (length: 2) - │ │ ├── @ EmbeddedStatementsNode (location: (103,1)-(103,4)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (103,1)-(103,3) = "\#{" - │ │ │ ├── statements: ∅ - │ │ │ └── closing_loc: (103,3)-(103,4) = "}" - │ │ └── @ StringNode (location: (103,4)-(103,5)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (103,4)-(103,5) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ └── closing_loc: (103,5)-(103,6) = "\"" - ├── @ InterpolatedStringNode (location: (105,0)-(105,12)) - │ ├── flags: newline - │ ├── opening_loc: (105,0)-(105,2) = "%(" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (105,2)-(105,5)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (105,2)-(105,5) = "\\n\"" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n\"" - │ │ ├── @ EmbeddedStatementsNode (location: (105,5)-(105,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (105,5)-(105,7) = "\#{" - │ │ │ ├── statements: ∅ - │ │ │ └── closing_loc: (105,7)-(105,8) = "}" - │ │ └── @ StringNode (location: (105,8)-(105,11)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (105,8)-(105,11) = "\"\\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\"\n" - │ └── closing_loc: (105,11)-(105,12) = ")" - ├── @ InterpolatedStringNode (location: (107,0)-(107,14)) - │ ├── flags: newline - │ ├── opening_loc: (107,0)-(107,3) = "%Q(" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (107,3)-(107,7)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (107,3)-(107,7) = "-\\n\"" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "-\n\"" - │ │ ├── @ EmbeddedStatementsNode (location: (107,7)-(107,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (107,7)-(107,9) = "\#{" - │ │ │ ├── statements: ∅ - │ │ │ └── closing_loc: (107,9)-(107,10) = "}" - │ │ └── @ StringNode (location: (107,10)-(107,13)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (107,10)-(107,13) = "\"\\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\"\n" - │ └── closing_loc: (107,13)-(107,14) = ")" - ├── @ InterpolatedStringNode (location: (109,0)-(111,2)) - │ ├── flags: newline - │ ├── opening_loc: (109,0)-(109,1) = "\"" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (109,1)-(110,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (109,1)-(110,0) = "a\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a\n" - │ │ ├── @ EmbeddedStatementsNode (location: (110,0)-(110,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (110,0)-(110,2) = "\#{" - │ │ │ ├── statements: ∅ - │ │ │ └── closing_loc: (110,2)-(110,3) = "}" - │ │ └── @ StringNode (location: (110,3)-(111,1)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (110,3)-(111,1) = "\nb" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\nb" - │ └── closing_loc: (111,1)-(111,2) = "\"" - ├── @ InterpolatedStringNode (location: (113,0)-(114,2)) - │ ├── flags: newline - │ ├── opening_loc: (113,0)-(113,1) = "\"" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (113,1)-(113,4)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (113,1)-(113,4) = "a\\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a\n" - │ │ ├── @ EmbeddedStatementsNode (location: (113,4)-(113,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (113,4)-(113,6) = "\#{" - │ │ │ ├── statements: ∅ - │ │ │ └── closing_loc: (113,6)-(113,7) = "}" - │ │ └── @ StringNode (location: (113,7)-(114,1)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (113,7)-(114,1) = "\nb" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\nb" - │ └── closing_loc: (114,1)-(114,2) = "\"" - ├── @ InterpolatedStringNode (location: (116,0)-(117,7)) - │ ├── flags: newline - │ ├── opening_loc: (116,0)-(116,1) = "\"" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (116,1)-(117,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (116,1)-(117,0) = "a\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a\n" - │ │ ├── @ EmbeddedStatementsNode (location: (117,0)-(117,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (117,0)-(117,2) = "\#{" - │ │ │ ├── statements: ∅ - │ │ │ └── closing_loc: (117,2)-(117,3) = "}" - │ │ └── @ StringNode (location: (117,3)-(117,6)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (117,3)-(117,6) = "\\nb" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\nb" - │ └── closing_loc: (117,6)-(117,7) = "\"" - ├── @ InterpolatedStringNode (location: (119,0)-(120,5)) - │ ├── flags: newline - │ ├── opening_loc: ∅ - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (119,0)-(119,3)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: (119,0)-(119,1) = "'" - │ │ │ ├── content_loc: (119,1)-(119,2) = "a" - │ │ │ ├── closing_loc: (119,2)-(119,3) = "'" - │ │ │ └── unescaped: "a" - │ │ └── @ InterpolatedStringNode (location: (120,0)-(120,5)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (120,0)-(120,1) = "\"" - │ │ ├── parts: (length: 1) - │ │ │ └── @ EmbeddedStatementsNode (location: (120,1)-(120,4)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (120,1)-(120,3) = "\#{" - │ │ │ ├── statements: ∅ - │ │ │ └── closing_loc: (120,3)-(120,4) = "}" - │ │ └── closing_loc: (120,4)-(120,5) = "\"" - │ └── closing_loc: ∅ - ├── @ InterpolatedStringNode (location: (122,0)-(122,8)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: ∅ - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (122,0)-(122,2)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: (122,0)-(122,1) = "\"" - │ │ │ ├── content_loc: (122,1)-(122,1) = "" - │ │ │ ├── closing_loc: (122,1)-(122,2) = "\"" - │ │ │ └── unescaped: "" - │ │ ├── @ StringNode (location: (122,3)-(122,5)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: (122,3)-(122,4) = "\"" - │ │ │ ├── content_loc: (122,4)-(122,4) = "" - │ │ │ ├── closing_loc: (122,4)-(122,5) = "\"" - │ │ │ └── unescaped: "" - │ │ └── @ StringNode (location: (122,6)-(122,8)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: (122,6)-(122,7) = "\"" - │ │ ├── content_loc: (122,7)-(122,7) = "" - │ │ ├── closing_loc: (122,7)-(122,8) = "\"" - │ │ └── unescaped: "" - │ └── closing_loc: ∅ - ├── @ InterpolatedStringNode (location: (124,0)-(124,12)) - │ ├── flags: newline - │ ├── opening_loc: ∅ - │ ├── parts: (length: 2) - │ │ ├── @ InterpolatedStringNode (location: (124,0)-(124,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (124,0)-(124,1) = "\"" - │ │ │ ├── parts: (length: 2) - │ │ │ │ ├── @ StringNode (location: (124,1)-(124,2)) - │ │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── content_loc: (124,1)-(124,2) = "a" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "a" - │ │ │ │ └── @ EmbeddedStatementsNode (location: (124,2)-(124,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (124,2)-(124,4) = "\#{" - │ │ │ │ ├── statements: - │ │ │ │ │ @ StatementsNode (location: (124,4)-(124,6)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ InstanceVariableReadNode (location: (124,4)-(124,6)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :@a - │ │ │ │ └── closing_loc: (124,6)-(124,7) = "}" - │ │ │ └── closing_loc: (124,7)-(124,8) = "\"" - │ │ └── @ StringNode (location: (124,9)-(124,12)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: (124,9)-(124,10) = "\"" - │ │ ├── content_loc: (124,10)-(124,11) = "b" - │ │ ├── closing_loc: (124,11)-(124,12) = "\"" - │ │ └── unescaped: "b" - │ └── closing_loc: ∅ - ├── @ InterpolatedStringNode (location: (125,0)-(125,10)) - │ ├── flags: newline - │ ├── opening_loc: ∅ - │ ├── parts: (length: 2) - │ │ ├── @ InterpolatedStringNode (location: (125,0)-(125,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (125,0)-(125,1) = "\"" - │ │ │ ├── parts: (length: 2) - │ │ │ │ ├── @ StringNode (location: (125,1)-(125,2)) - │ │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── content_loc: (125,1)-(125,2) = "a" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "a" - │ │ │ │ └── @ EmbeddedVariableNode (location: (125,2)-(125,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (125,2)-(125,3) = "#" - │ │ │ │ └── variable: - │ │ │ │ @ InstanceVariableReadNode (location: (125,3)-(125,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :@a - │ │ │ └── closing_loc: (125,5)-(125,6) = "\"" - │ │ └── @ StringNode (location: (125,7)-(125,10)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: (125,7)-(125,8) = "\"" - │ │ ├── content_loc: (125,8)-(125,9) = "b" - │ │ ├── closing_loc: (125,9)-(125,10) = "\"" - │ │ └── unescaped: "b" - │ └── closing_loc: ∅ - ├── @ InterpolatedStringNode (location: (126,0)-(126,10)) - │ ├── flags: newline - │ ├── opening_loc: ∅ - │ ├── parts: (length: 2) - │ │ ├── @ InterpolatedStringNode (location: (126,0)-(126,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (126,0)-(126,1) = "\"" - │ │ │ ├── parts: (length: 2) - │ │ │ │ ├── @ StringNode (location: (126,1)-(126,2)) - │ │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── content_loc: (126,1)-(126,2) = "a" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "a" - │ │ │ │ └── @ EmbeddedVariableNode (location: (126,2)-(126,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (126,2)-(126,3) = "#" - │ │ │ │ └── variable: - │ │ │ │ @ GlobalVariableReadNode (location: (126,3)-(126,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :$a - │ │ │ └── closing_loc: (126,5)-(126,6) = "\"" - │ │ └── @ StringNode (location: (126,7)-(126,10)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: (126,7)-(126,8) = "\"" - │ │ ├── content_loc: (126,8)-(126,9) = "b" - │ │ ├── closing_loc: (126,9)-(126,10) = "\"" - │ │ └── unescaped: "b" - │ └── closing_loc: ∅ - └── @ InterpolatedStringNode (location: (127,0)-(127,11)) - ├── flags: newline - ├── opening_loc: ∅ - ├── parts: (length: 2) - │ ├── @ InterpolatedStringNode (location: (127,0)-(127,7)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (127,0)-(127,1) = "\"" - │ │ ├── parts: (length: 2) - │ │ │ ├── @ StringNode (location: (127,1)-(127,2)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (127,1)-(127,2) = "a" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "a" - │ │ │ └── @ EmbeddedVariableNode (location: (127,2)-(127,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (127,2)-(127,3) = "#" - │ │ │ └── variable: - │ │ │ @ ClassVariableReadNode (location: (127,3)-(127,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :@@a - │ │ └── closing_loc: (127,6)-(127,7) = "\"" - │ └── @ StringNode (location: (127,8)-(127,11)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: (127,8)-(127,9) = "\"" - │ ├── content_loc: (127,9)-(127,10) = "b" - │ ├── closing_loc: (127,10)-(127,11) = "\"" - │ └── unescaped: "b" - └── closing_loc: ∅ diff --git a/test/prism/snapshots/unparser/corpus/semantic/kwbegin.txt b/test/prism/snapshots/unparser/corpus/semantic/kwbegin.txt deleted file mode 100644 index bdd74f2ed5..0000000000 --- a/test/prism/snapshots/unparser/corpus/semantic/kwbegin.txt +++ /dev/null @@ -1,294 +0,0 @@ -@ ProgramNode (location: (1,0)-(42,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(42,3)) - ├── flags: ∅ - └── body: (length: 8) - ├── @ BeginNode (location: (1,0)-(3,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (1,0)-(1,5) = "begin" - │ ├── statements: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (2,0)-(2,6)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (2,0)-(2,6) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (3,0)-(3,3) = "end" - ├── @ BeginNode (location: (5,0)-(8,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (5,0)-(5,5) = "begin" - │ ├── statements: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (6,0)-(6,6)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (6,0)-(6,6) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: - │ │ @ ElseNode (location: (7,0)-(8,3)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (7,0)-(7,4) = "else" - │ │ ├── statements: ∅ - │ │ └── end_keyword_loc: (8,0)-(8,3) = "end" - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (8,0)-(8,3) = "end" - ├── @ BeginNode (location: (10,0)-(12,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (10,0)-(10,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (11,2)-(11,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (11,2)-(11,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (11,2)-(11,3) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (12,0)-(12,3) = "end" - ├── @ BeginNode (location: (14,0)-(18,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (14,0)-(14,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (15,2)-(15,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (15,2)-(15,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (15,2)-(15,3) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (16,0)-(17,3)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (16,0)-(16,6) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (17,2)-(17,3)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (17,2)-(17,3)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (17,2)-(17,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (18,0)-(18,3) = "end" - ├── @ BeginNode (location: (20,0)-(25,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (20,0)-(20,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (21,2)-(22,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 2) - │ │ ├── @ CallNode (location: (21,2)-(21,3)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (21,2)-(21,3) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ CallNode (location: (22,2)-(22,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (22,2)-(22,3) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (23,0)-(24,3)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (23,0)-(23,6) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (24,2)-(24,3)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (24,2)-(24,3)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (24,2)-(24,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (25,0)-(25,3) = "end" - ├── @ BeginNode (location: (27,0)-(30,3)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (27,0)-(27,5) = "begin" - │ ├── statements: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (28,0)-(28,8)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (28,0)-(28,6) = "rescue" - │ │ ├── exceptions: (length: 1) - │ │ │ └── @ ConstantReadNode (location: (28,7)-(28,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :A - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: - │ │ @ ElseNode (location: (29,0)-(30,3)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (29,0)-(29,4) = "else" - │ │ ├── statements: ∅ - │ │ └── end_keyword_loc: (30,0)-(30,3) = "end" - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (30,0)-(30,3) = "end" - ├── @ BeginNode (location: (32,0)-(32,26)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (32,0)-(32,5) = "begin" - │ ├── statements: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (32,7)-(32,15)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (32,7)-(32,13) = "rescue" - │ │ ├── exceptions: (length: 1) - │ │ │ └── @ ConstantReadNode (location: (32,14)-(32,15)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :A - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: - │ │ @ ElseNode (location: (32,17)-(32,26)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (32,17)-(32,21) = "else" - │ │ ├── statements: ∅ - │ │ └── end_keyword_loc: (32,23)-(32,26) = "end" - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (32,23)-(32,26) = "end" - └── @ BeginNode (location: (34,0)-(42,3)) - ├── flags: newline - ├── begin_keyword_loc: (34,0)-(34,5) = "begin" - ├── statements: - │ @ StatementsNode (location: (35,2)-(35,3)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (35,2)-(35,3)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (35,2)-(35,3) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── rescue_clause: - │ @ RescueNode (location: (36,0)-(39,3)) - │ ├── flags: ∅ - │ ├── keyword_loc: (36,0)-(36,6) = "rescue" - │ ├── exceptions: (length: 1) - │ │ └── @ ConstantReadNode (location: (36,7)-(36,8)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── operator_loc: ∅ - │ ├── reference: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (37,2)-(37,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (37,2)-(37,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (37,2)-(37,3) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── subsequent: - │ @ RescueNode (location: (38,0)-(39,3)) - │ ├── flags: ∅ - │ ├── keyword_loc: (38,0)-(38,6) = "rescue" - │ ├── exceptions: (length: 1) - │ │ └── @ ConstantReadNode (location: (38,7)-(38,8)) - │ │ ├── flags: ∅ - │ │ └── name: :B - │ ├── operator_loc: ∅ - │ ├── reference: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (39,2)-(39,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (39,2)-(39,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :c - │ │ ├── message_loc: (39,2)-(39,3) = "c" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── subsequent: ∅ - ├── else_clause: ∅ - ├── ensure_clause: - │ @ EnsureNode (location: (40,0)-(42,3)) - │ ├── flags: ∅ - │ ├── ensure_keyword_loc: (40,0)-(40,6) = "ensure" - │ ├── statements: - │ │ @ StatementsNode (location: (41,2)-(41,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (41,2)-(41,3)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :d - │ │ ├── message_loc: (41,2)-(41,3) = "d" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── end_keyword_loc: (42,0)-(42,3) = "end" - └── end_keyword_loc: (42,0)-(42,3) = "end" diff --git a/test/prism/snapshots/unparser/corpus/semantic/literal.txt b/test/prism/snapshots/unparser/corpus/semantic/literal.txt deleted file mode 100644 index 0d21b59d49..0000000000 --- a/test/prism/snapshots/unparser/corpus/semantic/literal.txt +++ /dev/null @@ -1,112 +0,0 @@ -@ ProgramNode (location: (1,0)-(14,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(14,10)) - ├── flags: ∅ - └── body: (length: 14) - ├── @ RationalNode (location: (1,0)-(1,4)) - │ ├── flags: newline, static_literal, decimal - │ ├── numerator: 1 - │ └── denominator: 1 - ├── @ RationalNode (location: (2,0)-(2,3)) - │ ├── flags: newline, static_literal, decimal - │ ├── numerator: 0 - │ └── denominator: 1 - ├── @ IntegerNode (location: (3,0)-(3,3)) - │ ├── flags: newline, static_literal, hexadecimal - │ └── value: 1 - ├── @ IntegerNode (location: (4,0)-(4,5)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 1000 - ├── @ FloatNode (location: (5,0)-(5,4)) - │ ├── flags: newline, static_literal - │ └── value: 10000000000.0 - ├── @ FloatNode (location: (6,0)-(6,14)) - │ ├── flags: newline, static_literal - │ └── value: Infinity - ├── @ FloatNode (location: (7,0)-(7,15)) - │ ├── flags: newline, static_literal - │ └── value: -Infinity - ├── @ StringNode (location: (8,0)-(8,2)) - │ ├── flags: newline - │ ├── opening_loc: (8,0)-(8,1) = "?" - │ ├── content_loc: (8,1)-(8,2) = "c" - │ ├── closing_loc: ∅ - │ └── unescaped: "c" - ├── @ RegularExpressionNode (location: (9,0)-(9,5)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (9,0)-(9,3) = "%r(" - │ ├── content_loc: (9,3)-(9,4) = "/" - │ ├── closing_loc: (9,4)-(9,5) = ")" - │ └── unescaped: "/" - ├── @ RegularExpressionNode (location: (10,0)-(10,6)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (10,0)-(10,3) = "%r(" - │ ├── content_loc: (10,3)-(10,5) = "\\)" - │ ├── closing_loc: (10,5)-(10,6) = ")" - │ └── unescaped: "\\)" - ├── @ InterpolatedRegularExpressionNode (location: (11,0)-(11,14)) - │ ├── flags: newline - │ ├── opening_loc: (11,0)-(11,3) = "%r(" - │ ├── parts: (length: 2) - │ │ ├── @ EmbeddedStatementsNode (location: (11,3)-(11,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (11,3)-(11,5) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (11,5)-(11,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ InstanceVariableReadNode (location: (11,5)-(11,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :@bar - │ │ │ └── closing_loc: (11,9)-(11,10) = "}" - │ │ └── @ StringNode (location: (11,10)-(11,13)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (11,10)-(11,13) = "baz" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "baz" - │ └── closing_loc: (11,13)-(11,14) = ")" - ├── @ FloatNode (location: (12,0)-(12,16)) - │ ├── flags: newline, static_literal - │ └── value: Infinity - ├── @ FloatNode (location: (13,0)-(13,17)) - │ ├── flags: newline, static_literal - │ └── value: -Infinity - └── @ CallNode (location: (14,0)-(14,10)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :w - ├── message_loc: (14,0)-(14,1) = "w" - ├── opening_loc: (14,1)-(14,2) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (14,2)-(14,9)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (14,2)-(14,9)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (14,2)-(14,5) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (14,6)-(14,9)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (14,6)-(14,9)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (14,6)-(14,9) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: (14,9)-(14,10) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/unparser/corpus/semantic/opasgn.txt b/test/prism/snapshots/unparser/corpus/semantic/opasgn.txt deleted file mode 100644 index 870942f97e..0000000000 --- a/test/prism/snapshots/unparser/corpus/semantic/opasgn.txt +++ /dev/null @@ -1,75 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,25)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,25)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IndexOperatorWriteNode (location: (1,0)-(1,25)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :y - │ ├── message_loc: (1,0)-(1,1) = "y" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── opening_loc: (1,1)-(1,2) = "[" - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,11)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ InterpolatedStringNode (location: (1,2)-(1,11)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,2)-(1,3) = "\"" - │ ├── parts: (length: 2) - │ │ ├── @ EmbeddedStatementsNode (location: (1,3)-(1,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (1,3)-(1,5) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (1,5)-(1,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (1,5)-(1,7)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 42 - │ │ │ └── closing_loc: (1,7)-(1,8) = "}" - │ │ └── @ StringNode (location: (1,8)-(1,10)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (1,8)-(1,10) = "\\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\n" - │ └── closing_loc: (1,10)-(1,11) = "\"" - ├── closing_loc: (1,11)-(1,12) = "]" - ├── block: ∅ - ├── binary_operator: :+ - ├── binary_operator_loc: (1,13)-(1,15) = "+=" - └── value: - @ InterpolatedStringNode (location: (1,16)-(1,25)) - ├── flags: ∅ - ├── opening_loc: (1,16)-(1,17) = "\"" - ├── parts: (length: 2) - │ ├── @ EmbeddedStatementsNode (location: (1,17)-(1,22)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,17)-(1,19) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,19)-(1,21)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ IntegerNode (location: (1,19)-(1,21)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 42 - │ │ └── closing_loc: (1,21)-(1,22) = "}" - │ └── @ StringNode (location: (1,22)-(1,24)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (1,22)-(1,24) = "\\n" - │ ├── closing_loc: ∅ - │ └── unescaped: "\n" - └── closing_loc: (1,24)-(1,25) = "\"" diff --git a/test/prism/snapshots/unparser/corpus/semantic/send.txt b/test/prism/snapshots/unparser/corpus/semantic/send.txt deleted file mode 100644 index f403d3d2b6..0000000000 --- a/test/prism/snapshots/unparser/corpus/semantic/send.txt +++ /dev/null @@ -1,165 +0,0 @@ -@ ProgramNode (location: (1,0)-(6,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(6,15)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ CallNode (location: (1,0)-(1,3)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,0)-(1,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (2,0)-(2,6)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (2,0)-(2,3) = "foo" - │ ├── opening_loc: (2,3)-(2,4) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (2,4)-(2,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (2,4)-(2,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: (2,5)-(2,6) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (4,0)-(4,15)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (4,0)-(4,10)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (4,0)-(4,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── receiver: - │ │ │ │ @ CallNode (location: (4,0)-(4,1)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ ├── message_loc: (4,0)-(4,1) = "a" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── call_operator_loc: (4,1)-(4,2) = "." - │ │ │ ├── name: :=== - │ │ │ ├── message_loc: (4,2)-(4,5) = "===" - │ │ │ ├── opening_loc: (4,5)-(4,6) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (4,6)-(4,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (4,6)-(4,7)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ ├── message_loc: (4,6)-(4,7) = "b" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: (4,7)-(4,8) = ")" - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (4,8)-(4,9) = "." - │ │ ├── name: :c - │ │ ├── message_loc: (4,9)-(4,10) = "c" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :== - │ ├── message_loc: (4,11)-(4,13) = "==" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (4,14)-(4,15)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (4,14)-(4,15)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :d - │ │ ├── message_loc: (4,14)-(4,15) = "d" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (6,0)-(6,15)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (6,0)-(6,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (6,0)-(6,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :== - ├── message_loc: (6,2)-(6,4) = "==" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (6,5)-(6,15)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (6,5)-(6,15)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ CallNode (location: (6,5)-(6,8)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ CallNode (location: (6,5)-(6,6)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :d - │ │ │ ├── message_loc: (6,5)-(6,6) = "d" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── call_operator_loc: (6,6)-(6,7) = "." - │ │ ├── name: :c - │ │ ├── message_loc: (6,7)-(6,8) = "c" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (6,8)-(6,9) = "." - │ ├── name: :=== - │ ├── message_loc: (6,9)-(6,12) = "===" - │ ├── opening_loc: (6,12)-(6,13) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (6,13)-(6,14)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (6,13)-(6,14)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :c - │ │ ├── message_loc: (6,13)-(6,14) = "c" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (6,14)-(6,15) = ")" - │ └── block: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/unparser/corpus/semantic/undef.txt b/test/prism/snapshots/unparser/corpus/semantic/undef.txt deleted file mode 100644 index 4ac55f2cf3..0000000000 --- a/test/prism/snapshots/unparser/corpus/semantic/undef.txt +++ /dev/null @@ -1,33 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,14)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ UndefNode (location: (1,0)-(1,9)) - │ ├── flags: newline - │ ├── names: (length: 1) - │ │ └── @ SymbolNode (location: (1,6)-(1,9)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (1,6)-(1,9) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ └── keyword_loc: (1,0)-(1,5) = "undef" - └── @ UndefNode (location: (2,0)-(2,14)) - ├── flags: newline - ├── names: (length: 2) - │ ├── @ SymbolNode (location: (2,6)-(2,9)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (2,6)-(2,9) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ └── @ SymbolNode (location: (2,11)-(2,14)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: ∅ - │ ├── value_loc: (2,11)-(2,14) = "bar" - │ ├── closing_loc: ∅ - │ └── unescaped: "bar" - └── keyword_loc: (2,0)-(2,5) = "undef" diff --git a/test/prism/snapshots/unparser/corpus/semantic/while.txt b/test/prism/snapshots/unparser/corpus/semantic/while.txt deleted file mode 100644 index cc814923b2..0000000000 --- a/test/prism/snapshots/unparser/corpus/semantic/while.txt +++ /dev/null @@ -1,303 +0,0 @@ -@ ProgramNode (location: (1,0)-(25,3)) -├── flags: ∅ -├── locals: [:foo, :a] -└── statements: - @ StatementsNode (location: (1,0)-(25,3)) - ├── flags: ∅ - └── body: (length: 7) - ├── @ UntilNode (location: (1,0)-(1,13)) - │ ├── flags: newline - │ ├── keyword_loc: (1,2)-(1,7) = "until" - │ ├── closing_loc: ∅ - │ ├── predicate: - │ │ @ CallNode (location: (1,8)-(1,13)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b? - │ │ ├── message_loc: (1,8)-(1,10) = "b?" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (1,11)-(1,13)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (1,11)-(1,12) = "{" - │ │ └── closing_loc: (1,12)-(1,13) = "}" - │ └── statements: - │ @ StatementsNode (location: (1,0)-(1,1)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ UntilNode (location: (3,0)-(5,3)) - │ ├── flags: newline - │ ├── keyword_loc: (3,0)-(3,5) = "until" - │ ├── closing_loc: (5,0)-(5,3) = "end" - │ ├── predicate: - │ │ @ CallNode (location: (3,6)-(3,11)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b? - │ │ ├── message_loc: (3,6)-(3,8) = "b?" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (3,9)-(3,11)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (3,9)-(3,10) = "{" - │ │ └── closing_loc: (3,10)-(3,11) = "}" - │ └── statements: - │ @ StatementsNode (location: (4,2)-(4,3)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (4,2)-(4,3)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (4,2)-(4,3) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ WhileNode (location: (7,0)-(7,19)) - │ ├── flags: newline - │ ├── keyword_loc: (7,10)-(7,15) = "while" - │ ├── closing_loc: ∅ - │ ├── predicate: - │ │ @ LocalVariableReadNode (location: (7,16)-(7,19)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ └── statements: - │ @ StatementsNode (location: (7,0)-(7,9)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ LocalVariableWriteNode (location: (7,0)-(7,9)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── depth: 0 - │ ├── name_loc: (7,0)-(7,3) = "foo" - │ ├── value: - │ │ @ CallNode (location: (7,6)-(7,9)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (7,6)-(7,9) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (7,4)-(7,5) = "=" - ├── @ UntilNode (location: (9,0)-(9,18)) - │ ├── flags: newline - │ ├── keyword_loc: (9,2)-(9,7) = "until" - │ ├── closing_loc: ∅ - │ ├── predicate: - │ │ @ AndNode (location: (9,8)-(9,18)) - │ │ ├── flags: ∅ - │ │ ├── left: - │ │ │ @ CallNode (location: (9,8)-(9,9)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (9,8)-(9,9) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── right: - │ │ │ @ CallNode (location: (9,13)-(9,18)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (9,13)-(9,14) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (9,15)-(9,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: ∅ - │ │ │ ├── opening_loc: (9,15)-(9,16) = "{" - │ │ │ └── closing_loc: (9,17)-(9,18) = "}" - │ │ └── operator_loc: (9,10)-(9,12) = "&&" - │ └── statements: - │ @ StatementsNode (location: (9,0)-(9,1)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (9,0)-(9,1)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (9,0)-(9,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ WhileNode (location: (11,0)-(13,3)) - │ ├── flags: newline - │ ├── keyword_loc: (11,0)-(11,5) = "while" - │ ├── closing_loc: (13,0)-(13,3) = "end" - │ ├── predicate: - │ │ @ LocalVariableWriteNode (location: (11,6)-(11,11)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ ├── depth: 0 - │ │ ├── name_loc: (11,6)-(11,7) = "a" - │ │ ├── value: - │ │ │ @ CallNode (location: (11,10)-(11,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (11,10)-(11,11) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (11,8)-(11,9) = "=" - │ └── statements: - │ @ StatementsNode (location: (12,2)-(12,3)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ LocalVariableReadNode (location: (12,2)-(12,3)) - │ ├── flags: newline - │ ├── name: :a - │ └── depth: 0 - ├── @ UntilNode (location: (15,0)-(18,3)) - │ ├── flags: newline - │ ├── keyword_loc: (15,2)-(15,7) = "until" - │ ├── closing_loc: ∅ - │ ├── predicate: - │ │ @ CallNode (location: (15,8)-(18,3)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (15,8)-(15,9) = "b" - │ │ ├── opening_loc: (15,9)-(15,10) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (15,10)-(15,16)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ StringNode (location: (15,10)-(15,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (15,10)-(15,16) = "<<-FOO" - │ │ │ ├── content_loc: (16,0)-(16,0) = "" - │ │ │ ├── closing_loc: (16,0)-(17,0) = "FOO\n" - │ │ │ └── unescaped: "" - │ │ ├── closing_loc: (15,16)-(15,17) = ")" - │ │ └── block: - │ │ @ BlockNode (location: (15,18)-(18,3)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (17,2)-(17,3)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (17,2)-(17,3)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :c - │ │ │ ├── message_loc: (17,2)-(17,3) = "c" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (15,18)-(15,20) = "do" - │ │ └── closing_loc: (18,0)-(18,3) = "end" - │ └── statements: - │ @ StatementsNode (location: (15,0)-(15,1)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ LocalVariableReadNode (location: (15,0)-(15,1)) - │ ├── flags: newline - │ ├── name: :a - │ └── depth: 0 - └── @ ModuleNode (location: (20,0)-(25,3)) - ├── flags: newline - ├── locals: [:foo] - ├── module_keyword_loc: (20,0)-(20,6) = "module" - ├── constant_path: - │ @ ConstantReadNode (location: (20,7)-(20,8)) - │ ├── flags: ∅ - │ └── name: :A - ├── body: - │ @ StatementsNode (location: (21,2)-(24,5)) - │ ├── flags: ∅ - │ └── body: (length: 2) - │ ├── @ LocalVariableWriteNode (location: (21,2)-(21,11)) - │ │ ├── flags: newline - │ │ ├── name: :foo - │ │ ├── depth: 0 - │ │ ├── name_loc: (21,2)-(21,5) = "foo" - │ │ ├── value: - │ │ │ @ CallNode (location: (21,8)-(21,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :exp - │ │ │ ├── message_loc: (21,8)-(21,11) = "exp" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (21,6)-(21,7) = "=" - │ └── @ WhileNode (location: (22,2)-(24,5)) - │ ├── flags: newline - │ ├── keyword_loc: (22,2)-(22,7) = "while" - │ ├── closing_loc: (24,2)-(24,5) = "end" - │ ├── predicate: - │ │ @ LocalVariableReadNode (location: (22,8)-(22,11)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ └── statements: - │ @ StatementsNode (location: (23,4)-(23,13)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ LocalVariableWriteNode (location: (23,4)-(23,13)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── depth: 0 - │ ├── name_loc: (23,4)-(23,7) = "foo" - │ ├── value: - │ │ @ CallNode (location: (23,10)-(23,13)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (23,10)-(23,13) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (23,8)-(23,9) = "=" - ├── end_keyword_loc: (25,0)-(25,3) = "end" - └── name: :A diff --git a/test/prism/snapshots/until.txt b/test/prism/snapshots/until.txt deleted file mode 100644 index 0e78545606..0000000000 --- a/test/prism/snapshots/until.txt +++ /dev/null @@ -1,202 +0,0 @@ -@ ProgramNode (location: (1,0)-(13,20)) -├── flags: ∅ -├── locals: [:baz] -└── statements: - @ StatementsNode (location: (1,0)-(13,20)) - ├── flags: ∅ - └── body: (length: 7) - ├── @ UntilNode (location: (1,0)-(1,18)) - │ ├── flags: newline - │ ├── keyword_loc: (1,0)-(1,5) = "until" - │ ├── closing_loc: (1,15)-(1,18) = "end" - │ ├── predicate: - │ │ @ TrueNode (location: (1,6)-(1,10)) - │ │ └── flags: static_literal - │ └── statements: - │ @ StatementsNode (location: (1,12)-(1,13)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ IntegerNode (location: (1,12)-(1,13)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 1 - ├── @ UntilNode (location: (3,0)-(3,12)) - │ ├── flags: newline - │ ├── keyword_loc: (3,2)-(3,7) = "until" - │ ├── closing_loc: ∅ - │ ├── predicate: - │ │ @ TrueNode (location: (3,8)-(3,12)) - │ │ └── flags: static_literal - │ └── statements: - │ @ StatementsNode (location: (3,0)-(3,1)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ IntegerNode (location: (3,0)-(3,1)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 1 - ├── @ CallNode (location: (5,0)-(5,24)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (5,0)-(5,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (5,4)-(5,24)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (5,6)-(5,22)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ UntilNode (location: (5,6)-(5,22)) - │ │ ├── flags: newline - │ │ ├── keyword_loc: (5,12)-(5,17) = "until" - │ │ ├── closing_loc: ∅ - │ │ ├── predicate: - │ │ │ @ TrueNode (location: (5,18)-(5,22)) - │ │ │ └── flags: static_literal - │ │ └── statements: - │ │ @ StatementsNode (location: (5,6)-(5,11)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ BreakNode (location: (5,6)-(5,11)) - │ │ ├── flags: newline - │ │ ├── arguments: ∅ - │ │ └── keyword_loc: (5,6)-(5,11) = "break" - │ ├── opening_loc: (5,4)-(5,5) = "{" - │ └── closing_loc: (5,23)-(5,24) = "}" - ├── @ CallNode (location: (7,0)-(7,23)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (7,0)-(7,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (7,4)-(7,23)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (7,6)-(7,21)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ UntilNode (location: (7,6)-(7,21)) - │ │ ├── flags: newline - │ │ ├── keyword_loc: (7,11)-(7,16) = "until" - │ │ ├── closing_loc: ∅ - │ │ ├── predicate: - │ │ │ @ TrueNode (location: (7,17)-(7,21)) - │ │ │ └── flags: static_literal - │ │ └── statements: - │ │ @ StatementsNode (location: (7,6)-(7,10)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ NextNode (location: (7,6)-(7,10)) - │ │ ├── flags: newline - │ │ ├── arguments: ∅ - │ │ └── keyword_loc: (7,6)-(7,10) = "next" - │ ├── opening_loc: (7,4)-(7,5) = "{" - │ └── closing_loc: (7,22)-(7,23) = "}" - ├── @ UntilNode (location: (9,0)-(9,17)) - │ ├── flags: newline - │ ├── keyword_loc: (9,7)-(9,12) = "until" - │ ├── closing_loc: ∅ - │ ├── predicate: - │ │ @ TrueNode (location: (9,13)-(9,17)) - │ │ └── flags: static_literal - │ └── statements: - │ @ StatementsNode (location: (9,0)-(9,6)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ ReturnNode (location: (9,0)-(9,6)) - │ ├── flags: newline - │ ├── keyword_loc: (9,0)-(9,6) = "return" - │ └── arguments: ∅ - ├── @ UntilNode (location: (11,0)-(11,21)) - │ ├── flags: newline - │ ├── keyword_loc: (11,11)-(11,16) = "until" - │ ├── closing_loc: ∅ - │ ├── predicate: - │ │ @ CallNode (location: (11,17)-(11,21)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar? - │ │ ├── message_loc: (11,17)-(11,21) = "bar?" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── statements: - │ @ StatementsNode (location: (11,0)-(11,10)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (11,0)-(11,10)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (11,0)-(11,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (11,4)-(11,10)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ SymbolNode (location: (11,4)-(11,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (11,4)-(11,5) = ":" - │ │ │ ├── value_loc: (11,5)-(11,6) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ └── @ SymbolNode (location: (11,8)-(11,10)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (11,8)-(11,9) = ":" - │ │ ├── value_loc: (11,9)-(11,10) = "b" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b" - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ WhileNode (location: (13,0)-(13,20)) - ├── flags: newline - ├── keyword_loc: (13,4)-(13,9) = "while" - ├── closing_loc: ∅ - ├── predicate: - │ @ MatchPredicateNode (location: (13,10)-(13,20)) - │ ├── flags: ∅ - │ ├── value: - │ │ @ CallNode (location: (13,10)-(13,13)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (13,10)-(13,13) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ LocalVariableTargetNode (location: (13,17)-(13,20)) - │ │ ├── flags: ∅ - │ │ ├── name: :baz - │ │ └── depth: 0 - │ └── operator_loc: (13,14)-(13,16) = "in" - └── statements: - @ StatementsNode (location: (13,0)-(13,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (13,0)-(13,3)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :foo - ├── message_loc: (13,0)-(13,3) = "foo" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/variables.txt b/test/prism/snapshots/variables.txt deleted file mode 100644 index 3cb0ada657..0000000000 --- a/test/prism/snapshots/variables.txt +++ /dev/null @@ -1,459 +0,0 @@ -@ ProgramNode (location: (1,0)-(47,17)) -├── flags: ∅ -├── locals: [:abc, :foo, :bar, :baz, :a, :b, :c, :d] -└── statements: - @ StatementsNode (location: (1,0)-(47,17)) - ├── flags: ∅ - └── body: (length: 25) - ├── @ ClassVariableReadNode (location: (1,0)-(1,5)) - │ ├── flags: newline - │ └── name: :@@abc - ├── @ ClassVariableWriteNode (location: (3,0)-(3,9)) - │ ├── flags: newline - │ ├── name: :@@abc - │ ├── name_loc: (3,0)-(3,5) = "@@abc" - │ ├── value: - │ │ @ IntegerNode (location: (3,8)-(3,9)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (3,6)-(3,7) = "=" - ├── @ MultiWriteNode (location: (5,0)-(5,16)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ ClassVariableTargetNode (location: (5,0)-(5,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :@@foo - │ │ └── @ ClassVariableTargetNode (location: (5,7)-(5,12)) - │ │ ├── flags: ∅ - │ │ └── name: :@@bar - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (5,13)-(5,14) = "=" - │ └── value: - │ @ IntegerNode (location: (5,15)-(5,16)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ ClassVariableWriteNode (location: (7,0)-(7,12)) - │ ├── flags: newline - │ ├── name: :@@foo - │ ├── name_loc: (7,0)-(7,5) = "@@foo" - │ ├── value: - │ │ @ ArrayNode (location: (7,8)-(7,12)) - │ │ ├── flags: static_literal - │ │ ├── elements: (length: 2) - │ │ │ ├── @ IntegerNode (location: (7,8)-(7,9)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── @ IntegerNode (location: (7,11)-(7,12)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (7,6)-(7,7) = "=" - ├── @ GlobalVariableWriteNode (location: (9,0)-(9,8)) - │ ├── flags: newline - │ ├── name: :$abc - │ ├── name_loc: (9,0)-(9,4) = "$abc" - │ ├── value: - │ │ @ IntegerNode (location: (9,7)-(9,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (9,5)-(9,6) = "=" - ├── @ GlobalVariableReadNode (location: (11,0)-(11,4)) - │ ├── flags: newline - │ └── name: :$abc - ├── @ InstanceVariableReadNode (location: (13,0)-(13,4)) - │ ├── flags: newline - │ └── name: :@abc - ├── @ InstanceVariableWriteNode (location: (15,0)-(15,8)) - │ ├── flags: newline - │ ├── name: :@abc - │ ├── name_loc: (15,0)-(15,4) = "@abc" - │ ├── value: - │ │ @ IntegerNode (location: (15,7)-(15,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (15,5)-(15,6) = "=" - ├── @ CallNode (location: (17,0)-(17,1)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (17,0)-(17,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ LocalVariableWriteNode (location: (19,0)-(19,7)) - │ ├── flags: newline - │ ├── name: :abc - │ ├── depth: 0 - │ ├── name_loc: (19,0)-(19,3) = "abc" - │ ├── value: - │ │ @ IntegerNode (location: (19,6)-(19,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (19,4)-(19,5) = "=" - ├── @ MultiWriteNode (location: (21,0)-(21,14)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ GlobalVariableTargetNode (location: (21,0)-(21,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :$foo - │ │ └── @ GlobalVariableTargetNode (location: (21,6)-(21,10)) - │ │ ├── flags: ∅ - │ │ └── name: :$bar - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (21,11)-(21,12) = "=" - │ └── value: - │ @ IntegerNode (location: (21,13)-(21,14)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ GlobalVariableWriteNode (location: (23,0)-(23,11)) - │ ├── flags: newline - │ ├── name: :$foo - │ ├── name_loc: (23,0)-(23,4) = "$foo" - │ ├── value: - │ │ @ ArrayNode (location: (23,7)-(23,11)) - │ │ ├── flags: static_literal - │ │ ├── elements: (length: 2) - │ │ │ ├── @ IntegerNode (location: (23,7)-(23,8)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── @ IntegerNode (location: (23,10)-(23,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (23,5)-(23,6) = "=" - ├── @ MultiWriteNode (location: (25,0)-(25,14)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ InstanceVariableTargetNode (location: (25,0)-(25,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :@foo - │ │ └── @ InstanceVariableTargetNode (location: (25,6)-(25,10)) - │ │ ├── flags: ∅ - │ │ └── name: :@bar - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (25,11)-(25,12) = "=" - │ └── value: - │ @ IntegerNode (location: (25,13)-(25,14)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ InstanceVariableWriteNode (location: (27,0)-(27,11)) - │ ├── flags: newline - │ ├── name: :@foo - │ ├── name_loc: (27,0)-(27,4) = "@foo" - │ ├── value: - │ │ @ ArrayNode (location: (27,7)-(27,11)) - │ │ ├── flags: static_literal - │ │ ├── elements: (length: 2) - │ │ │ ├── @ IntegerNode (location: (27,7)-(27,8)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── @ IntegerNode (location: (27,10)-(27,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (27,5)-(27,6) = "=" - ├── @ LocalVariableWriteNode (location: (29,0)-(29,7)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── depth: 0 - │ ├── name_loc: (29,0)-(29,3) = "foo" - │ ├── value: - │ │ @ IntegerNode (location: (29,6)-(29,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (29,4)-(29,5) = "=" - ├── @ LocalVariableWriteNode (location: (29,9)-(29,19)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── depth: 0 - │ ├── name_loc: (29,9)-(29,12) = "foo" - │ ├── value: - │ │ @ ArrayNode (location: (29,15)-(29,19)) - │ │ ├── flags: static_literal - │ │ ├── elements: (length: 2) - │ │ │ ├── @ IntegerNode (location: (29,15)-(29,16)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── @ IntegerNode (location: (29,18)-(29,19)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (29,13)-(29,14) = "=" - ├── @ LocalVariableWriteNode (location: (31,0)-(31,10)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── depth: 0 - │ ├── name_loc: (31,0)-(31,3) = "foo" - │ ├── value: - │ │ @ ArrayNode (location: (31,6)-(31,10)) - │ │ ├── flags: static_literal - │ │ ├── elements: (length: 2) - │ │ │ ├── @ IntegerNode (location: (31,6)-(31,7)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── @ IntegerNode (location: (31,9)-(31,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (31,4)-(31,5) = "=" - ├── @ MultiWriteNode (location: (33,0)-(33,13)) - │ ├── flags: newline - │ ├── lefts: (length: 1) - │ │ └── @ LocalVariableTargetNode (location: (33,0)-(33,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── rest: - │ │ @ SplatNode (location: (33,5)-(33,6)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (33,5)-(33,6) = "*" - │ │ └── expression: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (33,7)-(33,8) = "=" - │ └── value: - │ @ ArrayNode (location: (33,9)-(33,13)) - │ ├── flags: static_literal - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (33,9)-(33,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (33,12)-(33,13)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── opening_loc: ∅ - │ └── closing_loc: ∅ - ├── @ MultiWriteNode (location: (35,0)-(35,11)) - │ ├── flags: newline - │ ├── lefts: (length: 1) - │ │ └── @ LocalVariableTargetNode (location: (35,0)-(35,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── rest: - │ │ @ ImplicitRestNode (location: (35,3)-(35,4)) - │ │ └── flags: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (35,5)-(35,6) = "=" - │ └── value: - │ @ ArrayNode (location: (35,7)-(35,11)) - │ ├── flags: static_literal - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (35,7)-(35,8)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (35,10)-(35,11)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── opening_loc: ∅ - │ └── closing_loc: ∅ - ├── @ MultiWriteNode (location: (37,0)-(37,16)) - │ ├── flags: newline - │ ├── lefts: (length: 1) - │ │ └── @ LocalVariableTargetNode (location: (37,0)-(37,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── rest: - │ │ @ SplatNode (location: (37,5)-(37,9)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (37,5)-(37,6) = "*" - │ │ └── expression: - │ │ @ LocalVariableTargetNode (location: (37,6)-(37,9)) - │ │ ├── flags: ∅ - │ │ ├── name: :bar - │ │ └── depth: 0 - │ ├── rights: (length: 0) - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (37,10)-(37,11) = "=" - │ └── value: - │ @ ArrayNode (location: (37,12)-(37,16)) - │ ├── flags: static_literal - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (37,12)-(37,13)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (37,15)-(37,16)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── opening_loc: ∅ - │ └── closing_loc: ∅ - ├── @ MultiWriteNode (location: (39,0)-(39,27)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ LocalVariableTargetNode (location: (39,0)-(39,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :foo - │ │ │ └── depth: 0 - │ │ └── @ MultiTargetNode (location: (39,5)-(39,15)) - │ │ ├── flags: ∅ - │ │ ├── lefts: (length: 2) - │ │ │ ├── @ LocalVariableTargetNode (location: (39,6)-(39,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ └── depth: 0 - │ │ │ └── @ LocalVariableTargetNode (location: (39,11)-(39,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :baz - │ │ │ └── depth: 0 - │ │ ├── rest: ∅ - │ │ ├── rights: (length: 0) - │ │ ├── lparen_loc: (39,5)-(39,6) = "(" - │ │ └── rparen_loc: (39,14)-(39,15) = ")" - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (39,16)-(39,17) = "=" - │ └── value: - │ @ ArrayNode (location: (39,18)-(39,27)) - │ ├── flags: ∅ - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (39,18)-(39,19)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ ArrayNode (location: (39,21)-(39,27)) - │ │ ├── flags: static_literal - │ │ ├── elements: (length: 2) - │ │ │ ├── @ IntegerNode (location: (39,22)-(39,23)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ └── @ IntegerNode (location: (39,25)-(39,26)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 3 - │ │ ├── opening_loc: (39,21)-(39,22) = "[" - │ │ └── closing_loc: (39,26)-(39,27) = "]" - │ ├── opening_loc: ∅ - │ └── closing_loc: ∅ - ├── @ LocalVariableWriteNode (location: (41,0)-(41,10)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── depth: 0 - │ ├── name_loc: (41,0)-(41,3) = "foo" - │ ├── value: - │ │ @ ArrayNode (location: (41,6)-(41,10)) - │ │ ├── flags: contains_splat - │ │ ├── elements: (length: 1) - │ │ │ └── @ SplatNode (location: (41,6)-(41,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (41,6)-(41,7) = "*" - │ │ │ └── expression: - │ │ │ @ LocalVariableReadNode (location: (41,7)-(41,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ └── depth: 0 - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (41,4)-(41,5) = "=" - ├── @ ConstantWriteNode (location: (43,0)-(43,10)) - │ ├── flags: newline - │ ├── name: :Foo - │ ├── name_loc: (43,0)-(43,3) = "Foo" - │ ├── value: - │ │ @ ArrayNode (location: (43,6)-(43,10)) - │ │ ├── flags: static_literal - │ │ ├── elements: (length: 2) - │ │ │ ├── @ IntegerNode (location: (43,6)-(43,7)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── @ IntegerNode (location: (43,9)-(43,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (43,4)-(43,5) = "=" - ├── @ ParenthesesNode (location: (45,0)-(45,9)) - │ ├── flags: newline - │ ├── body: - │ │ @ StatementsNode (location: (45,1)-(45,8)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 3) - │ │ ├── @ CallNode (location: (45,1)-(45,2)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (45,1)-(45,2) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── @ CallNode (location: (45,4)-(45,5)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (45,4)-(45,5) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ CallNode (location: (45,7)-(45,8)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :c - │ │ ├── message_loc: (45,7)-(45,8) = "c" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (45,0)-(45,1) = "(" - │ └── closing_loc: (45,8)-(45,9) = ")" - └── @ MultiWriteNode (location: (47,0)-(47,17)) - ├── flags: newline - ├── lefts: (length: 3) - │ ├── @ LocalVariableTargetNode (location: (47,0)-(47,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── @ MultiTargetNode (location: (47,3)-(47,9)) - │ │ ├── flags: ∅ - │ │ ├── lefts: (length: 2) - │ │ │ ├── @ LocalVariableTargetNode (location: (47,4)-(47,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ └── depth: 0 - │ │ │ └── @ LocalVariableTargetNode (location: (47,7)-(47,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ └── depth: 0 - │ │ ├── rest: ∅ - │ │ ├── rights: (length: 0) - │ │ ├── lparen_loc: (47,3)-(47,4) = "(" - │ │ └── rparen_loc: (47,8)-(47,9) = ")" - │ └── @ LocalVariableTargetNode (location: (47,11)-(47,12)) - │ ├── flags: ∅ - │ ├── name: :d - │ └── depth: 0 - ├── rest: ∅ - ├── rights: (length: 0) - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (47,13)-(47,14) = "=" - └── value: - @ ArrayNode (location: (47,15)-(47,17)) - ├── flags: static_literal - ├── elements: (length: 0) - ├── opening_loc: (47,15)-(47,16) = "[" - └── closing_loc: (47,16)-(47,17) = "]" diff --git a/test/prism/snapshots/while.txt b/test/prism/snapshots/while.txt deleted file mode 100644 index 32b22adc8d..0000000000 --- a/test/prism/snapshots/while.txt +++ /dev/null @@ -1,529 +0,0 @@ -@ ProgramNode (location: (1,0)-(23,20)) -├── flags: ∅ -├── locals: [:baz] -└── statements: - @ StatementsNode (location: (1,0)-(23,20)) - ├── flags: ∅ - └── body: (length: 12) - ├── @ WhileNode (location: (1,0)-(1,18)) - │ ├── flags: newline - │ ├── keyword_loc: (1,0)-(1,5) = "while" - │ ├── closing_loc: (1,15)-(1,18) = "end" - │ ├── predicate: - │ │ @ TrueNode (location: (1,6)-(1,10)) - │ │ └── flags: static_literal - │ └── statements: - │ @ StatementsNode (location: (1,12)-(1,13)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ IntegerNode (location: (1,12)-(1,13)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 1 - ├── @ WhileNode (location: (3,0)-(3,12)) - │ ├── flags: newline - │ ├── keyword_loc: (3,2)-(3,7) = "while" - │ ├── closing_loc: ∅ - │ ├── predicate: - │ │ @ TrueNode (location: (3,8)-(3,12)) - │ │ └── flags: static_literal - │ └── statements: - │ @ StatementsNode (location: (3,0)-(3,1)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ IntegerNode (location: (3,0)-(3,1)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 1 - ├── @ CallNode (location: (5,0)-(5,24)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (5,0)-(5,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (5,4)-(5,24)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (5,6)-(5,22)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ WhileNode (location: (5,6)-(5,22)) - │ │ ├── flags: newline - │ │ ├── keyword_loc: (5,12)-(5,17) = "while" - │ │ ├── closing_loc: ∅ - │ │ ├── predicate: - │ │ │ @ TrueNode (location: (5,18)-(5,22)) - │ │ │ └── flags: static_literal - │ │ └── statements: - │ │ @ StatementsNode (location: (5,6)-(5,11)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ BreakNode (location: (5,6)-(5,11)) - │ │ ├── flags: newline - │ │ ├── arguments: ∅ - │ │ └── keyword_loc: (5,6)-(5,11) = "break" - │ ├── opening_loc: (5,4)-(5,5) = "{" - │ └── closing_loc: (5,23)-(5,24) = "}" - ├── @ CallNode (location: (7,0)-(7,23)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (7,0)-(7,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (7,4)-(7,23)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (7,6)-(7,21)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ WhileNode (location: (7,6)-(7,21)) - │ │ ├── flags: newline - │ │ ├── keyword_loc: (7,11)-(7,16) = "while" - │ │ ├── closing_loc: ∅ - │ │ ├── predicate: - │ │ │ @ TrueNode (location: (7,17)-(7,21)) - │ │ │ └── flags: static_literal - │ │ └── statements: - │ │ @ StatementsNode (location: (7,6)-(7,10)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ NextNode (location: (7,6)-(7,10)) - │ │ ├── flags: newline - │ │ ├── arguments: ∅ - │ │ └── keyword_loc: (7,6)-(7,10) = "next" - │ ├── opening_loc: (7,4)-(7,5) = "{" - │ └── closing_loc: (7,22)-(7,23) = "}" - ├── @ WhileNode (location: (9,0)-(9,17)) - │ ├── flags: newline - │ ├── keyword_loc: (9,7)-(9,12) = "while" - │ ├── closing_loc: ∅ - │ ├── predicate: - │ │ @ TrueNode (location: (9,13)-(9,17)) - │ │ └── flags: static_literal - │ └── statements: - │ @ StatementsNode (location: (9,0)-(9,6)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ ReturnNode (location: (9,0)-(9,6)) - │ ├── flags: newline - │ ├── keyword_loc: (9,0)-(9,6) = "return" - │ └── arguments: ∅ - ├── @ WhileNode (location: (11,0)-(11,21)) - │ ├── flags: newline - │ ├── keyword_loc: (11,11)-(11,16) = "while" - │ ├── closing_loc: ∅ - │ ├── predicate: - │ │ @ CallNode (location: (11,17)-(11,21)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar? - │ │ ├── message_loc: (11,17)-(11,21) = "bar?" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── statements: - │ @ StatementsNode (location: (11,0)-(11,10)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (11,0)-(11,10)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (11,0)-(11,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (11,4)-(11,10)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ SymbolNode (location: (11,4)-(11,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (11,4)-(11,5) = ":" - │ │ │ ├── value_loc: (11,5)-(11,6) = "a" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "a" - │ │ └── @ SymbolNode (location: (11,8)-(11,10)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (11,8)-(11,9) = ":" - │ │ ├── value_loc: (11,9)-(11,10) = "b" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (13,0)-(13,58)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (13,0)-(13,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (13,4)-(13,58)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (13,6)-(13,56)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ WhileNode (location: (13,6)-(13,56)) - │ │ ├── flags: newline - │ │ ├── keyword_loc: (13,6)-(13,11) = "while" - │ │ ├── closing_loc: (13,53)-(13,56) = "end" - │ │ ├── predicate: - │ │ │ @ DefNode (location: (13,12)-(13,44)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── name_loc: (13,21)-(13,24) = "foo" - │ │ │ ├── receiver: - │ │ │ │ @ SelfNode (location: (13,16)-(13,20)) - │ │ │ │ └── flags: ∅ - │ │ │ ├── parameters: - │ │ │ │ @ ParametersNode (location: (13,25)-(13,39)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── requireds: (length: 0) - │ │ │ │ ├── optionals: (length: 1) - │ │ │ │ │ └── @ OptionalParameterNode (location: (13,25)-(13,39)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :a - │ │ │ │ │ ├── name_loc: (13,25)-(13,26) = "a" - │ │ │ │ │ ├── operator_loc: (13,27)-(13,28) = "=" - │ │ │ │ │ └── value: - │ │ │ │ │ @ CallNode (location: (13,29)-(13,39)) - │ │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :tap - │ │ │ │ │ ├── message_loc: (13,29)-(13,32) = "tap" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: - │ │ │ │ │ @ BlockNode (location: (13,33)-(13,39)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── locals: [] - │ │ │ │ │ ├── parameters: ∅ - │ │ │ │ │ ├── body: ∅ - │ │ │ │ │ ├── opening_loc: (13,33)-(13,35) = "do" - │ │ │ │ │ └── closing_loc: (13,36)-(13,39) = "end" - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── posts: (length: 0) - │ │ │ │ ├── keywords: (length: 0) - │ │ │ │ ├── keyword_rest: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── body: ∅ - │ │ │ ├── locals: [:a] - │ │ │ ├── def_keyword_loc: (13,12)-(13,15) = "def" - │ │ │ ├── operator_loc: (13,20)-(13,21) = "." - │ │ │ ├── lparen_loc: ∅ - │ │ │ ├── rparen_loc: ∅ - │ │ │ ├── equal_loc: ∅ - │ │ │ └── end_keyword_loc: (13,41)-(13,44) = "end" - │ │ └── statements: - │ │ @ StatementsNode (location: (13,46)-(13,51)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ BreakNode (location: (13,46)-(13,51)) - │ │ ├── flags: newline - │ │ ├── arguments: ∅ - │ │ └── keyword_loc: (13,46)-(13,51) = "break" - │ ├── opening_loc: (13,4)-(13,5) = "{" - │ └── closing_loc: (13,57)-(13,58) = "}" - ├── @ CallNode (location: (15,0)-(15,55)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (15,0)-(15,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (15,4)-(15,55)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (15,6)-(15,53)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ WhileNode (location: (15,6)-(15,53)) - │ │ ├── flags: newline - │ │ ├── keyword_loc: (15,6)-(15,11) = "while" - │ │ ├── closing_loc: (15,50)-(15,53) = "end" - │ │ ├── predicate: - │ │ │ @ ClassNode (location: (15,12)-(15,41)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [:a] - │ │ │ ├── class_keyword_loc: (15,12)-(15,17) = "class" - │ │ │ ├── constant_path: - │ │ │ │ @ ConstantReadNode (location: (15,18)-(15,21)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :Foo - │ │ │ ├── inheritance_operator_loc: ∅ - │ │ │ ├── superclass: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (15,22)-(15,36)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ LocalVariableWriteNode (location: (15,22)-(15,36)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── name: :a - │ │ │ │ ├── depth: 0 - │ │ │ │ ├── name_loc: (15,22)-(15,23) = "a" - │ │ │ │ ├── value: - │ │ │ │ │ @ CallNode (location: (15,26)-(15,36)) - │ │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :tap - │ │ │ │ │ ├── message_loc: (15,26)-(15,29) = "tap" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: - │ │ │ │ │ @ BlockNode (location: (15,30)-(15,36)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── locals: [] - │ │ │ │ │ ├── parameters: ∅ - │ │ │ │ │ ├── body: ∅ - │ │ │ │ │ ├── opening_loc: (15,30)-(15,32) = "do" - │ │ │ │ │ └── closing_loc: (15,33)-(15,36) = "end" - │ │ │ │ └── operator_loc: (15,24)-(15,25) = "=" - │ │ │ ├── end_keyword_loc: (15,38)-(15,41) = "end" - │ │ │ └── name: :Foo - │ │ └── statements: - │ │ @ StatementsNode (location: (15,43)-(15,48)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ BreakNode (location: (15,43)-(15,48)) - │ │ ├── flags: newline - │ │ ├── arguments: ∅ - │ │ └── keyword_loc: (15,43)-(15,48) = "break" - │ ├── opening_loc: (15,4)-(15,5) = "{" - │ └── closing_loc: (15,54)-(15,55) = "}" - ├── @ CallNode (location: (17,0)-(17,56)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (17,0)-(17,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (17,4)-(17,56)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (17,6)-(17,54)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ WhileNode (location: (17,6)-(17,54)) - │ │ ├── flags: newline - │ │ ├── keyword_loc: (17,6)-(17,11) = "while" - │ │ ├── closing_loc: (17,51)-(17,54) = "end" - │ │ ├── predicate: - │ │ │ @ SingletonClassNode (location: (17,12)-(17,42)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── class_keyword_loc: (17,12)-(17,17) = "class" - │ │ │ ├── operator_loc: (17,18)-(17,20) = "<<" - │ │ │ ├── expression: - │ │ │ │ @ SelfNode (location: (17,21)-(17,25)) - │ │ │ │ └── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (17,27)-(17,37)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (17,27)-(17,37)) - │ │ │ │ ├── flags: newline, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :tap - │ │ │ │ ├── message_loc: (17,27)-(17,30) = "tap" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: - │ │ │ │ @ BlockNode (location: (17,31)-(17,37)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── locals: [] - │ │ │ │ ├── parameters: ∅ - │ │ │ │ ├── body: ∅ - │ │ │ │ ├── opening_loc: (17,31)-(17,33) = "do" - │ │ │ │ └── closing_loc: (17,34)-(17,37) = "end" - │ │ │ └── end_keyword_loc: (17,39)-(17,42) = "end" - │ │ └── statements: - │ │ @ StatementsNode (location: (17,44)-(17,49)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ BreakNode (location: (17,44)-(17,49)) - │ │ ├── flags: newline - │ │ ├── arguments: ∅ - │ │ └── keyword_loc: (17,44)-(17,49) = "break" - │ ├── opening_loc: (17,4)-(17,5) = "{" - │ └── closing_loc: (17,55)-(17,56) = "}" - ├── @ CallNode (location: (19,0)-(19,60)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (19,0)-(19,3) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (19,4)-(19,60)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (19,6)-(19,58)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ WhileNode (location: (19,6)-(19,58)) - │ │ ├── flags: newline - │ │ ├── keyword_loc: (19,6)-(19,11) = "while" - │ │ ├── closing_loc: (19,55)-(19,58) = "end" - │ │ ├── predicate: - │ │ │ @ SingletonClassNode (location: (19,12)-(19,46)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [:a] - │ │ │ ├── class_keyword_loc: (19,12)-(19,17) = "class" - │ │ │ ├── operator_loc: (19,18)-(19,20) = "<<" - │ │ │ ├── expression: - │ │ │ │ @ SelfNode (location: (19,21)-(19,25)) - │ │ │ │ └── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (19,27)-(19,41)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ LocalVariableWriteNode (location: (19,27)-(19,41)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── name: :a - │ │ │ │ ├── depth: 0 - │ │ │ │ ├── name_loc: (19,27)-(19,28) = "a" - │ │ │ │ ├── value: - │ │ │ │ │ @ CallNode (location: (19,31)-(19,41)) - │ │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :tap - │ │ │ │ │ ├── message_loc: (19,31)-(19,34) = "tap" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: - │ │ │ │ │ @ BlockNode (location: (19,35)-(19,41)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── locals: [] - │ │ │ │ │ ├── parameters: ∅ - │ │ │ │ │ ├── body: ∅ - │ │ │ │ │ ├── opening_loc: (19,35)-(19,37) = "do" - │ │ │ │ │ └── closing_loc: (19,38)-(19,41) = "end" - │ │ │ │ └── operator_loc: (19,29)-(19,30) = "=" - │ │ │ └── end_keyword_loc: (19,43)-(19,46) = "end" - │ │ └── statements: - │ │ @ StatementsNode (location: (19,48)-(19,53)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ BreakNode (location: (19,48)-(19,53)) - │ │ ├── flags: newline - │ │ ├── arguments: ∅ - │ │ └── keyword_loc: (19,48)-(19,53) = "break" - │ ├── opening_loc: (19,4)-(19,5) = "{" - │ └── closing_loc: (19,59)-(19,60) = "}" - ├── @ WhileNode (location: (21,0)-(21,31)) - │ ├── flags: newline - │ ├── keyword_loc: (21,0)-(21,5) = "while" - │ ├── closing_loc: (21,28)-(21,31) = "end" - │ ├── predicate: - │ │ @ DefNode (location: (21,6)-(21,26)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ ├── name_loc: (21,10)-(21,13) = "foo" - │ │ ├── receiver: ∅ - │ │ ├── parameters: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (21,16)-(21,26)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (21,16)-(21,26)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (21,16)-(21,19) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (21,20)-(21,26)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: ∅ - │ │ │ ├── opening_loc: (21,20)-(21,22) = "do" - │ │ │ └── closing_loc: (21,23)-(21,26) = "end" - │ │ ├── locals: [] - │ │ ├── def_keyword_loc: (21,6)-(21,9) = "def" - │ │ ├── operator_loc: ∅ - │ │ ├── lparen_loc: ∅ - │ │ ├── rparen_loc: ∅ - │ │ ├── equal_loc: (21,14)-(21,15) = "=" - │ │ └── end_keyword_loc: ∅ - │ └── statements: ∅ - └── @ WhileNode (location: (23,0)-(23,20)) - ├── flags: newline - ├── keyword_loc: (23,4)-(23,9) = "while" - ├── closing_loc: ∅ - ├── predicate: - │ @ MatchPredicateNode (location: (23,10)-(23,20)) - │ ├── flags: ∅ - │ ├── value: - │ │ @ CallNode (location: (23,10)-(23,13)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (23,10)-(23,13) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── pattern: - │ │ @ LocalVariableTargetNode (location: (23,17)-(23,20)) - │ │ ├── flags: ∅ - │ │ ├── name: :baz - │ │ └── depth: 0 - │ └── operator_loc: (23,14)-(23,16) = "in" - └── statements: - @ StatementsNode (location: (23,0)-(23,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (23,0)-(23,3)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :foo - ├── message_loc: (23,0)-(23,3) = "foo" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/__ENCODING__.txt b/test/prism/snapshots/whitequark/__ENCODING__.txt deleted file mode 100644 index f04dfb6cb8..0000000000 --- a/test/prism/snapshots/whitequark/__ENCODING__.txt +++ /dev/null @@ -1,9 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ SourceEncodingNode (location: (1,0)-(1,12)) - └── flags: newline, static_literal diff --git a/test/prism/snapshots/whitequark/__ENCODING___legacy_.txt b/test/prism/snapshots/whitequark/__ENCODING___legacy_.txt deleted file mode 100644 index f04dfb6cb8..0000000000 --- a/test/prism/snapshots/whitequark/__ENCODING___legacy_.txt +++ /dev/null @@ -1,9 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ SourceEncodingNode (location: (1,0)-(1,12)) - └── flags: newline, static_literal diff --git a/test/prism/snapshots/whitequark/alias.txt b/test/prism/snapshots/whitequark/alias.txt deleted file mode 100644 index d64a22b946..0000000000 --- a/test/prism/snapshots/whitequark/alias.txt +++ /dev/null @@ -1,24 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ AliasMethodNode (location: (1,0)-(1,14)) - ├── flags: newline - ├── new_name: - │ @ SymbolNode (location: (1,6)-(1,10)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,6)-(1,7) = ":" - │ ├── value_loc: (1,7)-(1,10) = "foo" - │ ├── closing_loc: ∅ - │ └── unescaped: "foo" - ├── old_name: - │ @ SymbolNode (location: (1,11)-(1,14)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: ∅ - │ ├── value_loc: (1,11)-(1,14) = "bar" - │ ├── closing_loc: ∅ - │ └── unescaped: "bar" - └── keyword_loc: (1,0)-(1,5) = "alias" diff --git a/test/prism/snapshots/whitequark/alias_gvar.txt b/test/prism/snapshots/whitequark/alias_gvar.txt deleted file mode 100644 index a958cd781f..0000000000 --- a/test/prism/snapshots/whitequark/alias_gvar.txt +++ /dev/null @@ -1,29 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,11)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ AliasGlobalVariableNode (location: (1,0)-(1,11)) - │ ├── flags: newline - │ ├── new_name: - │ │ @ GlobalVariableReadNode (location: (1,6)-(1,8)) - │ │ ├── flags: ∅ - │ │ └── name: :$a - │ ├── old_name: - │ │ @ BackReferenceReadNode (location: (1,9)-(1,11)) - │ │ ├── flags: ∅ - │ │ └── name: :$+ - │ └── keyword_loc: (1,0)-(1,5) = "alias" - └── @ AliasGlobalVariableNode (location: (3,0)-(3,11)) - ├── flags: newline - ├── new_name: - │ @ GlobalVariableReadNode (location: (3,6)-(3,8)) - │ ├── flags: ∅ - │ └── name: :$a - ├── old_name: - │ @ GlobalVariableReadNode (location: (3,9)-(3,11)) - │ ├── flags: ∅ - │ └── name: :$b - └── keyword_loc: (3,0)-(3,5) = "alias" diff --git a/test/prism/snapshots/whitequark/ambiuous_quoted_label_in_ternary_operator.txt b/test/prism/snapshots/whitequark/ambiuous_quoted_label_in_ternary_operator.txt deleted file mode 100644 index 7c2f8a2d96..0000000000 --- a/test/prism/snapshots/whitequark/ambiuous_quoted_label_in_ternary_operator.txt +++ /dev/null @@ -1,67 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,15)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IfNode (location: (1,0)-(1,15)) - ├── flags: newline - ├── if_keyword_loc: ∅ - ├── predicate: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── then_keyword_loc: (1,2)-(1,3) = "?" - ├── statements: - │ @ StatementsNode (location: (1,4)-(1,10)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,4)-(1,10)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (1,4)-(1,5)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (1,4)-(1,5) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :& - │ ├── message_loc: (1,6)-(1,7) = "&" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,8)-(1,10)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (1,8)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,8)-(1,9) = "'" - │ │ ├── content_loc: (1,9)-(1,9) = "" - │ │ ├── closing_loc: (1,9)-(1,10) = "'" - │ │ └── unescaped: "" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── subsequent: - │ @ ElseNode (location: (1,10)-(1,15)) - │ ├── flags: ∅ - │ ├── else_keyword_loc: (1,10)-(1,11) = ":" - │ ├── statements: - │ │ @ StatementsNode (location: (1,12)-(1,15)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ NilNode (location: (1,12)-(1,15)) - │ │ └── flags: newline, static_literal - │ └── end_keyword_loc: ∅ - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/whitequark/and.txt b/test/prism/snapshots/whitequark/and.txt deleted file mode 100644 index 3f548d55eb..0000000000 --- a/test/prism/snapshots/whitequark/and.txt +++ /dev/null @@ -1,57 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,11)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ AndNode (location: (1,0)-(1,10)) - │ ├── flags: newline - │ ├── left: - │ │ @ CallNode (location: (1,0)-(1,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,0)-(1,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── right: - │ │ @ CallNode (location: (1,7)-(1,10)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,7)-(1,10) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (1,4)-(1,6) = "&&" - └── @ AndNode (location: (3,0)-(3,11)) - ├── flags: newline - ├── left: - │ @ CallNode (location: (3,0)-(3,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (3,0)-(3,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── right: - │ @ CallNode (location: (3,8)-(3,11)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (3,8)-(3,11) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── operator_loc: (3,4)-(3,7) = "and" diff --git a/test/prism/snapshots/whitequark/and_asgn.txt b/test/prism/snapshots/whitequark/and_asgn.txt deleted file mode 100644 index f07cfd749d..0000000000 --- a/test/prism/snapshots/whitequark/and_asgn.txt +++ /dev/null @@ -1,61 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,15)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallAndWriteNode (location: (1,0)-(1,11)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (1,0)-(1,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,0)-(1,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (1,3)-(1,4) = "." - │ ├── message_loc: (1,4)-(1,5) = "a" - │ ├── read_name: :a - │ ├── write_name: :a= - │ ├── operator_loc: (1,6)-(1,9) = "&&=" - │ └── value: - │ @ IntegerNode (location: (1,10)-(1,11)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - └── @ IndexAndWriteNode (location: (3,0)-(3,15)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (3,0)-(3,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (3,0)-(3,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── opening_loc: (3,3)-(3,4) = "[" - ├── arguments: - │ @ ArgumentsNode (location: (3,4)-(3,8)) - │ ├── flags: ∅ - │ └── arguments: (length: 2) - │ ├── @ IntegerNode (location: (3,4)-(3,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 0 - │ └── @ IntegerNode (location: (3,7)-(3,8)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: (3,8)-(3,9) = "]" - ├── block: ∅ - ├── operator_loc: (3,10)-(3,13) = "&&=" - └── value: - @ IntegerNode (location: (3,14)-(3,15)) - ├── flags: static_literal, decimal - └── value: 2 diff --git a/test/prism/snapshots/whitequark/and_or_masgn.txt b/test/prism/snapshots/whitequark/and_or_masgn.txt deleted file mode 100644 index 208120c02e..0000000000 --- a/test/prism/snapshots/whitequark/and_or_masgn.txt +++ /dev/null @@ -1,107 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,19)) -├── flags: ∅ -├── locals: [:a, :b] -└── statements: - @ StatementsNode (location: (1,0)-(3,19)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ AndNode (location: (1,0)-(1,19)) - │ ├── flags: newline - │ ├── left: - │ │ @ CallNode (location: (1,0)-(1,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,0)-(1,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── right: - │ │ @ ParenthesesNode (location: (1,7)-(1,19)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (1,8)-(1,18)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ MultiWriteNode (location: (1,8)-(1,18)) - │ │ │ ├── flags: newline - │ │ │ ├── lefts: (length: 2) - │ │ │ │ ├── @ LocalVariableTargetNode (location: (1,8)-(1,9)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :a - │ │ │ │ │ └── depth: 0 - │ │ │ │ └── @ LocalVariableTargetNode (location: (1,11)-(1,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :b - │ │ │ │ └── depth: 0 - │ │ │ ├── rest: ∅ - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: ∅ - │ │ │ ├── rparen_loc: ∅ - │ │ │ ├── operator_loc: (1,13)-(1,14) = "=" - │ │ │ └── value: - │ │ │ @ CallNode (location: (1,15)-(1,18)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (1,15)-(1,18) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (1,7)-(1,8) = "(" - │ │ └── closing_loc: (1,18)-(1,19) = ")" - │ └── operator_loc: (1,4)-(1,6) = "&&" - └── @ OrNode (location: (3,0)-(3,19)) - ├── flags: newline - ├── left: - │ @ CallNode (location: (3,0)-(3,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (3,0)-(3,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── right: - │ @ ParenthesesNode (location: (3,7)-(3,19)) - │ ├── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (3,8)-(3,18)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ MultiWriteNode (location: (3,8)-(3,18)) - │ │ ├── flags: newline - │ │ ├── lefts: (length: 2) - │ │ │ ├── @ LocalVariableTargetNode (location: (3,8)-(3,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ └── depth: 0 - │ │ │ └── @ LocalVariableTargetNode (location: (3,11)-(3,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ └── depth: 0 - │ │ ├── rest: ∅ - │ │ ├── rights: (length: 0) - │ │ ├── lparen_loc: ∅ - │ │ ├── rparen_loc: ∅ - │ │ ├── operator_loc: (3,13)-(3,14) = "=" - │ │ └── value: - │ │ @ CallNode (location: (3,15)-(3,18)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (3,15)-(3,18) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (3,7)-(3,8) = "(" - │ └── closing_loc: (3,18)-(3,19) = ")" - └── operator_loc: (3,4)-(3,6) = "||" diff --git a/test/prism/snapshots/whitequark/anonymous_blockarg.txt b/test/prism/snapshots/whitequark/anonymous_blockarg.txt deleted file mode 100644 index 7ae9500bb7..0000000000 --- a/test/prism/snapshots/whitequark/anonymous_blockarg.txt +++ /dev/null @@ -1,52 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,23)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,23)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,23)) - ├── flags: newline - ├── name: :foo - ├── name_loc: (1,4)-(1,7) = "foo" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,8)-(1,9)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: - │ @ BlockParameterNode (location: (1,8)-(1,9)) - │ ├── flags: ∅ - │ ├── name: ∅ - │ ├── name_loc: ∅ - │ └── operator_loc: (1,8)-(1,9) = "&" - ├── body: - │ @ StatementsNode (location: (1,12)-(1,17)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,12)-(1,17)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (1,12)-(1,15) = "bar" - │ ├── opening_loc: (1,15)-(1,16) = "(" - │ ├── arguments: ∅ - │ ├── closing_loc: (1,17)-(1,18) = ")" - │ └── block: - │ @ BlockArgumentNode (location: (1,16)-(1,17)) - │ ├── flags: ∅ - │ ├── expression: ∅ - │ └── operator_loc: (1,16)-(1,17) = "&" - ├── locals: [] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,7)-(1,8) = "(" - ├── rparen_loc: (1,9)-(1,10) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,20)-(1,23) = "end" diff --git a/test/prism/snapshots/whitequark/arg.txt b/test/prism/snapshots/whitequark/arg.txt deleted file mode 100644 index 62f2a841e9..0000000000 --- a/test/prism/snapshots/whitequark/arg.txt +++ /dev/null @@ -1,62 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,20)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,20)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ DefNode (location: (1,0)-(1,15)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (1,4)-(1,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,6)-(1,9)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,6)-(1,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :foo - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:foo] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (1,5)-(1,6) = "(" - │ ├── rparen_loc: (1,9)-(1,10) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (1,12)-(1,15) = "end" - └── @ DefNode (location: (3,0)-(3,20)) - ├── flags: newline - ├── name: :f - ├── name_loc: (3,4)-(3,5) = "f" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (3,6)-(3,14)) - │ ├── flags: ∅ - │ ├── requireds: (length: 2) - │ │ ├── @ RequiredParameterNode (location: (3,6)-(3,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :foo - │ │ └── @ RequiredParameterNode (location: (3,11)-(3,14)) - │ │ ├── flags: ∅ - │ │ └── name: :bar - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:foo, :bar] - ├── def_keyword_loc: (3,0)-(3,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (3,5)-(3,6) = "(" - ├── rparen_loc: (3,14)-(3,15) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (3,17)-(3,20) = "end" diff --git a/test/prism/snapshots/whitequark/arg_duplicate_ignored.txt b/test/prism/snapshots/whitequark/arg_duplicate_ignored.txt deleted file mode 100644 index f67c7c9358..0000000000 --- a/test/prism/snapshots/whitequark/arg_duplicate_ignored.txt +++ /dev/null @@ -1,65 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,20)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,20)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ DefNode (location: (1,0)-(1,18)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (1,4)-(1,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,8)-(1,12)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ RequiredParameterNode (location: (1,8)-(1,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :_ - │ │ │ └── @ RequiredParameterNode (location: (1,11)-(1,12)) - │ │ │ ├── flags: repeated_parameter - │ │ │ └── name: :_ - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:_] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (1,7)-(1,8) = "(" - │ ├── rparen_loc: (1,12)-(1,13) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (1,15)-(1,18) = "end" - └── @ DefNode (location: (3,0)-(3,20)) - ├── flags: newline - ├── name: :foo - ├── name_loc: (3,4)-(3,7) = "foo" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (3,8)-(3,14)) - │ ├── flags: ∅ - │ ├── requireds: (length: 2) - │ │ ├── @ RequiredParameterNode (location: (3,8)-(3,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :_a - │ │ └── @ RequiredParameterNode (location: (3,12)-(3,14)) - │ │ ├── flags: repeated_parameter - │ │ └── name: :_a - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:_a] - ├── def_keyword_loc: (3,0)-(3,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (3,7)-(3,8) = "(" - ├── rparen_loc: (3,14)-(3,15) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (3,17)-(3,20) = "end" diff --git a/test/prism/snapshots/whitequark/arg_label.txt b/test/prism/snapshots/whitequark/arg_label.txt deleted file mode 100644 index 97c1b45671..0000000000 --- a/test/prism/snapshots/whitequark/arg_label.txt +++ /dev/null @@ -1,124 +0,0 @@ -@ ProgramNode (location: (1,0)-(6,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(6,12)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ DefNode (location: (1,0)-(2,8)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (1,4)-(1,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (2,1)-(2,4)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (2,1)-(2,4)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (2,1)-(2,2) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (2,2)-(2,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ SymbolNode (location: (2,2)-(2,4)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (2,2)-(2,3) = ":" - │ │ │ ├── value_loc: (2,3)-(2,4) = "b" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "b" - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (2,5)-(2,8) = "end" - ├── @ DefNode (location: (4,0)-(4,17)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (4,4)-(4,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (4,10)-(4,13)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (4,10)-(4,13)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (4,10)-(4,11) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (4,11)-(4,13)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ SymbolNode (location: (4,11)-(4,13)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (4,11)-(4,12) = ":" - │ │ │ ├── value_loc: (4,12)-(4,13) = "b" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "b" - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (4,0)-(4,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (4,7)-(4,8) = "(" - │ ├── rparen_loc: (4,8)-(4,9) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (4,14)-(4,17) = "end" - └── @ CallNode (location: (6,0)-(6,12)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (6,0)-(6,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (6,2)-(6,12)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: - │ @ BlockParametersNode (location: (6,4)-(6,6)) - │ ├── flags: ∅ - │ ├── parameters: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (6,4)-(6,5) = "|" - │ └── closing_loc: (6,5)-(6,6) = "|" - ├── body: - │ @ StatementsNode (location: (6,7)-(6,10)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (6,7)-(6,10)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (6,7)-(6,8) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (6,8)-(6,10)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ SymbolNode (location: (6,8)-(6,10)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (6,8)-(6,9) = ":" - │ │ ├── value_loc: (6,9)-(6,10) = "b" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── opening_loc: (6,2)-(6,3) = "{" - └── closing_loc: (6,11)-(6,12) = "}" diff --git a/test/prism/snapshots/whitequark/arg_scope.txt b/test/prism/snapshots/whitequark/arg_scope.txt deleted file mode 100644 index 7838aad5fd..0000000000 --- a/test/prism/snapshots/whitequark/arg_scope.txt +++ /dev/null @@ -1,40 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,13)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :lambda - ├── message_loc: (1,0)-(1,6) = "lambda" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,6)-(1,13)) - ├── flags: ∅ - ├── locals: [:a] - ├── parameters: - │ @ BlockParametersNode (location: (1,7)-(1,11)) - │ ├── flags: ∅ - │ ├── parameters: ∅ - │ ├── locals: (length: 1) - │ │ └── @ BlockLocalVariableNode (location: (1,9)-(1,10)) - │ │ ├── flags: ∅ - │ │ └── name: :a - │ ├── opening_loc: (1,7)-(1,8) = "|" - │ └── closing_loc: (1,10)-(1,11) = "|" - ├── body: - │ @ StatementsNode (location: (1,11)-(1,12)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ LocalVariableReadNode (location: (1,11)-(1,12)) - │ ├── flags: newline - │ ├── name: :a - │ └── depth: 0 - ├── opening_loc: (1,6)-(1,7) = "{" - └── closing_loc: (1,12)-(1,13) = "}" diff --git a/test/prism/snapshots/whitequark/args.txt b/test/prism/snapshots/whitequark/args.txt deleted file mode 100644 index 76434b907d..0000000000 --- a/test/prism/snapshots/whitequark/args.txt +++ /dev/null @@ -1,1157 +0,0 @@ -@ ProgramNode (location: (1,0)-(63,21)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(63,21)) - ├── flags: ∅ - └── body: (length: 31) - ├── @ DefNode (location: (1,0)-(1,13)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (1,4)-(1,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,6)-(1,8)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (1,6)-(1,8)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (1,7)-(1,8) = "b" - │ │ └── operator_loc: (1,6)-(1,7) = "&" - │ ├── body: ∅ - │ ├── locals: [:b] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (1,10)-(1,13) = "end" - ├── @ DefNode (location: (3,0)-(3,18)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (3,4)-(3,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (3,7)-(3,12)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ MultiTargetNode (location: (3,7)-(3,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 1) - │ │ │ │ └── @ MultiTargetNode (location: (3,8)-(3,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── lefts: (length: 1) - │ │ │ │ │ └── @ RequiredParameterNode (location: (3,9)-(3,10)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :a - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── rights: (length: 0) - │ │ │ │ ├── lparen_loc: (3,8)-(3,9) = "(" - │ │ │ │ └── rparen_loc: (3,10)-(3,11) = ")" - │ │ │ ├── rest: ∅ - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: (3,7)-(3,8) = "(" - │ │ │ └── rparen_loc: (3,11)-(3,12) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:a] - │ ├── def_keyword_loc: (3,0)-(3,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (3,6)-(3,7) = "(" - │ ├── rparen_loc: (3,12)-(3,13) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (3,15)-(3,18) = "end" - ├── @ DefNode (location: (5,0)-(5,16)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (5,4)-(5,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (5,7)-(5,10)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ MultiTargetNode (location: (5,7)-(5,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (5,8)-(5,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (5,8)-(5,9) = "*" - │ │ │ │ └── expression: ∅ - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: (5,7)-(5,8) = "(" - │ │ │ └── rparen_loc: (5,9)-(5,10) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (5,0)-(5,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (5,6)-(5,7) = "(" - │ ├── rparen_loc: (5,10)-(5,11) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (5,13)-(5,16) = "end" - ├── @ DefNode (location: (7,0)-(7,19)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (7,4)-(7,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (7,7)-(7,13)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ MultiTargetNode (location: (7,7)-(7,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (7,8)-(7,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (7,8)-(7,9) = "*" - │ │ │ │ └── expression: ∅ - │ │ │ ├── rights: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (7,11)-(7,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :p - │ │ │ ├── lparen_loc: (7,7)-(7,8) = "(" - │ │ │ └── rparen_loc: (7,12)-(7,13) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:p] - │ ├── def_keyword_loc: (7,0)-(7,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (7,6)-(7,7) = "(" - │ ├── rparen_loc: (7,13)-(7,14) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (7,16)-(7,19) = "end" - ├── @ DefNode (location: (9,0)-(9,17)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (9,4)-(9,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (9,7)-(9,11)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ MultiTargetNode (location: (9,7)-(9,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (9,8)-(9,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (9,8)-(9,9) = "*" - │ │ │ │ └── expression: - │ │ │ │ @ RequiredParameterNode (location: (9,9)-(9,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :r - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: (9,7)-(9,8) = "(" - │ │ │ └── rparen_loc: (9,10)-(9,11) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:r] - │ ├── def_keyword_loc: (9,0)-(9,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (9,6)-(9,7) = "(" - │ ├── rparen_loc: (9,11)-(9,12) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (9,14)-(9,17) = "end" - ├── @ DefNode (location: (11,0)-(11,20)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (11,4)-(11,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (11,7)-(11,14)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ MultiTargetNode (location: (11,7)-(11,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (11,8)-(11,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (11,8)-(11,9) = "*" - │ │ │ │ └── expression: - │ │ │ │ @ RequiredParameterNode (location: (11,9)-(11,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :r - │ │ │ ├── rights: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (11,12)-(11,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :p - │ │ │ ├── lparen_loc: (11,7)-(11,8) = "(" - │ │ │ └── rparen_loc: (11,13)-(11,14) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:r, :p] - │ ├── def_keyword_loc: (11,0)-(11,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (11,6)-(11,7) = "(" - │ ├── rparen_loc: (11,14)-(11,15) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (11,17)-(11,20) = "end" - ├── @ DefNode (location: (13,0)-(13,19)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (13,4)-(13,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (13,7)-(13,13)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ MultiTargetNode (location: (13,7)-(13,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (13,8)-(13,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (13,11)-(13,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (13,11)-(13,12) = "*" - │ │ │ │ └── expression: ∅ - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: (13,7)-(13,8) = "(" - │ │ │ └── rparen_loc: (13,12)-(13,13) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:a] - │ ├── def_keyword_loc: (13,0)-(13,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (13,6)-(13,7) = "(" - │ ├── rparen_loc: (13,13)-(13,14) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (13,16)-(13,19) = "end" - ├── @ DefNode (location: (15,0)-(15,22)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (15,4)-(15,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (15,7)-(15,16)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ MultiTargetNode (location: (15,7)-(15,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (15,8)-(15,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (15,11)-(15,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (15,11)-(15,12) = "*" - │ │ │ │ └── expression: ∅ - │ │ │ ├── rights: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (15,14)-(15,15)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :p - │ │ │ ├── lparen_loc: (15,7)-(15,8) = "(" - │ │ │ └── rparen_loc: (15,15)-(15,16) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:a, :p] - │ ├── def_keyword_loc: (15,0)-(15,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (15,6)-(15,7) = "(" - │ ├── rparen_loc: (15,16)-(15,17) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (15,19)-(15,22) = "end" - ├── @ DefNode (location: (17,0)-(17,20)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (17,4)-(17,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (17,7)-(17,14)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ MultiTargetNode (location: (17,7)-(17,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (17,8)-(17,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (17,11)-(17,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (17,11)-(17,12) = "*" - │ │ │ │ └── expression: - │ │ │ │ @ RequiredParameterNode (location: (17,12)-(17,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :r - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: (17,7)-(17,8) = "(" - │ │ │ └── rparen_loc: (17,13)-(17,14) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:a, :r] - │ ├── def_keyword_loc: (17,0)-(17,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (17,6)-(17,7) = "(" - │ ├── rparen_loc: (17,14)-(17,15) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (17,17)-(17,20) = "end" - ├── @ DefNode (location: (19,0)-(19,23)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (19,4)-(19,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (19,7)-(19,17)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ MultiTargetNode (location: (19,7)-(19,17)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (19,8)-(19,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── rest: - │ │ │ │ @ SplatNode (location: (19,11)-(19,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (19,11)-(19,12) = "*" - │ │ │ │ └── expression: - │ │ │ │ @ RequiredParameterNode (location: (19,12)-(19,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :r - │ │ │ ├── rights: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (19,15)-(19,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :p - │ │ │ ├── lparen_loc: (19,7)-(19,8) = "(" - │ │ │ └── rparen_loc: (19,16)-(19,17) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:a, :r, :p] - │ ├── def_keyword_loc: (19,0)-(19,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (19,6)-(19,7) = "(" - │ ├── rparen_loc: (19,17)-(19,18) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (19,20)-(19,23) = "end" - ├── @ DefNode (location: (21,0)-(21,20)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (21,4)-(21,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (21,7)-(21,14)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ MultiTargetNode (location: (21,7)-(21,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── lefts: (length: 2) - │ │ │ │ ├── @ RequiredParameterNode (location: (21,8)-(21,9)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :a - │ │ │ │ └── @ RequiredParameterNode (location: (21,11)-(21,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a1 - │ │ │ ├── rest: ∅ - │ │ │ ├── rights: (length: 0) - │ │ │ ├── lparen_loc: (21,7)-(21,8) = "(" - │ │ │ └── rparen_loc: (21,13)-(21,14) = ")" - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:a, :a1] - │ ├── def_keyword_loc: (21,0)-(21,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (21,6)-(21,7) = "(" - │ ├── rparen_loc: (21,14)-(21,15) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (21,17)-(21,20) = "end" - ├── @ DefNode (location: (23,0)-(23,23)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (23,4)-(23,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (23,7)-(23,17)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ OptionalKeywordParameterNode (location: (23,7)-(23,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── name_loc: (23,7)-(23,11) = "foo:" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (23,12)-(23,13)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (23,15)-(23,17)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (23,16)-(23,17) = "b" - │ │ └── operator_loc: (23,15)-(23,16) = "&" - │ ├── body: ∅ - │ ├── locals: [:foo, :b] - │ ├── def_keyword_loc: (23,0)-(23,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (23,6)-(23,7) = "(" - │ ├── rparen_loc: (23,17)-(23,18) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (23,20)-(23,23) = "end" - ├── @ DefNode (location: (25,0)-(25,38)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (25,4)-(25,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (25,7)-(25,32)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 2) - │ │ │ ├── @ OptionalKeywordParameterNode (location: (25,7)-(25,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :foo - │ │ │ │ ├── name_loc: (25,7)-(25,11) = "foo:" - │ │ │ │ └── value: - │ │ │ │ @ IntegerNode (location: (25,12)-(25,13)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── @ OptionalKeywordParameterNode (location: (25,15)-(25,21)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── name_loc: (25,15)-(25,19) = "bar:" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (25,20)-(25,21)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── keyword_rest: - │ │ │ @ KeywordRestParameterNode (location: (25,23)-(25,28)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── name_loc: (25,25)-(25,28) = "baz" - │ │ │ └── operator_loc: (25,23)-(25,25) = "**" - │ │ └── block: - │ │ @ BlockParameterNode (location: (25,30)-(25,32)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (25,31)-(25,32) = "b" - │ │ └── operator_loc: (25,30)-(25,31) = "&" - │ ├── body: ∅ - │ ├── locals: [:foo, :bar, :baz, :b] - │ ├── def_keyword_loc: (25,0)-(25,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (25,6)-(25,7) = "(" - │ ├── rparen_loc: (25,32)-(25,33) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (25,35)-(25,38) = "end" - ├── @ DefNode (location: (27,0)-(27,20)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (27,4)-(27,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (27,6)-(27,15)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ KeywordRestParameterNode (location: (27,6)-(27,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── name_loc: (27,8)-(27,11) = "baz" - │ │ │ └── operator_loc: (27,6)-(27,8) = "**" - │ │ └── block: - │ │ @ BlockParameterNode (location: (27,13)-(27,15)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (27,14)-(27,15) = "b" - │ │ └── operator_loc: (27,13)-(27,14) = "&" - │ ├── body: ∅ - │ ├── locals: [:baz, :b] - │ ├── def_keyword_loc: (27,0)-(27,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (27,17)-(27,20) = "end" - ├── @ DefNode (location: (29,0)-(29,16)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (29,4)-(29,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (29,6)-(29,11)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (29,6)-(29,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: ∅ - │ │ │ ├── name_loc: ∅ - │ │ │ └── operator_loc: (29,6)-(29,7) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ KeywordRestParameterNode (location: (29,9)-(29,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: ∅ - │ │ │ ├── name_loc: ∅ - │ │ │ └── operator_loc: (29,9)-(29,11) = "**" - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (29,0)-(29,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (29,13)-(29,16) = "end" - ├── @ DefNode (location: (31,0)-(31,17)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (31,4)-(31,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (31,6)-(31,12)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (31,6)-(31,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :r - │ │ │ ├── name_loc: (31,7)-(31,8) = "r" - │ │ │ └── operator_loc: (31,6)-(31,7) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (31,10)-(31,12)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (31,11)-(31,12) = "b" - │ │ └── operator_loc: (31,10)-(31,11) = "&" - │ ├── body: ∅ - │ ├── locals: [:r, :b] - │ ├── def_keyword_loc: (31,0)-(31,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (31,14)-(31,17) = "end" - ├── @ DefNode (location: (33,0)-(33,20)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (33,4)-(33,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (33,6)-(33,15)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (33,6)-(33,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :r - │ │ │ ├── name_loc: (33,7)-(33,8) = "r" - │ │ │ └── operator_loc: (33,6)-(33,7) = "*" - │ │ ├── posts: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (33,10)-(33,11)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :p - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (33,13)-(33,15)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (33,14)-(33,15) = "b" - │ │ └── operator_loc: (33,13)-(33,14) = "&" - │ ├── body: ∅ - │ ├── locals: [:r, :p, :b] - │ ├── def_keyword_loc: (33,0)-(33,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (33,17)-(33,20) = "end" - ├── @ DefNode (location: (35,0)-(35,11)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (35,4)-(35,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (35,0)-(35,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (35,8)-(35,11) = "end" - ├── @ DefNode (location: (37,0)-(37,16)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (37,4)-(37,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (37,6)-(37,11)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (37,6)-(37,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (37,9)-(37,11)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (37,10)-(37,11) = "b" - │ │ └── operator_loc: (37,9)-(37,10) = "&" - │ ├── body: ∅ - │ ├── locals: [:a, :b] - │ ├── def_keyword_loc: (37,0)-(37,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (37,13)-(37,16) = "end" - ├── @ DefNode (location: (39,0)-(39,20)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (39,4)-(39,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (39,6)-(39,15)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (39,6)-(39,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (39,9)-(39,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :r - │ │ │ ├── name_loc: (39,10)-(39,11) = "r" - │ │ │ └── operator_loc: (39,9)-(39,10) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (39,13)-(39,15)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (39,14)-(39,15) = "b" - │ │ └── operator_loc: (39,13)-(39,14) = "&" - │ ├── body: ∅ - │ ├── locals: [:a, :r, :b] - │ ├── def_keyword_loc: (39,0)-(39,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (39,17)-(39,20) = "end" - ├── @ DefNode (location: (41,0)-(41,23)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (41,4)-(41,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (41,6)-(41,18)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (41,6)-(41,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 0) - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (41,9)-(41,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :r - │ │ │ ├── name_loc: (41,10)-(41,11) = "r" - │ │ │ └── operator_loc: (41,9)-(41,10) = "*" - │ │ ├── posts: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (41,13)-(41,14)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :p - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (41,16)-(41,18)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (41,17)-(41,18) = "b" - │ │ └── operator_loc: (41,16)-(41,17) = "&" - │ ├── body: ∅ - │ ├── locals: [:a, :r, :p, :b] - │ ├── def_keyword_loc: (41,0)-(41,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (41,20)-(41,23) = "end" - ├── @ DefNode (location: (43,0)-(43,21)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (43,4)-(43,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (43,6)-(43,16)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (43,6)-(43,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (43,9)-(43,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :o - │ │ │ ├── name_loc: (43,9)-(43,10) = "o" - │ │ │ ├── operator_loc: (43,10)-(43,11) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (43,11)-(43,12)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (43,14)-(43,16)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (43,15)-(43,16) = "b" - │ │ └── operator_loc: (43,14)-(43,15) = "&" - │ ├── body: ∅ - │ ├── locals: [:a, :o, :b] - │ ├── def_keyword_loc: (43,0)-(43,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (43,18)-(43,21) = "end" - ├── @ DefNode (location: (45,0)-(45,25)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (45,4)-(45,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (45,6)-(45,20)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (45,6)-(45,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (45,9)-(45,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :o - │ │ │ ├── name_loc: (45,9)-(45,10) = "o" - │ │ │ ├── operator_loc: (45,10)-(45,11) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (45,11)-(45,12)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (45,14)-(45,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :r - │ │ │ ├── name_loc: (45,15)-(45,16) = "r" - │ │ │ └── operator_loc: (45,14)-(45,15) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (45,18)-(45,20)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (45,19)-(45,20) = "b" - │ │ └── operator_loc: (45,18)-(45,19) = "&" - │ ├── body: ∅ - │ ├── locals: [:a, :o, :r, :b] - │ ├── def_keyword_loc: (45,0)-(45,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (45,22)-(45,25) = "end" - ├── @ DefNode (location: (47,0)-(47,28)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (47,4)-(47,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (47,6)-(47,23)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (47,6)-(47,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (47,9)-(47,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :o - │ │ │ ├── name_loc: (47,9)-(47,10) = "o" - │ │ │ ├── operator_loc: (47,10)-(47,11) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (47,11)-(47,12)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (47,14)-(47,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :r - │ │ │ ├── name_loc: (47,15)-(47,16) = "r" - │ │ │ └── operator_loc: (47,14)-(47,15) = "*" - │ │ ├── posts: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (47,18)-(47,19)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :p - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (47,21)-(47,23)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (47,22)-(47,23) = "b" - │ │ └── operator_loc: (47,21)-(47,22) = "&" - │ ├── body: ∅ - │ ├── locals: [:a, :o, :r, :p, :b] - │ ├── def_keyword_loc: (47,0)-(47,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (47,25)-(47,28) = "end" - ├── @ DefNode (location: (49,0)-(49,24)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (49,4)-(49,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (49,6)-(49,19)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (49,6)-(49,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (49,9)-(49,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :o - │ │ │ ├── name_loc: (49,9)-(49,10) = "o" - │ │ │ ├── operator_loc: (49,10)-(49,11) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (49,11)-(49,12)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (49,14)-(49,15)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :p - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (49,17)-(49,19)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (49,18)-(49,19) = "b" - │ │ └── operator_loc: (49,17)-(49,18) = "&" - │ ├── body: ∅ - │ ├── locals: [:a, :o, :p, :b] - │ ├── def_keyword_loc: (49,0)-(49,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (49,21)-(49,24) = "end" - ├── @ DefNode (location: (51,0)-(52,5)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (51,4)-(51,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (51,6)-(51,10)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ RequiredKeywordParameterNode (location: (51,6)-(51,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :foo - │ │ │ └── name_loc: (51,6)-(51,10) = "foo:" - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:foo] - │ ├── def_keyword_loc: (51,0)-(51,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (52,2)-(52,5) = "end" - ├── @ DefNode (location: (54,0)-(55,5)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (54,4)-(54,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (54,6)-(54,13)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ OptionalKeywordParameterNode (location: (54,6)-(54,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── name_loc: (54,6)-(54,10) = "foo:" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (54,11)-(54,13)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: -1 - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:foo] - │ ├── def_keyword_loc: (54,0)-(54,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (55,2)-(55,5) = "end" - ├── @ DefNode (location: (57,0)-(57,18)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (57,4)-(57,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (57,6)-(57,13)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (57,6)-(57,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :o - │ │ │ ├── name_loc: (57,6)-(57,7) = "o" - │ │ │ ├── operator_loc: (57,7)-(57,8) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (57,8)-(57,9)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (57,11)-(57,13)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (57,12)-(57,13) = "b" - │ │ └── operator_loc: (57,11)-(57,12) = "&" - │ ├── body: ∅ - │ ├── locals: [:o, :b] - │ ├── def_keyword_loc: (57,0)-(57,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (57,15)-(57,18) = "end" - ├── @ DefNode (location: (59,0)-(59,22)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (59,4)-(59,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (59,6)-(59,17)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (59,6)-(59,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :o - │ │ │ ├── name_loc: (59,6)-(59,7) = "o" - │ │ │ ├── operator_loc: (59,7)-(59,8) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (59,8)-(59,9)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (59,11)-(59,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :r - │ │ │ ├── name_loc: (59,12)-(59,13) = "r" - │ │ │ └── operator_loc: (59,11)-(59,12) = "*" - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (59,15)-(59,17)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (59,16)-(59,17) = "b" - │ │ └── operator_loc: (59,15)-(59,16) = "&" - │ ├── body: ∅ - │ ├── locals: [:o, :r, :b] - │ ├── def_keyword_loc: (59,0)-(59,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (59,19)-(59,22) = "end" - ├── @ DefNode (location: (61,0)-(61,25)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (61,4)-(61,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (61,6)-(61,20)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (61,6)-(61,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :o - │ │ │ ├── name_loc: (61,6)-(61,7) = "o" - │ │ │ ├── operator_loc: (61,7)-(61,8) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (61,8)-(61,9)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── rest: - │ │ │ @ RestParameterNode (location: (61,11)-(61,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :r - │ │ │ ├── name_loc: (61,12)-(61,13) = "r" - │ │ │ └── operator_loc: (61,11)-(61,12) = "*" - │ │ ├── posts: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (61,15)-(61,16)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :p - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: - │ │ @ BlockParameterNode (location: (61,18)-(61,20)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── name_loc: (61,19)-(61,20) = "b" - │ │ └── operator_loc: (61,18)-(61,19) = "&" - │ ├── body: ∅ - │ ├── locals: [:o, :r, :p, :b] - │ ├── def_keyword_loc: (61,0)-(61,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (61,22)-(61,25) = "end" - └── @ DefNode (location: (63,0)-(63,21)) - ├── flags: newline - ├── name: :f - ├── name_loc: (63,4)-(63,5) = "f" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (63,6)-(63,16)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 1) - │ │ └── @ OptionalParameterNode (location: (63,6)-(63,9)) - │ │ ├── flags: ∅ - │ │ ├── name: :o - │ │ ├── name_loc: (63,6)-(63,7) = "o" - │ │ ├── operator_loc: (63,7)-(63,8) = "=" - │ │ └── value: - │ │ @ IntegerNode (location: (63,8)-(63,9)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── rest: ∅ - │ ├── posts: (length: 1) - │ │ └── @ RequiredParameterNode (location: (63,11)-(63,12)) - │ │ ├── flags: ∅ - │ │ └── name: :p - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: - │ @ BlockParameterNode (location: (63,14)-(63,16)) - │ ├── flags: ∅ - │ ├── name: :b - │ ├── name_loc: (63,15)-(63,16) = "b" - │ └── operator_loc: (63,14)-(63,15) = "&" - ├── body: ∅ - ├── locals: [:o, :p, :b] - ├── def_keyword_loc: (63,0)-(63,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (63,18)-(63,21) = "end" diff --git a/test/prism/snapshots/whitequark/args_args_assocs.txt b/test/prism/snapshots/whitequark/args_args_assocs.txt deleted file mode 100644 index bc9615273e..0000000000 --- a/test/prism/snapshots/whitequark/args_args_assocs.txt +++ /dev/null @@ -1,101 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,24)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,24)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,19)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :fun - │ ├── message_loc: (1,0)-(1,3) = "fun" - │ ├── opening_loc: (1,3)-(1,4) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,4)-(1,18)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (1,4)-(1,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (1,4)-(1,7) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ KeywordHashNode (location: (1,9)-(1,18)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (1,9)-(1,18)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (1,9)-(1,13)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (1,9)-(1,10) = ":" - │ │ │ ├── value_loc: (1,10)-(1,13) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (1,17)-(1,18)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── operator_loc: (1,14)-(1,16) = "=>" - │ ├── closing_loc: (1,18)-(1,19) = ")" - │ └── block: ∅ - └── @ CallNode (location: (3,0)-(3,24)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :fun - ├── message_loc: (3,0)-(3,3) = "fun" - ├── opening_loc: (3,3)-(3,4) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (3,4)-(3,18)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 2) - │ ├── @ CallNode (location: (3,4)-(3,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (3,4)-(3,7) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── @ KeywordHashNode (location: (3,9)-(3,18)) - │ ├── flags: symbol_keys - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (3,9)-(3,18)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ SymbolNode (location: (3,9)-(3,13)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (3,9)-(3,10) = ":" - │ │ ├── value_loc: (3,10)-(3,13) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ ├── value: - │ │ @ IntegerNode (location: (3,17)-(3,18)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (3,14)-(3,16) = "=>" - ├── closing_loc: (3,24)-(3,25) = ")" - └── block: - @ BlockArgumentNode (location: (3,20)-(3,24)) - ├── flags: ∅ - ├── expression: - │ @ CallNode (location: (3,21)-(3,24)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :baz - │ ├── message_loc: (3,21)-(3,24) = "baz" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── operator_loc: (3,20)-(3,21) = "&" diff --git a/test/prism/snapshots/whitequark/args_args_assocs_comma.txt b/test/prism/snapshots/whitequark/args_args_assocs_comma.txt deleted file mode 100644 index cb98bdd1a0..0000000000 --- a/test/prism/snapshots/whitequark/args_args_assocs_comma.txt +++ /dev/null @@ -1,57 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,20)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,20)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,20)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,0)-(1,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :[] - ├── message_loc: (1,3)-(1,20) = "[bar, :baz => 1,]" - ├── opening_loc: (1,3)-(1,4) = "[" - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,18)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 2) - │ ├── @ CallNode (location: (1,4)-(1,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,4)-(1,7) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── @ KeywordHashNode (location: (1,9)-(1,18)) - │ ├── flags: symbol_keys - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (1,9)-(1,18)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ SymbolNode (location: (1,9)-(1,13)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,9)-(1,10) = ":" - │ │ ├── value_loc: (1,10)-(1,13) = "baz" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "baz" - │ ├── value: - │ │ @ IntegerNode (location: (1,17)-(1,18)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (1,14)-(1,16) = "=>" - ├── closing_loc: (1,19)-(1,20) = "]" - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/args_args_comma.txt b/test/prism/snapshots/whitequark/args_args_comma.txt deleted file mode 100644 index 1452565827..0000000000 --- a/test/prism/snapshots/whitequark/args_args_comma.txt +++ /dev/null @@ -1,40 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,9)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,0)-(1,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :[] - ├── message_loc: (1,3)-(1,9) = "[bar,]" - ├── opening_loc: (1,3)-(1,4) = "[" - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,7)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (1,4)-(1,7)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (1,4)-(1,7) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: (1,8)-(1,9) = "]" - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/args_args_star.txt b/test/prism/snapshots/whitequark/args_args_star.txt deleted file mode 100644 index 32f8b6bafb..0000000000 --- a/test/prism/snapshots/whitequark/args_args_star.txt +++ /dev/null @@ -1,95 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,19)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,19)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,14)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :fun - │ ├── message_loc: (1,0)-(1,3) = "fun" - │ ├── opening_loc: (1,3)-(1,4) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,4)-(1,13)) - │ │ ├── flags: contains_splat - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (1,4)-(1,7)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (1,4)-(1,7) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ SplatNode (location: (1,9)-(1,13)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (1,9)-(1,10) = "*" - │ │ └── expression: - │ │ @ CallNode (location: (1,10)-(1,13)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,10)-(1,13) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (1,13)-(1,14) = ")" - │ └── block: ∅ - └── @ CallNode (location: (3,0)-(3,19)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :fun - ├── message_loc: (3,0)-(3,3) = "fun" - ├── opening_loc: (3,3)-(3,4) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (3,4)-(3,13)) - │ ├── flags: contains_splat - │ └── arguments: (length: 2) - │ ├── @ CallNode (location: (3,4)-(3,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (3,4)-(3,7) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── @ SplatNode (location: (3,9)-(3,13)) - │ ├── flags: ∅ - │ ├── operator_loc: (3,9)-(3,10) = "*" - │ └── expression: - │ @ CallNode (location: (3,10)-(3,13)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (3,10)-(3,13) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: (3,19)-(3,20) = ")" - └── block: - @ BlockArgumentNode (location: (3,15)-(3,19)) - ├── flags: ∅ - ├── expression: - │ @ CallNode (location: (3,16)-(3,19)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :baz - │ ├── message_loc: (3,16)-(3,19) = "baz" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── operator_loc: (3,15)-(3,16) = "&" diff --git a/test/prism/snapshots/whitequark/args_assocs_comma.txt b/test/prism/snapshots/whitequark/args_assocs_comma.txt deleted file mode 100644 index 2d00798a37..0000000000 --- a/test/prism/snapshots/whitequark/args_assocs_comma.txt +++ /dev/null @@ -1,47 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,15)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,15)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,0)-(1,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :[] - ├── message_loc: (1,3)-(1,15) = "[:baz => 1,]" - ├── opening_loc: (1,3)-(1,4) = "[" - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,13)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 1) - │ └── @ KeywordHashNode (location: (1,4)-(1,13)) - │ ├── flags: symbol_keys - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (1,4)-(1,13)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ SymbolNode (location: (1,4)-(1,8)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,4)-(1,5) = ":" - │ │ ├── value_loc: (1,5)-(1,8) = "baz" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "baz" - │ ├── value: - │ │ @ IntegerNode (location: (1,12)-(1,13)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (1,9)-(1,11) = "=>" - ├── closing_loc: (1,14)-(1,15) = "]" - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/args_block_pass.txt b/test/prism/snapshots/whitequark/args_block_pass.txt deleted file mode 100644 index 495d8efd4f..0000000000 --- a/test/prism/snapshots/whitequark/args_block_pass.txt +++ /dev/null @@ -1,31 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,8)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :fun - ├── message_loc: (1,0)-(1,3) = "fun" - ├── opening_loc: (1,3)-(1,4) = "(" - ├── arguments: ∅ - ├── closing_loc: (1,8)-(1,9) = ")" - └── block: - @ BlockArgumentNode (location: (1,4)-(1,8)) - ├── flags: ∅ - ├── expression: - │ @ CallNode (location: (1,5)-(1,8)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (1,5)-(1,8) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── operator_loc: (1,4)-(1,5) = "&" diff --git a/test/prism/snapshots/whitequark/args_cmd.txt b/test/prism/snapshots/whitequark/args_cmd.txt deleted file mode 100644 index 1cfdf1bb10..0000000000 --- a/test/prism/snapshots/whitequark/args_cmd.txt +++ /dev/null @@ -1,43 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,10)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :fun - ├── message_loc: (1,0)-(1,3) = "fun" - ├── opening_loc: (1,3)-(1,4) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,9)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (1,4)-(1,9)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (1,4)-(1,5) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,6)-(1,9)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (1,6)-(1,9)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,6)-(1,9) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: (1,9)-(1,10) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/args_star.txt b/test/prism/snapshots/whitequark/args_star.txt deleted file mode 100644 index 488b113dff..0000000000 --- a/test/prism/snapshots/whitequark/args_star.txt +++ /dev/null @@ -1,75 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,14)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,9)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :fun - │ ├── message_loc: (1,0)-(1,3) = "fun" - │ ├── opening_loc: (1,3)-(1,4) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,4)-(1,8)) - │ │ ├── flags: contains_splat - │ │ └── arguments: (length: 1) - │ │ └── @ SplatNode (location: (1,4)-(1,8)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (1,4)-(1,5) = "*" - │ │ └── expression: - │ │ @ CallNode (location: (1,5)-(1,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,5)-(1,8) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (1,8)-(1,9) = ")" - │ └── block: ∅ - └── @ CallNode (location: (3,0)-(3,14)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :fun - ├── message_loc: (3,0)-(3,3) = "fun" - ├── opening_loc: (3,3)-(3,4) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (3,4)-(3,8)) - │ ├── flags: contains_splat - │ └── arguments: (length: 1) - │ └── @ SplatNode (location: (3,4)-(3,8)) - │ ├── flags: ∅ - │ ├── operator_loc: (3,4)-(3,5) = "*" - │ └── expression: - │ @ CallNode (location: (3,5)-(3,8)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (3,5)-(3,8) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: (3,14)-(3,15) = ")" - └── block: - @ BlockArgumentNode (location: (3,10)-(3,14)) - ├── flags: ∅ - ├── expression: - │ @ CallNode (location: (3,11)-(3,14)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :baz - │ ├── message_loc: (3,11)-(3,14) = "baz" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── operator_loc: (3,10)-(3,11) = "&" diff --git a/test/prism/snapshots/whitequark/array_assocs.txt b/test/prism/snapshots/whitequark/array_assocs.txt deleted file mode 100644 index 30a41a8c51..0000000000 --- a/test/prism/snapshots/whitequark/array_assocs.txt +++ /dev/null @@ -1,48 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,13)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ ArrayNode (location: (1,0)-(1,10)) - │ ├── flags: newline - │ ├── elements: (length: 1) - │ │ └── @ KeywordHashNode (location: (1,2)-(1,8)) - │ │ ├── flags: ∅ - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (1,2)-(1,8)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ IntegerNode (location: (1,2)-(1,3)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── value: - │ │ │ @ IntegerNode (location: (1,7)-(1,8)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── operator_loc: (1,4)-(1,6) = "=>" - │ ├── opening_loc: (1,0)-(1,1) = "[" - │ └── closing_loc: (1,9)-(1,10) = "]" - └── @ ArrayNode (location: (3,0)-(3,13)) - ├── flags: newline - ├── elements: (length: 2) - │ ├── @ IntegerNode (location: (3,2)-(3,3)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── @ KeywordHashNode (location: (3,5)-(3,11)) - │ ├── flags: ∅ - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (3,5)-(3,11)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ IntegerNode (location: (3,5)-(3,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── value: - │ │ @ IntegerNode (location: (3,10)-(3,11)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 3 - │ └── operator_loc: (3,7)-(3,9) = "=>" - ├── opening_loc: (3,0)-(3,1) = "[" - └── closing_loc: (3,12)-(3,13) = "]" diff --git a/test/prism/snapshots/whitequark/array_plain.txt b/test/prism/snapshots/whitequark/array_plain.txt deleted file mode 100644 index 3e0966fe8f..0000000000 --- a/test/prism/snapshots/whitequark/array_plain.txt +++ /dev/null @@ -1,18 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ArrayNode (location: (1,0)-(1,6)) - ├── flags: newline, static_literal - ├── elements: (length: 2) - │ ├── @ IntegerNode (location: (1,1)-(1,2)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── @ IntegerNode (location: (1,4)-(1,5)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── opening_loc: (1,0)-(1,1) = "[" - └── closing_loc: (1,5)-(1,6) = "]" diff --git a/test/prism/snapshots/whitequark/array_splat.txt b/test/prism/snapshots/whitequark/array_splat.txt deleted file mode 100644 index bfd74572ca..0000000000 --- a/test/prism/snapshots/whitequark/array_splat.txt +++ /dev/null @@ -1,73 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,9)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ ArrayNode (location: (1,0)-(1,6)) - │ ├── flags: newline, contains_splat - │ ├── elements: (length: 1) - │ │ └── @ SplatNode (location: (1,1)-(1,5)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (1,1)-(1,2) = "*" - │ │ └── expression: - │ │ @ CallNode (location: (1,2)-(1,5)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,2)-(1,5) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (1,0)-(1,1) = "[" - │ └── closing_loc: (1,5)-(1,6) = "]" - ├── @ ArrayNode (location: (3,0)-(3,12)) - │ ├── flags: newline, contains_splat - │ ├── elements: (length: 3) - │ │ ├── @ IntegerNode (location: (3,1)-(3,2)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── @ SplatNode (location: (3,4)-(3,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (3,4)-(3,5) = "*" - │ │ │ └── expression: - │ │ │ @ CallNode (location: (3,5)-(3,8)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (3,5)-(3,8) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ IntegerNode (location: (3,10)-(3,11)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── opening_loc: (3,0)-(3,1) = "[" - │ └── closing_loc: (3,11)-(3,12) = "]" - └── @ ArrayNode (location: (5,0)-(5,9)) - ├── flags: newline, contains_splat - ├── elements: (length: 2) - │ ├── @ IntegerNode (location: (5,1)-(5,2)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── @ SplatNode (location: (5,4)-(5,8)) - │ ├── flags: ∅ - │ ├── operator_loc: (5,4)-(5,5) = "*" - │ └── expression: - │ @ CallNode (location: (5,5)-(5,8)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (5,5)-(5,8) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── opening_loc: (5,0)-(5,1) = "[" - └── closing_loc: (5,8)-(5,9) = "]" diff --git a/test/prism/snapshots/whitequark/array_symbols.txt b/test/prism/snapshots/whitequark/array_symbols.txt deleted file mode 100644 index 75e342637c..0000000000 --- a/test/prism/snapshots/whitequark/array_symbols.txt +++ /dev/null @@ -1,24 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ArrayNode (location: (1,0)-(1,11)) - ├── flags: newline, static_literal - ├── elements: (length: 2) - │ ├── @ SymbolNode (location: (1,3)-(1,6)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (1,3)-(1,6) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ └── @ SymbolNode (location: (1,7)-(1,10)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: ∅ - │ ├── value_loc: (1,7)-(1,10) = "bar" - │ ├── closing_loc: ∅ - │ └── unescaped: "bar" - ├── opening_loc: (1,0)-(1,3) = "%i[" - └── closing_loc: (1,10)-(1,11) = "]" diff --git a/test/prism/snapshots/whitequark/array_symbols_empty.txt b/test/prism/snapshots/whitequark/array_symbols_empty.txt deleted file mode 100644 index b2d7eda20f..0000000000 --- a/test/prism/snapshots/whitequark/array_symbols_empty.txt +++ /dev/null @@ -1,17 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,4)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ ArrayNode (location: (1,0)-(1,4)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 0) - │ ├── opening_loc: (1,0)-(1,3) = "%I(" - │ └── closing_loc: (1,3)-(1,4) = ")" - └── @ ArrayNode (location: (3,0)-(3,4)) - ├── flags: newline, static_literal - ├── elements: (length: 0) - ├── opening_loc: (3,0)-(3,3) = "%i[" - └── closing_loc: (3,3)-(3,4) = "]" diff --git a/test/prism/snapshots/whitequark/array_symbols_interp.txt b/test/prism/snapshots/whitequark/array_symbols_interp.txt deleted file mode 100644 index f250ef041f..0000000000 --- a/test/prism/snapshots/whitequark/array_symbols_interp.txt +++ /dev/null @@ -1,75 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,13)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ ArrayNode (location: (1,0)-(1,14)) - │ ├── flags: newline - │ ├── elements: (length: 2) - │ │ ├── @ SymbolNode (location: (1,3)-(1,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (1,3)-(1,6) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ └── @ InterpolatedSymbolNode (location: (1,7)-(1,13)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── parts: (length: 1) - │ │ │ └── @ EmbeddedStatementsNode (location: (1,7)-(1,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (1,7)-(1,9) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (1,9)-(1,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (1,9)-(1,12)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (1,9)-(1,12) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── closing_loc: (1,12)-(1,13) = "}" - │ │ └── closing_loc: ∅ - │ ├── opening_loc: (1,0)-(1,3) = "%I[" - │ └── closing_loc: (1,13)-(1,14) = "]" - └── @ ArrayNode (location: (3,0)-(3,13)) - ├── flags: newline - ├── elements: (length: 1) - │ └── @ InterpolatedSymbolNode (location: (3,3)-(3,12)) - │ ├── flags: ∅ - │ ├── opening_loc: ∅ - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (3,3)-(3,6)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (3,3)-(3,6) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ └── @ EmbeddedStatementsNode (location: (3,6)-(3,12)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (3,6)-(3,8) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (3,8)-(3,11)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (3,8)-(3,11)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (3,8)-(3,11) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── closing_loc: (3,11)-(3,12) = "}" - │ └── closing_loc: ∅ - ├── opening_loc: (3,0)-(3,3) = "%I[" - └── closing_loc: (3,12)-(3,13) = "]" diff --git a/test/prism/snapshots/whitequark/array_words.txt b/test/prism/snapshots/whitequark/array_words.txt deleted file mode 100644 index c6594b3218..0000000000 --- a/test/prism/snapshots/whitequark/array_words.txt +++ /dev/null @@ -1,24 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ArrayNode (location: (1,0)-(1,11)) - ├── flags: newline - ├── elements: (length: 2) - │ ├── @ StringNode (location: (1,3)-(1,6)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (1,3)-(1,6) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ └── @ StringNode (location: (1,7)-(1,10)) - │ ├── flags: ∅ - │ ├── opening_loc: ∅ - │ ├── content_loc: (1,7)-(1,10) = "bar" - │ ├── closing_loc: ∅ - │ └── unescaped: "bar" - ├── opening_loc: (1,0)-(1,3) = "%w[" - └── closing_loc: (1,10)-(1,11) = "]" diff --git a/test/prism/snapshots/whitequark/array_words_empty.txt b/test/prism/snapshots/whitequark/array_words_empty.txt deleted file mode 100644 index 5bab3f49ef..0000000000 --- a/test/prism/snapshots/whitequark/array_words_empty.txt +++ /dev/null @@ -1,17 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,4)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ ArrayNode (location: (1,0)-(1,4)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 0) - │ ├── opening_loc: (1,0)-(1,3) = "%W(" - │ └── closing_loc: (1,3)-(1,4) = ")" - └── @ ArrayNode (location: (3,0)-(3,4)) - ├── flags: newline, static_literal - ├── elements: (length: 0) - ├── opening_loc: (3,0)-(3,3) = "%w[" - └── closing_loc: (3,3)-(3,4) = "]" diff --git a/test/prism/snapshots/whitequark/array_words_interp.txt b/test/prism/snapshots/whitequark/array_words_interp.txt deleted file mode 100644 index dd104a1921..0000000000 --- a/test/prism/snapshots/whitequark/array_words_interp.txt +++ /dev/null @@ -1,88 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,22)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,22)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ ArrayNode (location: (1,0)-(1,14)) - │ ├── flags: newline - │ ├── elements: (length: 2) - │ │ ├── @ StringNode (location: (1,3)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (1,3)-(1,6) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ └── @ InterpolatedStringNode (location: (1,7)-(1,13)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── parts: (length: 1) - │ │ │ └── @ EmbeddedStatementsNode (location: (1,7)-(1,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (1,7)-(1,9) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (1,9)-(1,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (1,9)-(1,12)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (1,9)-(1,12) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── closing_loc: (1,12)-(1,13) = "}" - │ │ └── closing_loc: ∅ - │ ├── opening_loc: (1,0)-(1,3) = "%W[" - │ └── closing_loc: (1,13)-(1,14) = "]" - └── @ ArrayNode (location: (3,0)-(3,22)) - ├── flags: newline - ├── elements: (length: 2) - │ ├── @ StringNode (location: (3,3)-(3,6)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (3,3)-(3,6) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ └── @ InterpolatedStringNode (location: (3,7)-(3,21)) - │ ├── flags: ∅ - │ ├── opening_loc: ∅ - │ ├── parts: (length: 3) - │ │ ├── @ EmbeddedStatementsNode (location: (3,7)-(3,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (3,7)-(3,9) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (3,9)-(3,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (3,9)-(3,12)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (3,9)-(3,12) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── closing_loc: (3,12)-(3,13) = "}" - │ │ ├── @ StringNode (location: (3,13)-(3,16)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (3,13)-(3,16) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ └── @ EmbeddedVariableNode (location: (3,16)-(3,21)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (3,16)-(3,17) = "#" - │ │ └── variable: - │ │ @ InstanceVariableReadNode (location: (3,17)-(3,21)) - │ │ ├── flags: ∅ - │ │ └── name: :@baz - │ └── closing_loc: ∅ - ├── opening_loc: (3,0)-(3,3) = "%W[" - └── closing_loc: (3,21)-(3,22) = "]" diff --git a/test/prism/snapshots/whitequark/asgn_cmd.txt b/test/prism/snapshots/whitequark/asgn_cmd.txt deleted file mode 100644 index c212864ded..0000000000 --- a/test/prism/snapshots/whitequark/asgn_cmd.txt +++ /dev/null @@ -1,62 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,11)) -├── flags: ∅ -├── locals: [:foo, :bar] -└── statements: - @ StatementsNode (location: (1,0)-(3,11)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ LocalVariableWriteNode (location: (1,0)-(1,17)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── depth: 0 - │ ├── name_loc: (1,0)-(1,3) = "foo" - │ ├── value: - │ │ @ LocalVariableWriteNode (location: (1,6)-(1,17)) - │ │ ├── flags: ∅ - │ │ ├── name: :bar - │ │ ├── depth: 0 - │ │ ├── name_loc: (1,6)-(1,9) = "bar" - │ │ ├── value: - │ │ │ @ CallNode (location: (1,12)-(1,17)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :m - │ │ │ ├── message_loc: (1,12)-(1,13) = "m" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (1,14)-(1,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ LocalVariableReadNode (location: (1,14)-(1,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :foo - │ │ │ │ └── depth: 0 - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (1,10)-(1,11) = "=" - │ └── operator_loc: (1,4)-(1,5) = "=" - └── @ LocalVariableWriteNode (location: (3,0)-(3,11)) - ├── flags: newline - ├── name: :foo - ├── depth: 0 - ├── name_loc: (3,0)-(3,3) = "foo" - ├── value: - │ @ CallNode (location: (3,6)-(3,11)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (3,6)-(3,7) = "m" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (3,8)-(3,11)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (3,8)-(3,11)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── operator_loc: (3,4)-(3,5) = "=" diff --git a/test/prism/snapshots/whitequark/asgn_mrhs.txt b/test/prism/snapshots/whitequark/asgn_mrhs.txt deleted file mode 100644 index 972eaf7fa5..0000000000 --- a/test/prism/snapshots/whitequark/asgn_mrhs.txt +++ /dev/null @@ -1,94 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,15)) -├── flags: ∅ -├── locals: [:foo] -└── statements: - @ StatementsNode (location: (1,0)-(5,15)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ LocalVariableWriteNode (location: (1,0)-(1,10)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── depth: 0 - │ ├── name_loc: (1,0)-(1,3) = "foo" - │ ├── value: - │ │ @ ArrayNode (location: (1,6)-(1,10)) - │ │ ├── flags: contains_splat - │ │ ├── elements: (length: 1) - │ │ │ └── @ SplatNode (location: (1,6)-(1,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (1,6)-(1,7) = "*" - │ │ │ └── expression: - │ │ │ @ CallNode (location: (1,7)-(1,10)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (1,7)-(1,10) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (1,4)-(1,5) = "=" - ├── @ LocalVariableWriteNode (location: (3,0)-(3,12)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── depth: 0 - │ ├── name_loc: (3,0)-(3,3) = "foo" - │ ├── value: - │ │ @ ArrayNode (location: (3,6)-(3,12)) - │ │ ├── flags: ∅ - │ │ ├── elements: (length: 2) - │ │ │ ├── @ CallNode (location: (3,6)-(3,9)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (3,6)-(3,9) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── @ IntegerNode (location: (3,11)-(3,12)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (3,4)-(3,5) = "=" - └── @ LocalVariableWriteNode (location: (5,0)-(5,15)) - ├── flags: newline - ├── name: :foo - ├── depth: 0 - ├── name_loc: (5,0)-(5,3) = "foo" - ├── value: - │ @ ArrayNode (location: (5,6)-(5,15)) - │ ├── flags: contains_splat - │ ├── elements: (length: 2) - │ │ ├── @ CallNode (location: (5,6)-(5,9)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (5,6)-(5,9) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ SplatNode (location: (5,11)-(5,15)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (5,11)-(5,12) = "*" - │ │ └── expression: - │ │ @ CallNode (location: (5,12)-(5,15)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (5,12)-(5,15) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: ∅ - │ └── closing_loc: ∅ - └── operator_loc: (5,4)-(5,5) = "=" diff --git a/test/prism/snapshots/whitequark/back_ref.txt b/test/prism/snapshots/whitequark/back_ref.txt deleted file mode 100644 index 240285bd8d..0000000000 --- a/test/prism/snapshots/whitequark/back_ref.txt +++ /dev/null @@ -1,10 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,2)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,2)) - ├── flags: ∅ - └── body: (length: 1) - └── @ BackReferenceReadNode (location: (1,0)-(1,2)) - ├── flags: newline - └── name: :$+ diff --git a/test/prism/snapshots/whitequark/bang.txt b/test/prism/snapshots/whitequark/bang.txt deleted file mode 100644 index 165a5d3149..0000000000 --- a/test/prism/snapshots/whitequark/bang.txt +++ /dev/null @@ -1,27 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,4)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,1)-(1,4)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,1)-(1,4) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :! - ├── message_loc: (1,0)-(1,1) = "!" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/bang_cmd.txt b/test/prism/snapshots/whitequark/bang_cmd.txt deleted file mode 100644 index d4487ad6ca..0000000000 --- a/test/prism/snapshots/whitequark/bang_cmd.txt +++ /dev/null @@ -1,40 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,6)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,1)-(1,6)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (1,1)-(1,2) = "m" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,3)-(1,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (1,3)-(1,6)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,3)-(1,6) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :! - ├── message_loc: (1,0)-(1,1) = "!" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/begin_cmdarg.txt b/test/prism/snapshots/whitequark/begin_cmdarg.txt deleted file mode 100644 index 8287191fab..0000000000 --- a/test/prism/snapshots/whitequark/begin_cmdarg.txt +++ /dev/null @@ -1,57 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,28)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,28)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,28)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :p - ├── message_loc: (1,0)-(1,1) = "p" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,28)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ BeginNode (location: (1,2)-(1,28)) - │ ├── flags: ∅ - │ ├── begin_keyword_loc: (1,2)-(1,7) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (1,8)-(1,24)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,8)-(1,24)) - │ │ ├── flags: newline - │ │ ├── receiver: - │ │ │ @ IntegerNode (location: (1,8)-(1,9)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── call_operator_loc: (1,9)-(1,10) = "." - │ │ ├── name: :times - │ │ ├── message_loc: (1,10)-(1,15) = "times" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (1,16)-(1,24)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (1,19)-(1,20)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ IntegerNode (location: (1,19)-(1,20)) - │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── opening_loc: (1,16)-(1,18) = "do" - │ │ └── closing_loc: (1,21)-(1,24) = "end" - │ ├── rescue_clause: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (1,25)-(1,28) = "end" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/beginless_erange_after_newline.txt b/test/prism/snapshots/whitequark/beginless_erange_after_newline.txt deleted file mode 100644 index fe05701982..0000000000 --- a/test/prism/snapshots/whitequark/beginless_erange_after_newline.txt +++ /dev/null @@ -1,25 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,6)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,3)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,0)-(1,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ RangeNode (location: (2,0)-(2,6)) - ├── flags: newline, static_literal, exclude_end - ├── left: ∅ - ├── right: - │ @ IntegerNode (location: (2,3)-(2,6)) - │ ├── flags: static_literal, decimal - │ └── value: 100 - └── operator_loc: (2,0)-(2,3) = "..." diff --git a/test/prism/snapshots/whitequark/beginless_irange_after_newline.txt b/test/prism/snapshots/whitequark/beginless_irange_after_newline.txt deleted file mode 100644 index ae5c09808a..0000000000 --- a/test/prism/snapshots/whitequark/beginless_irange_after_newline.txt +++ /dev/null @@ -1,25 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,5)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,3)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,0)-(1,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ RangeNode (location: (2,0)-(2,5)) - ├── flags: newline, static_literal - ├── left: ∅ - ├── right: - │ @ IntegerNode (location: (2,2)-(2,5)) - │ ├── flags: static_literal, decimal - │ └── value: 100 - └── operator_loc: (2,0)-(2,2) = ".." diff --git a/test/prism/snapshots/whitequark/beginless_range.txt b/test/prism/snapshots/whitequark/beginless_range.txt deleted file mode 100644 index 897429e33b..0000000000 --- a/test/prism/snapshots/whitequark/beginless_range.txt +++ /dev/null @@ -1,23 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,5)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ RangeNode (location: (1,0)-(1,6)) - │ ├── flags: newline, static_literal, exclude_end - │ ├── left: ∅ - │ ├── right: - │ │ @ IntegerNode (location: (1,3)-(1,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 100 - │ └── operator_loc: (1,0)-(1,3) = "..." - └── @ RangeNode (location: (3,0)-(3,5)) - ├── flags: newline, static_literal - ├── left: ∅ - ├── right: - │ @ IntegerNode (location: (3,2)-(3,5)) - │ ├── flags: static_literal, decimal - │ └── value: 100 - └── operator_loc: (3,0)-(3,2) = ".." diff --git a/test/prism/snapshots/whitequark/blockarg.txt b/test/prism/snapshots/whitequark/blockarg.txt deleted file mode 100644 index d57d61b603..0000000000 --- a/test/prism/snapshots/whitequark/blockarg.txt +++ /dev/null @@ -1,35 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,18)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,18)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,18)) - ├── flags: newline - ├── name: :f - ├── name_loc: (1,4)-(1,5) = "f" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,12)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: - │ @ BlockParameterNode (location: (1,6)-(1,12)) - │ ├── flags: ∅ - │ ├── name: :block - │ ├── name_loc: (1,7)-(1,12) = "block" - │ └── operator_loc: (1,6)-(1,7) = "&" - ├── body: ∅ - ├── locals: [:block] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,5)-(1,6) = "(" - ├── rparen_loc: (1,12)-(1,13) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,15)-(1,18) = "end" diff --git a/test/prism/snapshots/whitequark/blockargs.txt b/test/prism/snapshots/whitequark/blockargs.txt deleted file mode 100644 index 53ef39ac0f..0000000000 --- a/test/prism/snapshots/whitequark/blockargs.txt +++ /dev/null @@ -1,1442 +0,0 @@ -@ ProgramNode (location: (1,0)-(71,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(71,7)) - ├── flags: ∅ - └── body: (length: 35) - ├── @ CallNode (location: (1,0)-(1,5)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (1,0)-(1,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (1,1)-(1,5)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (1,1)-(1,2) = "{" - │ └── closing_loc: (1,4)-(1,5) = "}" - ├── @ CallNode (location: (3,0)-(3,8)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (3,0)-(3,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (3,1)-(3,8)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (3,3)-(3,6)) - │ │ ├── flags: ∅ - │ │ ├── parameters: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (3,3)-(3,4) = "|" - │ │ └── closing_loc: (3,5)-(3,6) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (3,1)-(3,2) = "{" - │ └── closing_loc: (3,7)-(3,8) = "}" - ├── @ CallNode (location: (5,0)-(5,9)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (5,0)-(5,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (5,1)-(5,9)) - │ ├── flags: ∅ - │ ├── locals: [:b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (5,3)-(5,7)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (5,4)-(5,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: - │ │ │ @ BlockParameterNode (location: (5,4)-(5,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (5,5)-(5,6) = "b" - │ │ │ └── operator_loc: (5,4)-(5,5) = "&" - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (5,3)-(5,4) = "|" - │ │ └── closing_loc: (5,6)-(5,7) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (5,1)-(5,2) = "{" - │ └── closing_loc: (5,8)-(5,9) = "}" - ├── @ CallNode (location: (7,0)-(7,16)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (7,0)-(7,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (7,1)-(7,16)) - │ ├── flags: ∅ - │ ├── locals: [:baz, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (7,3)-(7,14)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (7,4)-(7,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: - │ │ │ │ @ KeywordRestParameterNode (location: (7,4)-(7,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ ├── name_loc: (7,6)-(7,9) = "baz" - │ │ │ │ └── operator_loc: (7,4)-(7,6) = "**" - │ │ │ └── block: - │ │ │ @ BlockParameterNode (location: (7,11)-(7,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (7,12)-(7,13) = "b" - │ │ │ └── operator_loc: (7,11)-(7,12) = "&" - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (7,3)-(7,4) = "|" - │ │ └── closing_loc: (7,13)-(7,14) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (7,1)-(7,2) = "{" - │ └── closing_loc: (7,15)-(7,16) = "}" - ├── @ CallNode (location: (9,0)-(9,12)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (9,0)-(9,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (9,1)-(9,12)) - │ ├── flags: ∅ - │ ├── locals: [:b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (9,3)-(9,10)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (9,4)-(9,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ RestParameterNode (location: (9,4)-(9,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: ∅ - │ │ │ │ ├── name_loc: ∅ - │ │ │ │ └── operator_loc: (9,4)-(9,5) = "*" - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: - │ │ │ @ BlockParameterNode (location: (9,7)-(9,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (9,8)-(9,9) = "b" - │ │ │ └── operator_loc: (9,7)-(9,8) = "&" - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (9,3)-(9,4) = "|" - │ │ └── closing_loc: (9,9)-(9,10) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (9,1)-(9,2) = "{" - │ └── closing_loc: (9,11)-(9,12) = "}" - ├── @ CallNode (location: (11,0)-(11,16)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (11,0)-(11,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (11,1)-(11,16)) - │ ├── flags: ∅ - │ ├── locals: [:r, :p, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (11,3)-(11,14)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (11,4)-(11,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ RestParameterNode (location: (11,4)-(11,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :r - │ │ │ │ ├── name_loc: (11,5)-(11,6) = "r" - │ │ │ │ └── operator_loc: (11,4)-(11,5) = "*" - │ │ │ ├── posts: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (11,8)-(11,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :p - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: - │ │ │ @ BlockParameterNode (location: (11,11)-(11,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (11,12)-(11,13) = "b" - │ │ │ └── operator_loc: (11,11)-(11,12) = "&" - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (11,3)-(11,4) = "|" - │ │ └── closing_loc: (11,13)-(11,14) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (11,1)-(11,2) = "{" - │ └── closing_loc: (11,15)-(11,16) = "}" - ├── @ CallNode (location: (13,0)-(13,13)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (13,0)-(13,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (13,1)-(13,13)) - │ ├── flags: ∅ - │ ├── locals: [:s, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (13,3)-(13,11)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (13,4)-(13,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ RestParameterNode (location: (13,4)-(13,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :s - │ │ │ │ ├── name_loc: (13,5)-(13,6) = "s" - │ │ │ │ └── operator_loc: (13,4)-(13,5) = "*" - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: - │ │ │ @ BlockParameterNode (location: (13,8)-(13,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (13,9)-(13,10) = "b" - │ │ │ └── operator_loc: (13,8)-(13,9) = "&" - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (13,3)-(13,4) = "|" - │ │ └── closing_loc: (13,10)-(13,11) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (13,1)-(13,2) = "{" - │ └── closing_loc: (13,12)-(13,13) = "}" - ├── @ CallNode (location: (15,0)-(15,9)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (15,0)-(15,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (15,1)-(15,9)) - │ ├── flags: ∅ - │ ├── locals: [:s] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (15,3)-(15,7)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (15,4)-(15,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ RestParameterNode (location: (15,4)-(15,6)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :s - │ │ │ │ ├── name_loc: (15,5)-(15,6) = "s" - │ │ │ │ └── operator_loc: (15,4)-(15,5) = "*" - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (15,3)-(15,4) = "|" - │ │ └── closing_loc: (15,6)-(15,7) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (15,1)-(15,2) = "{" - │ └── closing_loc: (15,8)-(15,9) = "}" - ├── @ CallNode (location: (17,0)-(17,8)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (17,0)-(17,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (17,1)-(17,8)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (17,3)-(17,6)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (17,4)-(17,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ RestParameterNode (location: (17,4)-(17,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: ∅ - │ │ │ │ ├── name_loc: ∅ - │ │ │ │ └── operator_loc: (17,4)-(17,5) = "*" - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (17,3)-(17,4) = "|" - │ │ └── closing_loc: (17,5)-(17,6) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (17,1)-(17,2) = "{" - │ └── closing_loc: (17,7)-(17,8) = "}" - ├── @ CallNode (location: (19,0)-(21,3)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (19,0)-(19,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (19,1)-(21,3)) - │ ├── flags: ∅ - │ ├── locals: [:a] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (19,3)-(21,1)) - │ │ ├── flags: ∅ - │ │ ├── parameters: ∅ - │ │ ├── locals: (length: 1) - │ │ │ └── @ BlockLocalVariableNode (location: (20,0)-(20,1)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── opening_loc: (19,3)-(19,4) = "|" - │ │ └── closing_loc: (21,0)-(21,1) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (19,1)-(19,2) = "{" - │ └── closing_loc: (21,2)-(21,3) = "}" - ├── @ CallNode (location: (23,0)-(23,9)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (23,0)-(23,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (23,1)-(23,9)) - │ ├── flags: ∅ - │ ├── locals: [:a] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (23,3)-(23,7)) - │ │ ├── flags: ∅ - │ │ ├── parameters: ∅ - │ │ ├── locals: (length: 1) - │ │ │ └── @ BlockLocalVariableNode (location: (23,5)-(23,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── opening_loc: (23,3)-(23,4) = "|" - │ │ └── closing_loc: (23,6)-(23,7) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (23,1)-(23,2) = "{" - │ └── closing_loc: (23,8)-(23,9) = "}" - ├── @ CallNode (location: (25,0)-(25,12)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (25,0)-(25,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (25,1)-(25,12)) - │ ├── flags: ∅ - │ ├── locals: [:a, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (25,3)-(25,10)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (25,4)-(25,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (25,4)-(25,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: - │ │ │ @ BlockParameterNode (location: (25,7)-(25,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (25,8)-(25,9) = "b" - │ │ │ └── operator_loc: (25,7)-(25,8) = "&" - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (25,3)-(25,4) = "|" - │ │ └── closing_loc: (25,9)-(25,10) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (25,1)-(25,2) = "{" - │ └── closing_loc: (25,11)-(25,12) = "}" - ├── @ CallNode (location: (27,0)-(27,15)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (27,0)-(27,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (27,1)-(27,15)) - │ ├── flags: ∅ - │ ├── locals: [:a, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (27,3)-(27,13)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (27,4)-(27,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (27,4)-(27,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ RestParameterNode (location: (27,7)-(27,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: ∅ - │ │ │ │ ├── name_loc: ∅ - │ │ │ │ └── operator_loc: (27,7)-(27,8) = "*" - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: - │ │ │ @ BlockParameterNode (location: (27,10)-(27,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (27,11)-(27,12) = "b" - │ │ │ └── operator_loc: (27,10)-(27,11) = "&" - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (27,3)-(27,4) = "|" - │ │ └── closing_loc: (27,12)-(27,13) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (27,1)-(27,2) = "{" - │ └── closing_loc: (27,14)-(27,15) = "}" - ├── @ CallNode (location: (29,0)-(29,19)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (29,0)-(29,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (29,1)-(29,19)) - │ ├── flags: ∅ - │ ├── locals: [:a, :r, :p, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (29,3)-(29,17)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (29,4)-(29,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (29,4)-(29,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ RestParameterNode (location: (29,7)-(29,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :r - │ │ │ │ ├── name_loc: (29,8)-(29,9) = "r" - │ │ │ │ └── operator_loc: (29,7)-(29,8) = "*" - │ │ │ ├── posts: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (29,11)-(29,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :p - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: - │ │ │ @ BlockParameterNode (location: (29,14)-(29,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (29,15)-(29,16) = "b" - │ │ │ └── operator_loc: (29,14)-(29,15) = "&" - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (29,3)-(29,4) = "|" - │ │ └── closing_loc: (29,16)-(29,17) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (29,1)-(29,2) = "{" - │ └── closing_loc: (29,18)-(29,19) = "}" - ├── @ CallNode (location: (31,0)-(31,16)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (31,0)-(31,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (31,1)-(31,16)) - │ ├── flags: ∅ - │ ├── locals: [:a, :s, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (31,3)-(31,14)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (31,4)-(31,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (31,4)-(31,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ RestParameterNode (location: (31,7)-(31,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :s - │ │ │ │ ├── name_loc: (31,8)-(31,9) = "s" - │ │ │ │ └── operator_loc: (31,7)-(31,8) = "*" - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: - │ │ │ @ BlockParameterNode (location: (31,11)-(31,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (31,12)-(31,13) = "b" - │ │ │ └── operator_loc: (31,11)-(31,12) = "&" - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (31,3)-(31,4) = "|" - │ │ └── closing_loc: (31,13)-(31,14) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (31,1)-(31,2) = "{" - │ └── closing_loc: (31,15)-(31,16) = "}" - ├── @ CallNode (location: (33,0)-(33,12)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (33,0)-(33,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (33,1)-(33,12)) - │ ├── flags: ∅ - │ ├── locals: [:a, :s] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (33,3)-(33,10)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (33,4)-(33,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (33,4)-(33,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ RestParameterNode (location: (33,7)-(33,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :s - │ │ │ │ ├── name_loc: (33,8)-(33,9) = "s" - │ │ │ │ └── operator_loc: (33,7)-(33,8) = "*" - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (33,3)-(33,4) = "|" - │ │ └── closing_loc: (33,9)-(33,10) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (33,1)-(33,2) = "{" - │ └── closing_loc: (33,11)-(33,12) = "}" - ├── @ CallNode (location: (35,0)-(35,11)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (35,0)-(35,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (35,1)-(35,11)) - │ ├── flags: ∅ - │ ├── locals: [:a] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (35,3)-(35,9)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (35,4)-(35,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (35,4)-(35,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ RestParameterNode (location: (35,7)-(35,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: ∅ - │ │ │ │ ├── name_loc: ∅ - │ │ │ │ └── operator_loc: (35,7)-(35,8) = "*" - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (35,3)-(35,4) = "|" - │ │ └── closing_loc: (35,8)-(35,9) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (35,1)-(35,2) = "{" - │ └── closing_loc: (35,10)-(35,11) = "}" - ├── @ CallNode (location: (37,0)-(37,12)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (37,0)-(37,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (37,1)-(37,12)) - │ ├── flags: ∅ - │ ├── locals: [:a, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (37,3)-(37,10)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (37,4)-(37,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 2) - │ │ │ │ ├── @ RequiredParameterNode (location: (37,4)-(37,5)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :a - │ │ │ │ └── @ RequiredParameterNode (location: (37,7)-(37,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :b - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ ImplicitRestNode (location: (37,8)-(37,9)) - │ │ │ │ └── flags: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (37,3)-(37,4) = "|" - │ │ └── closing_loc: (37,9)-(37,10) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (37,1)-(37,2) = "{" - │ └── closing_loc: (37,11)-(37,12) = "}" - ├── @ CallNode (location: (39,0)-(39,11)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (39,0)-(39,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (39,1)-(39,11)) - │ ├── flags: ∅ - │ ├── locals: [:a, :c] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (39,3)-(39,9)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (39,4)-(39,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 2) - │ │ │ │ ├── @ RequiredParameterNode (location: (39,4)-(39,5)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :a - │ │ │ │ └── @ RequiredParameterNode (location: (39,7)-(39,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :c - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (39,3)-(39,4) = "|" - │ │ └── closing_loc: (39,8)-(39,9) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (39,1)-(39,2) = "{" - │ └── closing_loc: (39,10)-(39,11) = "}" - ├── @ CallNode (location: (41,0)-(41,17)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (41,0)-(41,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (41,1)-(41,17)) - │ ├── flags: ∅ - │ ├── locals: [:a, :o, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (41,3)-(41,15)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (41,4)-(41,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (41,4)-(41,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 1) - │ │ │ │ └── @ OptionalParameterNode (location: (41,7)-(41,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :o - │ │ │ │ ├── name_loc: (41,7)-(41,8) = "o" - │ │ │ │ ├── operator_loc: (41,8)-(41,9) = "=" - │ │ │ │ └── value: - │ │ │ │ @ IntegerNode (location: (41,9)-(41,10)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: - │ │ │ @ BlockParameterNode (location: (41,12)-(41,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (41,13)-(41,14) = "b" - │ │ │ └── operator_loc: (41,12)-(41,13) = "&" - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (41,3)-(41,4) = "|" - │ │ └── closing_loc: (41,14)-(41,15) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (41,1)-(41,2) = "{" - │ └── closing_loc: (41,16)-(41,17) = "}" - ├── @ CallNode (location: (43,0)-(43,24)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (43,0)-(43,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (43,1)-(43,24)) - │ ├── flags: ∅ - │ ├── locals: [:a, :o, :r, :p, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (43,3)-(43,22)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (43,4)-(43,21)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (43,4)-(43,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 1) - │ │ │ │ └── @ OptionalParameterNode (location: (43,7)-(43,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :o - │ │ │ │ ├── name_loc: (43,7)-(43,8) = "o" - │ │ │ │ ├── operator_loc: (43,8)-(43,9) = "=" - │ │ │ │ └── value: - │ │ │ │ @ IntegerNode (location: (43,9)-(43,10)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── rest: - │ │ │ │ @ RestParameterNode (location: (43,12)-(43,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :r - │ │ │ │ ├── name_loc: (43,13)-(43,14) = "r" - │ │ │ │ └── operator_loc: (43,12)-(43,13) = "*" - │ │ │ ├── posts: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (43,16)-(43,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :p - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: - │ │ │ @ BlockParameterNode (location: (43,19)-(43,21)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (43,20)-(43,21) = "b" - │ │ │ └── operator_loc: (43,19)-(43,20) = "&" - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (43,3)-(43,4) = "|" - │ │ └── closing_loc: (43,21)-(43,22) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (43,1)-(43,2) = "{" - │ └── closing_loc: (43,23)-(43,24) = "}" - ├── @ CallNode (location: (45,0)-(45,27)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (45,0)-(45,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (45,1)-(45,27)) - │ ├── flags: ∅ - │ ├── locals: [:a, :o, :o1, :r, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (45,3)-(45,25)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (45,4)-(45,24)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (45,4)-(45,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 2) - │ │ │ │ ├── @ OptionalParameterNode (location: (45,7)-(45,10)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :o - │ │ │ │ │ ├── name_loc: (45,7)-(45,8) = "o" - │ │ │ │ │ ├── operator_loc: (45,8)-(45,9) = "=" - │ │ │ │ │ └── value: - │ │ │ │ │ @ IntegerNode (location: (45,9)-(45,10)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ └── @ OptionalParameterNode (location: (45,12)-(45,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :o1 - │ │ │ │ ├── name_loc: (45,12)-(45,14) = "o1" - │ │ │ │ ├── operator_loc: (45,14)-(45,15) = "=" - │ │ │ │ └── value: - │ │ │ │ @ IntegerNode (location: (45,15)-(45,16)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ ├── rest: - │ │ │ │ @ RestParameterNode (location: (45,18)-(45,20)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :r - │ │ │ │ ├── name_loc: (45,19)-(45,20) = "r" - │ │ │ │ └── operator_loc: (45,18)-(45,19) = "*" - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: - │ │ │ @ BlockParameterNode (location: (45,22)-(45,24)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (45,23)-(45,24) = "b" - │ │ │ └── operator_loc: (45,22)-(45,23) = "&" - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (45,3)-(45,4) = "|" - │ │ └── closing_loc: (45,24)-(45,25) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (45,1)-(45,2) = "{" - │ └── closing_loc: (45,26)-(45,27) = "}" - ├── @ CallNode (location: (47,0)-(47,20)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (47,0)-(47,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (47,1)-(47,20)) - │ ├── flags: ∅ - │ ├── locals: [:a, :o, :p, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (47,3)-(47,18)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (47,4)-(47,17)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (47,4)-(47,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 1) - │ │ │ │ └── @ OptionalParameterNode (location: (47,7)-(47,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :o - │ │ │ │ ├── name_loc: (47,7)-(47,8) = "o" - │ │ │ │ ├── operator_loc: (47,8)-(47,9) = "=" - │ │ │ │ └── value: - │ │ │ │ @ IntegerNode (location: (47,9)-(47,10)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (47,12)-(47,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :p - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: - │ │ │ @ BlockParameterNode (location: (47,15)-(47,17)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (47,16)-(47,17) = "b" - │ │ │ └── operator_loc: (47,15)-(47,16) = "&" - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (47,3)-(47,4) = "|" - │ │ └── closing_loc: (47,17)-(47,18) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (47,1)-(47,2) = "{" - │ └── closing_loc: (47,19)-(47,20) = "}" - ├── @ CallNode (location: (49,0)-(49,9)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (49,0)-(49,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (49,1)-(49,9)) - │ ├── flags: ∅ - │ ├── locals: [:a] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (49,3)-(49,7)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (49,4)-(49,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (49,4)-(49,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ ImplicitRestNode (location: (49,5)-(49,6)) - │ │ │ │ └── flags: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (49,3)-(49,4) = "|" - │ │ └── closing_loc: (49,6)-(49,7) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (49,1)-(49,2) = "{" - │ └── closing_loc: (49,8)-(49,9) = "}" - ├── @ CallNode (location: (51,0)-(51,8)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (51,0)-(51,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (51,1)-(51,8)) - │ ├── flags: ∅ - │ ├── locals: [:a] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (51,3)-(51,6)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (51,4)-(51,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (51,4)-(51,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (51,3)-(51,4) = "|" - │ │ └── closing_loc: (51,5)-(51,6) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (51,1)-(51,2) = "{" - │ └── closing_loc: (51,7)-(51,8) = "}" - ├── @ CallNode (location: (53,0)-(53,8)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (53,0)-(53,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (53,1)-(53,8)) - │ ├── flags: ∅ - │ ├── locals: [:a] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (53,3)-(53,6)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (53,4)-(53,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (53,4)-(53,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (53,3)-(53,4) = "|" - │ │ └── closing_loc: (53,5)-(53,6) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (53,1)-(53,2) = "{" - │ └── closing_loc: (53,7)-(53,8) = "}" - ├── @ CallNode (location: (55,0)-(55,8)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (55,0)-(55,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (55,1)-(55,8)) - │ ├── flags: ∅ - │ ├── locals: [:a] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (55,3)-(55,6)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (55,4)-(55,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (55,4)-(55,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (55,3)-(55,4) = "|" - │ │ └── closing_loc: (55,5)-(55,6) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (55,1)-(55,2) = "{" - │ └── closing_loc: (55,7)-(55,8) = "}" - ├── @ CallNode (location: (57,0)-(57,17)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (57,0)-(57,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (57,1)-(57,17)) - │ ├── flags: ∅ - │ ├── locals: [:foo, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (57,3)-(57,15)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (57,4)-(57,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 1) - │ │ │ │ └── @ OptionalKeywordParameterNode (location: (57,4)-(57,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :foo - │ │ │ │ ├── name_loc: (57,4)-(57,8) = "foo:" - │ │ │ │ └── value: - │ │ │ │ @ IntegerNode (location: (57,9)-(57,10)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: - │ │ │ @ BlockParameterNode (location: (57,12)-(57,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (57,13)-(57,14) = "b" - │ │ │ └── operator_loc: (57,12)-(57,13) = "&" - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (57,3)-(57,4) = "|" - │ │ └── closing_loc: (57,14)-(57,15) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (57,1)-(57,2) = "{" - │ └── closing_loc: (57,16)-(57,17) = "}" - ├── @ CallNode (location: (59,0)-(59,32)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (59,0)-(59,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (59,1)-(59,32)) - │ ├── flags: ∅ - │ ├── locals: [:foo, :bar, :baz, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (59,3)-(59,30)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (59,4)-(59,29)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 2) - │ │ │ │ ├── @ OptionalKeywordParameterNode (location: (59,4)-(59,10)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :foo - │ │ │ │ │ ├── name_loc: (59,4)-(59,8) = "foo:" - │ │ │ │ │ └── value: - │ │ │ │ │ @ IntegerNode (location: (59,9)-(59,10)) - │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ └── value: 1 - │ │ │ │ └── @ OptionalKeywordParameterNode (location: (59,12)-(59,18)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── name_loc: (59,12)-(59,16) = "bar:" - │ │ │ │ └── value: - │ │ │ │ @ IntegerNode (location: (59,17)-(59,18)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 2 - │ │ │ ├── keyword_rest: - │ │ │ │ @ KeywordRestParameterNode (location: (59,20)-(59,25)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :baz - │ │ │ │ ├── name_loc: (59,22)-(59,25) = "baz" - │ │ │ │ └── operator_loc: (59,20)-(59,22) = "**" - │ │ │ └── block: - │ │ │ @ BlockParameterNode (location: (59,27)-(59,29)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (59,28)-(59,29) = "b" - │ │ │ └── operator_loc: (59,27)-(59,28) = "&" - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (59,3)-(59,4) = "|" - │ │ └── closing_loc: (59,29)-(59,30) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (59,1)-(59,2) = "{" - │ └── closing_loc: (59,31)-(59,32) = "}" - ├── @ CallNode (location: (61,0)-(61,11)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (61,0)-(61,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (61,1)-(61,11)) - │ ├── flags: ∅ - │ ├── locals: [:foo] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (61,3)-(61,9)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (61,4)-(61,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 1) - │ │ │ │ └── @ RequiredKeywordParameterNode (location: (61,4)-(61,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :foo - │ │ │ │ └── name_loc: (61,4)-(61,8) = "foo:" - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (61,3)-(61,4) = "|" - │ │ └── closing_loc: (61,8)-(61,9) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (61,1)-(61,2) = "{" - │ └── closing_loc: (61,10)-(61,11) = "}" - ├── @ CallNode (location: (63,0)-(63,14)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (63,0)-(63,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (63,1)-(63,14)) - │ ├── flags: ∅ - │ ├── locals: [:o, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (63,3)-(63,12)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (63,4)-(63,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 1) - │ │ │ │ └── @ OptionalParameterNode (location: (63,4)-(63,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :o - │ │ │ │ ├── name_loc: (63,4)-(63,5) = "o" - │ │ │ │ ├── operator_loc: (63,5)-(63,6) = "=" - │ │ │ │ └── value: - │ │ │ │ @ IntegerNode (location: (63,6)-(63,7)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: - │ │ │ @ BlockParameterNode (location: (63,9)-(63,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (63,10)-(63,11) = "b" - │ │ │ └── operator_loc: (63,9)-(63,10) = "&" - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (63,3)-(63,4) = "|" - │ │ └── closing_loc: (63,11)-(63,12) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (63,1)-(63,2) = "{" - │ └── closing_loc: (63,13)-(63,14) = "}" - ├── @ CallNode (location: (65,0)-(65,18)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (65,0)-(65,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (65,1)-(65,18)) - │ ├── flags: ∅ - │ ├── locals: [:o, :r, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (65,3)-(65,16)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (65,4)-(65,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 1) - │ │ │ │ └── @ OptionalParameterNode (location: (65,4)-(65,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :o - │ │ │ │ ├── name_loc: (65,4)-(65,5) = "o" - │ │ │ │ ├── operator_loc: (65,5)-(65,6) = "=" - │ │ │ │ └── value: - │ │ │ │ @ IntegerNode (location: (65,6)-(65,7)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── rest: - │ │ │ │ @ RestParameterNode (location: (65,9)-(65,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :r - │ │ │ │ ├── name_loc: (65,10)-(65,11) = "r" - │ │ │ │ └── operator_loc: (65,9)-(65,10) = "*" - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: - │ │ │ @ BlockParameterNode (location: (65,13)-(65,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (65,14)-(65,15) = "b" - │ │ │ └── operator_loc: (65,13)-(65,14) = "&" - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (65,3)-(65,4) = "|" - │ │ └── closing_loc: (65,15)-(65,16) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (65,1)-(65,2) = "{" - │ └── closing_loc: (65,17)-(65,18) = "}" - ├── @ CallNode (location: (67,0)-(67,21)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (67,0)-(67,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (67,1)-(67,21)) - │ ├── flags: ∅ - │ ├── locals: [:o, :r, :p, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (67,3)-(67,19)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (67,4)-(67,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 1) - │ │ │ │ └── @ OptionalParameterNode (location: (67,4)-(67,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :o - │ │ │ │ ├── name_loc: (67,4)-(67,5) = "o" - │ │ │ │ ├── operator_loc: (67,5)-(67,6) = "=" - │ │ │ │ └── value: - │ │ │ │ @ IntegerNode (location: (67,6)-(67,7)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── rest: - │ │ │ │ @ RestParameterNode (location: (67,9)-(67,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :r - │ │ │ │ ├── name_loc: (67,10)-(67,11) = "r" - │ │ │ │ └── operator_loc: (67,9)-(67,10) = "*" - │ │ │ ├── posts: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (67,13)-(67,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :p - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: - │ │ │ @ BlockParameterNode (location: (67,16)-(67,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (67,17)-(67,18) = "b" - │ │ │ └── operator_loc: (67,16)-(67,17) = "&" - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (67,3)-(67,4) = "|" - │ │ └── closing_loc: (67,18)-(67,19) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (67,1)-(67,2) = "{" - │ └── closing_loc: (67,20)-(67,21) = "}" - ├── @ CallNode (location: (69,0)-(69,17)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (69,0)-(69,1) = "f" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (69,1)-(69,17)) - │ ├── flags: ∅ - │ ├── locals: [:o, :p, :b] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (69,3)-(69,15)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (69,4)-(69,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 1) - │ │ │ │ └── @ OptionalParameterNode (location: (69,4)-(69,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :o - │ │ │ │ ├── name_loc: (69,4)-(69,5) = "o" - │ │ │ │ ├── operator_loc: (69,5)-(69,6) = "=" - │ │ │ │ └── value: - │ │ │ │ @ IntegerNode (location: (69,6)-(69,7)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (69,9)-(69,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :p - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: - │ │ │ @ BlockParameterNode (location: (69,12)-(69,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (69,13)-(69,14) = "b" - │ │ │ └── operator_loc: (69,12)-(69,13) = "&" - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (69,3)-(69,4) = "|" - │ │ └── closing_loc: (69,14)-(69,15) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (69,1)-(69,2) = "{" - │ └── closing_loc: (69,16)-(69,17) = "}" - └── @ CallNode (location: (71,0)-(71,7)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (71,0)-(71,1) = "f" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (71,1)-(71,7)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: - │ @ BlockParametersNode (location: (71,3)-(71,5)) - │ ├── flags: ∅ - │ ├── parameters: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (71,3)-(71,4) = "|" - │ └── closing_loc: (71,4)-(71,5) = "|" - ├── body: ∅ - ├── opening_loc: (71,1)-(71,2) = "{" - └── closing_loc: (71,6)-(71,7) = "}" diff --git a/test/prism/snapshots/whitequark/bug_435.txt b/test/prism/snapshots/whitequark/bug_435.txt deleted file mode 100644 index 2f497be046..0000000000 --- a/test/prism/snapshots/whitequark/bug_435.txt +++ /dev/null @@ -1,46 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(1,14)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,1) = "\"" - ├── parts: (length: 1) - │ └── @ EmbeddedStatementsNode (location: (1,1)-(1,13)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,1)-(1,3) = "\#{" - │ ├── statements: - │ │ @ StatementsNode (location: (1,3)-(1,12)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LambdaNode (location: (1,3)-(1,12)) - │ │ ├── flags: ∅ - │ │ ├── locals: [:foo] - │ │ ├── operator_loc: (1,3)-(1,5) = "->" - │ │ ├── opening_loc: (1,10)-(1,11) = "{" - │ │ ├── closing_loc: (1,11)-(1,12) = "}" - │ │ ├── parameters: - │ │ │ @ BlockParametersNode (location: (1,6)-(1,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parameters: - │ │ │ │ @ ParametersNode (location: (1,6)-(1,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── requireds: (length: 1) - │ │ │ │ │ └── @ RequiredParameterNode (location: (1,6)-(1,9)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :foo - │ │ │ │ ├── optionals: (length: 0) - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── posts: (length: 0) - │ │ │ │ ├── keywords: (length: 0) - │ │ │ │ ├── keyword_rest: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── locals: (length: 0) - │ │ │ ├── opening_loc: ∅ - │ │ │ └── closing_loc: ∅ - │ │ └── body: ∅ - │ └── closing_loc: (1,12)-(1,13) = "}" - └── closing_loc: (1,13)-(1,14) = "\"" diff --git a/test/prism/snapshots/whitequark/bug_447.txt b/test/prism/snapshots/whitequark/bug_447.txt deleted file mode 100644 index 6c8644d462..0000000000 --- a/test/prism/snapshots/whitequark/bug_447.txt +++ /dev/null @@ -1,60 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,14)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,11)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (1,0)-(1,1) = "m" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,2)-(1,4)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ ArrayNode (location: (1,2)-(1,4)) - │ │ ├── flags: static_literal - │ │ ├── elements: (length: 0) - │ │ ├── opening_loc: (1,2)-(1,3) = "[" - │ │ └── closing_loc: (1,3)-(1,4) = "]" - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (1,5)-(1,11)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (1,5)-(1,7) = "do" - │ └── closing_loc: (1,8)-(1,11) = "end" - └── @ CallNode (location: (3,0)-(3,14)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :m - ├── message_loc: (3,0)-(3,1) = "m" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (3,2)-(3,7)) - │ ├── flags: ∅ - │ └── arguments: (length: 2) - │ ├── @ ArrayNode (location: (3,2)-(3,4)) - │ │ ├── flags: static_literal - │ │ ├── elements: (length: 0) - │ │ ├── opening_loc: (3,2)-(3,3) = "[" - │ │ └── closing_loc: (3,3)-(3,4) = "]" - │ └── @ IntegerNode (location: (3,6)-(3,7)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (3,8)-(3,14)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: ∅ - ├── opening_loc: (3,8)-(3,10) = "do" - └── closing_loc: (3,11)-(3,14) = "end" diff --git a/test/prism/snapshots/whitequark/bug_452.txt b/test/prism/snapshots/whitequark/bug_452.txt deleted file mode 100644 index f55b54b89a..0000000000 --- a/test/prism/snapshots/whitequark/bug_452.txt +++ /dev/null @@ -1,68 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,37)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,37)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,21)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :td - │ ├── message_loc: (1,0)-(1,2) = "td" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,3)-(1,21)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (1,3)-(1,21)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ ParenthesesNode (location: (1,3)-(1,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (1,4)-(1,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (1,4)-(1,9)) - │ │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ │ └── value: 1500 - │ │ │ ├── opening_loc: (1,3)-(1,4) = "(" - │ │ │ └── closing_loc: (1,9)-(1,10) = ")" - │ │ ├── call_operator_loc: (1,10)-(1,11) = "." - │ │ ├── name: :toString - │ │ ├── message_loc: (1,11)-(1,19) = "toString" - │ │ ├── opening_loc: (1,19)-(1,20) = "(" - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: (1,20)-(1,21) = ")" - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (1,23)-(1,37)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,23)-(1,25)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :td - │ ├── message_loc: (1,23)-(1,25) = "td" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,25)-(1,26) = "." - ├── name: :num - ├── message_loc: (1,26)-(1,29) = "num" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,30)-(1,37)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: ∅ - ├── opening_loc: (1,30)-(1,32) = "do" - └── closing_loc: (1,34)-(1,37) = "end" diff --git a/test/prism/snapshots/whitequark/bug_466.txt b/test/prism/snapshots/whitequark/bug_466.txt deleted file mode 100644 index 8556ff6d24..0000000000 --- a/test/prism/snapshots/whitequark/bug_466.txt +++ /dev/null @@ -1,77 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,27)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,27)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,27)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :foo - ├── message_loc: (1,0)-(1,3) = "foo" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,19)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ InterpolatedStringNode (location: (1,4)-(1,19)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,4)-(1,5) = "\"" - │ ├── parts: (length: 1) - │ │ └── @ EmbeddedStatementsNode (location: (1,5)-(1,18)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,5)-(1,7) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,7)-(1,17)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (1,7)-(1,17)) - │ │ │ ├── flags: ∅ - │ │ │ ├── receiver: - │ │ │ │ @ ParenthesesNode (location: (1,7)-(1,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── body: - │ │ │ │ │ @ StatementsNode (location: (1,8)-(1,11)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (1,8)-(1,11)) - │ │ │ │ │ ├── flags: newline - │ │ │ │ │ ├── receiver: - │ │ │ │ │ │ @ IntegerNode (location: (1,8)-(1,9)) - │ │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ │ └── value: 1 - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :+ - │ │ │ │ │ ├── message_loc: (1,9)-(1,10) = "+" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: - │ │ │ │ │ │ @ ArgumentsNode (location: (1,10)-(1,11)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ │ └── @ IntegerNode (location: (1,10)-(1,11)) - │ │ │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ │ │ └── value: 1 - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── opening_loc: (1,7)-(1,8) = "(" - │ │ │ │ └── closing_loc: (1,11)-(1,12) = ")" - │ │ │ ├── call_operator_loc: (1,12)-(1,13) = "." - │ │ │ ├── name: :to_i - │ │ │ ├── message_loc: (1,13)-(1,17) = "to_i" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── closing_loc: (1,17)-(1,18) = "}" - │ └── closing_loc: (1,18)-(1,19) = "\"" - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,20)-(1,27)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: ∅ - ├── opening_loc: (1,20)-(1,22) = "do" - └── closing_loc: (1,24)-(1,27) = "end" diff --git a/test/prism/snapshots/whitequark/bug_473.txt b/test/prism/snapshots/whitequark/bug_473.txt deleted file mode 100644 index fa4c23b8a5..0000000000 --- a/test/prism/snapshots/whitequark/bug_473.txt +++ /dev/null @@ -1,38 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,9)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :m - ├── message_loc: (1,0)-(1,1) = "m" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,9)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ InterpolatedStringNode (location: (1,2)-(1,9)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,2)-(1,3) = "\"" - │ ├── parts: (length: 1) - │ │ └── @ EmbeddedStatementsNode (location: (1,3)-(1,8)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,3)-(1,5) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,5)-(1,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ ArrayNode (location: (1,5)-(1,7)) - │ │ │ ├── flags: static_literal - │ │ │ ├── elements: (length: 0) - │ │ │ ├── opening_loc: (1,5)-(1,6) = "[" - │ │ │ └── closing_loc: (1,6)-(1,7) = "]" - │ │ └── closing_loc: (1,7)-(1,8) = "}" - │ └── closing_loc: (1,8)-(1,9) = "\"" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/bug_480.txt b/test/prism/snapshots/whitequark/bug_480.txt deleted file mode 100644 index 0ddcbae41a..0000000000 --- a/test/prism/snapshots/whitequark/bug_480.txt +++ /dev/null @@ -1,43 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,12)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :m - ├── message_loc: (1,0)-(1,1) = "m" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,12)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ InterpolatedStringNode (location: (1,2)-(1,12)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,2)-(1,3) = "\"" - │ ├── parts: (length: 2) - │ │ ├── @ EmbeddedStatementsNode (location: (1,3)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (1,3)-(1,5) = "\#{" - │ │ │ ├── statements: ∅ - │ │ │ └── closing_loc: (1,5)-(1,6) = "}" - │ │ └── @ EmbeddedStatementsNode (location: (1,6)-(1,11)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,6)-(1,8) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,8)-(1,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ ParenthesesNode (location: (1,8)-(1,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: ∅ - │ │ │ ├── opening_loc: (1,8)-(1,9) = "(" - │ │ │ └── closing_loc: (1,9)-(1,10) = ")" - │ │ └── closing_loc: (1,10)-(1,11) = "}" - │ └── closing_loc: (1,11)-(1,12) = "\"" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/bug_481.txt b/test/prism/snapshots/whitequark/bug_481.txt deleted file mode 100644 index 32879a82b0..0000000000 --- a/test/prism/snapshots/whitequark/bug_481.txt +++ /dev/null @@ -1,54 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,28)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,28)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,14)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (1,0)-(1,1) = "m" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,2)-(1,14)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ DefNode (location: (1,2)-(1,14)) - │ │ ├── flags: ∅ - │ │ ├── name: :x - │ │ ├── name_loc: (1,6)-(1,7) = "x" - │ │ ├── receiver: ∅ - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── locals: [] - │ │ ├── def_keyword_loc: (1,2)-(1,5) = "def" - │ │ ├── operator_loc: ∅ - │ │ ├── lparen_loc: (1,7)-(1,8) = "(" - │ │ ├── rparen_loc: (1,8)-(1,9) = ")" - │ │ ├── equal_loc: ∅ - │ │ └── end_keyword_loc: (1,11)-(1,14) = "end" - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (1,16)-(1,28)) - ├── flags: newline - ├── receiver: - │ @ IntegerNode (location: (1,16)-(1,17)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── call_operator_loc: (1,17)-(1,18) = "." - ├── name: :tap - ├── message_loc: (1,18)-(1,21) = "tap" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,22)-(1,28)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: ∅ - ├── opening_loc: (1,22)-(1,24) = "do" - └── closing_loc: (1,25)-(1,28) = "end" diff --git a/test/prism/snapshots/whitequark/bug_ascii_8bit_in_literal.txt b/test/prism/snapshots/whitequark/bug_ascii_8bit_in_literal.txt deleted file mode 100644 index 4c90854f55..0000000000 --- a/test/prism/snapshots/whitequark/bug_ascii_8bit_in_literal.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (2,9)-(2,75)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (2,9)-(2,75)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (2,9)-(2,75)) - ├── flags: newline, forced_utf8_encoding - ├── opening_loc: (2,9)-(2,10) = "\"" - ├── content_loc: (2,10)-(2,74) = "\\xD0\\xBF\\xD1\\x80\\xD0\\xBE\\xD0\\xB2\\xD0\\xB5\\xD1\\x80\\xD0\\xBA\\xD0\\xB0" - ├── closing_loc: (2,74)-(2,75) = "\"" - └── unescaped: "проверка" diff --git a/test/prism/snapshots/whitequark/bug_cmd_string_lookahead.txt b/test/prism/snapshots/whitequark/bug_cmd_string_lookahead.txt deleted file mode 100644 index 6a581ca6cc..0000000000 --- a/test/prism/snapshots/whitequark/bug_cmd_string_lookahead.txt +++ /dev/null @@ -1,33 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,17)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,17)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :desc - ├── message_loc: (1,0)-(1,4) = "desc" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,5)-(1,10)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ StringNode (location: (1,5)-(1,10)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,5)-(1,6) = "\"" - │ ├── content_loc: (1,6)-(1,9) = "foo" - │ ├── closing_loc: (1,9)-(1,10) = "\"" - │ └── unescaped: "foo" - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,11)-(1,17)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: ∅ - ├── opening_loc: (1,11)-(1,13) = "do" - └── closing_loc: (1,14)-(1,17) = "end" diff --git a/test/prism/snapshots/whitequark/bug_cmdarg.txt b/test/prism/snapshots/whitequark/bug_cmdarg.txt deleted file mode 100644 index efdb375dc8..0000000000 --- a/test/prism/snapshots/whitequark/bug_cmdarg.txt +++ /dev/null @@ -1,114 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,26)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,26)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ CallNode (location: (1,0)-(1,15)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :assert - │ ├── message_loc: (1,0)-(1,6) = "assert" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,7)-(1,15)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (1,7)-(1,15)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (1,7)-(1,15)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (1,7)-(1,10)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (1,7)-(1,9) = "do" - │ │ │ ├── closing_loc: (1,9)-(1,10) = ":" - │ │ │ └── unescaped: "do" - │ │ ├── value: - │ │ │ @ TrueNode (location: (1,11)-(1,15)) - │ │ │ └── flags: static_literal - │ │ └── operator_loc: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (3,0)-(3,11)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :assert - │ ├── message_loc: (3,0)-(3,6) = "assert" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (3,7)-(3,11)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (3,7)-(3,11)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :dogs - │ │ ├── message_loc: (3,7)-(3,11) = "dogs" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (5,0)-(5,26)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (5,0)-(5,1) = "f" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (5,2)-(5,26)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 1) - │ └── @ KeywordHashNode (location: (5,2)-(5,26)) - │ ├── flags: symbol_keys - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (5,2)-(5,26)) - │ ├── flags: ∅ - │ ├── key: - │ │ @ SymbolNode (location: (5,2)-(5,4)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (5,2)-(5,3) = "x" - │ │ ├── closing_loc: (5,3)-(5,4) = ":" - │ │ └── unescaped: "x" - │ ├── value: - │ │ @ LambdaNode (location: (5,5)-(5,26)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── operator_loc: (5,5)-(5,7) = "->" - │ │ ├── opening_loc: (5,8)-(5,10) = "do" - │ │ ├── closing_loc: (5,23)-(5,26) = "end" - │ │ ├── parameters: ∅ - │ │ └── body: - │ │ @ StatementsNode (location: (5,11)-(5,22)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (5,11)-(5,22)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :meth - │ │ ├── message_loc: (5,11)-(5,15) = "meth" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (5,16)-(5,22)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (5,16)-(5,18) = "do" - │ │ └── closing_loc: (5,19)-(5,22) = "end" - │ └── operator_loc: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/bug_def_no_paren_eql_begin.txt b/test/prism/snapshots/whitequark/bug_def_no_paren_eql_begin.txt deleted file mode 100644 index eab5d4484a..0000000000 --- a/test/prism/snapshots/whitequark/bug_def_no_paren_eql_begin.txt +++ /dev/null @@ -1,21 +0,0 @@ -@ ProgramNode (location: (1,0)-(4,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(4,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(4,3)) - ├── flags: newline - ├── name: :foo - ├── name_loc: (1,4)-(1,7) = "foo" - ├── receiver: ∅ - ├── parameters: ∅ - ├── body: ∅ - ├── locals: [] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (4,0)-(4,3) = "end" diff --git a/test/prism/snapshots/whitequark/bug_do_block_in_call_args.txt b/test/prism/snapshots/whitequark/bug_do_block_in_call_args.txt deleted file mode 100644 index 770a175c2e..0000000000 --- a/test/prism/snapshots/whitequark/bug_do_block_in_call_args.txt +++ /dev/null @@ -1,56 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,33)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,33)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,33)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :bar - ├── message_loc: (1,0)-(1,3) = "bar" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,33)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ DefNode (location: (1,4)-(1,33)) - │ ├── flags: ∅ - │ ├── name: :foo - │ ├── name_loc: (1,8)-(1,11) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,13)-(1,29)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,13)-(1,29)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: - │ │ │ @ SelfNode (location: (1,13)-(1,17)) - │ │ │ └── flags: ∅ - │ │ ├── call_operator_loc: (1,17)-(1,18) = "." - │ │ ├── name: :each - │ │ ├── message_loc: (1,18)-(1,22) = "each" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (1,23)-(1,29)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (1,23)-(1,25) = "do" - │ │ └── closing_loc: (1,26)-(1,29) = "end" - │ ├── locals: [] - │ ├── def_keyword_loc: (1,4)-(1,7) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (1,30)-(1,33) = "end" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/bug_do_block_in_cmdarg.txt b/test/prism/snapshots/whitequark/bug_do_block_in_cmdarg.txt deleted file mode 100644 index ff5af609e2..0000000000 --- a/test/prism/snapshots/whitequark/bug_do_block_in_cmdarg.txt +++ /dev/null @@ -1,45 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,17)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,17)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :tap - ├── message_loc: (1,0)-(1,3) = "tap" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,17)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ ParenthesesNode (location: (1,4)-(1,17)) - │ ├── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,5)-(1,16)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,5)-(1,16)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :proc - │ │ ├── message_loc: (1,5)-(1,9) = "proc" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (1,10)-(1,16)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (1,10)-(1,12) = "do" - │ │ └── closing_loc: (1,13)-(1,16) = "end" - │ ├── opening_loc: (1,4)-(1,5) = "(" - │ └── closing_loc: (1,16)-(1,17) = ")" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/bug_do_block_in_hash_brace.txt b/test/prism/snapshots/whitequark/bug_do_block_in_hash_brace.txt deleted file mode 100644 index 0242d5e661..0000000000 --- a/test/prism/snapshots/whitequark/bug_do_block_in_hash_brace.txt +++ /dev/null @@ -1,411 +0,0 @@ -@ ProgramNode (location: (1,0)-(9,52)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(9,52)) - ├── flags: ∅ - └── body: (length: 5) - ├── @ CallNode (location: (1,0)-(1,42)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :p - │ ├── message_loc: (1,0)-(1,1) = "p" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,2)-(1,42)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ SymbolNode (location: (1,2)-(1,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (1,2)-(1,3) = ":" - │ │ │ ├── value_loc: (1,3)-(1,6) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ └── @ HashNode (location: (1,8)-(1,42)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,8)-(1,9) = "{" - │ │ ├── elements: (length: 2) - │ │ │ ├── @ AssocNode (location: (1,9)-(1,25)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── key: - │ │ │ │ │ @ SymbolNode (location: (1,9)-(1,13)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: (1,9)-(1,10) = "\"" - │ │ │ │ │ ├── value_loc: (1,10)-(1,11) = "a" - │ │ │ │ │ ├── closing_loc: (1,11)-(1,13) = "\":" - │ │ │ │ │ └── unescaped: "a" - │ │ │ │ ├── value: - │ │ │ │ │ @ CallNode (location: (1,14)-(1,25)) - │ │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :proc - │ │ │ │ │ ├── message_loc: (1,14)-(1,18) = "proc" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: - │ │ │ │ │ @ BlockNode (location: (1,19)-(1,25)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── locals: [] - │ │ │ │ │ ├── parameters: ∅ - │ │ │ │ │ ├── body: ∅ - │ │ │ │ │ ├── opening_loc: (1,19)-(1,21) = "do" - │ │ │ │ │ └── closing_loc: (1,22)-(1,25) = "end" - │ │ │ │ └── operator_loc: ∅ - │ │ │ └── @ AssocNode (location: (1,27)-(1,41)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (1,27)-(1,29)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (1,27)-(1,28) = "b" - │ │ │ │ ├── closing_loc: (1,28)-(1,29) = ":" - │ │ │ │ └── unescaped: "b" - │ │ │ ├── value: - │ │ │ │ @ CallNode (location: (1,30)-(1,41)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :proc - │ │ │ │ ├── message_loc: (1,30)-(1,34) = "proc" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: - │ │ │ │ @ BlockNode (location: (1,35)-(1,41)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── locals: [] - │ │ │ │ ├── parameters: ∅ - │ │ │ │ ├── body: ∅ - │ │ │ │ ├── opening_loc: (1,35)-(1,37) = "do" - │ │ │ │ └── closing_loc: (1,38)-(1,41) = "end" - │ │ │ └── operator_loc: ∅ - │ │ └── closing_loc: (1,41)-(1,42) = "}" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (3,0)-(3,40)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :p - │ ├── message_loc: (3,0)-(3,1) = "p" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (3,2)-(3,40)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ SymbolNode (location: (3,2)-(3,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (3,2)-(3,3) = ":" - │ │ │ ├── value_loc: (3,3)-(3,6) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ └── @ HashNode (location: (3,8)-(3,40)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (3,8)-(3,9) = "{" - │ │ ├── elements: (length: 2) - │ │ │ ├── @ AssocSplatNode (location: (3,9)-(3,23)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── value: - │ │ │ │ │ @ CallNode (location: (3,12)-(3,23)) - │ │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :proc - │ │ │ │ │ ├── message_loc: (3,12)-(3,16) = "proc" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: - │ │ │ │ │ @ BlockNode (location: (3,17)-(3,23)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── locals: [] - │ │ │ │ │ ├── parameters: ∅ - │ │ │ │ │ ├── body: ∅ - │ │ │ │ │ ├── opening_loc: (3,17)-(3,19) = "do" - │ │ │ │ │ └── closing_loc: (3,20)-(3,23) = "end" - │ │ │ │ └── operator_loc: (3,9)-(3,11) = "**" - │ │ │ └── @ AssocNode (location: (3,25)-(3,39)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (3,25)-(3,27)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (3,25)-(3,26) = "b" - │ │ │ │ ├── closing_loc: (3,26)-(3,27) = ":" - │ │ │ │ └── unescaped: "b" - │ │ │ ├── value: - │ │ │ │ @ CallNode (location: (3,28)-(3,39)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :proc - │ │ │ │ ├── message_loc: (3,28)-(3,32) = "proc" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: - │ │ │ │ @ BlockNode (location: (3,33)-(3,39)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── locals: [] - │ │ │ │ ├── parameters: ∅ - │ │ │ │ ├── body: ∅ - │ │ │ │ ├── opening_loc: (3,33)-(3,35) = "do" - │ │ │ │ └── closing_loc: (3,36)-(3,39) = "end" - │ │ │ └── operator_loc: ∅ - │ │ └── closing_loc: (3,39)-(3,40) = "}" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (5,0)-(5,43)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :p - │ ├── message_loc: (5,0)-(5,1) = "p" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (5,2)-(5,43)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ SymbolNode (location: (5,2)-(5,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (5,2)-(5,3) = ":" - │ │ │ ├── value_loc: (5,3)-(5,6) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ └── @ HashNode (location: (5,8)-(5,43)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (5,8)-(5,9) = "{" - │ │ ├── elements: (length: 2) - │ │ │ ├── @ AssocNode (location: (5,9)-(5,26)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── key: - │ │ │ │ │ @ SymbolNode (location: (5,9)-(5,11)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: (5,9)-(5,10) = ":" - │ │ │ │ │ ├── value_loc: (5,10)-(5,11) = "a" - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── unescaped: "a" - │ │ │ │ ├── value: - │ │ │ │ │ @ CallNode (location: (5,15)-(5,26)) - │ │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :proc - │ │ │ │ │ ├── message_loc: (5,15)-(5,19) = "proc" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: - │ │ │ │ │ @ BlockNode (location: (5,20)-(5,26)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── locals: [] - │ │ │ │ │ ├── parameters: ∅ - │ │ │ │ │ ├── body: ∅ - │ │ │ │ │ ├── opening_loc: (5,20)-(5,22) = "do" - │ │ │ │ │ └── closing_loc: (5,23)-(5,26) = "end" - │ │ │ │ └── operator_loc: (5,12)-(5,14) = "=>" - │ │ │ └── @ AssocNode (location: (5,28)-(5,42)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (5,28)-(5,30)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (5,28)-(5,29) = "b" - │ │ │ │ ├── closing_loc: (5,29)-(5,30) = ":" - │ │ │ │ └── unescaped: "b" - │ │ │ ├── value: - │ │ │ │ @ CallNode (location: (5,31)-(5,42)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :proc - │ │ │ │ ├── message_loc: (5,31)-(5,35) = "proc" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: - │ │ │ │ @ BlockNode (location: (5,36)-(5,42)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── locals: [] - │ │ │ │ ├── parameters: ∅ - │ │ │ │ ├── body: ∅ - │ │ │ │ ├── opening_loc: (5,36)-(5,38) = "do" - │ │ │ │ └── closing_loc: (5,39)-(5,42) = "end" - │ │ │ └── operator_loc: ∅ - │ │ └── closing_loc: (5,42)-(5,43) = "}" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (7,0)-(7,40)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :p - │ ├── message_loc: (7,0)-(7,1) = "p" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (7,2)-(7,40)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ SymbolNode (location: (7,2)-(7,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (7,2)-(7,3) = ":" - │ │ │ ├── value_loc: (7,3)-(7,6) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ └── @ HashNode (location: (7,8)-(7,40)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (7,8)-(7,9) = "{" - │ │ ├── elements: (length: 2) - │ │ │ ├── @ AssocNode (location: (7,9)-(7,23)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── key: - │ │ │ │ │ @ SymbolNode (location: (7,9)-(7,11)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── value_loc: (7,9)-(7,10) = "a" - │ │ │ │ │ ├── closing_loc: (7,10)-(7,11) = ":" - │ │ │ │ │ └── unescaped: "a" - │ │ │ │ ├── value: - │ │ │ │ │ @ CallNode (location: (7,12)-(7,23)) - │ │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :proc - │ │ │ │ │ ├── message_loc: (7,12)-(7,16) = "proc" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: - │ │ │ │ │ @ BlockNode (location: (7,17)-(7,23)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── locals: [] - │ │ │ │ │ ├── parameters: ∅ - │ │ │ │ │ ├── body: ∅ - │ │ │ │ │ ├── opening_loc: (7,17)-(7,19) = "do" - │ │ │ │ │ └── closing_loc: (7,20)-(7,23) = "end" - │ │ │ │ └── operator_loc: ∅ - │ │ │ └── @ AssocNode (location: (7,25)-(7,39)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (7,25)-(7,27)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (7,25)-(7,26) = "b" - │ │ │ │ ├── closing_loc: (7,26)-(7,27) = ":" - │ │ │ │ └── unescaped: "b" - │ │ │ ├── value: - │ │ │ │ @ CallNode (location: (7,28)-(7,39)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :proc - │ │ │ │ ├── message_loc: (7,28)-(7,32) = "proc" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: - │ │ │ │ @ BlockNode (location: (7,33)-(7,39)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── locals: [] - │ │ │ │ ├── parameters: ∅ - │ │ │ │ ├── body: ∅ - │ │ │ │ ├── opening_loc: (7,33)-(7,35) = "do" - │ │ │ │ └── closing_loc: (7,36)-(7,39) = "end" - │ │ │ └── operator_loc: ∅ - │ │ └── closing_loc: (7,39)-(7,40) = "}" - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (9,0)-(9,52)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :p - ├── message_loc: (9,0)-(9,1) = "p" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (9,2)-(9,52)) - │ ├── flags: ∅ - │ └── arguments: (length: 2) - │ ├── @ SymbolNode (location: (9,2)-(9,6)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (9,2)-(9,3) = ":" - │ │ ├── value_loc: (9,3)-(9,6) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ └── @ HashNode (location: (9,8)-(9,52)) - │ ├── flags: ∅ - │ ├── opening_loc: (9,8)-(9,9) = "{" - │ ├── elements: (length: 2) - │ │ ├── @ AssocNode (location: (9,9)-(9,35)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ CallNode (location: (9,9)-(9,20)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :proc - │ │ │ │ ├── message_loc: (9,9)-(9,13) = "proc" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: - │ │ │ │ @ BlockNode (location: (9,14)-(9,20)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── locals: [] - │ │ │ │ ├── parameters: ∅ - │ │ │ │ ├── body: ∅ - │ │ │ │ ├── opening_loc: (9,14)-(9,16) = "do" - │ │ │ │ └── closing_loc: (9,17)-(9,20) = "end" - │ │ │ ├── value: - │ │ │ │ @ CallNode (location: (9,24)-(9,35)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :proc - │ │ │ │ ├── message_loc: (9,24)-(9,28) = "proc" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: - │ │ │ │ @ BlockNode (location: (9,29)-(9,35)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── locals: [] - │ │ │ │ ├── parameters: ∅ - │ │ │ │ ├── body: ∅ - │ │ │ │ ├── opening_loc: (9,29)-(9,31) = "do" - │ │ │ │ └── closing_loc: (9,32)-(9,35) = "end" - │ │ │ └── operator_loc: (9,21)-(9,23) = "=>" - │ │ └── @ AssocNode (location: (9,37)-(9,51)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ SymbolNode (location: (9,37)-(9,39)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (9,37)-(9,38) = "b" - │ │ │ ├── closing_loc: (9,38)-(9,39) = ":" - │ │ │ └── unescaped: "b" - │ │ ├── value: - │ │ │ @ CallNode (location: (9,40)-(9,51)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :proc - │ │ │ ├── message_loc: (9,40)-(9,44) = "proc" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (9,45)-(9,51)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: ∅ - │ │ │ ├── opening_loc: (9,45)-(9,47) = "do" - │ │ │ └── closing_loc: (9,48)-(9,51) = "end" - │ │ └── operator_loc: ∅ - │ └── closing_loc: (9,51)-(9,52) = "}" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/bug_heredoc_do.txt b/test/prism/snapshots/whitequark/bug_heredoc_do.txt deleted file mode 100644 index 46e721c46f..0000000000 --- a/test/prism/snapshots/whitequark/bug_heredoc_do.txt +++ /dev/null @@ -1,33 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(3,3)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,10)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ StringNode (location: (1,2)-(1,10)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,2)-(1,10) = "<<-TABLE" - │ ├── content_loc: (2,0)-(2,0) = "" - │ ├── closing_loc: (2,0)-(3,0) = "TABLE\n" - │ └── unescaped: "" - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,11)-(3,3)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: ∅ - ├── opening_loc: (1,11)-(1,13) = "do" - └── closing_loc: (3,0)-(3,3) = "end" diff --git a/test/prism/snapshots/whitequark/bug_interp_single.txt b/test/prism/snapshots/whitequark/bug_interp_single.txt deleted file mode 100644 index e231a84ae2..0000000000 --- a/test/prism/snapshots/whitequark/bug_interp_single.txt +++ /dev/null @@ -1,44 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,8)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ InterpolatedStringNode (location: (1,0)-(1,6)) - │ ├── flags: newline - │ ├── opening_loc: (1,0)-(1,1) = "\"" - │ ├── parts: (length: 1) - │ │ └── @ EmbeddedStatementsNode (location: (1,1)-(1,5)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,1)-(1,3) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,3)-(1,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ IntegerNode (location: (1,3)-(1,4)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── closing_loc: (1,4)-(1,5) = "}" - │ └── closing_loc: (1,5)-(1,6) = "\"" - └── @ ArrayNode (location: (3,0)-(3,8)) - ├── flags: newline - ├── elements: (length: 1) - │ └── @ InterpolatedStringNode (location: (3,3)-(3,7)) - │ ├── flags: ∅ - │ ├── opening_loc: ∅ - │ ├── parts: (length: 1) - │ │ └── @ EmbeddedStatementsNode (location: (3,3)-(3,7)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (3,3)-(3,5) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (3,5)-(3,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ IntegerNode (location: (3,5)-(3,6)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── closing_loc: (3,6)-(3,7) = "}" - │ └── closing_loc: ∅ - ├── opening_loc: (3,0)-(3,3) = "%W\"" - └── closing_loc: (3,7)-(3,8) = "\"" diff --git a/test/prism/snapshots/whitequark/bug_lambda_leakage.txt b/test/prism/snapshots/whitequark/bug_lambda_leakage.txt deleted file mode 100644 index 66e3ebac76..0000000000 --- a/test/prism/snapshots/whitequark/bug_lambda_leakage.txt +++ /dev/null @@ -1,43 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,19)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,19)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ LambdaNode (location: (1,0)-(1,12)) - │ ├── flags: newline - │ ├── locals: [:scope] - │ ├── operator_loc: (1,0)-(1,2) = "->" - │ ├── opening_loc: (1,10)-(1,11) = "{" - │ ├── closing_loc: (1,11)-(1,12) = "}" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (1,2)-(1,9)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (1,3)-(1,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (1,3)-(1,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :scope - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (1,2)-(1,3) = "(" - │ │ └── closing_loc: (1,8)-(1,9) = ")" - │ └── body: ∅ - └── @ CallNode (location: (1,14)-(1,19)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :scope - ├── message_loc: (1,14)-(1,19) = "scope" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/bug_regex_verification.txt b/test/prism/snapshots/whitequark/bug_regex_verification.txt deleted file mode 100644 index bf80a50fb0..0000000000 --- a/test/prism/snapshots/whitequark/bug_regex_verification.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ RegularExpressionNode (location: (1,0)-(1,5)) - ├── flags: newline, static_literal, extended, forced_us_ascii_encoding - ├── opening_loc: (1,0)-(1,1) = "/" - ├── content_loc: (1,1)-(1,3) = "#)" - ├── closing_loc: (1,3)-(1,5) = "/x" - └── unescaped: "#)" diff --git a/test/prism/snapshots/whitequark/bug_rescue_empty_else.txt b/test/prism/snapshots/whitequark/bug_rescue_empty_else.txt deleted file mode 100644 index 0580000568..0000000000 --- a/test/prism/snapshots/whitequark/bug_rescue_empty_else.txt +++ /dev/null @@ -1,31 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,34)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,34)) - ├── flags: ∅ - └── body: (length: 1) - └── @ BeginNode (location: (1,0)-(1,34)) - ├── flags: newline - ├── begin_keyword_loc: (1,0)-(1,5) = "begin" - ├── statements: ∅ - ├── rescue_clause: - │ @ RescueNode (location: (1,7)-(1,23)) - │ ├── flags: ∅ - │ ├── keyword_loc: (1,7)-(1,13) = "rescue" - │ ├── exceptions: (length: 1) - │ │ └── @ ConstantReadNode (location: (1,14)-(1,23)) - │ │ ├── flags: ∅ - │ │ └── name: :LoadError - │ ├── operator_loc: ∅ - │ ├── reference: ∅ - │ ├── statements: ∅ - │ └── subsequent: ∅ - ├── else_clause: - │ @ ElseNode (location: (1,25)-(1,34)) - │ ├── flags: ∅ - │ ├── else_keyword_loc: (1,25)-(1,29) = "else" - │ ├── statements: ∅ - │ └── end_keyword_loc: (1,31)-(1,34) = "end" - ├── ensure_clause: ∅ - └── end_keyword_loc: (1,31)-(1,34) = "end" diff --git a/test/prism/snapshots/whitequark/bug_while_not_parens_do.txt b/test/prism/snapshots/whitequark/bug_while_not_parens_do.txt deleted file mode 100644 index 5bb335dd8c..0000000000 --- a/test/prism/snapshots/whitequark/bug_while_not_parens_do.txt +++ /dev/null @@ -1,33 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,23)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,23)) - ├── flags: ∅ - └── body: (length: 1) - └── @ WhileNode (location: (1,0)-(1,23)) - ├── flags: newline - ├── keyword_loc: (1,0)-(1,5) = "while" - ├── closing_loc: (1,20)-(1,23) = "end" - ├── predicate: - │ @ CallNode (location: (1,6)-(1,16)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ ParenthesesNode (location: (1,10)-(1,16)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (1,11)-(1,15)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ TrueNode (location: (1,11)-(1,15)) - │ │ │ └── flags: newline, static_literal - │ │ ├── opening_loc: (1,10)-(1,11) = "(" - │ │ └── closing_loc: (1,15)-(1,16) = ")" - │ ├── call_operator_loc: ∅ - │ ├── name: :! - │ ├── message_loc: (1,6)-(1,9) = "not" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── statements: ∅ diff --git a/test/prism/snapshots/whitequark/case_cond.txt b/test/prism/snapshots/whitequark/case_cond.txt deleted file mode 100644 index 2d9572b88b..0000000000 --- a/test/prism/snapshots/whitequark/case_cond.txt +++ /dev/null @@ -1,39 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,26)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,26)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(1,26)) - ├── flags: newline - ├── predicate: ∅ - ├── conditions: (length: 1) - │ └── @ WhenNode (location: (1,6)-(1,21)) - │ ├── flags: ∅ - │ ├── keyword_loc: (1,6)-(1,10) = "when" - │ ├── conditions: (length: 1) - │ │ └── @ CallNode (location: (1,11)-(1,14)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,11)-(1,14) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: ∅ - │ └── statements: - │ @ StatementsNode (location: (1,16)-(1,21)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ StringNode (location: (1,16)-(1,21)) - │ ├── flags: newline - │ ├── opening_loc: (1,16)-(1,17) = "'" - │ ├── content_loc: (1,17)-(1,20) = "foo" - │ ├── closing_loc: (1,20)-(1,21) = "'" - │ └── unescaped: "foo" - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (1,23)-(1,26) = "end" diff --git a/test/prism/snapshots/whitequark/case_cond_else.txt b/test/prism/snapshots/whitequark/case_cond_else.txt deleted file mode 100644 index c2ed1fe4b7..0000000000 --- a/test/prism/snapshots/whitequark/case_cond_else.txt +++ /dev/null @@ -1,53 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,38)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,38)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(1,38)) - ├── flags: newline - ├── predicate: ∅ - ├── conditions: (length: 1) - │ └── @ WhenNode (location: (1,6)-(1,21)) - │ ├── flags: ∅ - │ ├── keyword_loc: (1,6)-(1,10) = "when" - │ ├── conditions: (length: 1) - │ │ └── @ CallNode (location: (1,11)-(1,14)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,11)-(1,14) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: ∅ - │ └── statements: - │ @ StatementsNode (location: (1,16)-(1,21)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ StringNode (location: (1,16)-(1,21)) - │ ├── flags: newline - │ ├── opening_loc: (1,16)-(1,17) = "'" - │ ├── content_loc: (1,17)-(1,20) = "foo" - │ ├── closing_loc: (1,20)-(1,21) = "'" - │ └── unescaped: "foo" - ├── else_clause: - │ @ ElseNode (location: (1,23)-(1,38)) - │ ├── flags: ∅ - │ ├── else_keyword_loc: (1,23)-(1,27) = "else" - │ ├── statements: - │ │ @ StatementsNode (location: (1,28)-(1,33)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ StringNode (location: (1,28)-(1,33)) - │ │ ├── flags: newline - │ │ ├── opening_loc: (1,28)-(1,29) = "'" - │ │ ├── content_loc: (1,29)-(1,32) = "bar" - │ │ ├── closing_loc: (1,32)-(1,33) = "'" - │ │ └── unescaped: "bar" - │ └── end_keyword_loc: (1,35)-(1,38) = "end" - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (1,35)-(1,38) = "end" diff --git a/test/prism/snapshots/whitequark/case_expr.txt b/test/prism/snapshots/whitequark/case_expr.txt deleted file mode 100644 index 60ab69444f..0000000000 --- a/test/prism/snapshots/whitequark/case_expr.txt +++ /dev/null @@ -1,49 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,30)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,30)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(1,30)) - ├── flags: newline - ├── predicate: - │ @ CallNode (location: (1,5)-(1,8)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,5)-(1,8) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── conditions: (length: 1) - │ └── @ WhenNode (location: (1,10)-(1,25)) - │ ├── flags: ∅ - │ ├── keyword_loc: (1,10)-(1,14) = "when" - │ ├── conditions: (length: 1) - │ │ └── @ StringNode (location: (1,15)-(1,20)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: (1,15)-(1,16) = "'" - │ │ ├── content_loc: (1,16)-(1,19) = "bar" - │ │ ├── closing_loc: (1,19)-(1,20) = "'" - │ │ └── unescaped: "bar" - │ ├── then_keyword_loc: ∅ - │ └── statements: - │ @ StatementsNode (location: (1,22)-(1,25)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,22)-(1,25)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (1,22)-(1,25) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (1,27)-(1,30) = "end" diff --git a/test/prism/snapshots/whitequark/case_expr_else.txt b/test/prism/snapshots/whitequark/case_expr_else.txt deleted file mode 100644 index fe687a1031..0000000000 --- a/test/prism/snapshots/whitequark/case_expr_else.txt +++ /dev/null @@ -1,67 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,40)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,40)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(1,40)) - ├── flags: newline - ├── predicate: - │ @ CallNode (location: (1,5)-(1,8)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,5)-(1,8) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── conditions: (length: 1) - │ └── @ WhenNode (location: (1,10)-(1,25)) - │ ├── flags: ∅ - │ ├── keyword_loc: (1,10)-(1,14) = "when" - │ ├── conditions: (length: 1) - │ │ └── @ StringNode (location: (1,15)-(1,20)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: (1,15)-(1,16) = "'" - │ │ ├── content_loc: (1,16)-(1,19) = "bar" - │ │ ├── closing_loc: (1,19)-(1,20) = "'" - │ │ └── unescaped: "bar" - │ ├── then_keyword_loc: ∅ - │ └── statements: - │ @ StatementsNode (location: (1,22)-(1,25)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,22)-(1,25)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (1,22)-(1,25) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── else_clause: - │ @ ElseNode (location: (1,27)-(1,40)) - │ ├── flags: ∅ - │ ├── else_keyword_loc: (1,27)-(1,31) = "else" - │ ├── statements: - │ │ @ StatementsNode (location: (1,32)-(1,35)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,32)-(1,35)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (1,32)-(1,35) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── end_keyword_loc: (1,37)-(1,40) = "end" - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (1,37)-(1,40) = "end" diff --git a/test/prism/snapshots/whitequark/casgn_scoped.txt b/test/prism/snapshots/whitequark/casgn_scoped.txt deleted file mode 100644 index 03f3b0b25b..0000000000 --- a/test/prism/snapshots/whitequark/casgn_scoped.txt +++ /dev/null @@ -1,24 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ConstantPathWriteNode (location: (1,0)-(1,13)) - ├── flags: newline - ├── target: - │ @ ConstantPathNode (location: (1,0)-(1,8)) - │ ├── flags: ∅ - │ ├── parent: - │ │ @ ConstantReadNode (location: (1,0)-(1,3)) - │ │ ├── flags: ∅ - │ │ └── name: :Bar - │ ├── name: :Foo - │ ├── delimiter_loc: (1,3)-(1,5) = "::" - │ └── name_loc: (1,5)-(1,8) = "Foo" - ├── operator_loc: (1,9)-(1,10) = "=" - └── value: - @ IntegerNode (location: (1,11)-(1,13)) - ├── flags: static_literal, decimal - └── value: 10 diff --git a/test/prism/snapshots/whitequark/casgn_toplevel.txt b/test/prism/snapshots/whitequark/casgn_toplevel.txt deleted file mode 100644 index dbc344a7af..0000000000 --- a/test/prism/snapshots/whitequark/casgn_toplevel.txt +++ /dev/null @@ -1,21 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ConstantPathWriteNode (location: (1,0)-(1,10)) - ├── flags: newline - ├── target: - │ @ ConstantPathNode (location: (1,0)-(1,5)) - │ ├── flags: ∅ - │ ├── parent: ∅ - │ ├── name: :Foo - │ ├── delimiter_loc: (1,0)-(1,2) = "::" - │ └── name_loc: (1,2)-(1,5) = "Foo" - ├── operator_loc: (1,6)-(1,7) = "=" - └── value: - @ IntegerNode (location: (1,8)-(1,10)) - ├── flags: static_literal, decimal - └── value: 10 diff --git a/test/prism/snapshots/whitequark/casgn_unscoped.txt b/test/prism/snapshots/whitequark/casgn_unscoped.txt deleted file mode 100644 index 19b11b1b43..0000000000 --- a/test/prism/snapshots/whitequark/casgn_unscoped.txt +++ /dev/null @@ -1,16 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ConstantWriteNode (location: (1,0)-(1,8)) - ├── flags: newline - ├── name: :Foo - ├── name_loc: (1,0)-(1,3) = "Foo" - ├── value: - │ @ IntegerNode (location: (1,6)-(1,8)) - │ ├── flags: static_literal, decimal - │ └── value: 10 - └── operator_loc: (1,4)-(1,5) = "=" diff --git a/test/prism/snapshots/whitequark/character.txt b/test/prism/snapshots/whitequark/character.txt deleted file mode 100644 index 718ba317fb..0000000000 --- a/test/prism/snapshots/whitequark/character.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,2)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,2)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (1,0)-(1,2)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,1) = "?" - ├── content_loc: (1,1)-(1,2) = "a" - ├── closing_loc: ∅ - └── unescaped: "a" diff --git a/test/prism/snapshots/whitequark/class.txt b/test/prism/snapshots/whitequark/class.txt deleted file mode 100644 index 53de7eb6d6..0000000000 --- a/test/prism/snapshots/whitequark/class.txt +++ /dev/null @@ -1,33 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,14)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ ClassNode (location: (1,0)-(1,13)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (1,0)-(1,5) = "class" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (1,6)-(1,9)) - │ │ ├── flags: ∅ - │ │ └── name: :Foo - │ ├── inheritance_operator_loc: ∅ - │ ├── superclass: ∅ - │ ├── body: ∅ - │ ├── end_keyword_loc: (1,10)-(1,13) = "end" - │ └── name: :Foo - └── @ ClassNode (location: (3,0)-(3,14)) - ├── flags: newline - ├── locals: [] - ├── class_keyword_loc: (3,0)-(3,5) = "class" - ├── constant_path: - │ @ ConstantReadNode (location: (3,6)-(3,9)) - │ ├── flags: ∅ - │ └── name: :Foo - ├── inheritance_operator_loc: ∅ - ├── superclass: ∅ - ├── body: ∅ - ├── end_keyword_loc: (3,11)-(3,14) = "end" - └── name: :Foo diff --git a/test/prism/snapshots/whitequark/class_super.txt b/test/prism/snapshots/whitequark/class_super.txt deleted file mode 100644 index dd9b1d5fe8..0000000000 --- a/test/prism/snapshots/whitequark/class_super.txt +++ /dev/null @@ -1,23 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,20)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,20)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ClassNode (location: (1,0)-(1,20)) - ├── flags: newline - ├── locals: [] - ├── class_keyword_loc: (1,0)-(1,5) = "class" - ├── constant_path: - │ @ ConstantReadNode (location: (1,6)-(1,9)) - │ ├── flags: ∅ - │ └── name: :Foo - ├── inheritance_operator_loc: (1,10)-(1,11) = "<" - ├── superclass: - │ @ ConstantReadNode (location: (1,12)-(1,15)) - │ ├── flags: ∅ - │ └── name: :Bar - ├── body: ∅ - ├── end_keyword_loc: (1,17)-(1,20) = "end" - └── name: :Foo diff --git a/test/prism/snapshots/whitequark/class_super_label.txt b/test/prism/snapshots/whitequark/class_super_label.txt deleted file mode 100644 index 590f971930..0000000000 --- a/test/prism/snapshots/whitequark/class_super_label.txt +++ /dev/null @@ -1,39 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,20)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,20)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ClassNode (location: (1,0)-(1,20)) - ├── flags: newline - ├── locals: [] - ├── class_keyword_loc: (1,0)-(1,5) = "class" - ├── constant_path: - │ @ ConstantReadNode (location: (1,6)-(1,9)) - │ ├── flags: ∅ - │ └── name: :Foo - ├── inheritance_operator_loc: (1,10)-(1,11) = "<" - ├── superclass: - │ @ CallNode (location: (1,12)-(1,15)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,12)-(1,13) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,13)-(1,15)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ SymbolNode (location: (1,13)-(1,15)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,13)-(1,14) = ":" - │ │ ├── value_loc: (1,14)-(1,15) = "b" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "b" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── body: ∅ - ├── end_keyword_loc: (1,17)-(1,20) = "end" - └── name: :Foo diff --git a/test/prism/snapshots/whitequark/comments_before_leading_dot__27.txt b/test/prism/snapshots/whitequark/comments_before_leading_dot__27.txt deleted file mode 100644 index 0f3e727cb0..0000000000 --- a/test/prism/snapshots/whitequark/comments_before_leading_dot__27.txt +++ /dev/null @@ -1,87 +0,0 @@ -@ ProgramNode (location: (1,0)-(18,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(18,4)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ CallNode (location: (1,0)-(3,5)) - │ ├── flags: newline, safe_navigation - │ ├── receiver: - │ │ @ CallNode (location: (1,0)-(1,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (1,0)-(1,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (3,0)-(3,2) = "&." - │ ├── name: :foo - │ ├── message_loc: (3,2)-(3,5) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (6,0)-(8,4)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (6,0)-(6,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (6,0)-(6,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (8,0)-(8,1) = "." - │ ├── name: :foo - │ ├── message_loc: (8,1)-(8,4) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (11,0)-(13,5)) - │ ├── flags: newline, safe_navigation - │ ├── receiver: - │ │ @ CallNode (location: (11,0)-(11,1)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (11,0)-(11,1) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (13,0)-(13,2) = "&." - │ ├── name: :foo - │ ├── message_loc: (13,2)-(13,5) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (16,0)-(18,4)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (16,0)-(16,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (16,0)-(16,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (18,0)-(18,1) = "." - ├── name: :foo - ├── message_loc: (18,1)-(18,4) = "foo" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/complex.txt b/test/prism/snapshots/whitequark/complex.txt deleted file mode 100644 index 51725453e3..0000000000 --- a/test/prism/snapshots/whitequark/complex.txt +++ /dev/null @@ -1,33 +0,0 @@ -@ ProgramNode (location: (1,0)-(7,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(7,4)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ ImaginaryNode (location: (1,0)-(1,5)) - │ ├── flags: newline, static_literal - │ └── numeric: - │ @ FloatNode (location: (1,0)-(1,4)) - │ ├── flags: static_literal - │ └── value: 42.1 - ├── @ ImaginaryNode (location: (3,0)-(3,6)) - │ ├── flags: newline, static_literal - │ └── numeric: - │ @ RationalNode (location: (3,0)-(3,5)) - │ ├── flags: static_literal, decimal - │ ├── numerator: 421 - │ └── denominator: 10 - ├── @ ImaginaryNode (location: (5,0)-(5,3)) - │ ├── flags: newline, static_literal - │ └── numeric: - │ @ IntegerNode (location: (5,0)-(5,2)) - │ ├── flags: static_literal, decimal - │ └── value: 42 - └── @ ImaginaryNode (location: (7,0)-(7,4)) - ├── flags: newline, static_literal - └── numeric: - @ RationalNode (location: (7,0)-(7,3)) - ├── flags: static_literal, decimal - ├── numerator: 42 - └── denominator: 1 diff --git a/test/prism/snapshots/whitequark/cond_begin.txt b/test/prism/snapshots/whitequark/cond_begin.txt deleted file mode 100644 index a25e62a1dc..0000000000 --- a/test/prism/snapshots/whitequark/cond_begin.txt +++ /dev/null @@ -1,46 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,18)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,18)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IfNode (location: (1,0)-(1,18)) - ├── flags: newline - ├── if_keyword_loc: (1,0)-(1,2) = "if" - ├── predicate: - │ @ ParenthesesNode (location: (1,3)-(1,8)) - │ ├── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,4)-(1,7)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,4)-(1,7)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,4)-(1,7) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (1,3)-(1,4) = "(" - │ └── closing_loc: (1,7)-(1,8) = ")" - ├── then_keyword_loc: ∅ - ├── statements: - │ @ StatementsNode (location: (1,10)-(1,13)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,10)-(1,13)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,10)-(1,13) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── subsequent: ∅ - └── end_keyword_loc: (1,15)-(1,18) = "end" diff --git a/test/prism/snapshots/whitequark/cond_begin_masgn.txt b/test/prism/snapshots/whitequark/cond_begin_masgn.txt deleted file mode 100644 index fa939e61a5..0000000000 --- a/test/prism/snapshots/whitequark/cond_begin_masgn.txt +++ /dev/null @@ -1,60 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,25)) -├── flags: ∅ -├── locals: [:a, :b] -└── statements: - @ StatementsNode (location: (1,0)-(1,25)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IfNode (location: (1,0)-(1,25)) - ├── flags: newline - ├── if_keyword_loc: (1,0)-(1,2) = "if" - ├── predicate: - │ @ ParenthesesNode (location: (1,3)-(1,20)) - │ ├── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,4)-(1,19)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 2) - │ │ ├── @ CallNode (location: (1,4)-(1,7)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (1,4)-(1,7) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ MultiWriteNode (location: (1,9)-(1,19)) - │ │ ├── flags: newline - │ │ ├── lefts: (length: 2) - │ │ │ ├── @ LocalVariableTargetNode (location: (1,9)-(1,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ └── depth: 0 - │ │ │ └── @ LocalVariableTargetNode (location: (1,12)-(1,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ └── depth: 0 - │ │ ├── rest: ∅ - │ │ ├── rights: (length: 0) - │ │ ├── lparen_loc: ∅ - │ │ ├── rparen_loc: ∅ - │ │ ├── operator_loc: (1,14)-(1,15) = "=" - │ │ └── value: - │ │ @ CallNode (location: (1,16)-(1,19)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,16)-(1,19) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (1,3)-(1,4) = "(" - │ └── closing_loc: (1,19)-(1,20) = ")" - ├── then_keyword_loc: ∅ - ├── statements: ∅ - ├── subsequent: ∅ - └── end_keyword_loc: (1,22)-(1,25) = "end" diff --git a/test/prism/snapshots/whitequark/cond_eflipflop.txt b/test/prism/snapshots/whitequark/cond_eflipflop.txt deleted file mode 100644 index 7474993f0b..0000000000 --- a/test/prism/snapshots/whitequark/cond_eflipflop.txt +++ /dev/null @@ -1,83 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,17)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,12)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ParenthesesNode (location: (1,1)-(1,12)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (1,2)-(1,11)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ FlipFlopNode (location: (1,2)-(1,11)) - │ │ │ ├── flags: newline, exclude_end - │ │ │ ├── left: - │ │ │ │ @ CallNode (location: (1,2)-(1,5)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :foo - │ │ │ │ ├── message_loc: (1,2)-(1,5) = "foo" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── right: - │ │ │ │ @ CallNode (location: (1,8)-(1,11)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (1,8)-(1,11) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── operator_loc: (1,5)-(1,8) = "..." - │ │ ├── opening_loc: (1,1)-(1,2) = "(" - │ │ └── closing_loc: (1,11)-(1,12) = ")" - │ ├── call_operator_loc: ∅ - │ ├── name: :! - │ ├── message_loc: (1,0)-(1,1) = "!" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ IfNode (location: (3,0)-(3,17)) - ├── flags: newline - ├── if_keyword_loc: (3,0)-(3,2) = "if" - ├── predicate: - │ @ FlipFlopNode (location: (3,3)-(3,12)) - │ ├── flags: exclude_end - │ ├── left: - │ │ @ CallNode (location: (3,3)-(3,6)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (3,3)-(3,6) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── right: - │ │ @ CallNode (location: (3,9)-(3,12)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (3,9)-(3,12) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (3,6)-(3,9) = "..." - ├── then_keyword_loc: ∅ - ├── statements: ∅ - ├── subsequent: ∅ - └── end_keyword_loc: (3,14)-(3,17) = "end" diff --git a/test/prism/snapshots/whitequark/cond_eflipflop_with_beginless_range.txt b/test/prism/snapshots/whitequark/cond_eflipflop_with_beginless_range.txt deleted file mode 100644 index f7ecd1aa6a..0000000000 --- a/test/prism/snapshots/whitequark/cond_eflipflop_with_beginless_range.txt +++ /dev/null @@ -1,30 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IfNode (location: (1,0)-(1,14)) - ├── flags: newline - ├── if_keyword_loc: (1,0)-(1,2) = "if" - ├── predicate: - │ @ FlipFlopNode (location: (1,3)-(1,9)) - │ ├── flags: exclude_end - │ ├── left: ∅ - │ ├── right: - │ │ @ CallNode (location: (1,6)-(1,9)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,6)-(1,9) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (1,3)-(1,6) = "..." - ├── then_keyword_loc: ∅ - ├── statements: ∅ - ├── subsequent: ∅ - └── end_keyword_loc: (1,11)-(1,14) = "end" diff --git a/test/prism/snapshots/whitequark/cond_eflipflop_with_endless_range.txt b/test/prism/snapshots/whitequark/cond_eflipflop_with_endless_range.txt deleted file mode 100644 index f94785895e..0000000000 --- a/test/prism/snapshots/whitequark/cond_eflipflop_with_endless_range.txt +++ /dev/null @@ -1,30 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IfNode (location: (1,0)-(1,14)) - ├── flags: newline - ├── if_keyword_loc: (1,0)-(1,2) = "if" - ├── predicate: - │ @ FlipFlopNode (location: (1,3)-(1,9)) - │ ├── flags: exclude_end - │ ├── left: - │ │ @ CallNode (location: (1,3)-(1,6)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,3)-(1,6) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── right: ∅ - │ └── operator_loc: (1,6)-(1,9) = "..." - ├── then_keyword_loc: ∅ - ├── statements: ∅ - ├── subsequent: ∅ - └── end_keyword_loc: (1,11)-(1,14) = "end" diff --git a/test/prism/snapshots/whitequark/cond_iflipflop.txt b/test/prism/snapshots/whitequark/cond_iflipflop.txt deleted file mode 100644 index 7f11d52d77..0000000000 --- a/test/prism/snapshots/whitequark/cond_iflipflop.txt +++ /dev/null @@ -1,83 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,16)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,16)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,11)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ ParenthesesNode (location: (1,1)-(1,11)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (1,2)-(1,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ FlipFlopNode (location: (1,2)-(1,10)) - │ │ │ ├── flags: newline - │ │ │ ├── left: - │ │ │ │ @ CallNode (location: (1,2)-(1,5)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :foo - │ │ │ │ ├── message_loc: (1,2)-(1,5) = "foo" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── right: - │ │ │ │ @ CallNode (location: (1,7)-(1,10)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (1,7)-(1,10) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── operator_loc: (1,5)-(1,7) = ".." - │ │ ├── opening_loc: (1,1)-(1,2) = "(" - │ │ └── closing_loc: (1,10)-(1,11) = ")" - │ ├── call_operator_loc: ∅ - │ ├── name: :! - │ ├── message_loc: (1,0)-(1,1) = "!" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ IfNode (location: (3,0)-(3,16)) - ├── flags: newline - ├── if_keyword_loc: (3,0)-(3,2) = "if" - ├── predicate: - │ @ FlipFlopNode (location: (3,3)-(3,11)) - │ ├── flags: ∅ - │ ├── left: - │ │ @ CallNode (location: (3,3)-(3,6)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (3,3)-(3,6) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── right: - │ │ @ CallNode (location: (3,8)-(3,11)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (3,8)-(3,11) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (3,6)-(3,8) = ".." - ├── then_keyword_loc: ∅ - ├── statements: ∅ - ├── subsequent: ∅ - └── end_keyword_loc: (3,13)-(3,16) = "end" diff --git a/test/prism/snapshots/whitequark/cond_iflipflop_with_beginless_range.txt b/test/prism/snapshots/whitequark/cond_iflipflop_with_beginless_range.txt deleted file mode 100644 index f0c949755a..0000000000 --- a/test/prism/snapshots/whitequark/cond_iflipflop_with_beginless_range.txt +++ /dev/null @@ -1,30 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IfNode (location: (1,0)-(1,13)) - ├── flags: newline - ├── if_keyword_loc: (1,0)-(1,2) = "if" - ├── predicate: - │ @ FlipFlopNode (location: (1,3)-(1,8)) - │ ├── flags: ∅ - │ ├── left: ∅ - │ ├── right: - │ │ @ CallNode (location: (1,5)-(1,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,5)-(1,8) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (1,3)-(1,5) = ".." - ├── then_keyword_loc: ∅ - ├── statements: ∅ - ├── subsequent: ∅ - └── end_keyword_loc: (1,10)-(1,13) = "end" diff --git a/test/prism/snapshots/whitequark/cond_iflipflop_with_endless_range.txt b/test/prism/snapshots/whitequark/cond_iflipflop_with_endless_range.txt deleted file mode 100644 index 11b0f89083..0000000000 --- a/test/prism/snapshots/whitequark/cond_iflipflop_with_endless_range.txt +++ /dev/null @@ -1,30 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IfNode (location: (1,0)-(1,13)) - ├── flags: newline - ├── if_keyword_loc: (1,0)-(1,2) = "if" - ├── predicate: - │ @ FlipFlopNode (location: (1,3)-(1,8)) - │ ├── flags: ∅ - │ ├── left: - │ │ @ CallNode (location: (1,3)-(1,6)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,3)-(1,6) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── right: ∅ - │ └── operator_loc: (1,6)-(1,8) = ".." - ├── then_keyword_loc: ∅ - ├── statements: ∅ - ├── subsequent: ∅ - └── end_keyword_loc: (1,10)-(1,13) = "end" diff --git a/test/prism/snapshots/whitequark/cond_match_current_line.txt b/test/prism/snapshots/whitequark/cond_match_current_line.txt deleted file mode 100644 index 6694d733ce..0000000000 --- a/test/prism/snapshots/whitequark/cond_match_current_line.txt +++ /dev/null @@ -1,37 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,13)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,6)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ MatchLastLineNode (location: (1,1)-(1,6)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,1)-(1,2) = "/" - │ │ ├── content_loc: (1,2)-(1,5) = "wat" - │ │ ├── closing_loc: (1,5)-(1,6) = "/" - │ │ └── unescaped: "wat" - │ ├── call_operator_loc: ∅ - │ ├── name: :! - │ ├── message_loc: (1,0)-(1,1) = "!" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ IfNode (location: (3,0)-(3,13)) - ├── flags: newline - ├── if_keyword_loc: (3,0)-(3,2) = "if" - ├── predicate: - │ @ MatchLastLineNode (location: (3,3)-(3,8)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (3,3)-(3,4) = "/" - │ ├── content_loc: (3,4)-(3,7) = "wat" - │ ├── closing_loc: (3,7)-(3,8) = "/" - │ └── unescaped: "wat" - ├── then_keyword_loc: ∅ - ├── statements: ∅ - ├── subsequent: ∅ - └── end_keyword_loc: (3,10)-(3,13) = "end" diff --git a/test/prism/snapshots/whitequark/const_op_asgn.txt b/test/prism/snapshots/whitequark/const_op_asgn.txt deleted file mode 100644 index 32c5c7c331..0000000000 --- a/test/prism/snapshots/whitequark/const_op_asgn.txt +++ /dev/null @@ -1,114 +0,0 @@ -@ ProgramNode (location: (1,0)-(9,25)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(9,25)) - ├── flags: ∅ - └── body: (length: 5) - ├── @ ConstantPathOperatorWriteNode (location: (1,0)-(1,8)) - │ ├── flags: newline - │ ├── target: - │ │ @ ConstantPathNode (location: (1,0)-(1,3)) - │ │ ├── flags: ∅ - │ │ ├── parent: ∅ - │ │ ├── name: :A - │ │ ├── delimiter_loc: (1,0)-(1,2) = "::" - │ │ └── name_loc: (1,2)-(1,3) = "A" - │ ├── binary_operator_loc: (1,4)-(1,6) = "+=" - │ ├── value: - │ │ @ IntegerNode (location: (1,7)-(1,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── binary_operator: :+ - ├── @ ConstantOperatorWriteNode (location: (3,0)-(3,6)) - │ ├── flags: newline - │ ├── name: :A - │ ├── name_loc: (3,0)-(3,1) = "A" - │ ├── binary_operator_loc: (3,2)-(3,4) = "+=" - │ ├── value: - │ │ @ IntegerNode (location: (3,5)-(3,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── binary_operator: :+ - ├── @ ConstantPathOperatorWriteNode (location: (5,0)-(5,9)) - │ ├── flags: newline - │ ├── target: - │ │ @ ConstantPathNode (location: (5,0)-(5,4)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ ConstantReadNode (location: (5,0)-(5,1)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :B - │ │ ├── name: :A - │ │ ├── delimiter_loc: (5,1)-(5,3) = "::" - │ │ └── name_loc: (5,3)-(5,4) = "A" - │ ├── binary_operator_loc: (5,5)-(5,7) = "+=" - │ ├── value: - │ │ @ IntegerNode (location: (5,8)-(5,9)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── binary_operator: :+ - ├── @ DefNode (location: (7,0)-(7,21)) - │ ├── flags: newline - │ ├── name: :x - │ ├── name_loc: (7,4)-(7,5) = "x" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (7,7)-(7,16)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ ConstantPathOrWriteNode (location: (7,7)-(7,16)) - │ │ ├── flags: newline - │ │ ├── target: - │ │ │ @ ConstantPathNode (location: (7,7)-(7,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parent: ∅ - │ │ │ ├── name: :A - │ │ │ ├── delimiter_loc: (7,7)-(7,9) = "::" - │ │ │ └── name_loc: (7,9)-(7,10) = "A" - │ │ ├── operator_loc: (7,11)-(7,14) = "||=" - │ │ └── value: - │ │ @ IntegerNode (location: (7,15)-(7,16)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── locals: [] - │ ├── def_keyword_loc: (7,0)-(7,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (7,18)-(7,21) = "end" - └── @ DefNode (location: (9,0)-(9,25)) - ├── flags: newline - ├── name: :x - ├── name_loc: (9,4)-(9,5) = "x" - ├── receiver: ∅ - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (9,7)-(9,20)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ ConstantPathOrWriteNode (location: (9,7)-(9,20)) - │ ├── flags: newline - │ ├── target: - │ │ @ ConstantPathNode (location: (9,7)-(9,14)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ SelfNode (location: (9,7)-(9,11)) - │ │ │ └── flags: ∅ - │ │ ├── name: :A - │ │ ├── delimiter_loc: (9,11)-(9,13) = "::" - │ │ └── name_loc: (9,13)-(9,14) = "A" - │ ├── operator_loc: (9,15)-(9,18) = "||=" - │ └── value: - │ @ IntegerNode (location: (9,19)-(9,20)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── locals: [] - ├── def_keyword_loc: (9,0)-(9,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (9,22)-(9,25) = "end" diff --git a/test/prism/snapshots/whitequark/const_scoped.txt b/test/prism/snapshots/whitequark/const_scoped.txt deleted file mode 100644 index c059437a24..0000000000 --- a/test/prism/snapshots/whitequark/const_scoped.txt +++ /dev/null @@ -1,16 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ConstantPathNode (location: (1,0)-(1,8)) - ├── flags: newline - ├── parent: - │ @ ConstantReadNode (location: (1,0)-(1,3)) - │ ├── flags: ∅ - │ └── name: :Bar - ├── name: :Foo - ├── delimiter_loc: (1,3)-(1,5) = "::" - └── name_loc: (1,5)-(1,8) = "Foo" diff --git a/test/prism/snapshots/whitequark/const_toplevel.txt b/test/prism/snapshots/whitequark/const_toplevel.txt deleted file mode 100644 index 000239741c..0000000000 --- a/test/prism/snapshots/whitequark/const_toplevel.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ConstantPathNode (location: (1,0)-(1,5)) - ├── flags: newline - ├── parent: ∅ - ├── name: :Foo - ├── delimiter_loc: (1,0)-(1,2) = "::" - └── name_loc: (1,2)-(1,5) = "Foo" diff --git a/test/prism/snapshots/whitequark/const_unscoped.txt b/test/prism/snapshots/whitequark/const_unscoped.txt deleted file mode 100644 index 8fbc92ad7c..0000000000 --- a/test/prism/snapshots/whitequark/const_unscoped.txt +++ /dev/null @@ -1,10 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ConstantReadNode (location: (1,0)-(1,3)) - ├── flags: newline - └── name: :Foo diff --git a/test/prism/snapshots/whitequark/cpath.txt b/test/prism/snapshots/whitequark/cpath.txt deleted file mode 100644 index 14f2ee6fbc..0000000000 --- a/test/prism/snapshots/whitequark/cpath.txt +++ /dev/null @@ -1,38 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,20)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,20)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ ModuleNode (location: (1,0)-(1,17)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── module_keyword_loc: (1,0)-(1,6) = "module" - │ ├── constant_path: - │ │ @ ConstantPathNode (location: (1,7)-(1,12)) - │ │ ├── flags: ∅ - │ │ ├── parent: ∅ - │ │ ├── name: :Foo - │ │ ├── delimiter_loc: (1,7)-(1,9) = "::" - │ │ └── name_loc: (1,9)-(1,12) = "Foo" - │ ├── body: ∅ - │ ├── end_keyword_loc: (1,14)-(1,17) = "end" - │ └── name: :Foo - └── @ ModuleNode (location: (3,0)-(3,20)) - ├── flags: newline - ├── locals: [] - ├── module_keyword_loc: (3,0)-(3,6) = "module" - ├── constant_path: - │ @ ConstantPathNode (location: (3,7)-(3,15)) - │ ├── flags: ∅ - │ ├── parent: - │ │ @ ConstantReadNode (location: (3,7)-(3,10)) - │ │ ├── flags: ∅ - │ │ └── name: :Bar - │ ├── name: :Foo - │ ├── delimiter_loc: (3,10)-(3,12) = "::" - │ └── name_loc: (3,12)-(3,15) = "Foo" - ├── body: ∅ - ├── end_keyword_loc: (3,17)-(3,20) = "end" - └── name: :Foo diff --git a/test/prism/snapshots/whitequark/cvar.txt b/test/prism/snapshots/whitequark/cvar.txt deleted file mode 100644 index 03163eec6b..0000000000 --- a/test/prism/snapshots/whitequark/cvar.txt +++ /dev/null @@ -1,10 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ClassVariableReadNode (location: (1,0)-(1,5)) - ├── flags: newline - └── name: :@@foo diff --git a/test/prism/snapshots/whitequark/cvasgn.txt b/test/prism/snapshots/whitequark/cvasgn.txt deleted file mode 100644 index 485d6853ba..0000000000 --- a/test/prism/snapshots/whitequark/cvasgn.txt +++ /dev/null @@ -1,16 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ClassVariableWriteNode (location: (1,0)-(1,10)) - ├── flags: newline - ├── name: :@@var - ├── name_loc: (1,0)-(1,5) = "@@var" - ├── value: - │ @ IntegerNode (location: (1,8)-(1,10)) - │ ├── flags: static_literal, decimal - │ └── value: 10 - └── operator_loc: (1,6)-(1,7) = "=" diff --git a/test/prism/snapshots/whitequark/dedenting_heredoc.txt b/test/prism/snapshots/whitequark/dedenting_heredoc.txt deleted file mode 100644 index 7ebfd094bc..0000000000 --- a/test/prism/snapshots/whitequark/dedenting_heredoc.txt +++ /dev/null @@ -1,505 +0,0 @@ -@ ProgramNode (location: (1,0)-(72,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(72,8)) - ├── flags: ∅ - └── body: (length: 16) - ├── @ CallNode (location: (1,0)-(1,8)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :p - │ ├── message_loc: (1,0)-(1,1) = "p" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,2)-(1,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (1,2)-(1,8)) - │ │ ├── flags: static_literal, mutable - │ │ ├── opening_loc: (1,2)-(1,8) = "<<~\"E\"" - │ │ ├── parts: (length: 3) - │ │ │ ├── @ StringNode (location: (2,0)-(3,0)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (2,0)-(3,0) = " x\n" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: " x\n" - │ │ │ ├── @ EmbeddedStatementsNode (location: (3,2)-(3,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (3,2)-(3,4) = "\#{" - │ │ │ │ ├── statements: - │ │ │ │ │ @ StatementsNode (location: (3,4)-(3,9)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ StringNode (location: (3,4)-(3,9)) - │ │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ │ ├── opening_loc: (3,4)-(3,5) = "\"" - │ │ │ │ │ ├── content_loc: (3,5)-(3,8) = " y" - │ │ │ │ │ ├── closing_loc: (3,8)-(3,9) = "\"" - │ │ │ │ │ └── unescaped: " y" - │ │ │ │ └── closing_loc: (3,9)-(3,10) = "}" - │ │ │ └── @ StringNode (location: (3,10)-(4,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (3,10)-(4,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ └── closing_loc: (4,0)-(5,0) = "E\n" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (6,0)-(6,8)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :p - │ ├── message_loc: (6,0)-(6,1) = "p" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (6,2)-(6,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (6,2)-(6,8)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (6,2)-(6,8) = "<<~\"E\"" - │ │ ├── parts: (length: 3) - │ │ │ ├── @ StringNode (location: (7,0)-(8,0)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (7,0)-(8,0) = " x\n" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: " x\n" - │ │ │ ├── @ EmbeddedStatementsNode (location: (8,2)-(8,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (8,2)-(8,4) = "\#{" - │ │ │ │ ├── statements: - │ │ │ │ │ @ StatementsNode (location: (8,4)-(8,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (8,4)-(8,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :foo - │ │ │ │ │ ├── message_loc: (8,4)-(8,7) = "foo" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ └── closing_loc: (8,7)-(8,8) = "}" - │ │ │ └── @ StringNode (location: (8,8)-(9,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (8,8)-(9,0) = "\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\n" - │ │ └── closing_loc: (9,0)-(10,0) = "E\n" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (11,0)-(11,6)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :p - │ ├── message_loc: (11,0)-(11,1) = "p" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (11,2)-(11,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (11,2)-(11,6)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (11,2)-(11,6) = "<<~E" - │ │ ├── parts: (length: 2) - │ │ │ ├── @ StringNode (location: (12,0)-(13,0)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (12,0)-(13,0) = "\tx\n" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "x\n" - │ │ │ └── @ StringNode (location: (13,0)-(14,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (13,0)-(14,0) = " y\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "y\n" - │ │ └── closing_loc: (14,0)-(15,0) = "E\n" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (16,0)-(16,6)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :p - │ ├── message_loc: (16,0)-(16,1) = "p" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (16,2)-(16,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (16,2)-(16,6)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (16,2)-(16,6) = "<<~E" - │ │ ├── parts: (length: 2) - │ │ │ ├── @ StringNode (location: (17,0)-(18,0)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (17,0)-(18,0) = "\tx\n" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "\tx\n" - │ │ │ └── @ StringNode (location: (18,0)-(19,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (18,0)-(19,0) = " y\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "y\n" - │ │ └── closing_loc: (19,0)-(20,0) = "E\n" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (21,0)-(21,6)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :p - │ ├── message_loc: (21,0)-(21,1) = "p" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (21,2)-(21,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (21,2)-(21,6)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (21,2)-(21,6) = "<<~E" - │ │ ├── parts: (length: 2) - │ │ │ ├── @ StringNode (location: (22,0)-(23,0)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (22,0)-(23,0) = " \tx\n" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "x\n" - │ │ │ └── @ StringNode (location: (23,0)-(24,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (23,0)-(24,0) = " y\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "y\n" - │ │ └── closing_loc: (24,0)-(25,0) = "E\n" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (26,0)-(26,6)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :p - │ ├── message_loc: (26,0)-(26,1) = "p" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (26,2)-(26,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (26,2)-(26,6)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (26,2)-(26,6) = "<<~E" - │ │ ├── parts: (length: 2) - │ │ │ ├── @ StringNode (location: (27,0)-(28,0)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (27,0)-(28,0) = " \tx\n" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "\tx\n" - │ │ │ └── @ StringNode (location: (28,0)-(29,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (28,0)-(29,0) = "\ty\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "y\n" - │ │ └── closing_loc: (29,0)-(30,0) = "E\n" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (31,0)-(31,6)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :p - │ ├── message_loc: (31,0)-(31,1) = "p" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (31,2)-(31,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (31,2)-(31,6)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (31,2)-(31,6) = "<<~E" - │ │ ├── parts: (length: 2) - │ │ │ ├── @ StringNode (location: (32,0)-(33,0)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (32,0)-(33,0) = " x\n" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: " x\n" - │ │ │ └── @ StringNode (location: (33,0)-(34,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (33,0)-(34,0) = " \\\ty\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "\ty\n" - │ │ └── closing_loc: (34,0)-(35,0) = "E\n" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (36,0)-(36,6)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :p - │ ├── message_loc: (36,0)-(36,1) = "p" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (36,2)-(36,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (36,2)-(36,6)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (36,2)-(36,6) = "<<~E" - │ │ ├── parts: (length: 2) - │ │ │ ├── @ StringNode (location: (37,0)-(38,0)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (37,0)-(38,0) = " x\n" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: " x\n" - │ │ │ └── @ StringNode (location: (38,0)-(39,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (38,0)-(39,0) = " \\ y\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: " y\n" - │ │ └── closing_loc: (39,0)-(40,0) = "E\n" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (41,0)-(41,6)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :p - │ ├── message_loc: (41,0)-(41,1) = "p" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (41,2)-(41,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (41,2)-(41,6)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (41,2)-(41,6) = "<<~E" - │ │ ├── content_loc: (42,0)-(42,0) = "" - │ │ ├── closing_loc: (42,0)-(43,0) = " E\n" - │ │ └── unescaped: "" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (44,0)-(44,6)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :p - │ ├── message_loc: (44,0)-(44,1) = "p" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (44,2)-(44,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (44,2)-(44,6)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (44,2)-(44,6) = "<<~E" - │ │ ├── parts: (length: 3) - │ │ │ ├── @ StringNode (location: (45,0)-(46,0)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (45,0)-(46,0) = " x\n" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: " x\n" - │ │ │ ├── @ StringNode (location: (46,0)-(47,0)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (46,0)-(47,0) = "\n" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "\n" - │ │ │ └── @ StringNode (location: (47,0)-(48,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (47,0)-(48,0) = "y\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "y\n" - │ │ └── closing_loc: (48,0)-(49,0) = "E\n" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (50,0)-(50,6)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :p - │ ├── message_loc: (50,0)-(50,1) = "p" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (50,2)-(50,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (50,2)-(50,6)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (50,2)-(50,6) = "<<~E" - │ │ ├── parts: (length: 3) - │ │ │ ├── @ StringNode (location: (51,0)-(52,0)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (51,0)-(52,0) = " x\n" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "x\n" - │ │ │ ├── @ StringNode (location: (52,0)-(53,0)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (52,0)-(53,0) = " \n" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: " \n" - │ │ │ └── @ StringNode (location: (53,0)-(54,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (53,0)-(54,0) = " y\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "y\n" - │ │ └── closing_loc: (54,0)-(55,0) = "E\n" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (56,0)-(56,6)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :p - │ ├── message_loc: (56,0)-(56,1) = "p" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (56,2)-(56,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ InterpolatedStringNode (location: (56,2)-(56,6)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (56,2)-(56,6) = "<<~E" - │ │ ├── parts: (length: 2) - │ │ │ ├── @ StringNode (location: (57,0)-(58,0)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (57,0)-(58,0) = " x\n" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "x\n" - │ │ │ └── @ StringNode (location: (58,0)-(59,0)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (58,0)-(59,0) = " y\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: " y\n" - │ │ └── closing_loc: (59,0)-(60,0) = "E\n" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (61,0)-(61,6)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :p - │ ├── message_loc: (61,0)-(61,1) = "p" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (61,2)-(61,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (61,2)-(61,6)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (61,2)-(61,6) = "<<~E" - │ │ ├── content_loc: (62,0)-(63,0) = " x\n" - │ │ ├── closing_loc: (63,0)-(64,0) = "E\n" - │ │ └── unescaped: "x\n" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (65,0)-(65,6)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :p - │ ├── message_loc: (65,0)-(65,1) = "p" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (65,2)-(65,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (65,2)-(65,6)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (65,2)-(65,6) = "<<~E" - │ │ ├── content_loc: (66,0)-(67,0) = " ð\n" - │ │ ├── closing_loc: (67,0)-(68,0) = "E\n" - │ │ └── unescaped: "ð\n" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (69,0)-(69,6)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :p - │ ├── message_loc: (69,0)-(69,1) = "p" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (69,2)-(69,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ StringNode (location: (69,2)-(69,6)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (69,2)-(69,6) = "<<~E" - │ │ ├── content_loc: (70,0)-(70,0) = "" - │ │ ├── closing_loc: (70,0)-(71,0) = "E\n" - │ │ └── unescaped: "" - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (72,0)-(72,8)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :p - ├── message_loc: (72,0)-(72,1) = "p" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (72,2)-(72,8)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ InterpolatedXStringNode (location: (72,2)-(72,8)) - │ ├── flags: ∅ - │ ├── opening_loc: (72,2)-(72,8) = "<<~`E`" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (73,0)-(74,0)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (73,0)-(74,0) = " x\n" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: " x\n" - │ │ ├── @ EmbeddedStatementsNode (location: (74,2)-(74,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (74,2)-(74,4) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (74,4)-(74,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (74,4)-(74,7)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :foo - │ │ │ │ ├── message_loc: (74,4)-(74,7) = "foo" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── closing_loc: (74,7)-(74,8) = "}" - │ │ └── @ StringNode (location: (74,8)-(75,0)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (74,8)-(75,0) = "\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\n" - │ └── closing_loc: (75,0)-(76,0) = "E\n" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/dedenting_interpolating_heredoc_fake_line_continuation.txt b/test/prism/snapshots/whitequark/dedenting_interpolating_heredoc_fake_line_continuation.txt deleted file mode 100644 index 6626d0a330..0000000000 --- a/test/prism/snapshots/whitequark/dedenting_interpolating_heredoc_fake_line_continuation.txt +++ /dev/null @@ -1,24 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(1,8)) - ├── flags: newline, static_literal - ├── opening_loc: (1,0)-(1,8) = "<<~'FOO'" - ├── parts: (length: 2) - │ ├── @ StringNode (location: (2,0)-(3,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (2,0)-(3,0) = " baz\\\\\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "baz\\\\\n" - │ └── @ StringNode (location: (3,0)-(4,0)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (3,0)-(4,0) = " qux\n" - │ ├── closing_loc: ∅ - │ └── unescaped: "qux\n" - └── closing_loc: (4,0)-(5,0) = "FOO\n" diff --git a/test/prism/snapshots/whitequark/dedenting_non_interpolating_heredoc_line_continuation.txt b/test/prism/snapshots/whitequark/dedenting_non_interpolating_heredoc_line_continuation.txt deleted file mode 100644 index ee985b46d6..0000000000 --- a/test/prism/snapshots/whitequark/dedenting_non_interpolating_heredoc_line_continuation.txt +++ /dev/null @@ -1,24 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(1,8)) - ├── flags: newline, static_literal - ├── opening_loc: (1,0)-(1,8) = "<<~'FOO'" - ├── parts: (length: 2) - │ ├── @ StringNode (location: (2,0)-(3,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (2,0)-(3,0) = " baz\\\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "baz\\\n" - │ └── @ StringNode (location: (3,0)-(4,0)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (3,0)-(4,0) = " qux\n" - │ ├── closing_loc: ∅ - │ └── unescaped: "qux\n" - └── closing_loc: (4,0)-(5,0) = "FOO\n" diff --git a/test/prism/snapshots/whitequark/def.txt b/test/prism/snapshots/whitequark/def.txt deleted file mode 100644 index 937d44a9d5..0000000000 --- a/test/prism/snapshots/whitequark/def.txt +++ /dev/null @@ -1,91 +0,0 @@ -@ ProgramNode (location: (1,0)-(11,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(11,14)) - ├── flags: ∅ - └── body: (length: 6) - ├── @ DefNode (location: (1,0)-(1,14)) - │ ├── flags: newline - │ ├── name: :BEGIN - │ ├── name_loc: (1,4)-(1,9) = "BEGIN" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (1,11)-(1,14) = "end" - ├── @ DefNode (location: (3,0)-(3,12)) - │ ├── flags: newline - │ ├── name: :END - │ ├── name_loc: (3,4)-(3,7) = "END" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (3,0)-(3,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (3,9)-(3,12) = "end" - ├── @ DefNode (location: (5,0)-(5,15)) - │ ├── flags: newline - │ ├── name: :String - │ ├── name_loc: (5,4)-(5,10) = "String" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (5,0)-(5,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (5,12)-(5,15) = "end" - ├── @ DefNode (location: (7,0)-(7,16)) - │ ├── flags: newline - │ ├── name: :String= - │ ├── name_loc: (7,4)-(7,11) = "String=" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (7,0)-(7,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (7,13)-(7,16) = "end" - ├── @ DefNode (location: (9,0)-(9,12)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (9,4)-(9,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (9,0)-(9,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (9,9)-(9,12) = "end" - └── @ DefNode (location: (11,0)-(11,14)) - ├── flags: newline - ├── name: :until - ├── name_loc: (11,4)-(11,9) = "until" - ├── receiver: ∅ - ├── parameters: ∅ - ├── body: ∅ - ├── locals: [] - ├── def_keyword_loc: (11,0)-(11,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (11,11)-(11,14) = "end" diff --git a/test/prism/snapshots/whitequark/defined.txt b/test/prism/snapshots/whitequark/defined.txt deleted file mode 100644 index 77e102e539..0000000000 --- a/test/prism/snapshots/whitequark/defined.txt +++ /dev/null @@ -1,48 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,13)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ DefinedNode (location: (1,0)-(1,13)) - │ ├── flags: newline - │ ├── lparen_loc: ∅ - │ ├── value: - │ │ @ InstanceVariableReadNode (location: (1,9)-(1,13)) - │ │ ├── flags: ∅ - │ │ └── name: :@foo - │ ├── rparen_loc: ∅ - │ └── keyword_loc: (1,0)-(1,8) = "defined?" - ├── @ DefinedNode (location: (3,0)-(3,12)) - │ ├── flags: newline - │ ├── lparen_loc: ∅ - │ ├── value: - │ │ @ CallNode (location: (3,9)-(3,12)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (3,9)-(3,12) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rparen_loc: ∅ - │ └── keyword_loc: (3,0)-(3,8) = "defined?" - └── @ DefinedNode (location: (5,0)-(5,13)) - ├── flags: newline - ├── lparen_loc: (5,8)-(5,9) = "(" - ├── value: - │ @ CallNode (location: (5,9)-(5,12)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (5,9)-(5,12) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── rparen_loc: (5,12)-(5,13) = ")" - └── keyword_loc: (5,0)-(5,8) = "defined?" diff --git a/test/prism/snapshots/whitequark/defs.txt b/test/prism/snapshots/whitequark/defs.txt deleted file mode 100644 index 92b9e38b62..0000000000 --- a/test/prism/snapshots/whitequark/defs.txt +++ /dev/null @@ -1,102 +0,0 @@ -@ ProgramNode (location: (1,0)-(9,18)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(9,18)) - ├── flags: ∅ - └── body: (length: 5) - ├── @ DefNode (location: (1,0)-(1,18)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (1,10)-(1,13) = "foo" - │ ├── receiver: - │ │ @ ParenthesesNode (location: (1,4)-(1,9)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ CallNode (location: (1,5)-(1,8)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (1,5)-(1,8) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (1,4)-(1,5) = "(" - │ │ └── closing_loc: (1,8)-(1,9) = ")" - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: (1,9)-(1,10) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (1,15)-(1,18) = "end" - ├── @ DefNode (location: (3,0)-(3,19)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (3,11)-(3,14) = "foo" - │ ├── receiver: - │ │ @ ConstantReadNode (location: (3,4)-(3,10)) - │ │ ├── flags: ∅ - │ │ └── name: :String - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (3,0)-(3,3) = "def" - │ ├── operator_loc: (3,10)-(3,11) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (3,16)-(3,19) = "end" - ├── @ DefNode (location: (5,0)-(5,20)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (5,12)-(5,15) = "foo" - │ ├── receiver: - │ │ @ ConstantReadNode (location: (5,4)-(5,10)) - │ │ ├── flags: ∅ - │ │ └── name: :String - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (5,0)-(5,3) = "def" - │ ├── operator_loc: (5,10)-(5,12) = "::" - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (5,17)-(5,20) = "end" - ├── @ DefNode (location: (7,0)-(7,17)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (7,9)-(7,12) = "foo" - │ ├── receiver: - │ │ @ SelfNode (location: (7,4)-(7,8)) - │ │ └── flags: ∅ - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (7,0)-(7,3) = "def" - │ ├── operator_loc: (7,8)-(7,9) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (7,14)-(7,17) = "end" - └── @ DefNode (location: (9,0)-(9,18)) - ├── flags: newline - ├── name: :foo - ├── name_loc: (9,10)-(9,13) = "foo" - ├── receiver: - │ @ SelfNode (location: (9,4)-(9,8)) - │ └── flags: ∅ - ├── parameters: ∅ - ├── body: ∅ - ├── locals: [] - ├── def_keyword_loc: (9,0)-(9,3) = "def" - ├── operator_loc: (9,8)-(9,10) = "::" - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (9,15)-(9,18) = "end" diff --git a/test/prism/snapshots/whitequark/empty_stmt.txt b/test/prism/snapshots/whitequark/empty_stmt.txt deleted file mode 100644 index 5756285aaf..0000000000 --- a/test/prism/snapshots/whitequark/empty_stmt.txt +++ /dev/null @@ -1,7 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,0)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,0)) - ├── flags: ∅ - └── body: (length: 0) diff --git a/test/prism/snapshots/whitequark/endless_comparison_method.txt b/test/prism/snapshots/whitequark/endless_comparison_method.txt deleted file mode 100644 index 81fd4a07c5..0000000000 --- a/test/prism/snapshots/whitequark/endless_comparison_method.txt +++ /dev/null @@ -1,241 +0,0 @@ -@ ProgramNode (location: (1,0)-(11,28)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(11,28)) - ├── flags: ∅ - └── body: (length: 6) - ├── @ DefNode (location: (1,0)-(1,28)) - │ ├── flags: newline - │ ├── name: :!= - │ ├── name_loc: (1,4)-(1,6) = "!=" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,7)-(1,12)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,7)-(1,12)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :other - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,16)-(1,28)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,16)-(1,28)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :do_something - │ │ ├── message_loc: (1,16)-(1,28) = "do_something" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [:other] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (1,6)-(1,7) = "(" - │ ├── rparen_loc: (1,12)-(1,13) = ")" - │ ├── equal_loc: (1,14)-(1,15) = "=" - │ └── end_keyword_loc: ∅ - ├── @ DefNode (location: (3,0)-(3,28)) - │ ├── flags: newline - │ ├── name: :!= - │ ├── name_loc: (3,4)-(3,6) = "!=" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (3,7)-(3,12)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (3,7)-(3,12)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :other - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (3,16)-(3,28)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (3,16)-(3,28)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :do_something - │ │ ├── message_loc: (3,16)-(3,28) = "do_something" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [:other] - │ ├── def_keyword_loc: (3,0)-(3,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (3,6)-(3,7) = "(" - │ ├── rparen_loc: (3,12)-(3,13) = ")" - │ ├── equal_loc: (3,14)-(3,15) = "=" - │ └── end_keyword_loc: ∅ - ├── @ DefNode (location: (5,0)-(5,28)) - │ ├── flags: newline - │ ├── name: :<= - │ ├── name_loc: (5,4)-(5,6) = "<=" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (5,7)-(5,12)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (5,7)-(5,12)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :other - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (5,16)-(5,28)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (5,16)-(5,28)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :do_something - │ │ ├── message_loc: (5,16)-(5,28) = "do_something" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [:other] - │ ├── def_keyword_loc: (5,0)-(5,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (5,6)-(5,7) = "(" - │ ├── rparen_loc: (5,12)-(5,13) = ")" - │ ├── equal_loc: (5,14)-(5,15) = "=" - │ └── end_keyword_loc: ∅ - ├── @ DefNode (location: (7,0)-(7,28)) - │ ├── flags: newline - │ ├── name: :== - │ ├── name_loc: (7,4)-(7,6) = "==" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (7,7)-(7,12)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (7,7)-(7,12)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :other - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (7,16)-(7,28)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (7,16)-(7,28)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :do_something - │ │ ├── message_loc: (7,16)-(7,28) = "do_something" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [:other] - │ ├── def_keyword_loc: (7,0)-(7,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (7,6)-(7,7) = "(" - │ ├── rparen_loc: (7,12)-(7,13) = ")" - │ ├── equal_loc: (7,14)-(7,15) = "=" - │ └── end_keyword_loc: ∅ - ├── @ DefNode (location: (9,0)-(9,29)) - │ ├── flags: newline - │ ├── name: :=== - │ ├── name_loc: (9,4)-(9,7) = "===" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (9,8)-(9,13)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (9,8)-(9,13)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :other - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (9,17)-(9,29)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (9,17)-(9,29)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :do_something - │ │ ├── message_loc: (9,17)-(9,29) = "do_something" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [:other] - │ ├── def_keyword_loc: (9,0)-(9,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (9,7)-(9,8) = "(" - │ ├── rparen_loc: (9,13)-(9,14) = ")" - │ ├── equal_loc: (9,15)-(9,16) = "=" - │ └── end_keyword_loc: ∅ - └── @ DefNode (location: (11,0)-(11,28)) - ├── flags: newline - ├── name: :>= - ├── name_loc: (11,4)-(11,6) = ">=" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (11,7)-(11,12)) - │ ├── flags: ∅ - │ ├── requireds: (length: 1) - │ │ └── @ RequiredParameterNode (location: (11,7)-(11,12)) - │ │ ├── flags: ∅ - │ │ └── name: :other - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (11,16)-(11,28)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (11,16)-(11,28)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :do_something - │ ├── message_loc: (11,16)-(11,28) = "do_something" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── locals: [:other] - ├── def_keyword_loc: (11,0)-(11,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (11,6)-(11,7) = "(" - ├── rparen_loc: (11,12)-(11,13) = ")" - ├── equal_loc: (11,14)-(11,15) = "=" - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/whitequark/endless_method.txt b/test/prism/snapshots/whitequark/endless_method.txt deleted file mode 100644 index 3c24ab2a7d..0000000000 --- a/test/prism/snapshots/whitequark/endless_method.txt +++ /dev/null @@ -1,165 +0,0 @@ -@ ProgramNode (location: (1,0)-(7,22)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(7,22)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ DefNode (location: (1,0)-(1,14)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (1,4)-(1,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,12)-(1,14)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (1,12)-(1,14)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 42 - │ ├── locals: [] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (1,7)-(1,8) = "(" - │ ├── rparen_loc: (1,8)-(1,9) = ")" - │ ├── equal_loc: (1,10)-(1,11) = "=" - │ └── end_keyword_loc: ∅ - ├── @ DefNode (location: (3,0)-(3,18)) - │ ├── flags: newline - │ ├── name: :inc - │ ├── name_loc: (3,4)-(3,7) = "inc" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (3,8)-(3,9)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (3,8)-(3,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :x - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (3,13)-(3,18)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (3,13)-(3,18)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ LocalVariableReadNode (location: (3,13)-(3,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :x - │ │ │ └── depth: 0 - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :+ - │ │ ├── message_loc: (3,15)-(3,16) = "+" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (3,17)-(3,18)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (3,17)-(3,18)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [:x] - │ ├── def_keyword_loc: (3,0)-(3,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (3,7)-(3,8) = "(" - │ ├── rparen_loc: (3,9)-(3,10) = ")" - │ ├── equal_loc: (3,11)-(3,12) = "=" - │ └── end_keyword_loc: ∅ - ├── @ DefNode (location: (5,0)-(5,18)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (5,8)-(5,11) = "foo" - │ ├── receiver: - │ │ @ CallNode (location: (5,4)-(5,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :obj - │ │ ├── message_loc: (5,4)-(5,7) = "obj" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (5,16)-(5,18)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (5,16)-(5,18)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 42 - │ ├── locals: [] - │ ├── def_keyword_loc: (5,0)-(5,3) = "def" - │ ├── operator_loc: (5,7)-(5,8) = "." - │ ├── lparen_loc: (5,11)-(5,12) = "(" - │ ├── rparen_loc: (5,12)-(5,13) = ")" - │ ├── equal_loc: (5,14)-(5,15) = "=" - │ └── end_keyword_loc: ∅ - └── @ DefNode (location: (7,0)-(7,22)) - ├── flags: newline - ├── name: :inc - ├── name_loc: (7,8)-(7,11) = "inc" - ├── receiver: - │ @ CallNode (location: (7,4)-(7,7)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :obj - │ ├── message_loc: (7,4)-(7,7) = "obj" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── parameters: - │ @ ParametersNode (location: (7,12)-(7,13)) - │ ├── flags: ∅ - │ ├── requireds: (length: 1) - │ │ └── @ RequiredParameterNode (location: (7,12)-(7,13)) - │ │ ├── flags: ∅ - │ │ └── name: :x - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (7,17)-(7,22)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (7,17)-(7,22)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (7,17)-(7,18)) - │ │ ├── flags: ∅ - │ │ ├── name: :x - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (7,19)-(7,20) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (7,21)-(7,22)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (7,21)-(7,22)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── locals: [:x] - ├── def_keyword_loc: (7,0)-(7,3) = "def" - ├── operator_loc: (7,7)-(7,8) = "." - ├── lparen_loc: (7,11)-(7,12) = "(" - ├── rparen_loc: (7,13)-(7,14) = ")" - ├── equal_loc: (7,15)-(7,16) = "=" - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/whitequark/endless_method_command_syntax.txt b/test/prism/snapshots/whitequark/endless_method_command_syntax.txt deleted file mode 100644 index db2c0cec6f..0000000000 --- a/test/prism/snapshots/whitequark/endless_method_command_syntax.txt +++ /dev/null @@ -1,427 +0,0 @@ -@ ProgramNode (location: (1,0)-(15,62)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(15,62)) - ├── flags: ∅ - └── body: (length: 8) - ├── @ DefNode (location: (1,0)-(1,22)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (1,4)-(1,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,10)-(1,22)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,10)-(1,22)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :puts - │ │ ├── message_loc: (1,10)-(1,14) = "puts" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (1,15)-(1,22)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ StringNode (location: (1,15)-(1,22)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (1,15)-(1,16) = "\"" - │ │ │ ├── content_loc: (1,16)-(1,21) = "Hello" - │ │ │ ├── closing_loc: (1,21)-(1,22) = "\"" - │ │ │ └── unescaped: "Hello" - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: (1,8)-(1,9) = "=" - │ └── end_keyword_loc: ∅ - ├── @ DefNode (location: (3,0)-(3,24)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (3,4)-(3,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (3,12)-(3,24)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (3,12)-(3,24)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :puts - │ │ ├── message_loc: (3,12)-(3,16) = "puts" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (3,17)-(3,24)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ StringNode (location: (3,17)-(3,24)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (3,17)-(3,18) = "\"" - │ │ │ ├── content_loc: (3,18)-(3,23) = "Hello" - │ │ │ ├── closing_loc: (3,23)-(3,24) = "\"" - │ │ │ └── unescaped: "Hello" - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (3,0)-(3,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (3,7)-(3,8) = "(" - │ ├── rparen_loc: (3,8)-(3,9) = ")" - │ ├── equal_loc: (3,10)-(3,11) = "=" - │ └── end_keyword_loc: ∅ - ├── @ DefNode (location: (5,0)-(5,19)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (5,4)-(5,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (5,8)-(5,9)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (5,8)-(5,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :x - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (5,13)-(5,19)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (5,13)-(5,19)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :puts - │ │ ├── message_loc: (5,13)-(5,17) = "puts" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (5,18)-(5,19)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ LocalVariableReadNode (location: (5,18)-(5,19)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :x - │ │ │ └── depth: 0 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [:x] - │ ├── def_keyword_loc: (5,0)-(5,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (5,7)-(5,8) = "(" - │ ├── rparen_loc: (5,9)-(5,10) = ")" - │ ├── equal_loc: (5,11)-(5,12) = "=" - │ └── end_keyword_loc: ∅ - ├── @ DefNode (location: (7,0)-(7,26)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (7,8)-(7,11) = "foo" - │ ├── receiver: - │ │ @ CallNode (location: (7,4)-(7,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :obj - │ │ ├── message_loc: (7,4)-(7,7) = "obj" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (7,14)-(7,26)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (7,14)-(7,26)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :puts - │ │ ├── message_loc: (7,14)-(7,18) = "puts" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (7,19)-(7,26)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ StringNode (location: (7,19)-(7,26)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (7,19)-(7,20) = "\"" - │ │ │ ├── content_loc: (7,20)-(7,25) = "Hello" - │ │ │ ├── closing_loc: (7,25)-(7,26) = "\"" - │ │ │ └── unescaped: "Hello" - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (7,0)-(7,3) = "def" - │ ├── operator_loc: (7,7)-(7,8) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: (7,12)-(7,13) = "=" - │ └── end_keyword_loc: ∅ - ├── @ DefNode (location: (9,0)-(9,28)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (9,8)-(9,11) = "foo" - │ ├── receiver: - │ │ @ CallNode (location: (9,4)-(9,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :obj - │ │ ├── message_loc: (9,4)-(9,7) = "obj" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (9,16)-(9,28)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (9,16)-(9,28)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :puts - │ │ ├── message_loc: (9,16)-(9,20) = "puts" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (9,21)-(9,28)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ StringNode (location: (9,21)-(9,28)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (9,21)-(9,22) = "\"" - │ │ │ ├── content_loc: (9,22)-(9,27) = "Hello" - │ │ │ ├── closing_loc: (9,27)-(9,28) = "\"" - │ │ │ └── unescaped: "Hello" - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (9,0)-(9,3) = "def" - │ ├── operator_loc: (9,7)-(9,8) = "." - │ ├── lparen_loc: (9,11)-(9,12) = "(" - │ ├── rparen_loc: (9,12)-(9,13) = ")" - │ ├── equal_loc: (9,14)-(9,15) = "=" - │ └── end_keyword_loc: ∅ - ├── @ DefNode (location: (11,0)-(11,23)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (11,8)-(11,11) = "foo" - │ ├── receiver: - │ │ @ CallNode (location: (11,4)-(11,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :obj - │ │ ├── message_loc: (11,4)-(11,7) = "obj" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (11,12)-(11,13)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (11,12)-(11,13)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :x - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (11,17)-(11,23)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (11,17)-(11,23)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :puts - │ │ ├── message_loc: (11,17)-(11,21) = "puts" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (11,22)-(11,23)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ LocalVariableReadNode (location: (11,22)-(11,23)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :x - │ │ │ └── depth: 0 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [:x] - │ ├── def_keyword_loc: (11,0)-(11,3) = "def" - │ ├── operator_loc: (11,7)-(11,8) = "." - │ ├── lparen_loc: (11,11)-(11,12) = "(" - │ ├── rparen_loc: (11,13)-(11,14) = ")" - │ ├── equal_loc: (11,15)-(11,16) = "=" - │ └── end_keyword_loc: ∅ - ├── @ DefNode (location: (13,0)-(13,60)) - │ ├── flags: newline - │ ├── name: :rescued - │ ├── name_loc: (13,4)-(13,11) = "rescued" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (13,12)-(13,13)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (13,12)-(13,13)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :x - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (13,17)-(13,60)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ RescueModifierNode (location: (13,17)-(13,60)) - │ │ ├── flags: ∅ - │ │ ├── expression: - │ │ │ @ CallNode (location: (13,17)-(13,37)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :raise - │ │ │ ├── message_loc: (13,17)-(13,22) = "raise" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (13,23)-(13,37)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ StringNode (location: (13,23)-(13,37)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── opening_loc: (13,23)-(13,24) = "\"" - │ │ │ │ ├── content_loc: (13,24)-(13,36) = "to be caught" - │ │ │ │ ├── closing_loc: (13,36)-(13,37) = "\"" - │ │ │ │ └── unescaped: "to be caught" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── keyword_loc: (13,38)-(13,44) = "rescue" - │ │ └── rescue_expression: - │ │ @ InterpolatedStringNode (location: (13,45)-(13,60)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (13,45)-(13,46) = "\"" - │ │ ├── parts: (length: 2) - │ │ │ ├── @ StringNode (location: (13,46)-(13,55)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (13,46)-(13,55) = "instance " - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "instance " - │ │ │ └── @ EmbeddedStatementsNode (location: (13,55)-(13,59)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (13,55)-(13,57) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (13,57)-(13,58)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ LocalVariableReadNode (location: (13,57)-(13,58)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :x - │ │ │ │ └── depth: 0 - │ │ │ └── closing_loc: (13,58)-(13,59) = "}" - │ │ └── closing_loc: (13,59)-(13,60) = "\"" - │ ├── locals: [:x] - │ ├── def_keyword_loc: (13,0)-(13,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (13,11)-(13,12) = "(" - │ ├── rparen_loc: (13,13)-(13,14) = ")" - │ ├── equal_loc: (13,15)-(13,16) = "=" - │ └── end_keyword_loc: ∅ - └── @ DefNode (location: (15,0)-(15,62)) - ├── flags: newline - ├── name: :rescued - ├── name_loc: (15,9)-(15,16) = "rescued" - ├── receiver: - │ @ SelfNode (location: (15,4)-(15,8)) - │ └── flags: ∅ - ├── parameters: - │ @ ParametersNode (location: (15,17)-(15,18)) - │ ├── flags: ∅ - │ ├── requireds: (length: 1) - │ │ └── @ RequiredParameterNode (location: (15,17)-(15,18)) - │ │ ├── flags: ∅ - │ │ └── name: :x - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (15,22)-(15,62)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ RescueModifierNode (location: (15,22)-(15,62)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (15,22)-(15,42)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :raise - │ │ ├── message_loc: (15,22)-(15,27) = "raise" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (15,28)-(15,42)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ StringNode (location: (15,28)-(15,42)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (15,28)-(15,29) = "\"" - │ │ │ ├── content_loc: (15,29)-(15,41) = "to be caught" - │ │ │ ├── closing_loc: (15,41)-(15,42) = "\"" - │ │ │ └── unescaped: "to be caught" - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── keyword_loc: (15,43)-(15,49) = "rescue" - │ └── rescue_expression: - │ @ InterpolatedStringNode (location: (15,50)-(15,62)) - │ ├── flags: ∅ - │ ├── opening_loc: (15,50)-(15,51) = "\"" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (15,51)-(15,57)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (15,51)-(15,57) = "class " - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "class " - │ │ └── @ EmbeddedStatementsNode (location: (15,57)-(15,61)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (15,57)-(15,59) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (15,59)-(15,60)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ LocalVariableReadNode (location: (15,59)-(15,60)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :x - │ │ │ └── depth: 0 - │ │ └── closing_loc: (15,60)-(15,61) = "}" - │ └── closing_loc: (15,61)-(15,62) = "\"" - ├── locals: [:x] - ├── def_keyword_loc: (15,0)-(15,3) = "def" - ├── operator_loc: (15,8)-(15,9) = "." - ├── lparen_loc: (15,16)-(15,17) = "(" - ├── rparen_loc: (15,18)-(15,19) = ")" - ├── equal_loc: (15,20)-(15,21) = "=" - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/whitequark/endless_method_forwarded_args_legacy.txt b/test/prism/snapshots/whitequark/endless_method_forwarded_args_legacy.txt deleted file mode 100644 index eaa1061007..0000000000 --- a/test/prism/snapshots/whitequark/endless_method_forwarded_args_legacy.txt +++ /dev/null @@ -1,50 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,23)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,23)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,23)) - ├── flags: newline - ├── name: :foo - ├── name_loc: (1,4)-(1,7) = "foo" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,8)-(1,11)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: - │ │ @ ForwardingParameterNode (location: (1,8)-(1,11)) - │ │ └── flags: ∅ - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (1,15)-(1,23)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,15)-(1,23)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (1,15)-(1,18) = "bar" - │ ├── opening_loc: (1,18)-(1,19) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,19)-(1,22)) - │ │ ├── flags: contains_forwarding - │ │ └── arguments: (length: 1) - │ │ └── @ ForwardingArgumentsNode (location: (1,19)-(1,22)) - │ │ └── flags: ∅ - │ ├── closing_loc: (1,22)-(1,23) = ")" - │ └── block: ∅ - ├── locals: [] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,7)-(1,8) = "(" - ├── rparen_loc: (1,11)-(1,12) = ")" - ├── equal_loc: (1,13)-(1,14) = "=" - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/whitequark/endless_method_with_rescue_mod.txt b/test/prism/snapshots/whitequark/endless_method_with_rescue_mod.txt deleted file mode 100644 index c64ba634b7..0000000000 --- a/test/prism/snapshots/whitequark/endless_method_with_rescue_mod.txt +++ /dev/null @@ -1,65 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,25)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,25)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ DefNode (location: (1,0)-(1,20)) - │ ├── flags: newline - │ ├── name: :m - │ ├── name_loc: (1,4)-(1,5) = "m" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,10)-(1,20)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ RescueModifierNode (location: (1,10)-(1,20)) - │ │ ├── flags: ∅ - │ │ ├── expression: - │ │ │ @ IntegerNode (location: (1,10)-(1,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── keyword_loc: (1,12)-(1,18) = "rescue" - │ │ └── rescue_expression: - │ │ @ IntegerNode (location: (1,19)-(1,20)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── locals: [] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (1,5)-(1,6) = "(" - │ ├── rparen_loc: (1,6)-(1,7) = ")" - │ ├── equal_loc: (1,8)-(1,9) = "=" - │ └── end_keyword_loc: ∅ - └── @ DefNode (location: (3,0)-(3,25)) - ├── flags: newline - ├── name: :m - ├── name_loc: (3,9)-(3,10) = "m" - ├── receiver: - │ @ SelfNode (location: (3,4)-(3,8)) - │ └── flags: ∅ - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (3,15)-(3,25)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ RescueModifierNode (location: (3,15)-(3,25)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ IntegerNode (location: (3,15)-(3,16)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── keyword_loc: (3,17)-(3,23) = "rescue" - │ └── rescue_expression: - │ @ IntegerNode (location: (3,24)-(3,25)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── locals: [] - ├── def_keyword_loc: (3,0)-(3,3) = "def" - ├── operator_loc: (3,8)-(3,9) = "." - ├── lparen_loc: (3,10)-(3,11) = "(" - ├── rparen_loc: (3,11)-(3,12) = ")" - ├── equal_loc: (3,13)-(3,14) = "=" - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/whitequark/endless_method_without_args.txt b/test/prism/snapshots/whitequark/endless_method_without_args.txt deleted file mode 100644 index 0be157df62..0000000000 --- a/test/prism/snapshots/whitequark/endless_method_without_args.txt +++ /dev/null @@ -1,105 +0,0 @@ -@ ProgramNode (location: (1,0)-(7,28)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(7,28)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ DefNode (location: (1,0)-(1,12)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (1,4)-(1,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,10)-(1,12)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (1,10)-(1,12)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 42 - │ ├── locals: [] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: (1,8)-(1,9) = "=" - │ └── end_keyword_loc: ∅ - ├── @ DefNode (location: (3,0)-(3,23)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (3,4)-(3,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (3,10)-(3,23)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ RescueModifierNode (location: (3,10)-(3,23)) - │ │ ├── flags: ∅ - │ │ ├── expression: - │ │ │ @ IntegerNode (location: (3,10)-(3,12)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 42 - │ │ ├── keyword_loc: (3,13)-(3,19) = "rescue" - │ │ └── rescue_expression: - │ │ @ NilNode (location: (3,20)-(3,23)) - │ │ └── flags: static_literal - │ ├── locals: [] - │ ├── def_keyword_loc: (3,0)-(3,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: (3,8)-(3,9) = "=" - │ └── end_keyword_loc: ∅ - ├── @ DefNode (location: (5,0)-(5,17)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (5,9)-(5,12) = "foo" - │ ├── receiver: - │ │ @ SelfNode (location: (5,4)-(5,8)) - │ │ └── flags: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (5,15)-(5,17)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (5,15)-(5,17)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 42 - │ ├── locals: [] - │ ├── def_keyword_loc: (5,0)-(5,3) = "def" - │ ├── operator_loc: (5,8)-(5,9) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: (5,13)-(5,14) = "=" - │ └── end_keyword_loc: ∅ - └── @ DefNode (location: (7,0)-(7,28)) - ├── flags: newline - ├── name: :foo - ├── name_loc: (7,9)-(7,12) = "foo" - ├── receiver: - │ @ SelfNode (location: (7,4)-(7,8)) - │ └── flags: ∅ - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (7,15)-(7,28)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ RescueModifierNode (location: (7,15)-(7,28)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ IntegerNode (location: (7,15)-(7,17)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 42 - │ ├── keyword_loc: (7,18)-(7,24) = "rescue" - │ └── rescue_expression: - │ @ NilNode (location: (7,25)-(7,28)) - │ └── flags: static_literal - ├── locals: [] - ├── def_keyword_loc: (7,0)-(7,3) = "def" - ├── operator_loc: (7,8)-(7,9) = "." - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: (7,13)-(7,14) = "=" - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/whitequark/ensure.txt b/test/prism/snapshots/whitequark/ensure.txt deleted file mode 100644 index 63d4a3b05d..0000000000 --- a/test/prism/snapshots/whitequark/ensure.txt +++ /dev/null @@ -1,46 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,29)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,29)) - ├── flags: ∅ - └── body: (length: 1) - └── @ BeginNode (location: (1,0)-(1,29)) - ├── flags: newline - ├── begin_keyword_loc: (1,0)-(1,5) = "begin" - ├── statements: - │ @ StatementsNode (location: (1,7)-(1,11)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,7)-(1,11)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :meth - │ ├── message_loc: (1,7)-(1,11) = "meth" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── rescue_clause: ∅ - ├── else_clause: ∅ - ├── ensure_clause: - │ @ EnsureNode (location: (1,13)-(1,29)) - │ ├── flags: ∅ - │ ├── ensure_keyword_loc: (1,13)-(1,19) = "ensure" - │ ├── statements: - │ │ @ StatementsNode (location: (1,21)-(1,24)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,21)-(1,24)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,21)-(1,24) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── end_keyword_loc: (1,26)-(1,29) = "end" - └── end_keyword_loc: (1,26)-(1,29) = "end" diff --git a/test/prism/snapshots/whitequark/ensure_empty.txt b/test/prism/snapshots/whitequark/ensure_empty.txt deleted file mode 100644 index c7369b7b1f..0000000000 --- a/test/prism/snapshots/whitequark/ensure_empty.txt +++ /dev/null @@ -1,20 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,16)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,16)) - ├── flags: ∅ - └── body: (length: 1) - └── @ BeginNode (location: (1,0)-(1,16)) - ├── flags: newline - ├── begin_keyword_loc: (1,0)-(1,5) = "begin" - ├── statements: ∅ - ├── rescue_clause: ∅ - ├── else_clause: ∅ - ├── ensure_clause: - │ @ EnsureNode (location: (1,6)-(1,16)) - │ ├── flags: ∅ - │ ├── ensure_keyword_loc: (1,6)-(1,12) = "ensure" - │ ├── statements: ∅ - │ └── end_keyword_loc: (1,13)-(1,16) = "end" - └── end_keyword_loc: (1,13)-(1,16) = "end" diff --git a/test/prism/snapshots/whitequark/false.txt b/test/prism/snapshots/whitequark/false.txt deleted file mode 100644 index 4686f6aa08..0000000000 --- a/test/prism/snapshots/whitequark/false.txt +++ /dev/null @@ -1,9 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ FalseNode (location: (1,0)-(1,5)) - └── flags: newline, static_literal diff --git a/test/prism/snapshots/whitequark/float.txt b/test/prism/snapshots/whitequark/float.txt deleted file mode 100644 index 7839f89962..0000000000 --- a/test/prism/snapshots/whitequark/float.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,4)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ FloatNode (location: (1,0)-(1,5)) - │ ├── flags: newline, static_literal - │ └── value: -1.33 - └── @ FloatNode (location: (3,0)-(3,4)) - ├── flags: newline, static_literal - └── value: 1.33 diff --git a/test/prism/snapshots/whitequark/for.txt b/test/prism/snapshots/whitequark/for.txt deleted file mode 100644 index 8dca927c90..0000000000 --- a/test/prism/snapshots/whitequark/for.txt +++ /dev/null @@ -1,93 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,22)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(3,22)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ ForNode (location: (1,0)-(1,24)) - │ ├── flags: newline - │ ├── index: - │ │ @ LocalVariableTargetNode (location: (1,4)-(1,5)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── collection: - │ │ @ CallNode (location: (1,9)-(1,12)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,9)-(1,12) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (1,16)-(1,19)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,16)-(1,19)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :p - │ │ ├── message_loc: (1,16)-(1,17) = "p" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (1,18)-(1,19)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ LocalVariableReadNode (location: (1,18)-(1,19)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── for_keyword_loc: (1,0)-(1,3) = "for" - │ ├── in_keyword_loc: (1,6)-(1,8) = "in" - │ ├── do_keyword_loc: (1,13)-(1,15) = "do" - │ └── end_keyword_loc: (1,21)-(1,24) = "end" - └── @ ForNode (location: (3,0)-(3,22)) - ├── flags: newline - ├── index: - │ @ LocalVariableTargetNode (location: (3,4)-(3,5)) - │ ├── flags: ∅ - │ ├── name: :a - │ └── depth: 0 - ├── collection: - │ @ CallNode (location: (3,9)-(3,12)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (3,9)-(3,12) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── statements: - │ @ StatementsNode (location: (3,14)-(3,17)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (3,14)-(3,17)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :p - │ ├── message_loc: (3,14)-(3,15) = "p" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (3,16)-(3,17)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (3,16)-(3,17)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── for_keyword_loc: (3,0)-(3,3) = "for" - ├── in_keyword_loc: (3,6)-(3,8) = "in" - ├── do_keyword_loc: ∅ - └── end_keyword_loc: (3,19)-(3,22) = "end" diff --git a/test/prism/snapshots/whitequark/for_mlhs.txt b/test/prism/snapshots/whitequark/for_mlhs.txt deleted file mode 100644 index 0f70dd8a7d..0000000000 --- a/test/prism/snapshots/whitequark/for_mlhs.txt +++ /dev/null @@ -1,65 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,28)) -├── flags: ∅ -├── locals: [:a, :b] -└── statements: - @ StatementsNode (location: (1,0)-(1,28)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ForNode (location: (1,0)-(1,28)) - ├── flags: newline - ├── index: - │ @ MultiTargetNode (location: (1,4)-(1,8)) - │ ├── flags: ∅ - │ ├── lefts: (length: 2) - │ │ ├── @ LocalVariableTargetNode (location: (1,4)-(1,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ └── @ LocalVariableTargetNode (location: (1,7)-(1,8)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ └── depth: 0 - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: ∅ - │ └── rparen_loc: ∅ - ├── collection: - │ @ CallNode (location: (1,12)-(1,15)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,12)-(1,15) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── statements: - │ @ StatementsNode (location: (1,17)-(1,23)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,17)-(1,23)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :p - │ ├── message_loc: (1,17)-(1,18) = "p" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,19)-(1,23)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ LocalVariableReadNode (location: (1,19)-(1,20)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ └── @ LocalVariableReadNode (location: (1,22)-(1,23)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ └── depth: 0 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── for_keyword_loc: (1,0)-(1,3) = "for" - ├── in_keyword_loc: (1,9)-(1,11) = "in" - ├── do_keyword_loc: ∅ - └── end_keyword_loc: (1,25)-(1,28) = "end" diff --git a/test/prism/snapshots/whitequark/forward_arg.txt b/test/prism/snapshots/whitequark/forward_arg.txt deleted file mode 100644 index 3879314fa8..0000000000 --- a/test/prism/snapshots/whitequark/forward_arg.txt +++ /dev/null @@ -1,50 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,27)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,27)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,27)) - ├── flags: newline - ├── name: :foo - ├── name_loc: (1,4)-(1,7) = "foo" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,8)-(1,11)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: - │ │ @ ForwardingParameterNode (location: (1,8)-(1,11)) - │ │ └── flags: ∅ - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (1,14)-(1,22)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,14)-(1,22)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (1,14)-(1,17) = "bar" - │ ├── opening_loc: (1,17)-(1,18) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,18)-(1,21)) - │ │ ├── flags: contains_forwarding - │ │ └── arguments: (length: 1) - │ │ └── @ ForwardingArgumentsNode (location: (1,18)-(1,21)) - │ │ └── flags: ∅ - │ ├── closing_loc: (1,21)-(1,22) = ")" - │ └── block: ∅ - ├── locals: [] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,7)-(1,8) = "(" - ├── rparen_loc: (1,11)-(1,12) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,24)-(1,27) = "end" diff --git a/test/prism/snapshots/whitequark/forward_arg_with_open_args.txt b/test/prism/snapshots/whitequark/forward_arg_with_open_args.txt deleted file mode 100644 index ea36abae7e..0000000000 --- a/test/prism/snapshots/whitequark/forward_arg_with_open_args.txt +++ /dev/null @@ -1,456 +0,0 @@ -@ ProgramNode (location: (1,0)-(27,28)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(27,28)) - ├── flags: ∅ - └── body: (length: 10) - ├── @ ParenthesesNode (location: (1,0)-(3,4)) - │ ├── flags: newline - │ ├── body: - │ │ @ StatementsNode (location: (1,1)-(3,3)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ DefNode (location: (1,1)-(3,3)) - │ │ ├── flags: newline - │ │ ├── name: :foo - │ │ ├── name_loc: (1,5)-(1,8) = "foo" - │ │ ├── receiver: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (1,9)-(1,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: - │ │ │ │ @ ForwardingParameterNode (location: (1,9)-(1,12)) - │ │ │ │ └── flags: ∅ - │ │ │ └── block: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (2,2)-(2,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (2,2)-(2,10)) - │ │ │ ├── flags: newline, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (2,2)-(2,5) = "bar" - │ │ │ ├── opening_loc: (2,5)-(2,6) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (2,6)-(2,9)) - │ │ │ │ ├── flags: contains_forwarding - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ ForwardingArgumentsNode (location: (2,6)-(2,9)) - │ │ │ │ └── flags: ∅ - │ │ │ ├── closing_loc: (2,9)-(2,10) = ")" - │ │ │ └── block: ∅ - │ │ ├── locals: [] - │ │ ├── def_keyword_loc: (1,1)-(1,4) = "def" - │ │ ├── operator_loc: ∅ - │ │ ├── lparen_loc: ∅ - │ │ ├── rparen_loc: ∅ - │ │ ├── equal_loc: ∅ - │ │ └── end_keyword_loc: (3,0)-(3,3) = "end" - │ ├── opening_loc: (1,0)-(1,1) = "(" - │ └── closing_loc: (3,3)-(3,4) = ")" - ├── @ ParenthesesNode (location: (5,0)-(5,28)) - │ ├── flags: newline - │ ├── body: - │ │ @ StatementsNode (location: (5,1)-(5,27)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ DefNode (location: (5,1)-(5,27)) - │ │ ├── flags: newline - │ │ ├── name: :foo - │ │ ├── name_loc: (5,5)-(5,8) = "foo" - │ │ ├── receiver: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (5,9)-(5,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: - │ │ │ │ @ ForwardingParameterNode (location: (5,9)-(5,12)) - │ │ │ │ └── flags: ∅ - │ │ │ └── block: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (5,14)-(5,22)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (5,14)-(5,22)) - │ │ │ ├── flags: newline, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (5,14)-(5,17) = "bar" - │ │ │ ├── opening_loc: (5,17)-(5,18) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (5,18)-(5,21)) - │ │ │ │ ├── flags: contains_forwarding - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ ForwardingArgumentsNode (location: (5,18)-(5,21)) - │ │ │ │ └── flags: ∅ - │ │ │ ├── closing_loc: (5,21)-(5,22) = ")" - │ │ │ └── block: ∅ - │ │ ├── locals: [] - │ │ ├── def_keyword_loc: (5,1)-(5,4) = "def" - │ │ ├── operator_loc: ∅ - │ │ ├── lparen_loc: ∅ - │ │ ├── rparen_loc: ∅ - │ │ ├── equal_loc: ∅ - │ │ └── end_keyword_loc: (5,24)-(5,27) = "end" - │ ├── opening_loc: (5,0)-(5,1) = "(" - │ └── closing_loc: (5,27)-(5,28) = ")" - ├── @ DefNode (location: (7,0)-(8,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (7,4)-(7,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (7,8)-(7,11)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ ForwardingParameterNode (location: (7,8)-(7,11)) - │ │ │ └── flags: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (7,0)-(7,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (8,0)-(8,3) = "end" - ├── @ DefNode (location: (10,0)-(10,26)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (10,4)-(10,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (10,8)-(10,11)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ ForwardingParameterNode (location: (10,8)-(10,11)) - │ │ │ └── flags: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (10,13)-(10,21)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (10,13)-(10,21)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (10,13)-(10,16) = "bar" - │ │ ├── opening_loc: (10,16)-(10,17) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (10,17)-(10,20)) - │ │ │ ├── flags: contains_forwarding - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ ForwardingArgumentsNode (location: (10,17)-(10,20)) - │ │ │ └── flags: ∅ - │ │ ├── closing_loc: (10,20)-(10,21) = ")" - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (10,0)-(10,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (10,23)-(10,26) = "end" - ├── @ DefNode (location: (12,0)-(14,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (12,4)-(12,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (12,8)-(12,14)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (12,8)-(12,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ ForwardingParameterNode (location: (12,11)-(12,14)) - │ │ │ └── flags: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (13,2)-(13,10)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (13,2)-(13,10)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (13,2)-(13,5) = "bar" - │ │ ├── opening_loc: (13,5)-(13,6) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (13,6)-(13,9)) - │ │ │ ├── flags: contains_forwarding - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ ForwardingArgumentsNode (location: (13,6)-(13,9)) - │ │ │ └── flags: ∅ - │ │ ├── closing_loc: (13,9)-(13,10) = ")" - │ │ └── block: ∅ - │ ├── locals: [:a] - │ ├── def_keyword_loc: (12,0)-(12,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (14,0)-(14,3) = "end" - ├── @ DefNode (location: (16,0)-(16,29)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (16,4)-(16,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (16,8)-(16,14)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (16,8)-(16,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ ForwardingParameterNode (location: (16,11)-(16,14)) - │ │ │ └── flags: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (16,16)-(16,24)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (16,16)-(16,24)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (16,16)-(16,19) = "bar" - │ │ ├── opening_loc: (16,19)-(16,20) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (16,20)-(16,23)) - │ │ │ ├── flags: contains_forwarding - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ ForwardingArgumentsNode (location: (16,20)-(16,23)) - │ │ │ └── flags: ∅ - │ │ ├── closing_loc: (16,23)-(16,24) = ")" - │ │ └── block: ∅ - │ ├── locals: [:a] - │ ├── def_keyword_loc: (16,0)-(16,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (16,26)-(16,29) = "end" - ├── @ DefNode (location: (18,0)-(19,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (18,4)-(18,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (18,8)-(18,21)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (18,8)-(18,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (18,11)-(18,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (18,11)-(18,12) = "b" - │ │ │ ├── operator_loc: (18,13)-(18,14) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (18,15)-(18,16)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ ForwardingParameterNode (location: (18,18)-(18,21)) - │ │ │ └── flags: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:a, :b] - │ ├── def_keyword_loc: (18,0)-(18,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (19,0)-(19,3) = "end" - ├── @ DefNode (location: (21,0)-(23,3)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (21,4)-(21,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (21,8)-(21,18)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (21,8)-(21,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (21,8)-(21,9) = "b" - │ │ │ ├── operator_loc: (21,10)-(21,11) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (21,12)-(21,13)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ ForwardingParameterNode (location: (21,15)-(21,18)) - │ │ │ └── flags: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (22,2)-(22,10)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (22,2)-(22,10)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (22,2)-(22,5) = "bar" - │ │ ├── opening_loc: (22,5)-(22,6) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (22,6)-(22,9)) - │ │ │ ├── flags: contains_forwarding - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ ForwardingArgumentsNode (location: (22,6)-(22,9)) - │ │ │ └── flags: ∅ - │ │ ├── closing_loc: (22,9)-(22,10) = ")" - │ │ └── block: ∅ - │ ├── locals: [:b] - │ ├── def_keyword_loc: (21,0)-(21,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (23,0)-(23,3) = "end" - ├── @ DefNode (location: (25,0)-(25,33)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (25,4)-(25,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (25,8)-(25,18)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (25,8)-(25,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ ├── name_loc: (25,8)-(25,9) = "b" - │ │ │ ├── operator_loc: (25,10)-(25,11) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (25,12)-(25,13)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ ForwardingParameterNode (location: (25,15)-(25,18)) - │ │ │ └── flags: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (25,20)-(25,28)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (25,20)-(25,28)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (25,20)-(25,23) = "bar" - │ │ ├── opening_loc: (25,23)-(25,24) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (25,24)-(25,27)) - │ │ │ ├── flags: contains_forwarding - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ ForwardingArgumentsNode (location: (25,24)-(25,27)) - │ │ │ └── flags: ∅ - │ │ ├── closing_loc: (25,27)-(25,28) = ")" - │ │ └── block: ∅ - │ ├── locals: [:b] - │ ├── def_keyword_loc: (25,0)-(25,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (25,30)-(25,33) = "end" - └── @ DefNode (location: (27,0)-(27,28)) - ├── flags: newline - ├── name: :foo - ├── name_loc: (27,4)-(27,7) = "foo" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (27,8)-(27,14)) - │ ├── flags: ∅ - │ ├── requireds: (length: 1) - │ │ └── @ RequiredParameterNode (location: (27,8)-(27,9)) - │ │ ├── flags: ∅ - │ │ └── name: :a - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: - │ │ @ ForwardingParameterNode (location: (27,11)-(27,14)) - │ │ └── flags: ∅ - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (27,16)-(27,24)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (27,16)-(27,24)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (27,16)-(27,19) = "bar" - │ ├── opening_loc: (27,19)-(27,20) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (27,20)-(27,23)) - │ │ ├── flags: contains_forwarding - │ │ └── arguments: (length: 1) - │ │ └── @ ForwardingArgumentsNode (location: (27,20)-(27,23)) - │ │ └── flags: ∅ - │ ├── closing_loc: (27,23)-(27,24) = ")" - │ └── block: ∅ - ├── locals: [:a] - ├── def_keyword_loc: (27,0)-(27,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (27,7)-(27,8) = "(" - ├── rparen_loc: (27,14)-(27,15) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (27,25)-(27,28) = "end" diff --git a/test/prism/snapshots/whitequark/forward_args_legacy.txt b/test/prism/snapshots/whitequark/forward_args_legacy.txt deleted file mode 100644 index 2fda9338f3..0000000000 --- a/test/prism/snapshots/whitequark/forward_args_legacy.txt +++ /dev/null @@ -1,115 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,29)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,29)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ DefNode (location: (1,0)-(1,27)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (1,4)-(1,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,8)-(1,11)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ ForwardingParameterNode (location: (1,8)-(1,11)) - │ │ │ └── flags: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,14)-(1,22)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,14)-(1,22)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,14)-(1,17) = "bar" - │ │ ├── opening_loc: (1,17)-(1,18) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (1,18)-(1,21)) - │ │ │ ├── flags: contains_forwarding - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ ForwardingArgumentsNode (location: (1,18)-(1,21)) - │ │ │ └── flags: ∅ - │ │ ├── closing_loc: (1,21)-(1,22) = ")" - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (1,7)-(1,8) = "(" - │ ├── rparen_loc: (1,11)-(1,12) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (1,24)-(1,27) = "end" - ├── @ DefNode (location: (3,0)-(3,17)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (3,4)-(3,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (3,8)-(3,11)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ ForwardingParameterNode (location: (3,8)-(3,11)) - │ │ │ └── flags: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (3,0)-(3,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (3,7)-(3,8) = "(" - │ ├── rparen_loc: (3,11)-(3,12) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (3,14)-(3,17) = "end" - └── @ DefNode (location: (5,0)-(5,29)) - ├── flags: newline - ├── name: :foo - ├── name_loc: (5,4)-(5,7) = "foo" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (5,8)-(5,11)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: - │ │ @ ForwardingParameterNode (location: (5,8)-(5,11)) - │ │ └── flags: ∅ - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (5,14)-(5,24)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ SuperNode (location: (5,14)-(5,24)) - │ ├── flags: newline - │ ├── keyword_loc: (5,14)-(5,19) = "super" - │ ├── lparen_loc: (5,19)-(5,20) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (5,20)-(5,23)) - │ │ ├── flags: contains_forwarding - │ │ └── arguments: (length: 1) - │ │ └── @ ForwardingArgumentsNode (location: (5,20)-(5,23)) - │ │ └── flags: ∅ - │ ├── rparen_loc: (5,23)-(5,24) = ")" - │ └── block: ∅ - ├── locals: [] - ├── def_keyword_loc: (5,0)-(5,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (5,7)-(5,8) = "(" - ├── rparen_loc: (5,11)-(5,12) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (5,26)-(5,29) = "end" diff --git a/test/prism/snapshots/whitequark/forwarded_argument_with_kwrestarg.txt b/test/prism/snapshots/whitequark/forwarded_argument_with_kwrestarg.txt deleted file mode 100644 index d80ace6fba..0000000000 --- a/test/prism/snapshots/whitequark/forwarded_argument_with_kwrestarg.txt +++ /dev/null @@ -1,65 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,45)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,45)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,45)) - ├── flags: newline - ├── name: :foo - ├── name_loc: (1,4)-(1,7) = "foo" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,8)-(1,20)) - │ ├── flags: ∅ - │ ├── requireds: (length: 1) - │ │ └── @ RequiredParameterNode (location: (1,8)-(1,16)) - │ │ ├── flags: ∅ - │ │ └── name: :argument - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: - │ │ @ KeywordRestParameterNode (location: (1,18)-(1,20)) - │ │ ├── flags: ∅ - │ │ ├── name: ∅ - │ │ ├── name_loc: ∅ - │ │ └── operator_loc: (1,18)-(1,20) = "**" - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (1,23)-(1,40)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,23)-(1,40)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (1,23)-(1,26) = "bar" - │ ├── opening_loc: (1,26)-(1,27) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,27)-(1,39)) - │ │ ├── flags: contains_keywords, contains_keyword_splat - │ │ └── arguments: (length: 2) - │ │ ├── @ LocalVariableReadNode (location: (1,27)-(1,35)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :argument - │ │ │ └── depth: 0 - │ │ └── @ KeywordHashNode (location: (1,37)-(1,39)) - │ │ ├── flags: ∅ - │ │ └── elements: (length: 1) - │ │ └── @ AssocSplatNode (location: (1,37)-(1,39)) - │ │ ├── flags: ∅ - │ │ ├── value: ∅ - │ │ └── operator_loc: (1,37)-(1,39) = "**" - │ ├── closing_loc: (1,39)-(1,40) = ")" - │ └── block: ∅ - ├── locals: [:argument] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,7)-(1,8) = "(" - ├── rparen_loc: (1,20)-(1,21) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,42)-(1,45) = "end" diff --git a/test/prism/snapshots/whitequark/forwarded_argument_with_restarg.txt b/test/prism/snapshots/whitequark/forwarded_argument_with_restarg.txt deleted file mode 100644 index 2dd95c6cae..0000000000 --- a/test/prism/snapshots/whitequark/forwarded_argument_with_restarg.txt +++ /dev/null @@ -1,62 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,43)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,43)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,43)) - ├── flags: newline - ├── name: :foo - ├── name_loc: (1,4)-(1,7) = "foo" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,8)-(1,19)) - │ ├── flags: ∅ - │ ├── requireds: (length: 1) - │ │ └── @ RequiredParameterNode (location: (1,8)-(1,16)) - │ │ ├── flags: ∅ - │ │ └── name: :argument - │ ├── optionals: (length: 0) - │ ├── rest: - │ │ @ RestParameterNode (location: (1,18)-(1,19)) - │ │ ├── flags: ∅ - │ │ ├── name: ∅ - │ │ ├── name_loc: ∅ - │ │ └── operator_loc: (1,18)-(1,19) = "*" - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (1,22)-(1,38)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,22)-(1,38)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (1,22)-(1,25) = "bar" - │ ├── opening_loc: (1,25)-(1,26) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,26)-(1,37)) - │ │ ├── flags: contains_splat - │ │ └── arguments: (length: 2) - │ │ ├── @ LocalVariableReadNode (location: (1,26)-(1,34)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :argument - │ │ │ └── depth: 0 - │ │ └── @ SplatNode (location: (1,36)-(1,37)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (1,36)-(1,37) = "*" - │ │ └── expression: ∅ - │ ├── closing_loc: (1,37)-(1,38) = ")" - │ └── block: ∅ - ├── locals: [:argument] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,7)-(1,8) = "(" - ├── rparen_loc: (1,19)-(1,20) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,40)-(1,43) = "end" diff --git a/test/prism/snapshots/whitequark/forwarded_kwrestarg.txt b/test/prism/snapshots/whitequark/forwarded_kwrestarg.txt deleted file mode 100644 index 50cc9ca38b..0000000000 --- a/test/prism/snapshots/whitequark/forwarded_kwrestarg.txt +++ /dev/null @@ -1,58 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,25)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,25)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,25)) - ├── flags: newline - ├── name: :foo - ├── name_loc: (1,4)-(1,7) = "foo" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,8)-(1,10)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: - │ │ @ KeywordRestParameterNode (location: (1,8)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── name: ∅ - │ │ ├── name_loc: ∅ - │ │ └── operator_loc: (1,8)-(1,10) = "**" - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (1,13)-(1,20)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,13)-(1,20)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (1,13)-(1,16) = "bar" - │ ├── opening_loc: (1,16)-(1,17) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,17)-(1,19)) - │ │ ├── flags: contains_keywords, contains_keyword_splat - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (1,17)-(1,19)) - │ │ ├── flags: ∅ - │ │ └── elements: (length: 1) - │ │ └── @ AssocSplatNode (location: (1,17)-(1,19)) - │ │ ├── flags: ∅ - │ │ ├── value: ∅ - │ │ └── operator_loc: (1,17)-(1,19) = "**" - │ ├── closing_loc: (1,19)-(1,20) = ")" - │ └── block: ∅ - ├── locals: [] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,7)-(1,8) = "(" - ├── rparen_loc: (1,10)-(1,11) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,22)-(1,25) = "end" diff --git a/test/prism/snapshots/whitequark/forwarded_kwrestarg_with_additional_kwarg.txt b/test/prism/snapshots/whitequark/forwarded_kwrestarg_with_additional_kwarg.txt deleted file mode 100644 index 32ace5cb3d..0000000000 --- a/test/prism/snapshots/whitequark/forwarded_kwrestarg_with_additional_kwarg.txt +++ /dev/null @@ -1,71 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,41)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,41)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,41)) - ├── flags: newline - ├── name: :foo - ├── name_loc: (1,4)-(1,7) = "foo" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,8)-(1,10)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: - │ │ @ KeywordRestParameterNode (location: (1,8)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── name: ∅ - │ │ ├── name_loc: ∅ - │ │ └── operator_loc: (1,8)-(1,10) = "**" - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (1,13)-(1,36)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,13)-(1,36)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (1,13)-(1,16) = "bar" - │ ├── opening_loc: (1,16)-(1,17) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,17)-(1,35)) - │ │ ├── flags: contains_keywords, contains_keyword_splat - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (1,17)-(1,35)) - │ │ ├── flags: ∅ - │ │ └── elements: (length: 2) - │ │ ├── @ AssocSplatNode (location: (1,17)-(1,19)) - │ │ │ ├── flags: ∅ - │ │ │ ├── value: ∅ - │ │ │ └── operator_loc: (1,17)-(1,19) = "**" - │ │ └── @ AssocNode (location: (1,21)-(1,35)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (1,21)-(1,30)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (1,21)-(1,29) = "from_foo" - │ │ │ ├── closing_loc: (1,29)-(1,30) = ":" - │ │ │ └── unescaped: "from_foo" - │ │ ├── value: - │ │ │ @ TrueNode (location: (1,31)-(1,35)) - │ │ │ └── flags: static_literal - │ │ └── operator_loc: ∅ - │ ├── closing_loc: (1,35)-(1,36) = ")" - │ └── block: ∅ - ├── locals: [] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,7)-(1,8) = "(" - ├── rparen_loc: (1,10)-(1,11) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,38)-(1,41) = "end" diff --git a/test/prism/snapshots/whitequark/forwarded_restarg.txt b/test/prism/snapshots/whitequark/forwarded_restarg.txt deleted file mode 100644 index 3e26b2b60e..0000000000 --- a/test/prism/snapshots/whitequark/forwarded_restarg.txt +++ /dev/null @@ -1,55 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,23)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,23)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,23)) - ├── flags: newline - ├── name: :foo - ├── name_loc: (1,4)-(1,7) = "foo" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,8)-(1,9)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: - │ │ @ RestParameterNode (location: (1,8)-(1,9)) - │ │ ├── flags: ∅ - │ │ ├── name: ∅ - │ │ ├── name_loc: ∅ - │ │ └── operator_loc: (1,8)-(1,9) = "*" - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (1,12)-(1,18)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,12)-(1,18)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (1,12)-(1,15) = "bar" - │ ├── opening_loc: (1,15)-(1,16) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,16)-(1,17)) - │ │ ├── flags: contains_splat - │ │ └── arguments: (length: 1) - │ │ └── @ SplatNode (location: (1,16)-(1,17)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (1,16)-(1,17) = "*" - │ │ └── expression: ∅ - │ ├── closing_loc: (1,17)-(1,18) = ")" - │ └── block: ∅ - ├── locals: [] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,7)-(1,8) = "(" - ├── rparen_loc: (1,9)-(1,10) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,20)-(1,23) = "end" diff --git a/test/prism/snapshots/whitequark/gvar.txt b/test/prism/snapshots/whitequark/gvar.txt deleted file mode 100644 index 5191f28e24..0000000000 --- a/test/prism/snapshots/whitequark/gvar.txt +++ /dev/null @@ -1,10 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ GlobalVariableReadNode (location: (1,0)-(1,4)) - ├── flags: newline - └── name: :$foo diff --git a/test/prism/snapshots/whitequark/gvasgn.txt b/test/prism/snapshots/whitequark/gvasgn.txt deleted file mode 100644 index e5bfe44d18..0000000000 --- a/test/prism/snapshots/whitequark/gvasgn.txt +++ /dev/null @@ -1,16 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ GlobalVariableWriteNode (location: (1,0)-(1,9)) - ├── flags: newline - ├── name: :$var - ├── name_loc: (1,0)-(1,4) = "$var" - ├── value: - │ @ IntegerNode (location: (1,7)-(1,9)) - │ ├── flags: static_literal, decimal - │ └── value: 10 - └── operator_loc: (1,5)-(1,6) = "=" diff --git a/test/prism/snapshots/whitequark/hash_empty.txt b/test/prism/snapshots/whitequark/hash_empty.txt deleted file mode 100644 index 3f6fcdd171..0000000000 --- a/test/prism/snapshots/whitequark/hash_empty.txt +++ /dev/null @@ -1,12 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ HashNode (location: (1,0)-(1,3)) - ├── flags: newline, static_literal - ├── opening_loc: (1,0)-(1,1) = "{" - ├── elements: (length: 0) - └── closing_loc: (1,2)-(1,3) = "}" diff --git a/test/prism/snapshots/whitequark/hash_hashrocket.txt b/test/prism/snapshots/whitequark/hash_hashrocket.txt deleted file mode 100644 index fcf3fe3055..0000000000 --- a/test/prism/snapshots/whitequark/hash_hashrocket.txt +++ /dev/null @@ -1,56 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,25)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,25)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ HashNode (location: (1,0)-(1,10)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (1,0)-(1,1) = "{" - │ ├── elements: (length: 1) - │ │ └── @ AssocNode (location: (1,2)-(1,8)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ IntegerNode (location: (1,2)-(1,3)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── value: - │ │ │ @ IntegerNode (location: (1,7)-(1,8)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── operator_loc: (1,4)-(1,6) = "=>" - │ └── closing_loc: (1,9)-(1,10) = "}" - └── @ HashNode (location: (3,0)-(3,25)) - ├── flags: newline - ├── opening_loc: (3,0)-(3,1) = "{" - ├── elements: (length: 2) - │ ├── @ AssocNode (location: (3,2)-(3,8)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ IntegerNode (location: (3,2)-(3,3)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── value: - │ │ │ @ IntegerNode (location: (3,7)-(3,8)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── operator_loc: (3,4)-(3,6) = "=>" - │ └── @ AssocNode (location: (3,10)-(3,23)) - │ ├── flags: ∅ - │ ├── key: - │ │ @ SymbolNode (location: (3,10)-(3,14)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (3,10)-(3,11) = ":" - │ │ ├── value_loc: (3,11)-(3,14) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ ├── value: - │ │ @ StringNode (location: (3,18)-(3,23)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (3,18)-(3,19) = "\"" - │ │ ├── content_loc: (3,19)-(3,22) = "bar" - │ │ ├── closing_loc: (3,22)-(3,23) = "\"" - │ │ └── unescaped: "bar" - │ └── operator_loc: (3,15)-(3,17) = "=>" - └── closing_loc: (3,24)-(3,25) = "}" diff --git a/test/prism/snapshots/whitequark/hash_kwsplat.txt b/test/prism/snapshots/whitequark/hash_kwsplat.txt deleted file mode 100644 index acccc48b3d..0000000000 --- a/test/prism/snapshots/whitequark/hash_kwsplat.txt +++ /dev/null @@ -1,40 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,17)) - ├── flags: ∅ - └── body: (length: 1) - └── @ HashNode (location: (1,0)-(1,17)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,1) = "{" - ├── elements: (length: 2) - │ ├── @ AssocNode (location: (1,2)-(1,8)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (1,2)-(1,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (1,2)-(1,5) = "foo" - │ │ │ ├── closing_loc: (1,5)-(1,6) = ":" - │ │ │ └── unescaped: "foo" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (1,7)-(1,8)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── operator_loc: ∅ - │ └── @ AssocSplatNode (location: (1,10)-(1,15)) - │ ├── flags: ∅ - │ ├── value: - │ │ @ CallNode (location: (1,12)-(1,15)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,12)-(1,15) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (1,10)-(1,12) = "**" - └── closing_loc: (1,16)-(1,17) = "}" diff --git a/test/prism/snapshots/whitequark/hash_label.txt b/test/prism/snapshots/whitequark/hash_label.txt deleted file mode 100644 index b321e21859..0000000000 --- a/test/prism/snapshots/whitequark/hash_label.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ HashNode (location: (1,0)-(1,10)) - ├── flags: newline, static_literal - ├── opening_loc: (1,0)-(1,1) = "{" - ├── elements: (length: 1) - │ └── @ AssocNode (location: (1,2)-(1,8)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ SymbolNode (location: (1,2)-(1,6)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (1,2)-(1,5) = "foo" - │ │ ├── closing_loc: (1,5)-(1,6) = ":" - │ │ └── unescaped: "foo" - │ ├── value: - │ │ @ IntegerNode (location: (1,7)-(1,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ └── operator_loc: ∅ - └── closing_loc: (1,9)-(1,10) = "}" diff --git a/test/prism/snapshots/whitequark/hash_label_end.txt b/test/prism/snapshots/whitequark/hash_label_end.txt deleted file mode 100644 index 9e4accee00..0000000000 --- a/test/prism/snapshots/whitequark/hash_label_end.txt +++ /dev/null @@ -1,112 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,22)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,22)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ CallNode (location: (1,0)-(1,12)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :f - │ ├── message_loc: (1,0)-(1,1) = "f" - │ ├── opening_loc: (1,1)-(1,2) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,2)-(1,11)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IfNode (location: (1,2)-(1,11)) - │ │ ├── flags: newline - │ │ ├── if_keyword_loc: ∅ - │ │ ├── predicate: - │ │ │ @ CallNode (location: (1,2)-(1,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (1,2)-(1,3) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── then_keyword_loc: (1,4)-(1,5) = "?" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,6)-(1,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ StringNode (location: (1,6)-(1,9)) - │ │ │ ├── flags: newline - │ │ │ ├── opening_loc: (1,6)-(1,7) = "\"" - │ │ │ ├── content_loc: (1,7)-(1,8) = "a" - │ │ │ ├── closing_loc: (1,8)-(1,9) = "\"" - │ │ │ └── unescaped: "a" - │ │ ├── subsequent: - │ │ │ @ ElseNode (location: (1,9)-(1,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── else_keyword_loc: (1,9)-(1,10) = ":" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (1,10)-(1,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (1,10)-(1,11)) - │ │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── end_keyword_loc: ∅ - │ │ └── end_keyword_loc: ∅ - │ ├── closing_loc: (1,11)-(1,12) = ")" - │ └── block: ∅ - ├── @ HashNode (location: (3,0)-(3,12)) - │ ├── flags: newline, static_literal - │ ├── opening_loc: (3,0)-(3,1) = "{" - │ ├── elements: (length: 1) - │ │ └── @ AssocNode (location: (3,2)-(3,10)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (3,2)-(3,8)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (3,2)-(3,3) = "'" - │ │ │ ├── value_loc: (3,3)-(3,6) = "foo" - │ │ │ ├── closing_loc: (3,6)-(3,8) = "':" - │ │ │ └── unescaped: "foo" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (3,9)-(3,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── operator_loc: ∅ - │ └── closing_loc: (3,11)-(3,12) = "}" - └── @ HashNode (location: (5,0)-(5,22)) - ├── flags: newline - ├── opening_loc: (5,0)-(5,1) = "{" - ├── elements: (length: 2) - │ ├── @ AssocNode (location: (5,2)-(5,10)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (5,2)-(5,8)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (5,2)-(5,3) = "'" - │ │ │ ├── value_loc: (5,3)-(5,6) = "foo" - │ │ │ ├── closing_loc: (5,6)-(5,8) = "':" - │ │ │ └── unescaped: "foo" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (5,9)-(5,10)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── operator_loc: ∅ - │ └── @ AssocNode (location: (5,12)-(5,21)) - │ ├── flags: ∅ - │ ├── key: - │ │ @ SymbolNode (location: (5,12)-(5,18)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (5,12)-(5,13) = "'" - │ │ ├── value_loc: (5,13)-(5,16) = "bar" - │ │ ├── closing_loc: (5,16)-(5,18) = "':" - │ │ └── unescaped: "bar" - │ ├── value: - │ │ @ HashNode (location: (5,19)-(5,21)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (5,19)-(5,20) = "{" - │ │ ├── elements: (length: 0) - │ │ └── closing_loc: (5,20)-(5,21) = "}" - │ └── operator_loc: ∅ - └── closing_loc: (5,21)-(5,22) = "}" diff --git a/test/prism/snapshots/whitequark/hash_pair_value_omission.txt b/test/prism/snapshots/whitequark/hash_pair_value_omission.txt deleted file mode 100644 index d87b1ef0f9..0000000000 --- a/test/prism/snapshots/whitequark/hash_pair_value_omission.txt +++ /dev/null @@ -1,111 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,7)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ HashNode (location: (1,0)-(1,6)) - │ ├── flags: newline - │ ├── opening_loc: (1,0)-(1,1) = "{" - │ ├── elements: (length: 1) - │ │ └── @ AssocNode (location: (1,1)-(1,5)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ SymbolNode (location: (1,1)-(1,5)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (1,1)-(1,4) = "BAR" - │ │ │ ├── closing_loc: (1,4)-(1,5) = ":" - │ │ │ └── unescaped: "BAR" - │ │ ├── value: - │ │ │ @ ImplicitNode (location: (1,1)-(1,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── value: - │ │ │ @ ConstantReadNode (location: (1,1)-(1,5)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :BAR - │ │ └── operator_loc: ∅ - │ └── closing_loc: (1,5)-(1,6) = "}" - ├── @ HashNode (location: (3,0)-(3,8)) - │ ├── flags: newline - │ ├── opening_loc: (3,0)-(3,1) = "{" - │ ├── elements: (length: 2) - │ │ ├── @ AssocNode (location: (3,1)-(3,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (3,1)-(3,3)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (3,1)-(3,2) = "a" - │ │ │ │ ├── closing_loc: (3,2)-(3,3) = ":" - │ │ │ │ └── unescaped: "a" - │ │ │ ├── value: - │ │ │ │ @ ImplicitNode (location: (3,1)-(3,3)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── value: - │ │ │ │ @ CallNode (location: (3,1)-(3,3)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ ├── message_loc: (3,1)-(3,2) = "a" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── operator_loc: ∅ - │ │ └── @ AssocNode (location: (3,5)-(3,7)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ SymbolNode (location: (3,5)-(3,7)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (3,5)-(3,6) = "b" - │ │ │ ├── closing_loc: (3,6)-(3,7) = ":" - │ │ │ └── unescaped: "b" - │ │ ├── value: - │ │ │ @ ImplicitNode (location: (3,5)-(3,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── value: - │ │ │ @ CallNode (location: (3,5)-(3,7)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (3,5)-(3,6) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: ∅ - │ └── closing_loc: (3,7)-(3,8) = "}" - └── @ HashNode (location: (5,0)-(5,7)) - ├── flags: newline - ├── opening_loc: (5,0)-(5,1) = "{" - ├── elements: (length: 1) - │ └── @ AssocNode (location: (5,1)-(5,6)) - │ ├── flags: ∅ - │ ├── key: - │ │ @ SymbolNode (location: (5,1)-(5,6)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (5,1)-(5,5) = "puts" - │ │ ├── closing_loc: (5,5)-(5,6) = ":" - │ │ └── unescaped: "puts" - │ ├── value: - │ │ @ ImplicitNode (location: (5,1)-(5,6)) - │ │ ├── flags: ∅ - │ │ └── value: - │ │ @ CallNode (location: (5,1)-(5,6)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :puts - │ │ ├── message_loc: (5,1)-(5,5) = "puts" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: ∅ - └── closing_loc: (5,6)-(5,7) = "}" diff --git a/test/prism/snapshots/whitequark/heredoc.txt b/test/prism/snapshots/whitequark/heredoc.txt deleted file mode 100644 index 76b3e94a92..0000000000 --- a/test/prism/snapshots/whitequark/heredoc.txt +++ /dev/null @@ -1,25 +0,0 @@ -@ ProgramNode (location: (1,0)-(11,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(11,8)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ StringNode (location: (1,0)-(1,8)) - │ ├── flags: newline - │ ├── opening_loc: (1,0)-(1,8) = "<<'HERE'" - │ ├── content_loc: (2,0)-(4,0) = "foo\nbar\n" - │ ├── closing_loc: (4,0)-(5,0) = "HERE\n" - │ └── unescaped: "foo\nbar\n" - ├── @ StringNode (location: (6,0)-(6,6)) - │ ├── flags: newline - │ ├── opening_loc: (6,0)-(6,6) = "<<HERE" - │ ├── content_loc: (7,0)-(9,0) = "foo\nbar\n" - │ ├── closing_loc: (9,0)-(10,0) = "HERE\n" - │ └── unescaped: "foo\nbar\n" - └── @ XStringNode (location: (11,0)-(11,8)) - ├── flags: newline - ├── opening_loc: (11,0)-(11,8) = "<<`HERE`" - ├── content_loc: (12,0)-(14,0) = "foo\nbar\n" - ├── closing_loc: (14,0)-(15,0) = "HERE\n" - └── unescaped: "foo\nbar\n" diff --git a/test/prism/snapshots/whitequark/if.txt b/test/prism/snapshots/whitequark/if.txt deleted file mode 100644 index e381b29fb4..0000000000 --- a/test/prism/snapshots/whitequark/if.txt +++ /dev/null @@ -1,69 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,16)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,16)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ IfNode (location: (1,0)-(1,20)) - │ ├── flags: newline - │ ├── if_keyword_loc: (1,0)-(1,2) = "if" - │ ├── predicate: - │ │ @ CallNode (location: (1,3)-(1,6)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,3)-(1,6) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: (1,7)-(1,11) = "then" - │ ├── statements: - │ │ @ StatementsNode (location: (1,12)-(1,15)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,12)-(1,15)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,12)-(1,15) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── subsequent: ∅ - │ └── end_keyword_loc: (1,17)-(1,20) = "end" - └── @ IfNode (location: (3,0)-(3,16)) - ├── flags: newline - ├── if_keyword_loc: (3,0)-(3,2) = "if" - ├── predicate: - │ @ CallNode (location: (3,3)-(3,6)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (3,3)-(3,6) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── then_keyword_loc: ∅ - ├── statements: - │ @ StatementsNode (location: (3,8)-(3,11)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (3,8)-(3,11)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (3,8)-(3,11) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── subsequent: ∅ - └── end_keyword_loc: (3,13)-(3,16) = "end" diff --git a/test/prism/snapshots/whitequark/if_else.txt b/test/prism/snapshots/whitequark/if_else.txt deleted file mode 100644 index efabd768ae..0000000000 --- a/test/prism/snapshots/whitequark/if_else.txt +++ /dev/null @@ -1,105 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,26)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,26)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ IfNode (location: (1,0)-(1,30)) - │ ├── flags: newline - │ ├── if_keyword_loc: (1,0)-(1,2) = "if" - │ ├── predicate: - │ │ @ CallNode (location: (1,3)-(1,6)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,3)-(1,6) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: (1,7)-(1,11) = "then" - │ ├── statements: - │ │ @ StatementsNode (location: (1,12)-(1,15)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,12)-(1,15)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,12)-(1,15) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── subsequent: - │ │ @ ElseNode (location: (1,17)-(1,30)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (1,17)-(1,21) = "else" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,22)-(1,25)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (1,22)-(1,25)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (1,22)-(1,25) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── end_keyword_loc: (1,27)-(1,30) = "end" - │ └── end_keyword_loc: (1,27)-(1,30) = "end" - └── @ IfNode (location: (3,0)-(3,26)) - ├── flags: newline - ├── if_keyword_loc: (3,0)-(3,2) = "if" - ├── predicate: - │ @ CallNode (location: (3,3)-(3,6)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (3,3)-(3,6) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── then_keyword_loc: ∅ - ├── statements: - │ @ StatementsNode (location: (3,8)-(3,11)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (3,8)-(3,11)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (3,8)-(3,11) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── subsequent: - │ @ ElseNode (location: (3,13)-(3,26)) - │ ├── flags: ∅ - │ ├── else_keyword_loc: (3,13)-(3,17) = "else" - │ ├── statements: - │ │ @ StatementsNode (location: (3,18)-(3,21)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (3,18)-(3,21)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (3,18)-(3,21) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── end_keyword_loc: (3,23)-(3,26) = "end" - └── end_keyword_loc: (3,23)-(3,26) = "end" diff --git a/test/prism/snapshots/whitequark/if_elsif.txt b/test/prism/snapshots/whitequark/if_elsif.txt deleted file mode 100644 index 6edd4e920f..0000000000 --- a/test/prism/snapshots/whitequark/if_elsif.txt +++ /dev/null @@ -1,73 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,38)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,38)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IfNode (location: (1,0)-(1,38)) - ├── flags: newline - ├── if_keyword_loc: (1,0)-(1,2) = "if" - ├── predicate: - │ @ CallNode (location: (1,3)-(1,6)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,3)-(1,6) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── then_keyword_loc: ∅ - ├── statements: - │ @ StatementsNode (location: (1,8)-(1,11)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,8)-(1,11)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (1,8)-(1,11) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── subsequent: - │ @ IfNode (location: (1,13)-(1,38)) - │ ├── flags: newline - │ ├── if_keyword_loc: (1,13)-(1,18) = "elsif" - │ ├── predicate: - │ │ @ CallNode (location: (1,19)-(1,22)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (1,19)-(1,22) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (1,24)-(1,25)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (1,24)-(1,25)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 1 - │ ├── subsequent: - │ │ @ ElseNode (location: (1,27)-(1,38)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (1,27)-(1,31) = "else" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,32)-(1,33)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ IntegerNode (location: (1,32)-(1,33)) - │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ └── value: 2 - │ │ └── end_keyword_loc: (1,35)-(1,38) = "end" - │ └── end_keyword_loc: (1,35)-(1,38) = "end" - └── end_keyword_loc: (1,35)-(1,38) = "end" diff --git a/test/prism/snapshots/whitequark/if_masgn__24.txt b/test/prism/snapshots/whitequark/if_masgn__24.txt deleted file mode 100644 index 5d8ed5808d..0000000000 --- a/test/prism/snapshots/whitequark/if_masgn__24.txt +++ /dev/null @@ -1,50 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,20)) -├── flags: ∅ -├── locals: [:a, :b] -└── statements: - @ StatementsNode (location: (1,0)-(1,20)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IfNode (location: (1,0)-(1,20)) - ├── flags: newline - ├── if_keyword_loc: (1,0)-(1,2) = "if" - ├── predicate: - │ @ ParenthesesNode (location: (1,3)-(1,15)) - │ ├── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,4)-(1,14)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ MultiWriteNode (location: (1,4)-(1,14)) - │ │ ├── flags: newline - │ │ ├── lefts: (length: 2) - │ │ │ ├── @ LocalVariableTargetNode (location: (1,4)-(1,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ └── depth: 0 - │ │ │ └── @ LocalVariableTargetNode (location: (1,7)-(1,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ └── depth: 0 - │ │ ├── rest: ∅ - │ │ ├── rights: (length: 0) - │ │ ├── lparen_loc: ∅ - │ │ ├── rparen_loc: ∅ - │ │ ├── operator_loc: (1,9)-(1,10) = "=" - │ │ └── value: - │ │ @ CallNode (location: (1,11)-(1,14)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,11)-(1,14) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (1,3)-(1,4) = "(" - │ └── closing_loc: (1,14)-(1,15) = ")" - ├── then_keyword_loc: ∅ - ├── statements: ∅ - ├── subsequent: ∅ - └── end_keyword_loc: (1,17)-(1,20) = "end" diff --git a/test/prism/snapshots/whitequark/if_mod.txt b/test/prism/snapshots/whitequark/if_mod.txt deleted file mode 100644 index d2597fec66..0000000000 --- a/test/prism/snapshots/whitequark/if_mod.txt +++ /dev/null @@ -1,38 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IfNode (location: (1,0)-(1,10)) - ├── flags: newline - ├── if_keyword_loc: (1,4)-(1,6) = "if" - ├── predicate: - │ @ CallNode (location: (1,7)-(1,10)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,7)-(1,10) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── then_keyword_loc: ∅ - ├── statements: - │ @ StatementsNode (location: (1,0)-(1,3)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,0)-(1,3)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (1,0)-(1,3) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── subsequent: ∅ - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/whitequark/if_nl_then.txt b/test/prism/snapshots/whitequark/if_nl_then.txt deleted file mode 100644 index c6a424bbd9..0000000000 --- a/test/prism/snapshots/whitequark/if_nl_then.txt +++ /dev/null @@ -1,38 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IfNode (location: (1,0)-(2,12)) - ├── flags: newline - ├── if_keyword_loc: (1,0)-(1,2) = "if" - ├── predicate: - │ @ CallNode (location: (1,3)-(1,6)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,3)-(1,6) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── then_keyword_loc: (2,0)-(2,4) = "then" - ├── statements: - │ @ StatementsNode (location: (2,5)-(2,8)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (2,5)-(2,8)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (2,5)-(2,8) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── subsequent: ∅ - └── end_keyword_loc: (2,9)-(2,12) = "end" diff --git a/test/prism/snapshots/whitequark/int.txt b/test/prism/snapshots/whitequark/int.txt deleted file mode 100644 index b62b287a98..0000000000 --- a/test/prism/snapshots/whitequark/int.txt +++ /dev/null @@ -1,16 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,2)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,2)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ IntegerNode (location: (1,0)-(1,3)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 42 - ├── @ IntegerNode (location: (3,0)-(3,3)) - │ ├── flags: newline, static_literal, decimal - │ └── value: -42 - └── @ IntegerNode (location: (5,0)-(5,2)) - ├── flags: newline, static_literal, decimal - └── value: 42 diff --git a/test/prism/snapshots/whitequark/int___LINE__.txt b/test/prism/snapshots/whitequark/int___LINE__.txt deleted file mode 100644 index fa4c249e86..0000000000 --- a/test/prism/snapshots/whitequark/int___LINE__.txt +++ /dev/null @@ -1,9 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ SourceLineNode (location: (1,0)-(1,8)) - └── flags: newline, static_literal diff --git a/test/prism/snapshots/whitequark/interp_digit_var.txt b/test/prism/snapshots/whitequark/interp_digit_var.txt deleted file mode 100644 index 7e8a3a2f31..0000000000 --- a/test/prism/snapshots/whitequark/interp_digit_var.txt +++ /dev/null @@ -1,275 +0,0 @@ -@ ProgramNode (location: (1,1)-(85,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,1)-(85,9)) - ├── flags: ∅ - └── body: (length: 38) - ├── @ StringNode (location: (1,1)-(1,6)) - │ ├── flags: newline - │ ├── opening_loc: (1,1)-(1,2) = "\"" - │ ├── content_loc: (1,2)-(1,5) = "\#@1" - │ ├── closing_loc: (1,5)-(1,6) = "\"" - │ └── unescaped: "\#@1" - ├── @ StringNode (location: (3,1)-(3,7)) - │ ├── flags: newline - │ ├── opening_loc: (3,1)-(3,2) = "\"" - │ ├── content_loc: (3,2)-(3,6) = "\#@@1" - │ ├── closing_loc: (3,6)-(3,7) = "\"" - │ └── unescaped: "\#@@1" - ├── @ ArrayNode (location: (5,1)-(5,8)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 1) - │ │ └── @ SymbolNode (location: (5,4)-(5,7)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (5,4)-(5,7) = "\#@1" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\#@1" - │ ├── opening_loc: (5,1)-(5,4) = "%I[" - │ └── closing_loc: (5,7)-(5,8) = "]" - ├── @ ArrayNode (location: (7,1)-(7,9)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 1) - │ │ └── @ SymbolNode (location: (7,4)-(7,8)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (7,4)-(7,8) = "\#@@1" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\#@@1" - │ ├── opening_loc: (7,1)-(7,4) = "%I[" - │ └── closing_loc: (7,8)-(7,9) = "]" - ├── @ StringNode (location: (9,1)-(9,8)) - │ ├── flags: newline - │ ├── opening_loc: (9,1)-(9,4) = "%Q{" - │ ├── content_loc: (9,4)-(9,7) = "\#@1" - │ ├── closing_loc: (9,7)-(9,8) = "}" - │ └── unescaped: "\#@1" - ├── @ StringNode (location: (11,1)-(11,9)) - │ ├── flags: newline - │ ├── opening_loc: (11,1)-(11,4) = "%Q{" - │ ├── content_loc: (11,4)-(11,8) = "\#@@1" - │ ├── closing_loc: (11,8)-(11,9) = "}" - │ └── unescaped: "\#@@1" - ├── @ ArrayNode (location: (13,1)-(13,8)) - │ ├── flags: newline - │ ├── elements: (length: 1) - │ │ └── @ StringNode (location: (13,4)-(13,7)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (13,4)-(13,7) = "\#@1" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\#@1" - │ ├── opening_loc: (13,1)-(13,4) = "%W[" - │ └── closing_loc: (13,7)-(13,8) = "]" - ├── @ ArrayNode (location: (15,1)-(15,9)) - │ ├── flags: newline - │ ├── elements: (length: 1) - │ │ └── @ StringNode (location: (15,4)-(15,8)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (15,4)-(15,8) = "\#@@1" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\#@@1" - │ ├── opening_loc: (15,1)-(15,4) = "%W[" - │ └── closing_loc: (15,8)-(15,9) = "]" - ├── @ ArrayNode (location: (17,1)-(17,10)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 1) - │ │ └── @ SymbolNode (location: (17,5)-(17,8)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (17,5)-(17,8) = "\#@1" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\#@1" - │ ├── opening_loc: (17,1)-(17,4) = "%i[" - │ └── closing_loc: (17,9)-(17,10) = "]" - ├── @ ArrayNode (location: (19,1)-(19,11)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 1) - │ │ └── @ SymbolNode (location: (19,5)-(19,9)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (19,5)-(19,9) = "\#@@1" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\#@@1" - │ ├── opening_loc: (19,1)-(19,4) = "%i[" - │ └── closing_loc: (19,10)-(19,11) = "]" - ├── @ StringNode (location: (21,1)-(21,8)) - │ ├── flags: newline - │ ├── opening_loc: (21,1)-(21,4) = "%q{" - │ ├── content_loc: (21,4)-(21,7) = "\#@1" - │ ├── closing_loc: (21,7)-(21,8) = "}" - │ └── unescaped: "\#@1" - ├── @ StringNode (location: (23,1)-(23,9)) - │ ├── flags: newline - │ ├── opening_loc: (23,1)-(23,4) = "%q{" - │ ├── content_loc: (23,4)-(23,8) = "\#@@1" - │ ├── closing_loc: (23,8)-(23,9) = "}" - │ └── unescaped: "\#@@1" - ├── @ RegularExpressionNode (location: (25,1)-(25,8)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (25,1)-(25,4) = "%r{" - │ ├── content_loc: (25,4)-(25,7) = "\#@1" - │ ├── closing_loc: (25,7)-(25,8) = "}" - │ └── unescaped: "\#@1" - ├── @ RegularExpressionNode (location: (27,1)-(27,9)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (27,1)-(27,4) = "%r{" - │ ├── content_loc: (27,4)-(27,8) = "\#@@1" - │ ├── closing_loc: (27,8)-(27,9) = "}" - │ └── unescaped: "\#@@1" - ├── @ SymbolNode (location: (29,1)-(29,8)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (29,1)-(29,4) = "%s{" - │ ├── value_loc: (29,4)-(29,7) = "\#@1" - │ ├── closing_loc: (29,7)-(29,8) = "}" - │ └── unescaped: "\#@1" - ├── @ SymbolNode (location: (31,1)-(31,9)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (31,1)-(31,4) = "%s{" - │ ├── value_loc: (31,4)-(31,8) = "\#@@1" - │ ├── closing_loc: (31,8)-(31,9) = "}" - │ └── unescaped: "\#@@1" - ├── @ ArrayNode (location: (33,1)-(33,10)) - │ ├── flags: newline - │ ├── elements: (length: 1) - │ │ └── @ StringNode (location: (33,5)-(33,8)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (33,5)-(33,8) = "\#@1" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\#@1" - │ ├── opening_loc: (33,1)-(33,4) = "%w[" - │ └── closing_loc: (33,9)-(33,10) = "]" - ├── @ ArrayNode (location: (35,1)-(35,11)) - │ ├── flags: newline - │ ├── elements: (length: 1) - │ │ └── @ StringNode (location: (35,5)-(35,9)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (35,5)-(35,9) = "\#@@1" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "\#@@1" - │ ├── opening_loc: (35,1)-(35,4) = "%w[" - │ └── closing_loc: (35,10)-(35,11) = "]" - ├── @ XStringNode (location: (37,1)-(37,8)) - │ ├── flags: newline - │ ├── opening_loc: (37,1)-(37,4) = "%x{" - │ ├── content_loc: (37,4)-(37,7) = "\#@1" - │ ├── closing_loc: (37,7)-(37,8) = "}" - │ └── unescaped: "\#@1" - ├── @ XStringNode (location: (39,1)-(39,9)) - │ ├── flags: newline - │ ├── opening_loc: (39,1)-(39,4) = "%x{" - │ ├── content_loc: (39,4)-(39,8) = "\#@@1" - │ ├── closing_loc: (39,8)-(39,9) = "}" - │ └── unescaped: "\#@@1" - ├── @ StringNode (location: (41,1)-(41,7)) - │ ├── flags: newline - │ ├── opening_loc: (41,1)-(41,3) = "%{" - │ ├── content_loc: (41,3)-(41,6) = "\#@1" - │ ├── closing_loc: (41,6)-(41,7) = "}" - │ └── unescaped: "\#@1" - ├── @ StringNode (location: (43,1)-(43,8)) - │ ├── flags: newline - │ ├── opening_loc: (43,1)-(43,3) = "%{" - │ ├── content_loc: (43,3)-(43,7) = "\#@@1" - │ ├── closing_loc: (43,7)-(43,8) = "}" - │ └── unescaped: "\#@@1" - ├── @ StringNode (location: (45,1)-(45,6)) - │ ├── flags: newline - │ ├── opening_loc: (45,1)-(45,2) = "'" - │ ├── content_loc: (45,2)-(45,5) = "\#@1" - │ ├── closing_loc: (45,5)-(45,6) = "'" - │ └── unescaped: "\#@1" - ├── @ StringNode (location: (47,1)-(47,7)) - │ ├── flags: newline - │ ├── opening_loc: (47,1)-(47,2) = "'" - │ ├── content_loc: (47,2)-(47,6) = "\#@@1" - │ ├── closing_loc: (47,6)-(47,7) = "'" - │ └── unescaped: "\#@@1" - ├── @ RegularExpressionNode (location: (49,1)-(49,6)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (49,1)-(49,2) = "/" - │ ├── content_loc: (49,2)-(49,5) = "\#@1" - │ ├── closing_loc: (49,5)-(49,6) = "/" - │ └── unescaped: "\#@1" - ├── @ RegularExpressionNode (location: (51,1)-(51,7)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (51,1)-(51,2) = "/" - │ ├── content_loc: (51,2)-(51,6) = "\#@@1" - │ ├── closing_loc: (51,6)-(51,7) = "/" - │ └── unescaped: "\#@@1" - ├── @ SymbolNode (location: (53,1)-(53,7)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (53,1)-(53,3) = ":\"" - │ ├── value_loc: (53,3)-(53,6) = "\#@1" - │ ├── closing_loc: (53,6)-(53,7) = "\"" - │ └── unescaped: "\#@1" - ├── @ SymbolNode (location: (55,1)-(55,8)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (55,1)-(55,3) = ":\"" - │ ├── value_loc: (55,3)-(55,7) = "\#@@1" - │ ├── closing_loc: (55,7)-(55,8) = "\"" - │ └── unescaped: "\#@@1" - ├── @ SymbolNode (location: (57,1)-(57,7)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (57,1)-(57,3) = ":'" - │ ├── value_loc: (57,3)-(57,6) = "\#@1" - │ ├── closing_loc: (57,6)-(57,7) = "'" - │ └── unescaped: "\#@1" - ├── @ SymbolNode (location: (59,1)-(59,8)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (59,1)-(59,3) = ":'" - │ ├── value_loc: (59,3)-(59,7) = "\#@@1" - │ ├── closing_loc: (59,7)-(59,8) = "'" - │ └── unescaped: "\#@@1" - ├── @ XStringNode (location: (61,1)-(61,6)) - │ ├── flags: newline - │ ├── opening_loc: (61,1)-(61,2) = "`" - │ ├── content_loc: (61,2)-(61,5) = "\#@1" - │ ├── closing_loc: (61,5)-(61,6) = "`" - │ └── unescaped: "\#@1" - ├── @ XStringNode (location: (63,1)-(63,7)) - │ ├── flags: newline - │ ├── opening_loc: (63,1)-(63,2) = "`" - │ ├── content_loc: (63,2)-(63,6) = "\#@@1" - │ ├── closing_loc: (63,6)-(63,7) = "`" - │ └── unescaped: "\#@@1" - ├── @ StringNode (location: (65,0)-(65,9)) - │ ├── flags: newline - │ ├── opening_loc: (65,0)-(65,9) = "<<-\"HERE\"" - │ ├── content_loc: (66,0)-(67,0) = "\#@1\n" - │ ├── closing_loc: (67,0)-(68,0) = "HERE\n" - │ └── unescaped: "\#@1\n" - ├── @ StringNode (location: (69,0)-(69,9)) - │ ├── flags: newline - │ ├── opening_loc: (69,0)-(69,9) = "<<-\"HERE\"" - │ ├── content_loc: (70,0)-(71,0) = "\#@@1\n" - │ ├── closing_loc: (71,0)-(72,0) = "HERE\n" - │ └── unescaped: "\#@@1\n" - ├── @ StringNode (location: (73,0)-(73,9)) - │ ├── flags: newline - │ ├── opening_loc: (73,0)-(73,9) = "<<-'HERE'" - │ ├── content_loc: (74,0)-(75,0) = "\#@1\n" - │ ├── closing_loc: (75,0)-(76,0) = "HERE\n" - │ └── unescaped: "\#@1\n" - ├── @ StringNode (location: (77,0)-(77,9)) - │ ├── flags: newline - │ ├── opening_loc: (77,0)-(77,9) = "<<-'HERE'" - │ ├── content_loc: (78,0)-(79,0) = "\#@@1\n" - │ ├── closing_loc: (79,0)-(80,0) = "HERE\n" - │ └── unescaped: "\#@@1\n" - ├── @ XStringNode (location: (81,0)-(81,9)) - │ ├── flags: newline - │ ├── opening_loc: (81,0)-(81,9) = "<<-`HERE`" - │ ├── content_loc: (82,0)-(83,0) = "\#@1\n" - │ ├── closing_loc: (83,0)-(84,0) = "HERE\n" - │ └── unescaped: "\#@1\n" - └── @ XStringNode (location: (85,0)-(85,9)) - ├── flags: newline - ├── opening_loc: (85,0)-(85,9) = "<<-`HERE`" - ├── content_loc: (86,0)-(87,0) = "\#@@1\n" - ├── closing_loc: (87,0)-(88,0) = "HERE\n" - └── unescaped: "\#@@1\n" diff --git a/test/prism/snapshots/whitequark/ivar.txt b/test/prism/snapshots/whitequark/ivar.txt deleted file mode 100644 index 6a0a03dd5e..0000000000 --- a/test/prism/snapshots/whitequark/ivar.txt +++ /dev/null @@ -1,10 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InstanceVariableReadNode (location: (1,0)-(1,4)) - ├── flags: newline - └── name: :@foo diff --git a/test/prism/snapshots/whitequark/ivasgn.txt b/test/prism/snapshots/whitequark/ivasgn.txt deleted file mode 100644 index cc16bdd4e6..0000000000 --- a/test/prism/snapshots/whitequark/ivasgn.txt +++ /dev/null @@ -1,16 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InstanceVariableWriteNode (location: (1,0)-(1,9)) - ├── flags: newline - ├── name: :@var - ├── name_loc: (1,0)-(1,4) = "@var" - ├── value: - │ @ IntegerNode (location: (1,7)-(1,9)) - │ ├── flags: static_literal, decimal - │ └── value: 10 - └── operator_loc: (1,5)-(1,6) = "=" diff --git a/test/prism/snapshots/whitequark/keyword_argument_omission.txt b/test/prism/snapshots/whitequark/keyword_argument_omission.txt deleted file mode 100644 index ac32216061..0000000000 --- a/test/prism/snapshots/whitequark/keyword_argument_omission.txt +++ /dev/null @@ -1,71 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,11)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :foo - ├── message_loc: (1,0)-(1,3) = "foo" - ├── opening_loc: (1,3)-(1,4) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,10)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 1) - │ └── @ KeywordHashNode (location: (1,4)-(1,10)) - │ ├── flags: symbol_keys - │ └── elements: (length: 2) - │ ├── @ AssocNode (location: (1,4)-(1,6)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ SymbolNode (location: (1,4)-(1,6)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (1,4)-(1,5) = "a" - │ │ │ ├── closing_loc: (1,5)-(1,6) = ":" - │ │ │ └── unescaped: "a" - │ │ ├── value: - │ │ │ @ ImplicitNode (location: (1,4)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── value: - │ │ │ @ CallNode (location: (1,4)-(1,6)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :a - │ │ │ ├── message_loc: (1,4)-(1,5) = "a" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: ∅ - │ └── @ AssocNode (location: (1,8)-(1,10)) - │ ├── flags: ∅ - │ ├── key: - │ │ @ SymbolNode (location: (1,8)-(1,10)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (1,8)-(1,9) = "b" - │ │ ├── closing_loc: (1,9)-(1,10) = ":" - │ │ └── unescaped: "b" - │ ├── value: - │ │ @ ImplicitNode (location: (1,8)-(1,10)) - │ │ ├── flags: ∅ - │ │ └── value: - │ │ @ CallNode (location: (1,8)-(1,10)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (1,8)-(1,9) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: ∅ - ├── closing_loc: (1,10)-(1,11) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/kwarg.txt b/test/prism/snapshots/whitequark/kwarg.txt deleted file mode 100644 index aaa55b680a..0000000000 --- a/test/prism/snapshots/whitequark/kwarg.txt +++ /dev/null @@ -1,34 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,16)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,16)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,16)) - ├── flags: newline - ├── name: :f - ├── name_loc: (1,4)-(1,5) = "f" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,10)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 1) - │ │ └── @ RequiredKeywordParameterNode (location: (1,6)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── name_loc: (1,6)-(1,10) = "foo:" - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:foo] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,5)-(1,6) = "(" - ├── rparen_loc: (1,10)-(1,11) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,13)-(1,16) = "end" diff --git a/test/prism/snapshots/whitequark/kwbegin_compstmt.txt b/test/prism/snapshots/whitequark/kwbegin_compstmt.txt deleted file mode 100644 index 690c790966..0000000000 --- a/test/prism/snapshots/whitequark/kwbegin_compstmt.txt +++ /dev/null @@ -1,38 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,20)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,20)) - ├── flags: ∅ - └── body: (length: 1) - └── @ BeginNode (location: (1,0)-(1,20)) - ├── flags: newline - ├── begin_keyword_loc: (1,0)-(1,5) = "begin" - ├── statements: - │ @ StatementsNode (location: (1,6)-(1,16)) - │ ├── flags: ∅ - │ └── body: (length: 2) - │ ├── @ CallNode (location: (1,6)-(1,10)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo! - │ │ ├── message_loc: (1,6)-(1,10) = "foo!" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── @ CallNode (location: (1,12)-(1,16)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar! - │ ├── message_loc: (1,12)-(1,16) = "bar!" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── rescue_clause: ∅ - ├── else_clause: ∅ - ├── ensure_clause: ∅ - └── end_keyword_loc: (1,17)-(1,20) = "end" diff --git a/test/prism/snapshots/whitequark/kwnilarg.txt b/test/prism/snapshots/whitequark/kwnilarg.txt deleted file mode 100644 index 028fe07e74..0000000000 --- a/test/prism/snapshots/whitequark/kwnilarg.txt +++ /dev/null @@ -1,97 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,13)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ LambdaNode (location: (1,0)-(1,12)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── operator_loc: (1,0)-(1,2) = "->" - │ ├── opening_loc: (1,10)-(1,11) = "{" - │ ├── closing_loc: (1,11)-(1,12) = "}" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (1,2)-(1,9)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (1,3)-(1,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: - │ │ │ │ @ NoKeywordsParameterNode (location: (1,3)-(1,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── operator_loc: (1,3)-(1,5) = "**" - │ │ │ │ └── keyword_loc: (1,5)-(1,8) = "nil" - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (1,2)-(1,3) = "(" - │ │ └── closing_loc: (1,8)-(1,9) = ")" - │ └── body: ∅ - ├── @ DefNode (location: (3,0)-(3,17)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (3,4)-(3,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (3,6)-(3,11)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ NoKeywordsParameterNode (location: (3,6)-(3,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (3,6)-(3,8) = "**" - │ │ │ └── keyword_loc: (3,8)-(3,11) = "nil" - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (3,0)-(3,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: (3,5)-(3,6) = "(" - │ ├── rparen_loc: (3,11)-(3,12) = ")" - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (3,14)-(3,17) = "end" - └── @ CallNode (location: (5,0)-(5,13)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :m - ├── message_loc: (5,0)-(5,1) = "m" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (5,2)-(5,13)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: - │ @ BlockParametersNode (location: (5,4)-(5,11)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (5,5)-(5,10)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: - │ │ │ @ NoKeywordsParameterNode (location: (5,5)-(5,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (5,5)-(5,7) = "**" - │ │ │ └── keyword_loc: (5,7)-(5,10) = "nil" - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (5,4)-(5,5) = "|" - │ └── closing_loc: (5,10)-(5,11) = "|" - ├── body: ∅ - ├── opening_loc: (5,2)-(5,3) = "{" - └── closing_loc: (5,12)-(5,13) = "}" diff --git a/test/prism/snapshots/whitequark/kwoptarg.txt b/test/prism/snapshots/whitequark/kwoptarg.txt deleted file mode 100644 index 010d82c930..0000000000 --- a/test/prism/snapshots/whitequark/kwoptarg.txt +++ /dev/null @@ -1,38 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,18)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,18)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,18)) - ├── flags: newline - ├── name: :f - ├── name_loc: (1,4)-(1,5) = "f" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,12)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 1) - │ │ └── @ OptionalKeywordParameterNode (location: (1,6)-(1,12)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ ├── name_loc: (1,6)-(1,10) = "foo:" - │ │ └── value: - │ │ @ IntegerNode (location: (1,11)-(1,12)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:foo] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,5)-(1,6) = "(" - ├── rparen_loc: (1,12)-(1,13) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,15)-(1,18) = "end" diff --git a/test/prism/snapshots/whitequark/kwoptarg_with_kwrestarg_and_forwarded_args.txt b/test/prism/snapshots/whitequark/kwoptarg_with_kwrestarg_and_forwarded_args.txt deleted file mode 100644 index b233427556..0000000000 --- a/test/prism/snapshots/whitequark/kwoptarg_with_kwrestarg_and_forwarded_args.txt +++ /dev/null @@ -1,65 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,28)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,28)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,28)) - ├── flags: newline - ├── name: :f - ├── name_loc: (1,4)-(1,5) = "f" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,16)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 1) - │ │ └── @ OptionalKeywordParameterNode (location: (1,6)-(1,12)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ ├── name_loc: (1,6)-(1,8) = "a:" - │ │ └── value: - │ │ @ NilNode (location: (1,9)-(1,12)) - │ │ └── flags: static_literal - │ ├── keyword_rest: - │ │ @ KeywordRestParameterNode (location: (1,14)-(1,16)) - │ │ ├── flags: ∅ - │ │ ├── name: ∅ - │ │ ├── name_loc: ∅ - │ │ └── operator_loc: (1,14)-(1,16) = "**" - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (1,19)-(1,24)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,19)-(1,24)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :b - │ ├── message_loc: (1,19)-(1,20) = "b" - │ ├── opening_loc: (1,20)-(1,21) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,21)-(1,23)) - │ │ ├── flags: contains_keywords, contains_keyword_splat - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (1,21)-(1,23)) - │ │ ├── flags: ∅ - │ │ └── elements: (length: 1) - │ │ └── @ AssocSplatNode (location: (1,21)-(1,23)) - │ │ ├── flags: ∅ - │ │ ├── value: ∅ - │ │ └── operator_loc: (1,21)-(1,23) = "**" - │ ├── closing_loc: (1,23)-(1,24) = ")" - │ └── block: ∅ - ├── locals: [:a] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,5)-(1,6) = "(" - ├── rparen_loc: (1,16)-(1,17) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,25)-(1,28) = "end" diff --git a/test/prism/snapshots/whitequark/kwrestarg_named.txt b/test/prism/snapshots/whitequark/kwrestarg_named.txt deleted file mode 100644 index 3f411208aa..0000000000 --- a/test/prism/snapshots/whitequark/kwrestarg_named.txt +++ /dev/null @@ -1,35 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,17)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,17)) - ├── flags: newline - ├── name: :f - ├── name_loc: (1,4)-(1,5) = "f" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,11)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: - │ │ @ KeywordRestParameterNode (location: (1,6)-(1,11)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ ├── name_loc: (1,8)-(1,11) = "foo" - │ │ └── operator_loc: (1,6)-(1,8) = "**" - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:foo] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,5)-(1,6) = "(" - ├── rparen_loc: (1,11)-(1,12) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,14)-(1,17) = "end" diff --git a/test/prism/snapshots/whitequark/kwrestarg_unnamed.txt b/test/prism/snapshots/whitequark/kwrestarg_unnamed.txt deleted file mode 100644 index 6fc42b0e80..0000000000 --- a/test/prism/snapshots/whitequark/kwrestarg_unnamed.txt +++ /dev/null @@ -1,35 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,14)) - ├── flags: newline - ├── name: :f - ├── name_loc: (1,4)-(1,5) = "f" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,8)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: - │ │ @ KeywordRestParameterNode (location: (1,6)-(1,8)) - │ │ ├── flags: ∅ - │ │ ├── name: ∅ - │ │ ├── name_loc: ∅ - │ │ └── operator_loc: (1,6)-(1,8) = "**" - │ └── block: ∅ - ├── body: ∅ - ├── locals: [] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,5)-(1,6) = "(" - ├── rparen_loc: (1,8)-(1,9) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,11)-(1,14) = "end" diff --git a/test/prism/snapshots/whitequark/lbrace_arg_after_command_args.txt b/test/prism/snapshots/whitequark/lbrace_arg_after_command_args.txt deleted file mode 100644 index 9132ab64ab..0000000000 --- a/test/prism/snapshots/whitequark/lbrace_arg_after_command_args.txt +++ /dev/null @@ -1,61 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,22)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,22)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,22)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :let - ├── message_loc: (1,0)-(1,3) = "let" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,8)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ ParenthesesNode (location: (1,4)-(1,8)) - │ ├── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,5)-(1,7)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SymbolNode (location: (1,5)-(1,7)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,5)-(1,6) = ":" - │ │ ├── value_loc: (1,6)-(1,7) = "a" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a" - │ ├── opening_loc: (1,4)-(1,5) = "(" - │ └── closing_loc: (1,7)-(1,8) = ")" - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,9)-(1,22)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (1,11)-(1,20)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,11)-(1,20)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (1,11)-(1,12) = "m" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (1,13)-(1,20)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (1,13)-(1,15) = "do" - │ └── closing_loc: (1,17)-(1,20) = "end" - ├── opening_loc: (1,9)-(1,10) = "{" - └── closing_loc: (1,21)-(1,22) = "}" diff --git a/test/prism/snapshots/whitequark/lparenarg_after_lvar__since_25.txt b/test/prism/snapshots/whitequark/lparenarg_after_lvar__since_25.txt deleted file mode 100644 index 4c11a17f86..0000000000 --- a/test/prism/snapshots/whitequark/lparenarg_after_lvar__since_25.txt +++ /dev/null @@ -1,75 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,15)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,14)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,0)-(1,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,4)-(1,14)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (1,4)-(1,14)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ ParenthesesNode (location: (1,4)-(1,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (1,5)-(1,9)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ FloatNode (location: (1,5)-(1,9)) - │ │ │ │ ├── flags: newline, static_literal - │ │ │ │ └── value: -1.3 - │ │ │ ├── opening_loc: (1,4)-(1,5) = "(" - │ │ │ └── closing_loc: (1,9)-(1,10) = ")" - │ │ ├── call_operator_loc: (1,10)-(1,11) = "." - │ │ ├── name: :abs - │ │ ├── message_loc: (1,11)-(1,14) = "abs" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (3,0)-(3,15)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :meth - ├── message_loc: (3,0)-(3,4) = "meth" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (3,5)-(3,15)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (3,5)-(3,15)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ ParenthesesNode (location: (3,5)-(3,11)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (3,6)-(3,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ FloatNode (location: (3,6)-(3,10)) - │ │ │ ├── flags: newline, static_literal - │ │ │ └── value: -1.3 - │ │ ├── opening_loc: (3,5)-(3,6) = "(" - │ │ └── closing_loc: (3,10)-(3,11) = ")" - │ ├── call_operator_loc: (3,11)-(3,12) = "." - │ ├── name: :abs - │ ├── message_loc: (3,12)-(3,15) = "abs" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/lvar.txt b/test/prism/snapshots/whitequark/lvar.txt deleted file mode 100644 index 3de3483075..0000000000 --- a/test/prism/snapshots/whitequark/lvar.txt +++ /dev/null @@ -1,17 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,3)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :foo - ├── message_loc: (1,0)-(1,3) = "foo" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/lvar_injecting_match.txt b/test/prism/snapshots/whitequark/lvar_injecting_match.txt deleted file mode 100644 index d7a3015279..0000000000 --- a/test/prism/snapshots/whitequark/lvar_injecting_match.txt +++ /dev/null @@ -1,44 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,31)) -├── flags: ∅ -├── locals: [:match] -└── statements: - @ StatementsNode (location: (1,0)-(1,31)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ MatchWriteNode (location: (1,0)-(1,24)) - │ ├── flags: newline - │ ├── call: - │ │ @ CallNode (location: (1,0)-(1,24)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ RegularExpressionNode (location: (1,0)-(1,15)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (1,0)-(1,1) = "/" - │ │ │ ├── content_loc: (1,1)-(1,14) = "(?<match>bar)" - │ │ │ ├── closing_loc: (1,14)-(1,15) = "/" - │ │ │ └── unescaped: "(?<match>bar)" - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :=~ - │ │ ├── message_loc: (1,16)-(1,18) = "=~" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (1,19)-(1,24)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ StringNode (location: (1,19)-(1,24)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (1,19)-(1,20) = "'" - │ │ │ ├── content_loc: (1,20)-(1,23) = "bar" - │ │ │ ├── closing_loc: (1,23)-(1,24) = "'" - │ │ │ └── unescaped: "bar" - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── targets: (length: 1) - │ └── @ LocalVariableTargetNode (location: (1,4)-(1,9)) - │ ├── flags: ∅ - │ ├── name: :match - │ └── depth: 0 - └── @ LocalVariableReadNode (location: (1,26)-(1,31)) - ├── flags: newline - ├── name: :match - └── depth: 0 diff --git a/test/prism/snapshots/whitequark/lvasgn.txt b/test/prism/snapshots/whitequark/lvasgn.txt deleted file mode 100644 index 43cb251bd5..0000000000 --- a/test/prism/snapshots/whitequark/lvasgn.txt +++ /dev/null @@ -1,21 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [:var] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ LocalVariableWriteNode (location: (1,0)-(1,8)) - │ ├── flags: newline - │ ├── name: :var - │ ├── depth: 0 - │ ├── name_loc: (1,0)-(1,3) = "var" - │ ├── value: - │ │ @ IntegerNode (location: (1,6)-(1,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 10 - │ └── operator_loc: (1,4)-(1,5) = "=" - └── @ LocalVariableReadNode (location: (1,10)-(1,13)) - ├── flags: newline - ├── name: :var - └── depth: 0 diff --git a/test/prism/snapshots/whitequark/masgn.txt b/test/prism/snapshots/whitequark/masgn.txt deleted file mode 100644 index a7ce7f5691..0000000000 --- a/test/prism/snapshots/whitequark/masgn.txt +++ /dev/null @@ -1,95 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,20)) -├── flags: ∅ -├── locals: [:foo, :bar, :baz] -└── statements: - @ StatementsNode (location: (1,0)-(5,20)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ MultiWriteNode (location: (1,0)-(1,17)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ LocalVariableTargetNode (location: (1,1)-(1,4)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :foo - │ │ │ └── depth: 0 - │ │ └── @ LocalVariableTargetNode (location: (1,6)-(1,9)) - │ │ ├── flags: ∅ - │ │ ├── name: :bar - │ │ └── depth: 0 - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: (1,0)-(1,1) = "(" - │ ├── rparen_loc: (1,9)-(1,10) = ")" - │ ├── operator_loc: (1,11)-(1,12) = "=" - │ └── value: - │ @ ArrayNode (location: (1,13)-(1,17)) - │ ├── flags: static_literal - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (1,13)-(1,14)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (1,16)-(1,17)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── opening_loc: ∅ - │ └── closing_loc: ∅ - ├── @ MultiWriteNode (location: (3,0)-(3,15)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ LocalVariableTargetNode (location: (3,0)-(3,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :foo - │ │ │ └── depth: 0 - │ │ └── @ LocalVariableTargetNode (location: (3,5)-(3,8)) - │ │ ├── flags: ∅ - │ │ ├── name: :bar - │ │ └── depth: 0 - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (3,9)-(3,10) = "=" - │ └── value: - │ @ ArrayNode (location: (3,11)-(3,15)) - │ ├── flags: static_literal - │ ├── elements: (length: 2) - │ │ ├── @ IntegerNode (location: (3,11)-(3,12)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ IntegerNode (location: (3,14)-(3,15)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── opening_loc: ∅ - │ └── closing_loc: ∅ - └── @ MultiWriteNode (location: (5,0)-(5,20)) - ├── flags: newline - ├── lefts: (length: 3) - │ ├── @ LocalVariableTargetNode (location: (5,0)-(5,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── @ LocalVariableTargetNode (location: (5,5)-(5,8)) - │ │ ├── flags: ∅ - │ │ ├── name: :bar - │ │ └── depth: 0 - │ └── @ LocalVariableTargetNode (location: (5,10)-(5,13)) - │ ├── flags: ∅ - │ ├── name: :baz - │ └── depth: 0 - ├── rest: ∅ - ├── rights: (length: 0) - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (5,14)-(5,15) = "=" - └── value: - @ ArrayNode (location: (5,16)-(5,20)) - ├── flags: static_literal - ├── elements: (length: 2) - │ ├── @ IntegerNode (location: (5,16)-(5,17)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── @ IntegerNode (location: (5,19)-(5,20)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── opening_loc: ∅ - └── closing_loc: ∅ diff --git a/test/prism/snapshots/whitequark/masgn_attr.txt b/test/prism/snapshots/whitequark/masgn_attr.txt deleted file mode 100644 index 4e7b85e960..0000000000 --- a/test/prism/snapshots/whitequark/masgn_attr.txt +++ /dev/null @@ -1,96 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,18)) -├── flags: ∅ -├── locals: [:foo] -└── statements: - @ StatementsNode (location: (1,0)-(5,18)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ MultiWriteNode (location: (1,0)-(1,17)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ CallTargetNode (location: (1,0)-(1,6)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: - │ │ │ │ @ SelfNode (location: (1,0)-(1,4)) - │ │ │ │ └── flags: ∅ - │ │ │ ├── call_operator_loc: (1,4)-(1,5) = "." - │ │ │ ├── name: :A= - │ │ │ └── message_loc: (1,5)-(1,6) = "A" - │ │ └── @ LocalVariableTargetNode (location: (1,8)-(1,11)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (1,12)-(1,13) = "=" - │ └── value: - │ @ LocalVariableReadNode (location: (1,14)-(1,17)) - │ ├── flags: ∅ - │ ├── name: :foo - │ └── depth: 0 - ├── @ MultiWriteNode (location: (3,0)-(3,24)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ CallTargetNode (location: (3,0)-(3,6)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: - │ │ │ │ @ SelfNode (location: (3,0)-(3,4)) - │ │ │ │ └── flags: ∅ - │ │ │ ├── call_operator_loc: (3,4)-(3,5) = "." - │ │ │ ├── name: :a= - │ │ │ └── message_loc: (3,5)-(3,6) = "a" - │ │ └── @ IndexTargetNode (location: (3,8)-(3,18)) - │ │ ├── flags: attribute_write, ignore_visibility - │ │ ├── receiver: - │ │ │ @ SelfNode (location: (3,8)-(3,12)) - │ │ │ └── flags: ∅ - │ │ ├── opening_loc: (3,12)-(3,13) = "[" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (3,13)-(3,17)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 2) - │ │ │ ├── @ IntegerNode (location: (3,13)-(3,14)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── @ IntegerNode (location: (3,16)-(3,17)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── closing_loc: (3,17)-(3,18) = "]" - │ │ └── block: ∅ - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (3,19)-(3,20) = "=" - │ └── value: - │ @ LocalVariableReadNode (location: (3,21)-(3,24)) - │ ├── flags: ∅ - │ ├── name: :foo - │ └── depth: 0 - └── @ MultiWriteNode (location: (5,0)-(5,18)) - ├── flags: newline - ├── lefts: (length: 2) - │ ├── @ CallTargetNode (location: (5,0)-(5,7)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: - │ │ │ @ SelfNode (location: (5,0)-(5,4)) - │ │ │ └── flags: ∅ - │ │ ├── call_operator_loc: (5,4)-(5,6) = "::" - │ │ ├── name: :a= - │ │ └── message_loc: (5,6)-(5,7) = "a" - │ └── @ LocalVariableTargetNode (location: (5,9)-(5,12)) - │ ├── flags: ∅ - │ ├── name: :foo - │ └── depth: 0 - ├── rest: ∅ - ├── rights: (length: 0) - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (5,13)-(5,14) = "=" - └── value: - @ LocalVariableReadNode (location: (5,15)-(5,18)) - ├── flags: ∅ - ├── name: :foo - └── depth: 0 diff --git a/test/prism/snapshots/whitequark/masgn_cmd.txt b/test/prism/snapshots/whitequark/masgn_cmd.txt deleted file mode 100644 index 8ca2afbba0..0000000000 --- a/test/prism/snapshots/whitequark/masgn_cmd.txt +++ /dev/null @@ -1,41 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,16)) -├── flags: ∅ -├── locals: [:foo, :bar] -└── statements: - @ StatementsNode (location: (1,0)-(1,16)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MultiWriteNode (location: (1,0)-(1,16)) - ├── flags: newline - ├── lefts: (length: 2) - │ ├── @ LocalVariableTargetNode (location: (1,0)-(1,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ └── @ LocalVariableTargetNode (location: (1,5)-(1,8)) - │ ├── flags: ∅ - │ ├── name: :bar - │ └── depth: 0 - ├── rest: ∅ - ├── rights: (length: 0) - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (1,9)-(1,10) = "=" - └── value: - @ CallNode (location: (1,11)-(1,16)) - ├── flags: ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :m - ├── message_loc: (1,11)-(1,12) = "m" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,13)-(1,16)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ LocalVariableReadNode (location: (1,13)-(1,16)) - │ ├── flags: ∅ - │ ├── name: :foo - │ └── depth: 0 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/masgn_const.txt b/test/prism/snapshots/whitequark/masgn_const.txt deleted file mode 100644 index 160b0b0f03..0000000000 --- a/test/prism/snapshots/whitequark/masgn_const.txt +++ /dev/null @@ -1,55 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,18)) -├── flags: ∅ -├── locals: [:foo] -└── statements: - @ StatementsNode (location: (1,0)-(3,18)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ MultiWriteNode (location: (1,0)-(1,14)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ ConstantPathTargetNode (location: (1,0)-(1,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parent: ∅ - │ │ │ ├── name: :A - │ │ │ ├── delimiter_loc: (1,0)-(1,2) = "::" - │ │ │ └── name_loc: (1,2)-(1,3) = "A" - │ │ └── @ LocalVariableTargetNode (location: (1,5)-(1,8)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (1,9)-(1,10) = "=" - │ └── value: - │ @ LocalVariableReadNode (location: (1,11)-(1,14)) - │ ├── flags: ∅ - │ ├── name: :foo - │ └── depth: 0 - └── @ MultiWriteNode (location: (3,0)-(3,18)) - ├── flags: newline - ├── lefts: (length: 2) - │ ├── @ ConstantPathTargetNode (location: (3,0)-(3,7)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ SelfNode (location: (3,0)-(3,4)) - │ │ │ └── flags: ∅ - │ │ ├── name: :A - │ │ ├── delimiter_loc: (3,4)-(3,6) = "::" - │ │ └── name_loc: (3,6)-(3,7) = "A" - │ └── @ LocalVariableTargetNode (location: (3,9)-(3,12)) - │ ├── flags: ∅ - │ ├── name: :foo - │ └── depth: 0 - ├── rest: ∅ - ├── rights: (length: 0) - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (3,13)-(3,14) = "=" - └── value: - @ LocalVariableReadNode (location: (3,15)-(3,18)) - ├── flags: ∅ - ├── name: :foo - └── depth: 0 diff --git a/test/prism/snapshots/whitequark/masgn_nested.txt b/test/prism/snapshots/whitequark/masgn_nested.txt deleted file mode 100644 index db92f24ab5..0000000000 --- a/test/prism/snapshots/whitequark/masgn_nested.txt +++ /dev/null @@ -1,77 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,15)) -├── flags: ∅ -├── locals: [:b, :a, :c] -└── statements: - @ StatementsNode (location: (1,0)-(3,15)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ MultiWriteNode (location: (1,0)-(1,13)) - │ ├── flags: newline - │ ├── lefts: (length: 1) - │ │ └── @ MultiTargetNode (location: (1,1)-(1,6)) - │ │ ├── flags: ∅ - │ │ ├── lefts: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (1,2)-(1,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ └── depth: 0 - │ │ ├── rest: - │ │ │ @ ImplicitRestNode (location: (1,3)-(1,4)) - │ │ │ └── flags: ∅ - │ │ ├── rights: (length: 0) - │ │ ├── lparen_loc: (1,1)-(1,2) = "(" - │ │ └── rparen_loc: (1,5)-(1,6) = ")" - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: (1,0)-(1,1) = "(" - │ ├── rparen_loc: (1,6)-(1,7) = ")" - │ ├── operator_loc: (1,8)-(1,9) = "=" - │ └── value: - │ @ CallNode (location: (1,10)-(1,13)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,10)-(1,13) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ MultiWriteNode (location: (3,0)-(3,15)) - ├── flags: newline - ├── lefts: (length: 2) - │ ├── @ LocalVariableTargetNode (location: (3,0)-(3,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ └── @ MultiTargetNode (location: (3,3)-(3,9)) - │ ├── flags: ∅ - │ ├── lefts: (length: 2) - │ │ ├── @ LocalVariableTargetNode (location: (3,4)-(3,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ └── depth: 0 - │ │ └── @ LocalVariableTargetNode (location: (3,7)-(3,8)) - │ │ ├── flags: ∅ - │ │ ├── name: :c - │ │ └── depth: 0 - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: (3,3)-(3,4) = "(" - │ └── rparen_loc: (3,8)-(3,9) = ")" - ├── rest: ∅ - ├── rights: (length: 0) - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (3,10)-(3,11) = "=" - └── value: - @ CallNode (location: (3,12)-(3,15)) - ├── flags: variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :foo - ├── message_loc: (3,12)-(3,15) = "foo" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/masgn_splat.txt b/test/prism/snapshots/whitequark/masgn_splat.txt deleted file mode 100644 index e50174d9de..0000000000 --- a/test/prism/snapshots/whitequark/masgn_splat.txt +++ /dev/null @@ -1,323 +0,0 @@ -@ ProgramNode (location: (1,0)-(19,16)) -├── flags: ∅ -├── locals: [:c, :d, :b, :a] -└── statements: - @ StatementsNode (location: (1,0)-(19,16)) - ├── flags: ∅ - └── body: (length: 10) - ├── @ MultiWriteNode (location: (1,0)-(1,7)) - │ ├── flags: newline - │ ├── lefts: (length: 0) - │ ├── rest: - │ │ @ SplatNode (location: (1,0)-(1,1)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (1,0)-(1,1) = "*" - │ │ └── expression: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (1,2)-(1,3) = "=" - │ └── value: - │ @ CallNode (location: (1,4)-(1,7)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (1,4)-(1,7) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ MultiWriteNode (location: (3,0)-(3,13)) - │ ├── flags: newline - │ ├── lefts: (length: 0) - │ ├── rest: - │ │ @ SplatNode (location: (3,0)-(3,1)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (3,0)-(3,1) = "*" - │ │ └── expression: ∅ - │ ├── rights: (length: 2) - │ │ ├── @ LocalVariableTargetNode (location: (3,3)-(3,4)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :c - │ │ │ └── depth: 0 - │ │ └── @ LocalVariableTargetNode (location: (3,6)-(3,7)) - │ │ ├── flags: ∅ - │ │ ├── name: :d - │ │ └── depth: 0 - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (3,8)-(3,9) = "=" - │ └── value: - │ @ CallNode (location: (3,10)-(3,13)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (3,10)-(3,13) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ MultiWriteNode (location: (5,0)-(5,8)) - │ ├── flags: newline - │ ├── lefts: (length: 0) - │ ├── rest: - │ │ @ SplatNode (location: (5,0)-(5,2)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (5,0)-(5,1) = "*" - │ │ └── expression: - │ │ @ LocalVariableTargetNode (location: (5,1)-(5,2)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ └── depth: 0 - │ ├── rights: (length: 0) - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (5,3)-(5,4) = "=" - │ └── value: - │ @ CallNode (location: (5,5)-(5,8)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (5,5)-(5,8) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ MultiWriteNode (location: (7,0)-(7,11)) - │ ├── flags: newline - │ ├── lefts: (length: 0) - │ ├── rest: - │ │ @ SplatNode (location: (7,0)-(7,2)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (7,0)-(7,1) = "*" - │ │ └── expression: - │ │ @ LocalVariableTargetNode (location: (7,1)-(7,2)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ └── depth: 0 - │ ├── rights: (length: 1) - │ │ └── @ LocalVariableTargetNode (location: (7,4)-(7,5)) - │ │ ├── flags: ∅ - │ │ ├── name: :c - │ │ └── depth: 0 - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (7,6)-(7,7) = "=" - │ └── value: - │ @ CallNode (location: (7,8)-(7,11)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (7,8)-(7,11) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ MultiWriteNode (location: (9,0)-(9,18)) - │ ├── flags: newline - │ ├── lefts: (length: 2) - │ │ ├── @ InstanceVariableTargetNode (location: (9,0)-(9,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :@foo - │ │ └── @ ClassVariableTargetNode (location: (9,6)-(9,11)) - │ │ ├── flags: ∅ - │ │ └── name: :@@bar - │ ├── rest: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (9,12)-(9,13) = "=" - │ └── value: - │ @ ArrayNode (location: (9,14)-(9,18)) - │ ├── flags: contains_splat - │ ├── elements: (length: 1) - │ │ └── @ SplatNode (location: (9,14)-(9,18)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (9,14)-(9,15) = "*" - │ │ └── expression: - │ │ @ CallNode (location: (9,15)-(9,18)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (9,15)-(9,18) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: ∅ - │ └── closing_loc: ∅ - ├── @ MultiWriteNode (location: (11,0)-(11,10)) - │ ├── flags: newline - │ ├── lefts: (length: 1) - │ │ └── @ LocalVariableTargetNode (location: (11,0)-(11,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── rest: - │ │ @ SplatNode (location: (11,3)-(11,4)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (11,3)-(11,4) = "*" - │ │ └── expression: ∅ - │ ├── rights: (length: 0) - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (11,5)-(11,6) = "=" - │ └── value: - │ @ CallNode (location: (11,7)-(11,10)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (11,7)-(11,10) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ MultiWriteNode (location: (13,0)-(13,13)) - │ ├── flags: newline - │ ├── lefts: (length: 1) - │ │ └── @ LocalVariableTargetNode (location: (13,0)-(13,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── rest: - │ │ @ SplatNode (location: (13,3)-(13,4)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (13,3)-(13,4) = "*" - │ │ └── expression: ∅ - │ ├── rights: (length: 1) - │ │ └── @ LocalVariableTargetNode (location: (13,6)-(13,7)) - │ │ ├── flags: ∅ - │ │ ├── name: :c - │ │ └── depth: 0 - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (13,8)-(13,9) = "=" - │ └── value: - │ @ CallNode (location: (13,10)-(13,13)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (13,10)-(13,13) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ MultiWriteNode (location: (15,0)-(15,11)) - │ ├── flags: newline - │ ├── lefts: (length: 1) - │ │ └── @ LocalVariableTargetNode (location: (15,0)-(15,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── rest: - │ │ @ SplatNode (location: (15,3)-(15,5)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (15,3)-(15,4) = "*" - │ │ └── expression: - │ │ @ LocalVariableTargetNode (location: (15,4)-(15,5)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ └── depth: 0 - │ ├── rights: (length: 0) - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (15,6)-(15,7) = "=" - │ └── value: - │ @ CallNode (location: (15,8)-(15,11)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (15,8)-(15,11) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ MultiWriteNode (location: (17,0)-(17,14)) - │ ├── flags: newline - │ ├── lefts: (length: 1) - │ │ └── @ LocalVariableTargetNode (location: (17,0)-(17,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── rest: - │ │ @ SplatNode (location: (17,3)-(17,5)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (17,3)-(17,4) = "*" - │ │ └── expression: - │ │ @ LocalVariableTargetNode (location: (17,4)-(17,5)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ └── depth: 0 - │ ├── rights: (length: 1) - │ │ └── @ LocalVariableTargetNode (location: (17,7)-(17,8)) - │ │ ├── flags: ∅ - │ │ ├── name: :c - │ │ └── depth: 0 - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── operator_loc: (17,9)-(17,10) = "=" - │ └── value: - │ @ CallNode (location: (17,11)-(17,14)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (17,11)-(17,14) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ MultiWriteNode (location: (19,0)-(19,16)) - ├── flags: newline - ├── lefts: (length: 2) - │ ├── @ LocalVariableTargetNode (location: (19,0)-(19,1)) - │ │ ├── flags: ∅ - │ │ ├── name: :a - │ │ └── depth: 0 - │ └── @ LocalVariableTargetNode (location: (19,3)-(19,4)) - │ ├── flags: ∅ - │ ├── name: :b - │ └── depth: 0 - ├── rest: ∅ - ├── rights: (length: 0) - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (19,5)-(19,6) = "=" - └── value: - @ ArrayNode (location: (19,7)-(19,16)) - ├── flags: contains_splat - ├── elements: (length: 2) - │ ├── @ SplatNode (location: (19,7)-(19,11)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (19,7)-(19,8) = "*" - │ │ └── expression: - │ │ @ CallNode (location: (19,8)-(19,11)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (19,8)-(19,11) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── @ CallNode (location: (19,13)-(19,16)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (19,13)-(19,16) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── opening_loc: ∅ - └── closing_loc: ∅ diff --git a/test/prism/snapshots/whitequark/method_definition_in_while_cond.txt b/test/prism/snapshots/whitequark/method_definition_in_while_cond.txt deleted file mode 100644 index 34a55fbe02..0000000000 --- a/test/prism/snapshots/whitequark/method_definition_in_while_cond.txt +++ /dev/null @@ -1,223 +0,0 @@ -@ ProgramNode (location: (1,0)-(7,47)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(7,47)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ WhileNode (location: (1,0)-(1,45)) - │ ├── flags: newline - │ ├── keyword_loc: (1,0)-(1,5) = "while" - │ ├── closing_loc: (1,42)-(1,45) = "end" - │ ├── predicate: - │ │ @ DefNode (location: (1,6)-(1,33)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ ├── name_loc: (1,10)-(1,13) = "foo" - │ │ ├── receiver: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (1,14)-(1,28)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 1) - │ │ │ │ └── @ OptionalParameterNode (location: (1,14)-(1,28)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ ├── name_loc: (1,14)-(1,15) = "a" - │ │ │ │ ├── operator_loc: (1,16)-(1,17) = "=" - │ │ │ │ └── value: - │ │ │ │ @ CallNode (location: (1,18)-(1,28)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :tap - │ │ │ │ ├── message_loc: (1,18)-(1,21) = "tap" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: - │ │ │ │ @ BlockNode (location: (1,22)-(1,28)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── locals: [] - │ │ │ │ ├── parameters: ∅ - │ │ │ │ ├── body: ∅ - │ │ │ │ ├── opening_loc: (1,22)-(1,24) = "do" - │ │ │ │ └── closing_loc: (1,25)-(1,28) = "end" - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── body: ∅ - │ │ ├── locals: [:a] - │ │ ├── def_keyword_loc: (1,6)-(1,9) = "def" - │ │ ├── operator_loc: ∅ - │ │ ├── lparen_loc: ∅ - │ │ ├── rparen_loc: ∅ - │ │ ├── equal_loc: ∅ - │ │ └── end_keyword_loc: (1,30)-(1,33) = "end" - │ └── statements: - │ @ StatementsNode (location: (1,35)-(1,40)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ BreakNode (location: (1,35)-(1,40)) - │ ├── flags: newline - │ ├── arguments: ∅ - │ └── keyword_loc: (1,35)-(1,40) = "break" - ├── @ WhileNode (location: (3,0)-(3,42)) - │ ├── flags: newline - │ ├── keyword_loc: (3,0)-(3,5) = "while" - │ ├── closing_loc: (3,39)-(3,42) = "end" - │ ├── predicate: - │ │ @ DefNode (location: (3,6)-(3,30)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ ├── name_loc: (3,10)-(3,13) = "foo" - │ │ ├── receiver: ∅ - │ │ ├── parameters: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (3,15)-(3,25)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (3,15)-(3,25)) - │ │ │ ├── flags: newline, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :tap - │ │ │ ├── message_loc: (3,15)-(3,18) = "tap" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (3,19)-(3,25)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: ∅ - │ │ │ ├── opening_loc: (3,19)-(3,21) = "do" - │ │ │ └── closing_loc: (3,22)-(3,25) = "end" - │ │ ├── locals: [] - │ │ ├── def_keyword_loc: (3,6)-(3,9) = "def" - │ │ ├── operator_loc: ∅ - │ │ ├── lparen_loc: ∅ - │ │ ├── rparen_loc: ∅ - │ │ ├── equal_loc: ∅ - │ │ └── end_keyword_loc: (3,27)-(3,30) = "end" - │ └── statements: - │ @ StatementsNode (location: (3,32)-(3,37)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ BreakNode (location: (3,32)-(3,37)) - │ ├── flags: newline - │ ├── arguments: ∅ - │ └── keyword_loc: (3,32)-(3,37) = "break" - ├── @ WhileNode (location: (5,0)-(5,50)) - │ ├── flags: newline - │ ├── keyword_loc: (5,0)-(5,5) = "while" - │ ├── closing_loc: (5,47)-(5,50) = "end" - │ ├── predicate: - │ │ @ DefNode (location: (5,6)-(5,38)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ ├── name_loc: (5,15)-(5,18) = "foo" - │ │ ├── receiver: - │ │ │ @ SelfNode (location: (5,10)-(5,14)) - │ │ │ └── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (5,19)-(5,33)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 1) - │ │ │ │ └── @ OptionalParameterNode (location: (5,19)-(5,33)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ ├── name_loc: (5,19)-(5,20) = "a" - │ │ │ │ ├── operator_loc: (5,21)-(5,22) = "=" - │ │ │ │ └── value: - │ │ │ │ @ CallNode (location: (5,23)-(5,33)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :tap - │ │ │ │ ├── message_loc: (5,23)-(5,26) = "tap" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: - │ │ │ │ @ BlockNode (location: (5,27)-(5,33)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── locals: [] - │ │ │ │ ├── parameters: ∅ - │ │ │ │ ├── body: ∅ - │ │ │ │ ├── opening_loc: (5,27)-(5,29) = "do" - │ │ │ │ └── closing_loc: (5,30)-(5,33) = "end" - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── body: ∅ - │ │ ├── locals: [:a] - │ │ ├── def_keyword_loc: (5,6)-(5,9) = "def" - │ │ ├── operator_loc: (5,14)-(5,15) = "." - │ │ ├── lparen_loc: ∅ - │ │ ├── rparen_loc: ∅ - │ │ ├── equal_loc: ∅ - │ │ └── end_keyword_loc: (5,35)-(5,38) = "end" - │ └── statements: - │ @ StatementsNode (location: (5,40)-(5,45)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ BreakNode (location: (5,40)-(5,45)) - │ ├── flags: newline - │ ├── arguments: ∅ - │ └── keyword_loc: (5,40)-(5,45) = "break" - └── @ WhileNode (location: (7,0)-(7,47)) - ├── flags: newline - ├── keyword_loc: (7,0)-(7,5) = "while" - ├── closing_loc: (7,44)-(7,47) = "end" - ├── predicate: - │ @ DefNode (location: (7,6)-(7,35)) - │ ├── flags: ∅ - │ ├── name: :foo - │ ├── name_loc: (7,15)-(7,18) = "foo" - │ ├── receiver: - │ │ @ SelfNode (location: (7,10)-(7,14)) - │ │ └── flags: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (7,20)-(7,30)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (7,20)-(7,30)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :tap - │ │ ├── message_loc: (7,20)-(7,23) = "tap" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (7,24)-(7,30)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (7,24)-(7,26) = "do" - │ │ └── closing_loc: (7,27)-(7,30) = "end" - │ ├── locals: [] - │ ├── def_keyword_loc: (7,6)-(7,9) = "def" - │ ├── operator_loc: (7,14)-(7,15) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (7,32)-(7,35) = "end" - └── statements: - @ StatementsNode (location: (7,37)-(7,42)) - ├── flags: ∅ - └── body: (length: 1) - └── @ BreakNode (location: (7,37)-(7,42)) - ├── flags: newline - ├── arguments: ∅ - └── keyword_loc: (7,37)-(7,42) = "break" diff --git a/test/prism/snapshots/whitequark/module.txt b/test/prism/snapshots/whitequark/module.txt deleted file mode 100644 index 2989be0109..0000000000 --- a/test/prism/snapshots/whitequark/module.txt +++ /dev/null @@ -1,18 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,15)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ModuleNode (location: (1,0)-(1,15)) - ├── flags: newline - ├── locals: [] - ├── module_keyword_loc: (1,0)-(1,6) = "module" - ├── constant_path: - │ @ ConstantReadNode (location: (1,7)-(1,10)) - │ ├── flags: ∅ - │ └── name: :Foo - ├── body: ∅ - ├── end_keyword_loc: (1,12)-(1,15) = "end" - └── name: :Foo diff --git a/test/prism/snapshots/whitequark/multiple_pattern_matches.txt b/test/prism/snapshots/whitequark/multiple_pattern_matches.txt deleted file mode 100644 index 24cf259e08..0000000000 --- a/test/prism/snapshots/whitequark/multiple_pattern_matches.txt +++ /dev/null @@ -1,203 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,12)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(5,12)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ MatchRequiredNode (location: (1,0)-(1,12)) - │ ├── flags: newline - │ ├── value: - │ │ @ HashNode (location: (1,0)-(1,6)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (1,0)-(1,1) = "{" - │ │ ├── elements: (length: 1) - │ │ │ └── @ AssocNode (location: (1,1)-(1,5)) - │ │ │ ├── flags: static_literal - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (1,1)-(1,3)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (1,1)-(1,2) = "a" - │ │ │ │ ├── closing_loc: (1,2)-(1,3) = ":" - │ │ │ │ └── unescaped: "a" - │ │ │ ├── value: - │ │ │ │ @ IntegerNode (location: (1,4)-(1,5)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 0 - │ │ │ └── operator_loc: ∅ - │ │ └── closing_loc: (1,5)-(1,6) = "}" - │ ├── pattern: - │ │ @ HashPatternNode (location: (1,10)-(1,12)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── elements: (length: 1) - │ │ │ └── @ AssocNode (location: (1,10)-(1,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (1,10)-(1,12)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (1,10)-(1,11) = "a" - │ │ │ │ ├── closing_loc: (1,11)-(1,12) = ":" - │ │ │ │ └── unescaped: "a" - │ │ │ ├── value: - │ │ │ │ @ ImplicitNode (location: (1,10)-(1,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── value: - │ │ │ │ @ LocalVariableTargetNode (location: (1,10)-(1,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ └── depth: 0 - │ │ │ └── operator_loc: ∅ - │ │ ├── rest: ∅ - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (1,7)-(1,9) = "=>" - ├── @ MatchRequiredNode (location: (2,0)-(2,12)) - │ ├── flags: newline - │ ├── value: - │ │ @ HashNode (location: (2,0)-(2,6)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (2,0)-(2,1) = "{" - │ │ ├── elements: (length: 1) - │ │ │ └── @ AssocNode (location: (2,1)-(2,5)) - │ │ │ ├── flags: static_literal - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (2,1)-(2,3)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (2,1)-(2,2) = "a" - │ │ │ │ ├── closing_loc: (2,2)-(2,3) = ":" - │ │ │ │ └── unescaped: "a" - │ │ │ ├── value: - │ │ │ │ @ IntegerNode (location: (2,4)-(2,5)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 0 - │ │ │ └── operator_loc: ∅ - │ │ └── closing_loc: (2,5)-(2,6) = "}" - │ ├── pattern: - │ │ @ HashPatternNode (location: (2,10)-(2,12)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── elements: (length: 1) - │ │ │ └── @ AssocNode (location: (2,10)-(2,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (2,10)-(2,12)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (2,10)-(2,11) = "a" - │ │ │ │ ├── closing_loc: (2,11)-(2,12) = ":" - │ │ │ │ └── unescaped: "a" - │ │ │ ├── value: - │ │ │ │ @ ImplicitNode (location: (2,10)-(2,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── value: - │ │ │ │ @ LocalVariableTargetNode (location: (2,10)-(2,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ └── depth: 0 - │ │ │ └── operator_loc: ∅ - │ │ ├── rest: ∅ - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (2,7)-(2,9) = "=>" - ├── @ MatchPredicateNode (location: (4,0)-(4,12)) - │ ├── flags: newline - │ ├── value: - │ │ @ HashNode (location: (4,0)-(4,6)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (4,0)-(4,1) = "{" - │ │ ├── elements: (length: 1) - │ │ │ └── @ AssocNode (location: (4,1)-(4,5)) - │ │ │ ├── flags: static_literal - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (4,1)-(4,3)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (4,1)-(4,2) = "a" - │ │ │ │ ├── closing_loc: (4,2)-(4,3) = ":" - │ │ │ │ └── unescaped: "a" - │ │ │ ├── value: - │ │ │ │ @ IntegerNode (location: (4,4)-(4,5)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 0 - │ │ │ └── operator_loc: ∅ - │ │ └── closing_loc: (4,5)-(4,6) = "}" - │ ├── pattern: - │ │ @ HashPatternNode (location: (4,10)-(4,12)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── elements: (length: 1) - │ │ │ └── @ AssocNode (location: (4,10)-(4,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (4,10)-(4,12)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (4,10)-(4,11) = "a" - │ │ │ │ ├── closing_loc: (4,11)-(4,12) = ":" - │ │ │ │ └── unescaped: "a" - │ │ │ ├── value: - │ │ │ │ @ ImplicitNode (location: (4,10)-(4,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── value: - │ │ │ │ @ LocalVariableTargetNode (location: (4,10)-(4,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ └── depth: 0 - │ │ │ └── operator_loc: ∅ - │ │ ├── rest: ∅ - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (4,7)-(4,9) = "in" - └── @ MatchPredicateNode (location: (5,0)-(5,12)) - ├── flags: newline - ├── value: - │ @ HashNode (location: (5,0)-(5,6)) - │ ├── flags: static_literal - │ ├── opening_loc: (5,0)-(5,1) = "{" - │ ├── elements: (length: 1) - │ │ └── @ AssocNode (location: (5,1)-(5,5)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (5,1)-(5,3)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (5,1)-(5,2) = "a" - │ │ │ ├── closing_loc: (5,2)-(5,3) = ":" - │ │ │ └── unescaped: "a" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (5,4)-(5,5)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 0 - │ │ └── operator_loc: ∅ - │ └── closing_loc: (5,5)-(5,6) = "}" - ├── pattern: - │ @ HashPatternNode (location: (5,10)-(5,12)) - │ ├── flags: ∅ - │ ├── constant: ∅ - │ ├── elements: (length: 1) - │ │ └── @ AssocNode (location: (5,10)-(5,12)) - │ │ ├── flags: ∅ - │ │ ├── key: - │ │ │ @ SymbolNode (location: (5,10)-(5,12)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (5,10)-(5,11) = "a" - │ │ │ ├── closing_loc: (5,11)-(5,12) = ":" - │ │ │ └── unescaped: "a" - │ │ ├── value: - │ │ │ @ ImplicitNode (location: (5,10)-(5,11)) - │ │ │ ├── flags: ∅ - │ │ │ └── value: - │ │ │ @ LocalVariableTargetNode (location: (5,10)-(5,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ └── operator_loc: ∅ - │ ├── rest: ∅ - │ ├── opening_loc: ∅ - │ └── closing_loc: ∅ - └── operator_loc: (5,7)-(5,9) = "in" diff --git a/test/prism/snapshots/whitequark/newline_in_hash_argument.txt b/test/prism/snapshots/whitequark/newline_in_hash_argument.txt deleted file mode 100644 index 2a7d06102d..0000000000 --- a/test/prism/snapshots/whitequark/newline_in_hash_argument.txt +++ /dev/null @@ -1,182 +0,0 @@ -@ ProgramNode (location: (1,0)-(14,1)) -├── flags: ∅ -├── locals: [:a, :b] -└── statements: - @ StatementsNode (location: (1,0)-(14,1)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ CaseMatchNode (location: (1,0)-(8,3)) - │ ├── flags: newline - │ ├── predicate: - │ │ @ CallNode (location: (1,5)-(1,8)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,5)-(1,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── conditions: (length: 2) - │ │ ├── @ InNode (location: (2,0)-(4,4)) - │ │ │ ├── flags: ∅ - │ │ │ ├── pattern: - │ │ │ │ @ HashPatternNode (location: (2,3)-(2,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── constant: ∅ - │ │ │ │ ├── elements: (length: 1) - │ │ │ │ │ └── @ AssocNode (location: (2,3)-(2,5)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── key: - │ │ │ │ │ │ @ SymbolNode (location: (2,3)-(2,5)) - │ │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ │ ├── value_loc: (2,3)-(2,4) = "a" - │ │ │ │ │ │ ├── closing_loc: (2,4)-(2,5) = ":" - │ │ │ │ │ │ └── unescaped: "a" - │ │ │ │ │ ├── value: - │ │ │ │ │ │ @ ImplicitNode (location: (2,3)-(2,4)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── value: - │ │ │ │ │ │ @ LocalVariableTargetNode (location: (2,3)-(2,4)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ ├── name: :a - │ │ │ │ │ │ └── depth: 0 - │ │ │ │ │ └── operator_loc: ∅ - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ └── closing_loc: ∅ - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (3,0)-(4,4)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 2) - │ │ │ │ ├── @ IntegerNode (location: (3,0)-(3,1)) - │ │ │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ │ │ └── value: 0 - │ │ │ │ └── @ TrueNode (location: (4,0)-(4,4)) - │ │ │ │ └── flags: newline, static_literal - │ │ │ ├── in_loc: (2,0)-(2,2) = "in" - │ │ │ └── then_loc: ∅ - │ │ └── @ InNode (location: (5,0)-(7,4)) - │ │ ├── flags: ∅ - │ │ ├── pattern: - │ │ │ @ HashPatternNode (location: (5,3)-(5,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── constant: ∅ - │ │ │ ├── elements: (length: 1) - │ │ │ │ └── @ AssocNode (location: (5,3)-(5,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── key: - │ │ │ │ │ @ SymbolNode (location: (5,3)-(5,7)) - │ │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ │ ├── opening_loc: (5,3)-(5,4) = "\"" - │ │ │ │ │ ├── value_loc: (5,4)-(5,5) = "b" - │ │ │ │ │ ├── closing_loc: (5,5)-(5,7) = "\":" - │ │ │ │ │ └── unescaped: "b" - │ │ │ │ ├── value: - │ │ │ │ │ @ ImplicitNode (location: (5,4)-(5,5)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── value: - │ │ │ │ │ @ LocalVariableTargetNode (location: (5,4)-(5,5)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :b - │ │ │ │ │ └── depth: 0 - │ │ │ │ └── operator_loc: ∅ - │ │ │ ├── rest: ∅ - │ │ │ ├── opening_loc: ∅ - │ │ │ └── closing_loc: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (6,0)-(7,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 2) - │ │ │ ├── @ IntegerNode (location: (6,0)-(6,1)) - │ │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ │ └── value: 0 - │ │ │ └── @ TrueNode (location: (7,0)-(7,4)) - │ │ │ └── flags: newline, static_literal - │ │ ├── in_loc: (5,0)-(5,2) = "in" - │ │ └── then_loc: ∅ - │ ├── else_clause: ∅ - │ ├── case_keyword_loc: (1,0)-(1,4) = "case" - │ └── end_keyword_loc: (8,0)-(8,3) = "end" - ├── @ CallNode (location: (10,0)-(11,1)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (10,0)-(10,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :obj - │ │ ├── message_loc: (10,0)-(10,3) = "obj" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (10,3)-(10,4) = "." - │ ├── name: :set - │ ├── message_loc: (10,4)-(10,7) = "set" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (10,8)-(11,1)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (10,8)-(11,1)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (10,8)-(11,1)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (10,8)-(10,14)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (10,8)-(10,9) = "\"" - │ │ │ ├── value_loc: (10,9)-(10,12) = "foo" - │ │ │ ├── closing_loc: (10,12)-(10,14) = "\":" - │ │ │ └── unescaped: "foo" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (11,0)-(11,1)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── operator_loc: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (13,0)-(14,1)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (13,0)-(13,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :obj - │ ├── message_loc: (13,0)-(13,3) = "obj" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (13,3)-(13,4) = "." - ├── name: :set - ├── message_loc: (13,4)-(13,7) = "set" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (13,8)-(14,1)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 1) - │ └── @ KeywordHashNode (location: (13,8)-(14,1)) - │ ├── flags: symbol_keys - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (13,8)-(14,1)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ SymbolNode (location: (13,8)-(13,12)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (13,8)-(13,11) = "foo" - │ │ ├── closing_loc: (13,11)-(13,12) = ":" - │ │ └── unescaped: "foo" - │ ├── value: - │ │ @ IntegerNode (location: (14,0)-(14,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/nil.txt b/test/prism/snapshots/whitequark/nil.txt deleted file mode 100644 index 39b9c2e821..0000000000 --- a/test/prism/snapshots/whitequark/nil.txt +++ /dev/null @@ -1,9 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ NilNode (location: (1,0)-(1,3)) - └── flags: newline, static_literal diff --git a/test/prism/snapshots/whitequark/nil_expression.txt b/test/prism/snapshots/whitequark/nil_expression.txt deleted file mode 100644 index 00e579864c..0000000000 --- a/test/prism/snapshots/whitequark/nil_expression.txt +++ /dev/null @@ -1,20 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,9)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ ParenthesesNode (location: (1,0)-(1,2)) - │ ├── flags: newline - │ ├── body: ∅ - │ ├── opening_loc: (1,0)-(1,1) = "(" - │ └── closing_loc: (1,1)-(1,2) = ")" - └── @ BeginNode (location: (3,0)-(3,9)) - ├── flags: newline - ├── begin_keyword_loc: (3,0)-(3,5) = "begin" - ├── statements: ∅ - ├── rescue_clause: ∅ - ├── else_clause: ∅ - ├── ensure_clause: ∅ - └── end_keyword_loc: (3,6)-(3,9) = "end" diff --git a/test/prism/snapshots/whitequark/non_lvar_injecting_match.txt b/test/prism/snapshots/whitequark/non_lvar_injecting_match.txt deleted file mode 100644 index 0322423e63..0000000000 --- a/test/prism/snapshots/whitequark/non_lvar_injecting_match.txt +++ /dev/null @@ -1,48 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,28)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,28)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,28)) - ├── flags: newline - ├── receiver: - │ @ InterpolatedRegularExpressionNode (location: (1,0)-(1,19)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,0)-(1,1) = "/" - │ ├── parts: (length: 2) - │ │ ├── @ EmbeddedStatementsNode (location: (1,1)-(1,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (1,1)-(1,3) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (1,3)-(1,4)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (1,3)-(1,4)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── closing_loc: (1,4)-(1,5) = "}" - │ │ └── @ StringNode (location: (1,5)-(1,18)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (1,5)-(1,18) = "(?<match>bar)" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "(?<match>bar)" - │ └── closing_loc: (1,18)-(1,19) = "/" - ├── call_operator_loc: ∅ - ├── name: :=~ - ├── message_loc: (1,20)-(1,22) = "=~" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,23)-(1,28)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ StringNode (location: (1,23)-(1,28)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,23)-(1,24) = "'" - │ ├── content_loc: (1,24)-(1,27) = "bar" - │ ├── closing_loc: (1,27)-(1,28) = "'" - │ └── unescaped: "bar" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/not.txt b/test/prism/snapshots/whitequark/not.txt deleted file mode 100644 index b70792f154..0000000000 --- a/test/prism/snapshots/whitequark/not.txt +++ /dev/null @@ -1,57 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,8)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ CallNode (location: (1,0)-(1,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (1,4)-(1,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,4)-(1,7) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :! - │ ├── message_loc: (1,0)-(1,3) = "not" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (3,0)-(3,5)) - │ ├── flags: newline - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :! - │ ├── message_loc: (3,0)-(3,3) = "not" - │ ├── opening_loc: (3,3)-(3,4) = "(" - │ ├── arguments: ∅ - │ ├── closing_loc: (3,4)-(3,5) = ")" - │ └── block: ∅ - └── @ CallNode (location: (5,0)-(5,8)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (5,4)-(5,7)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (5,4)-(5,7) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :! - ├── message_loc: (5,0)-(5,3) = "not" - ├── opening_loc: (5,3)-(5,4) = "(" - ├── arguments: ∅ - ├── closing_loc: (5,7)-(5,8) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/not_cmd.txt b/test/prism/snapshots/whitequark/not_cmd.txt deleted file mode 100644 index 0ecd1cc67e..0000000000 --- a/test/prism/snapshots/whitequark/not_cmd.txt +++ /dev/null @@ -1,40 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,9)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,4)-(1,9)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (1,4)-(1,5) = "m" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,6)-(1,9)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (1,6)-(1,9)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,6)-(1,9) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :! - ├── message_loc: (1,0)-(1,3) = "not" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/not_masgn__24.txt b/test/prism/snapshots/whitequark/not_masgn__24.txt deleted file mode 100644 index d84faadc50..0000000000 --- a/test/prism/snapshots/whitequark/not_masgn__24.txt +++ /dev/null @@ -1,52 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [:a, :b] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,13)) - ├── flags: newline - ├── receiver: - │ @ ParenthesesNode (location: (1,1)-(1,13)) - │ ├── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,2)-(1,12)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ MultiWriteNode (location: (1,2)-(1,12)) - │ │ ├── flags: newline - │ │ ├── lefts: (length: 2) - │ │ │ ├── @ LocalVariableTargetNode (location: (1,2)-(1,3)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ └── depth: 0 - │ │ │ └── @ LocalVariableTargetNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ └── depth: 0 - │ │ ├── rest: ∅ - │ │ ├── rights: (length: 0) - │ │ ├── lparen_loc: ∅ - │ │ ├── rparen_loc: ∅ - │ │ ├── operator_loc: (1,7)-(1,8) = "=" - │ │ └── value: - │ │ @ CallNode (location: (1,9)-(1,12)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,9)-(1,12) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (1,1)-(1,2) = "(" - │ └── closing_loc: (1,12)-(1,13) = ")" - ├── call_operator_loc: ∅ - ├── name: :! - ├── message_loc: (1,0)-(1,1) = "!" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/nth_ref.txt b/test/prism/snapshots/whitequark/nth_ref.txt deleted file mode 100644 index cca1574548..0000000000 --- a/test/prism/snapshots/whitequark/nth_ref.txt +++ /dev/null @@ -1,10 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ NumberedReferenceReadNode (location: (1,0)-(1,3)) - ├── flags: newline - └── number: 10 diff --git a/test/prism/snapshots/whitequark/numbered_args_after_27.txt b/test/prism/snapshots/whitequark/numbered_args_after_27.txt deleted file mode 100644 index 7bf09f7904..0000000000 --- a/test/prism/snapshots/whitequark/numbered_args_after_27.txt +++ /dev/null @@ -1,165 +0,0 @@ -@ ProgramNode (location: (1,0)-(7,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(7,13)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ LambdaNode (location: (1,0)-(1,17)) - │ ├── flags: newline - │ ├── locals: [:_1, :_2, :_3, :_4, :_5, :_6, :_7, :_8, :_9] - │ ├── operator_loc: (1,0)-(1,2) = "->" - │ ├── opening_loc: (1,3)-(1,5) = "do" - │ ├── closing_loc: (1,14)-(1,17) = "end" - │ ├── parameters: - │ │ @ NumberedParametersNode (location: (1,0)-(1,17)) - │ │ ├── flags: ∅ - │ │ └── maximum: 9 - │ └── body: - │ @ StatementsNode (location: (1,6)-(1,13)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,6)-(1,13)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (1,6)-(1,8)) - │ │ ├── flags: ∅ - │ │ ├── name: :_1 - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (1,9)-(1,10) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,11)-(1,13)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (1,11)-(1,13)) - │ │ ├── flags: ∅ - │ │ ├── name: :_9 - │ │ └── depth: 0 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ LambdaNode (location: (3,0)-(3,13)) - │ ├── flags: newline - │ ├── locals: [:_1, :_2, :_3, :_4, :_5, :_6, :_7, :_8, :_9] - │ ├── operator_loc: (3,0)-(3,2) = "->" - │ ├── opening_loc: (3,3)-(3,4) = "{" - │ ├── closing_loc: (3,12)-(3,13) = "}" - │ ├── parameters: - │ │ @ NumberedParametersNode (location: (3,0)-(3,13)) - │ │ ├── flags: ∅ - │ │ └── maximum: 9 - │ └── body: - │ @ StatementsNode (location: (3,5)-(3,12)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (3,5)-(3,12)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (3,5)-(3,7)) - │ │ ├── flags: ∅ - │ │ ├── name: :_1 - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (3,8)-(3,9) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (3,10)-(3,12)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (3,10)-(3,12)) - │ │ ├── flags: ∅ - │ │ ├── name: :_9 - │ │ └── depth: 0 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (5,0)-(5,16)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (5,0)-(5,1) = "m" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (5,2)-(5,16)) - │ ├── flags: ∅ - │ ├── locals: [:_1, :_2, :_3, :_4, :_5, :_6, :_7, :_8, :_9] - │ ├── parameters: - │ │ @ NumberedParametersNode (location: (5,2)-(5,16)) - │ │ ├── flags: ∅ - │ │ └── maximum: 9 - │ ├── body: - │ │ @ StatementsNode (location: (5,5)-(5,12)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (5,5)-(5,12)) - │ │ ├── flags: newline - │ │ ├── receiver: - │ │ │ @ LocalVariableReadNode (location: (5,5)-(5,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :_1 - │ │ │ └── depth: 0 - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :+ - │ │ ├── message_loc: (5,8)-(5,9) = "+" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (5,10)-(5,12)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ LocalVariableReadNode (location: (5,10)-(5,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :_9 - │ │ │ └── depth: 0 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (5,2)-(5,4) = "do" - │ └── closing_loc: (5,13)-(5,16) = "end" - └── @ CallNode (location: (7,0)-(7,13)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :m - ├── message_loc: (7,0)-(7,1) = "m" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (7,2)-(7,13)) - ├── flags: ∅ - ├── locals: [:_1, :_2, :_3, :_4, :_5, :_6, :_7, :_8, :_9] - ├── parameters: - │ @ NumberedParametersNode (location: (7,2)-(7,13)) - │ ├── flags: ∅ - │ └── maximum: 9 - ├── body: - │ @ StatementsNode (location: (7,4)-(7,11)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (7,4)-(7,11)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (7,4)-(7,6)) - │ │ ├── flags: ∅ - │ │ ├── name: :_1 - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (7,7)-(7,8) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (7,9)-(7,11)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (7,9)-(7,11)) - │ │ ├── flags: ∅ - │ │ ├── name: :_9 - │ │ └── depth: 0 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── opening_loc: (7,2)-(7,3) = "{" - └── closing_loc: (7,12)-(7,13) = "}" diff --git a/test/prism/snapshots/whitequark/numparam_outside_block.txt b/test/prism/snapshots/whitequark/numparam_outside_block.txt deleted file mode 100644 index beef05a392..0000000000 --- a/test/prism/snapshots/whitequark/numparam_outside_block.txt +++ /dev/null @@ -1,127 +0,0 @@ -@ ProgramNode (location: (1,0)-(9,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(9,17)) - ├── flags: ∅ - └── body: (length: 5) - ├── @ CallNode (location: (1,0)-(1,2)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :_1 - │ ├── message_loc: (1,0)-(1,2) = "_1" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ SingletonClassNode (location: (3,0)-(3,21)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (3,0)-(3,5) = "class" - │ ├── operator_loc: (3,6)-(3,8) = "<<" - │ ├── expression: - │ │ @ CallNode (location: (3,9)-(3,12)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (3,9)-(3,12) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (3,14)-(3,16)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (3,14)-(3,16)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :_1 - │ │ ├── message_loc: (3,14)-(3,16) = "_1" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── end_keyword_loc: (3,18)-(3,21) = "end" - ├── @ ClassNode (location: (5,0)-(5,16)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (5,0)-(5,5) = "class" - │ ├── constant_path: - │ │ @ ConstantReadNode (location: (5,6)-(5,7)) - │ │ ├── flags: ∅ - │ │ └── name: :A - │ ├── inheritance_operator_loc: ∅ - │ ├── superclass: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (5,9)-(5,11)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (5,9)-(5,11)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :_1 - │ │ ├── message_loc: (5,9)-(5,11) = "_1" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── end_keyword_loc: (5,13)-(5,16) = "end" - │ └── name: :A - ├── @ DefNode (location: (7,0)-(7,19)) - │ ├── flags: newline - │ ├── name: :m - │ ├── name_loc: (7,9)-(7,10) = "m" - │ ├── receiver: - │ │ @ SelfNode (location: (7,4)-(7,8)) - │ │ └── flags: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (7,12)-(7,14)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (7,12)-(7,14)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :_1 - │ │ ├── message_loc: (7,12)-(7,14) = "_1" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (7,0)-(7,3) = "def" - │ ├── operator_loc: (7,8)-(7,9) = "." - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (7,16)-(7,19) = "end" - └── @ ModuleNode (location: (9,0)-(9,17)) - ├── flags: newline - ├── locals: [] - ├── module_keyword_loc: (9,0)-(9,6) = "module" - ├── constant_path: - │ @ ConstantReadNode (location: (9,7)-(9,8)) - │ ├── flags: ∅ - │ └── name: :A - ├── body: - │ @ StatementsNode (location: (9,10)-(9,12)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (9,10)-(9,12)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :_1 - │ ├── message_loc: (9,10)-(9,12) = "_1" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── end_keyword_loc: (9,14)-(9,17) = "end" - └── name: :A diff --git a/test/prism/snapshots/whitequark/numparam_ruby_bug_19025.txt b/test/prism/snapshots/whitequark/numparam_ruby_bug_19025.txt deleted file mode 100644 index 5043c9be48..0000000000 --- a/test/prism/snapshots/whitequark/numparam_ruby_bug_19025.txt +++ /dev/null @@ -1,55 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,14)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :p - ├── message_loc: (1,0)-(1,1) = "p" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,2)-(1,14)) - ├── flags: ∅ - ├── locals: [:_1] - ├── parameters: - │ @ NumberedParametersNode (location: (1,2)-(1,14)) - │ ├── flags: ∅ - │ └── maximum: 1 - ├── body: - │ @ StatementsNode (location: (1,4)-(1,12)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ ArrayNode (location: (1,4)-(1,12)) - │ ├── flags: newline - │ ├── elements: (length: 1) - │ │ └── @ CallNode (location: (1,5)-(1,11)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ LocalVariableReadNode (location: (1,5)-(1,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :_1 - │ │ │ └── depth: 0 - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :** - │ │ ├── message_loc: (1,8)-(1,10) = "**" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (1,10)-(1,11)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (1,10)-(1,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (1,4)-(1,5) = "[" - │ └── closing_loc: (1,11)-(1,12) = "]" - ├── opening_loc: (1,2)-(1,3) = "{" - └── closing_loc: (1,13)-(1,14) = "}" diff --git a/test/prism/snapshots/whitequark/op_asgn.txt b/test/prism/snapshots/whitequark/op_asgn.txt deleted file mode 100644 index cac3e0e7b1..0000000000 --- a/test/prism/snapshots/whitequark/op_asgn.txt +++ /dev/null @@ -1,76 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,11)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ CallOperatorWriteNode (location: (1,0)-(1,10)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (1,0)-(1,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,0)-(1,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (1,3)-(1,4) = "." - │ ├── message_loc: (1,4)-(1,5) = "A" - │ ├── read_name: :A - │ ├── write_name: :A= - │ ├── binary_operator: :+ - │ ├── binary_operator_loc: (1,6)-(1,8) = "+=" - │ └── value: - │ @ IntegerNode (location: (1,9)-(1,10)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── @ CallOperatorWriteNode (location: (3,0)-(3,10)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (3,0)-(3,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (3,0)-(3,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (3,3)-(3,4) = "." - │ ├── message_loc: (3,4)-(3,5) = "a" - │ ├── read_name: :a - │ ├── write_name: :a= - │ ├── binary_operator: :+ - │ ├── binary_operator_loc: (3,6)-(3,8) = "+=" - │ └── value: - │ @ IntegerNode (location: (3,9)-(3,10)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - └── @ CallOperatorWriteNode (location: (5,0)-(5,11)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (5,0)-(5,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (5,0)-(5,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (5,3)-(5,5) = "::" - ├── message_loc: (5,5)-(5,6) = "a" - ├── read_name: :a - ├── write_name: :a= - ├── binary_operator: :+ - ├── binary_operator_loc: (5,7)-(5,9) = "+=" - └── value: - @ IntegerNode (location: (5,10)-(5,11)) - ├── flags: static_literal, decimal - └── value: 1 diff --git a/test/prism/snapshots/whitequark/op_asgn_cmd.txt b/test/prism/snapshots/whitequark/op_asgn_cmd.txt deleted file mode 100644 index 6ee1650274..0000000000 --- a/test/prism/snapshots/whitequark/op_asgn_cmd.txt +++ /dev/null @@ -1,181 +0,0 @@ -@ ProgramNode (location: (1,0)-(7,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(7,15)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ CallOperatorWriteNode (location: (1,0)-(1,14)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (1,0)-(1,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,0)-(1,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (1,3)-(1,4) = "." - │ ├── message_loc: (1,4)-(1,5) = "A" - │ ├── read_name: :A - │ ├── write_name: :A= - │ ├── binary_operator: :+ - │ ├── binary_operator_loc: (1,6)-(1,8) = "+=" - │ └── value: - │ @ CallNode (location: (1,9)-(1,14)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (1,9)-(1,10) = "m" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,11)-(1,14)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (1,11)-(1,14)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,11)-(1,14) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallOperatorWriteNode (location: (3,0)-(3,14)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (3,0)-(3,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (3,0)-(3,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (3,3)-(3,4) = "." - │ ├── message_loc: (3,4)-(3,5) = "a" - │ ├── read_name: :a - │ ├── write_name: :a= - │ ├── binary_operator: :+ - │ ├── binary_operator_loc: (3,6)-(3,8) = "+=" - │ └── value: - │ @ CallNode (location: (3,9)-(3,14)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (3,9)-(3,10) = "m" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (3,11)-(3,14)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (3,11)-(3,14)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (3,11)-(3,14) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ ConstantPathOperatorWriteNode (location: (5,0)-(5,15)) - │ ├── flags: newline - │ ├── target: - │ │ @ ConstantPathNode (location: (5,0)-(5,6)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ CallNode (location: (5,0)-(5,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (5,0)-(5,3) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── name: :A - │ │ ├── delimiter_loc: (5,3)-(5,5) = "::" - │ │ └── name_loc: (5,5)-(5,6) = "A" - │ ├── binary_operator_loc: (5,7)-(5,9) = "+=" - │ ├── value: - │ │ @ CallNode (location: (5,10)-(5,15)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :m - │ │ ├── message_loc: (5,10)-(5,11) = "m" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (5,12)-(5,15)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ CallNode (location: (5,12)-(5,15)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (5,12)-(5,15) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── binary_operator: :+ - └── @ CallOperatorWriteNode (location: (7,0)-(7,15)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (7,0)-(7,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (7,0)-(7,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (7,3)-(7,5) = "::" - ├── message_loc: (7,5)-(7,6) = "a" - ├── read_name: :a - ├── write_name: :a= - ├── binary_operator: :+ - ├── binary_operator_loc: (7,7)-(7,9) = "+=" - └── value: - @ CallNode (location: (7,10)-(7,15)) - ├── flags: ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :m - ├── message_loc: (7,10)-(7,11) = "m" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (7,12)-(7,15)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (7,12)-(7,15)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (7,12)-(7,15) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/op_asgn_index.txt b/test/prism/snapshots/whitequark/op_asgn_index.txt deleted file mode 100644 index 0e2927f0fb..0000000000 --- a/test/prism/snapshots/whitequark/op_asgn_index.txt +++ /dev/null @@ -1,40 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IndexOperatorWriteNode (location: (1,0)-(1,14)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,0)-(1,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── opening_loc: (1,3)-(1,4) = "[" - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,8)) - │ ├── flags: ∅ - │ └── arguments: (length: 2) - │ ├── @ IntegerNode (location: (1,4)-(1,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 0 - │ └── @ IntegerNode (location: (1,7)-(1,8)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: (1,8)-(1,9) = "]" - ├── block: ∅ - ├── binary_operator: :+ - ├── binary_operator_loc: (1,10)-(1,12) = "+=" - └── value: - @ IntegerNode (location: (1,13)-(1,14)) - ├── flags: static_literal, decimal - └── value: 2 diff --git a/test/prism/snapshots/whitequark/op_asgn_index_cmd.txt b/test/prism/snapshots/whitequark/op_asgn_index_cmd.txt deleted file mode 100644 index 84cef7867d..0000000000 --- a/test/prism/snapshots/whitequark/op_asgn_index_cmd.txt +++ /dev/null @@ -1,60 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,18)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,18)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IndexOperatorWriteNode (location: (1,0)-(1,18)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,0)-(1,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── opening_loc: (1,3)-(1,4) = "[" - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,8)) - │ ├── flags: ∅ - │ └── arguments: (length: 2) - │ ├── @ IntegerNode (location: (1,4)-(1,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 0 - │ └── @ IntegerNode (location: (1,7)-(1,8)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: (1,8)-(1,9) = "]" - ├── block: ∅ - ├── binary_operator: :+ - ├── binary_operator_loc: (1,10)-(1,12) = "+=" - └── value: - @ CallNode (location: (1,13)-(1,18)) - ├── flags: ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :m - ├── message_loc: (1,13)-(1,14) = "m" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,15)-(1,18)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (1,15)-(1,18)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,15)-(1,18) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/optarg.txt b/test/prism/snapshots/whitequark/optarg.txt deleted file mode 100644 index f25b004a00..0000000000 --- a/test/prism/snapshots/whitequark/optarg.txt +++ /dev/null @@ -1,80 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,24)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,24)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ DefNode (location: (1,0)-(1,18)) - │ ├── flags: newline - │ ├── name: :f - │ ├── name_loc: (1,4)-(1,5) = "f" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,6)-(1,13)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,6)-(1,13)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── name_loc: (1,6)-(1,9) = "foo" - │ │ │ ├── operator_loc: (1,10)-(1,11) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (1,12)-(1,13)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: ∅ - │ ├── locals: [:foo] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (1,15)-(1,18) = "end" - └── @ DefNode (location: (3,0)-(3,24)) - ├── flags: newline - ├── name: :f - ├── name_loc: (3,4)-(3,5) = "f" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (3,6)-(3,18)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 2) - │ │ ├── @ OptionalParameterNode (location: (3,6)-(3,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── name_loc: (3,6)-(3,9) = "foo" - │ │ │ ├── operator_loc: (3,9)-(3,10) = "=" - │ │ │ └── value: - │ │ │ @ IntegerNode (location: (3,10)-(3,11)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── @ OptionalParameterNode (location: (3,13)-(3,18)) - │ │ ├── flags: ∅ - │ │ ├── name: :bar - │ │ ├── name_loc: (3,13)-(3,16) = "bar" - │ │ ├── operator_loc: (3,16)-(3,17) = "=" - │ │ └── value: - │ │ @ IntegerNode (location: (3,17)-(3,18)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:foo, :bar] - ├── def_keyword_loc: (3,0)-(3,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (3,5)-(3,6) = "(" - ├── rparen_loc: (3,18)-(3,19) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (3,21)-(3,24) = "end" diff --git a/test/prism/snapshots/whitequark/or.txt b/test/prism/snapshots/whitequark/or.txt deleted file mode 100644 index 7a23781399..0000000000 --- a/test/prism/snapshots/whitequark/or.txt +++ /dev/null @@ -1,57 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,10)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ OrNode (location: (1,0)-(1,10)) - │ ├── flags: newline - │ ├── left: - │ │ @ CallNode (location: (1,0)-(1,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,0)-(1,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── right: - │ │ @ CallNode (location: (1,7)-(1,10)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,7)-(1,10) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (1,4)-(1,6) = "or" - └── @ OrNode (location: (3,0)-(3,10)) - ├── flags: newline - ├── left: - │ @ CallNode (location: (3,0)-(3,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (3,0)-(3,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── right: - │ @ CallNode (location: (3,7)-(3,10)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (3,7)-(3,10) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── operator_loc: (3,4)-(3,6) = "||" diff --git a/test/prism/snapshots/whitequark/or_asgn.txt b/test/prism/snapshots/whitequark/or_asgn.txt deleted file mode 100644 index 7234587b45..0000000000 --- a/test/prism/snapshots/whitequark/or_asgn.txt +++ /dev/null @@ -1,61 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,15)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallOrWriteNode (location: (1,0)-(1,11)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (1,0)-(1,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,0)-(1,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (1,3)-(1,4) = "." - │ ├── message_loc: (1,4)-(1,5) = "a" - │ ├── read_name: :a - │ ├── write_name: :a= - │ ├── operator_loc: (1,6)-(1,9) = "||=" - │ └── value: - │ @ IntegerNode (location: (1,10)-(1,11)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - └── @ IndexOrWriteNode (location: (3,0)-(3,15)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (3,0)-(3,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (3,0)-(3,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── opening_loc: (3,3)-(3,4) = "[" - ├── arguments: - │ @ ArgumentsNode (location: (3,4)-(3,8)) - │ ├── flags: ∅ - │ └── arguments: (length: 2) - │ ├── @ IntegerNode (location: (3,4)-(3,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 0 - │ └── @ IntegerNode (location: (3,7)-(3,8)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: (3,8)-(3,9) = "]" - ├── block: ∅ - ├── operator_loc: (3,10)-(3,13) = "||=" - └── value: - @ IntegerNode (location: (3,14)-(3,15)) - ├── flags: static_literal, decimal - └── value: 2 diff --git a/test/prism/snapshots/whitequark/parser_bug_272.txt b/test/prism/snapshots/whitequark/parser_bug_272.txt deleted file mode 100644 index 64df1cf46d..0000000000 --- a/test/prism/snapshots/whitequark/parser_bug_272.txt +++ /dev/null @@ -1,48 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,15)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,15)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (1,0)-(1,1) = "a" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,4)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ InstanceVariableReadNode (location: (1,2)-(1,4)) - │ ├── flags: ∅ - │ └── name: :@b - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,5)-(1,15)) - ├── flags: ∅ - ├── locals: [:c] - ├── parameters: - │ @ BlockParametersNode (location: (1,8)-(1,11)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,9)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,9)-(1,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :c - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,8)-(1,9) = "|" - │ └── closing_loc: (1,10)-(1,11) = "|" - ├── body: ∅ - ├── opening_loc: (1,5)-(1,7) = "do" - └── closing_loc: (1,12)-(1,15) = "end" diff --git a/test/prism/snapshots/whitequark/parser_bug_490.txt b/test/prism/snapshots/whitequark/parser_bug_490.txt deleted file mode 100644 index 89a29c11f5..0000000000 --- a/test/prism/snapshots/whitequark/parser_bug_490.txt +++ /dev/null @@ -1,129 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,45)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,45)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ DefNode (location: (1,0)-(1,39)) - │ ├── flags: newline - │ ├── name: :m - │ ├── name_loc: (1,4)-(1,5) = "m" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,7)-(1,34)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SingletonClassNode (location: (1,7)-(1,34)) - │ │ ├── flags: newline - │ │ ├── locals: [] - │ │ ├── class_keyword_loc: (1,7)-(1,12) = "class" - │ │ ├── operator_loc: (1,13)-(1,15) = "<<" - │ │ ├── expression: - │ │ │ @ SelfNode (location: (1,16)-(1,20)) - │ │ │ └── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (1,22)-(1,29)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ ConstantWriteNode (location: (1,22)-(1,29)) - │ │ │ ├── flags: newline - │ │ │ ├── name: :A - │ │ │ ├── name_loc: (1,22)-(1,23) = "A" - │ │ │ ├── value: - │ │ │ │ @ NilNode (location: (1,26)-(1,29)) - │ │ │ │ └── flags: static_literal - │ │ │ └── operator_loc: (1,24)-(1,25) = "=" - │ │ └── end_keyword_loc: (1,31)-(1,34) = "end" - │ ├── locals: [] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (1,36)-(1,39) = "end" - ├── @ DefNode (location: (3,0)-(3,44)) - │ ├── flags: newline - │ ├── name: :m - │ ├── name_loc: (3,4)-(3,5) = "m" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (3,7)-(3,39)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SingletonClassNode (location: (3,7)-(3,39)) - │ │ ├── flags: newline - │ │ ├── locals: [] - │ │ ├── class_keyword_loc: (3,7)-(3,12) = "class" - │ │ ├── operator_loc: (3,13)-(3,15) = "<<" - │ │ ├── expression: - │ │ │ @ SelfNode (location: (3,16)-(3,20)) - │ │ │ └── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (3,22)-(3,34)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ ClassNode (location: (3,22)-(3,34)) - │ │ │ ├── flags: newline - │ │ │ ├── locals: [] - │ │ │ ├── class_keyword_loc: (3,22)-(3,27) = "class" - │ │ │ ├── constant_path: - │ │ │ │ @ ConstantReadNode (location: (3,28)-(3,29)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :C - │ │ │ ├── inheritance_operator_loc: ∅ - │ │ │ ├── superclass: ∅ - │ │ │ ├── body: ∅ - │ │ │ ├── end_keyword_loc: (3,31)-(3,34) = "end" - │ │ │ └── name: :C - │ │ └── end_keyword_loc: (3,36)-(3,39) = "end" - │ ├── locals: [] - │ ├── def_keyword_loc: (3,0)-(3,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (3,41)-(3,44) = "end" - └── @ DefNode (location: (5,0)-(5,45)) - ├── flags: newline - ├── name: :m - ├── name_loc: (5,4)-(5,5) = "m" - ├── receiver: ∅ - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (5,7)-(5,40)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ SingletonClassNode (location: (5,7)-(5,40)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── class_keyword_loc: (5,7)-(5,12) = "class" - │ ├── operator_loc: (5,13)-(5,15) = "<<" - │ ├── expression: - │ │ @ SelfNode (location: (5,16)-(5,20)) - │ │ └── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (5,22)-(5,35)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ ModuleNode (location: (5,22)-(5,35)) - │ │ ├── flags: newline - │ │ ├── locals: [] - │ │ ├── module_keyword_loc: (5,22)-(5,28) = "module" - │ │ ├── constant_path: - │ │ │ @ ConstantReadNode (location: (5,29)-(5,30)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :M - │ │ ├── body: ∅ - │ │ ├── end_keyword_loc: (5,32)-(5,35) = "end" - │ │ └── name: :M - │ └── end_keyword_loc: (5,37)-(5,40) = "end" - ├── locals: [] - ├── def_keyword_loc: (5,0)-(5,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (5,42)-(5,45) = "end" diff --git a/test/prism/snapshots/whitequark/parser_bug_507.txt b/test/prism/snapshots/whitequark/parser_bug_507.txt deleted file mode 100644 index 63a9169d01..0000000000 --- a/test/prism/snapshots/whitequark/parser_bug_507.txt +++ /dev/null @@ -1,42 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,19)) -├── flags: ∅ -├── locals: [:m] -└── statements: - @ StatementsNode (location: (1,0)-(1,19)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableWriteNode (location: (1,0)-(1,19)) - ├── flags: newline - ├── name: :m - ├── depth: 0 - ├── name_loc: (1,0)-(1,1) = "m" - ├── value: - │ @ LambdaNode (location: (1,4)-(1,19)) - │ ├── flags: ∅ - │ ├── locals: [:args] - │ ├── operator_loc: (1,4)-(1,6) = "->" - │ ├── opening_loc: (1,13)-(1,15) = "do" - │ ├── closing_loc: (1,16)-(1,19) = "end" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (1,7)-(1,12)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (1,7)-(1,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ RestParameterNode (location: (1,7)-(1,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :args - │ │ │ │ ├── name_loc: (1,8)-(1,12) = "args" - │ │ │ │ └── operator_loc: (1,7)-(1,8) = "*" - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── body: ∅ - └── operator_loc: (1,2)-(1,3) = "=" diff --git a/test/prism/snapshots/whitequark/parser_bug_518.txt b/test/prism/snapshots/whitequark/parser_bug_518.txt deleted file mode 100644 index 3341167b64..0000000000 --- a/test/prism/snapshots/whitequark/parser_bug_518.txt +++ /dev/null @@ -1,23 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,3)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ClassNode (location: (1,0)-(2,3)) - ├── flags: newline - ├── locals: [] - ├── class_keyword_loc: (1,0)-(1,5) = "class" - ├── constant_path: - │ @ ConstantReadNode (location: (1,6)-(1,7)) - │ ├── flags: ∅ - │ └── name: :A - ├── inheritance_operator_loc: (1,8)-(1,9) = "<" - ├── superclass: - │ @ ConstantReadNode (location: (1,10)-(1,11)) - │ ├── flags: ∅ - │ └── name: :B - ├── body: ∅ - ├── end_keyword_loc: (2,0)-(2,3) = "end" - └── name: :A diff --git a/test/prism/snapshots/whitequark/parser_bug_525.txt b/test/prism/snapshots/whitequark/parser_bug_525.txt deleted file mode 100644 index 46dca6f97d..0000000000 --- a/test/prism/snapshots/whitequark/parser_bug_525.txt +++ /dev/null @@ -1,71 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,32)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,32)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,32)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :m1 - ├── message_loc: (1,0)-(1,2) = "m1" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,3)-(1,11)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 1) - │ └── @ KeywordHashNode (location: (1,3)-(1,11)) - │ ├── flags: symbol_keys - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (1,3)-(1,11)) - │ ├── flags: ∅ - │ ├── key: - │ │ @ SymbolNode (location: (1,3)-(1,5)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,3)-(1,4) = ":" - │ │ ├── value_loc: (1,4)-(1,5) = "k" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "k" - │ ├── value: - │ │ @ CallNode (location: (1,9)-(1,11)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :m2 - │ │ ├── message_loc: (1,9)-(1,11) = "m2" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (1,6)-(1,8) = "=>" - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,12)-(1,32)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (1,16)-(1,27)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,16)-(1,27)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m3 - │ ├── message_loc: (1,16)-(1,18) = "m3" - │ ├── opening_loc: (1,18)-(1,19) = "(" - │ ├── arguments: ∅ - │ ├── closing_loc: (1,19)-(1,20) = ")" - │ └── block: - │ @ BlockNode (location: (1,21)-(1,27)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (1,21)-(1,23) = "do" - │ └── closing_loc: (1,24)-(1,27) = "end" - ├── opening_loc: (1,12)-(1,14) = "do" - └── closing_loc: (1,29)-(1,32) = "end" diff --git a/test/prism/snapshots/whitequark/parser_bug_604.txt b/test/prism/snapshots/whitequark/parser_bug_604.txt deleted file mode 100644 index aa58b2304f..0000000000 --- a/test/prism/snapshots/whitequark/parser_bug_604.txt +++ /dev/null @@ -1,60 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,14)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :m - ├── message_loc: (1,0)-(1,1) = "m" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,7)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (1,2)-(1,7)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ CallNode (location: (1,2)-(1,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (1,2)-(1,3) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (1,4)-(1,5) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,6)-(1,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (1,6)-(1,7)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (1,6)-(1,7) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,8)-(1,14)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: ∅ - ├── opening_loc: (1,8)-(1,10) = "do" - └── closing_loc: (1,11)-(1,14) = "end" diff --git a/test/prism/snapshots/whitequark/parser_bug_640.txt b/test/prism/snapshots/whitequark/parser_bug_640.txt deleted file mode 100644 index 1e535e769b..0000000000 --- a/test/prism/snapshots/whitequark/parser_bug_640.txt +++ /dev/null @@ -1,24 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(1,6)) - ├── flags: newline, static_literal - ├── opening_loc: (1,0)-(1,6) = "<<~FOO" - ├── parts: (length: 2) - │ ├── @ StringNode (location: (2,0)-(3,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (2,0)-(3,0) = " baz\\\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "baz" - │ └── @ StringNode (location: (3,0)-(4,0)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (3,0)-(4,0) = " qux\n" - │ ├── closing_loc: ∅ - │ └── unescaped: "qux\n" - └── closing_loc: (4,0)-(5,0) = "FOO\n" diff --git a/test/prism/snapshots/whitequark/parser_bug_645.txt b/test/prism/snapshots/whitequark/parser_bug_645.txt deleted file mode 100644 index 0aa65ebe03..0000000000 --- a/test/prism/snapshots/whitequark/parser_bug_645.txt +++ /dev/null @@ -1,41 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LambdaNode (location: (1,0)-(1,14)) - ├── flags: newline - ├── locals: [:arg] - ├── operator_loc: (1,0)-(1,2) = "->" - ├── opening_loc: (1,12)-(1,13) = "{" - ├── closing_loc: (1,13)-(1,14) = "}" - ├── parameters: - │ @ BlockParametersNode (location: (1,3)-(1,11)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,4)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 1) - │ │ │ └── @ OptionalParameterNode (location: (1,4)-(1,10)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :arg - │ │ │ ├── name_loc: (1,4)-(1,7) = "arg" - │ │ │ ├── operator_loc: (1,7)-(1,8) = "=" - │ │ │ └── value: - │ │ │ @ HashNode (location: (1,8)-(1,10)) - │ │ │ ├── flags: static_literal - │ │ │ ├── opening_loc: (1,8)-(1,9) = "{" - │ │ │ ├── elements: (length: 0) - │ │ │ └── closing_loc: (1,9)-(1,10) = "}" - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (1,3)-(1,4) = "(" - │ └── closing_loc: (1,10)-(1,11) = ")" - └── body: ∅ diff --git a/test/prism/snapshots/whitequark/parser_bug_830.txt b/test/prism/snapshots/whitequark/parser_bug_830.txt deleted file mode 100644 index 4adbe6256a..0000000000 --- a/test/prism/snapshots/whitequark/parser_bug_830.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ RegularExpressionNode (location: (1,0)-(1,4)) - ├── flags: newline, static_literal, forced_us_ascii_encoding - ├── opening_loc: (1,0)-(1,1) = "/" - ├── content_loc: (1,1)-(1,3) = "\\(" - ├── closing_loc: (1,3)-(1,4) = "/" - └── unescaped: "\\(" diff --git a/test/prism/snapshots/whitequark/parser_bug_989.txt b/test/prism/snapshots/whitequark/parser_bug_989.txt deleted file mode 100644 index d0aec1ff5e..0000000000 --- a/test/prism/snapshots/whitequark/parser_bug_989.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,1)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,1)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ StringNode (location: (1,1)-(1,8)) - ├── flags: newline - ├── opening_loc: (1,1)-(1,8) = "<<-HERE" - ├── content_loc: (2,0)-(3,0) = "\t\tcontent\n" - ├── closing_loc: (3,0)-(4,0) = "\tHERE\n" - └── unescaped: "\t\tcontent\n" diff --git a/test/prism/snapshots/whitequark/parser_drops_truncated_parts_of_squiggly_heredoc.txt b/test/prism/snapshots/whitequark/parser_drops_truncated_parts_of_squiggly_heredoc.txt deleted file mode 100644 index 3b0f46674b..0000000000 --- a/test/prism/snapshots/whitequark/parser_drops_truncated_parts_of_squiggly_heredoc.txt +++ /dev/null @@ -1,23 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(1,7)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,7) = "<<~HERE" - ├── parts: (length: 2) - │ ├── @ EmbeddedStatementsNode (location: (2,2)-(2,5)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (2,2)-(2,4) = "\#{" - │ │ ├── statements: ∅ - │ │ └── closing_loc: (2,4)-(2,5) = "}" - │ └── @ StringNode (location: (2,5)-(3,0)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (2,5)-(3,0) = "\n" - │ ├── closing_loc: ∅ - │ └── unescaped: "\n" - └── closing_loc: (3,0)-(4,0) = "HERE\n" diff --git a/test/prism/snapshots/whitequark/parser_slash_slash_n_escaping_in_literals.txt b/test/prism/snapshots/whitequark/parser_slash_slash_n_escaping_in_literals.txt deleted file mode 100644 index ddd38a5ab7..0000000000 --- a/test/prism/snapshots/whitequark/parser_slash_slash_n_escaping_in_literals.txt +++ /dev/null @@ -1,141 +0,0 @@ -@ ProgramNode (location: (1,0)-(62,2)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(62,2)) - ├── flags: ∅ - └── body: (length: 19) - ├── @ StringNode (location: (1,0)-(2,2)) - │ ├── flags: newline - │ ├── opening_loc: (1,0)-(1,1) = "\"" - │ ├── content_loc: (1,1)-(2,1) = "a\\\nb" - │ ├── closing_loc: (2,1)-(2,2) = "\"" - │ └── unescaped: "ab" - ├── @ ArrayNode (location: (4,0)-(5,2)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 1) - │ │ └── @ SymbolNode (location: (4,3)-(5,1)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (4,3)-(5,1) = "a\\\nb" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a\nb" - │ ├── opening_loc: (4,0)-(4,3) = "%I{" - │ └── closing_loc: (5,1)-(5,2) = "}" - ├── @ StringNode (location: (7,0)-(8,2)) - │ ├── flags: newline - │ ├── opening_loc: (7,0)-(7,3) = "%Q{" - │ ├── content_loc: (7,3)-(8,1) = "a\\\nb" - │ ├── closing_loc: (8,1)-(8,2) = "}" - │ └── unescaped: "ab" - ├── @ ArrayNode (location: (10,0)-(11,2)) - │ ├── flags: newline - │ ├── elements: (length: 1) - │ │ └── @ StringNode (location: (10,3)-(11,1)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (10,3)-(11,1) = "a\\\nb" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a\nb" - │ ├── opening_loc: (10,0)-(10,3) = "%W{" - │ └── closing_loc: (11,1)-(11,2) = "}" - ├── @ ArrayNode (location: (13,0)-(14,2)) - │ ├── flags: newline, static_literal - │ ├── elements: (length: 1) - │ │ └── @ SymbolNode (location: (13,3)-(14,1)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (13,3)-(14,1) = "a\\\nb" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a\nb" - │ ├── opening_loc: (13,0)-(13,3) = "%i{" - │ └── closing_loc: (14,1)-(14,2) = "}" - ├── @ StringNode (location: (16,0)-(17,2)) - │ ├── flags: newline - │ ├── opening_loc: (16,0)-(16,3) = "%q{" - │ ├── content_loc: (16,3)-(17,1) = "a\\\nb" - │ ├── closing_loc: (17,1)-(17,2) = "}" - │ └── unescaped: "a\\\nb" - ├── @ RegularExpressionNode (location: (19,0)-(20,2)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (19,0)-(19,3) = "%r{" - │ ├── content_loc: (19,3)-(20,1) = "a\\\nb" - │ ├── closing_loc: (20,1)-(20,2) = "}" - │ └── unescaped: "ab" - ├── @ SymbolNode (location: (22,0)-(23,2)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (22,0)-(22,3) = "%s{" - │ ├── value_loc: (22,3)-(23,1) = "a\\\nb" - │ ├── closing_loc: (23,1)-(23,2) = "}" - │ └── unescaped: "a\\\nb" - ├── @ ArrayNode (location: (25,0)-(26,2)) - │ ├── flags: newline - │ ├── elements: (length: 1) - │ │ └── @ StringNode (location: (25,3)-(26,1)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (25,3)-(26,1) = "a\\\nb" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "a\nb" - │ ├── opening_loc: (25,0)-(25,3) = "%w{" - │ └── closing_loc: (26,1)-(26,2) = "}" - ├── @ XStringNode (location: (28,0)-(29,2)) - │ ├── flags: newline - │ ├── opening_loc: (28,0)-(28,3) = "%x{" - │ ├── content_loc: (28,3)-(29,1) = "a\\\nb" - │ ├── closing_loc: (29,1)-(29,2) = "}" - │ └── unescaped: "ab" - ├── @ StringNode (location: (31,0)-(32,2)) - │ ├── flags: newline - │ ├── opening_loc: (31,0)-(31,2) = "%{" - │ ├── content_loc: (31,2)-(32,1) = "a\\\nb" - │ ├── closing_loc: (32,1)-(32,2) = "}" - │ └── unescaped: "ab" - ├── @ StringNode (location: (34,0)-(35,2)) - │ ├── flags: newline - │ ├── opening_loc: (34,0)-(34,1) = "'" - │ ├── content_loc: (34,1)-(35,1) = "a\\\nb" - │ ├── closing_loc: (35,1)-(35,2) = "'" - │ └── unescaped: "a\\\nb" - ├── @ RegularExpressionNode (location: (37,0)-(38,2)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (37,0)-(37,1) = "/" - │ ├── content_loc: (37,1)-(38,1) = "a\\\nb" - │ ├── closing_loc: (38,1)-(38,2) = "/" - │ └── unescaped: "ab" - ├── @ SymbolNode (location: (40,0)-(41,2)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (40,0)-(40,2) = ":\"" - │ ├── value_loc: (40,2)-(41,1) = "a\\\nb" - │ ├── closing_loc: (41,1)-(41,2) = "\"" - │ └── unescaped: "ab" - ├── @ SymbolNode (location: (43,0)-(44,2)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (43,0)-(43,2) = ":'" - │ ├── value_loc: (43,2)-(44,1) = "a\\\nb" - │ ├── closing_loc: (44,1)-(44,2) = "'" - │ └── unescaped: "a\\\nb" - ├── @ StringNode (location: (46,0)-(46,9)) - │ ├── flags: newline - │ ├── opening_loc: (46,0)-(46,9) = "<<-\"HERE\"" - │ ├── content_loc: (47,0)-(49,0) = "a\\\nb\n" - │ ├── closing_loc: (49,0)-(50,0) = "HERE\n" - │ └── unescaped: "ab\n" - ├── @ StringNode (location: (51,0)-(51,9)) - │ ├── flags: newline - │ ├── opening_loc: (51,0)-(51,9) = "<<-'HERE'" - │ ├── content_loc: (52,0)-(54,0) = "a\\\nb\n" - │ ├── closing_loc: (54,0)-(55,0) = "HERE\n" - │ └── unescaped: "a\\\nb\n" - ├── @ XStringNode (location: (56,0)-(56,9)) - │ ├── flags: newline - │ ├── opening_loc: (56,0)-(56,9) = "<<-`HERE`" - │ ├── content_loc: (57,0)-(59,0) = "a\\\nb\n" - │ ├── closing_loc: (59,0)-(60,0) = "HERE\n" - │ └── unescaped: "ab\n" - └── @ XStringNode (location: (61,0)-(62,2)) - ├── flags: newline - ├── opening_loc: (61,0)-(61,1) = "`" - ├── content_loc: (61,1)-(62,1) = "a\\\nb" - ├── closing_loc: (62,1)-(62,2) = "`" - └── unescaped: "ab" diff --git a/test/prism/snapshots/whitequark/pattern_matching__FILE__LINE_literals.txt b/test/prism/snapshots/whitequark/pattern_matching__FILE__LINE_literals.txt deleted file mode 100644 index 77b6f0b1ea..0000000000 --- a/test/prism/snapshots/whitequark/pattern_matching__FILE__LINE_literals.txt +++ /dev/null @@ -1,63 +0,0 @@ -@ ProgramNode (location: (1,8)-(3,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,8)-(3,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,8)-(3,11)) - ├── flags: newline - ├── predicate: - │ @ ArrayNode (location: (1,13)-(1,51)) - │ ├── flags: ∅ - │ ├── elements: (length: 3) - │ │ ├── @ SourceFileNode (location: (1,14)-(1,22)) - │ │ │ ├── flags: ∅ - │ │ │ └── filepath: "whitequark/pattern_matching__FILE__LINE_literals.txt" - │ │ ├── @ CallNode (location: (1,24)-(1,36)) - │ │ │ ├── flags: ∅ - │ │ │ ├── receiver: - │ │ │ │ @ SourceLineNode (location: (1,24)-(1,32)) - │ │ │ │ └── flags: static_literal - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :+ - │ │ │ ├── message_loc: (1,33)-(1,34) = "+" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (1,35)-(1,36)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ IntegerNode (location: (1,35)-(1,36)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── @ SourceEncodingNode (location: (1,38)-(1,50)) - │ │ └── flags: static_literal - │ ├── opening_loc: (1,13)-(1,14) = "[" - │ └── closing_loc: (1,50)-(1,51) = "]" - ├── conditions: (length: 1) - │ └── @ InNode (location: (2,10)-(2,47)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (2,13)-(2,47)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 3) - │ │ │ ├── @ SourceFileNode (location: (2,14)-(2,22)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── filepath: "whitequark/pattern_matching__FILE__LINE_literals.txt" - │ │ │ ├── @ SourceLineNode (location: (2,24)-(2,32)) - │ │ │ │ └── flags: static_literal - │ │ │ └── @ SourceEncodingNode (location: (2,34)-(2,46)) - │ │ │ └── flags: static_literal - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (2,13)-(2,14) = "[" - │ │ └── closing_loc: (2,46)-(2,47) = "]" - │ ├── statements: ∅ - │ ├── in_loc: (2,10)-(2,12) = "in" - │ └── then_loc: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,8)-(1,12) = "case" - └── end_keyword_loc: (3,8)-(3,11) = "end" diff --git a/test/prism/snapshots/whitequark/pattern_matching_blank_else.txt b/test/prism/snapshots/whitequark/pattern_matching_blank_else.txt deleted file mode 100644 index af14e7b5a6..0000000000 --- a/test/prism/snapshots/whitequark/pattern_matching_blank_else.txt +++ /dev/null @@ -1,37 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,26)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,26)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(1,26)) - ├── flags: newline - ├── predicate: - │ @ IntegerNode (location: (1,5)-(1,6)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── conditions: (length: 1) - │ └── @ InNode (location: (1,8)-(1,15)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ IntegerNode (location: (1,11)-(1,12)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── statements: - │ │ @ StatementsNode (location: (1,14)-(1,15)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (1,14)-(1,15)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 3 - │ ├── in_loc: (1,8)-(1,10) = "in" - │ └── then_loc: ∅ - ├── else_clause: - │ @ ElseNode (location: (1,17)-(1,26)) - │ ├── flags: ∅ - │ ├── else_keyword_loc: (1,17)-(1,21) = "else" - │ ├── statements: ∅ - │ └── end_keyword_loc: (1,23)-(1,26) = "end" - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (1,23)-(1,26) = "end" diff --git a/test/prism/snapshots/whitequark/pattern_matching_else.txt b/test/prism/snapshots/whitequark/pattern_matching_else.txt deleted file mode 100644 index 010f002716..0000000000 --- a/test/prism/snapshots/whitequark/pattern_matching_else.txt +++ /dev/null @@ -1,43 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,29)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,29)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseMatchNode (location: (1,0)-(1,29)) - ├── flags: newline - ├── predicate: - │ @ IntegerNode (location: (1,5)-(1,6)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── conditions: (length: 1) - │ └── @ InNode (location: (1,8)-(1,15)) - │ ├── flags: ∅ - │ ├── pattern: - │ │ @ IntegerNode (location: (1,11)-(1,12)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ ├── statements: - │ │ @ StatementsNode (location: (1,14)-(1,15)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (1,14)-(1,15)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 3 - │ ├── in_loc: (1,8)-(1,10) = "in" - │ └── then_loc: ∅ - ├── else_clause: - │ @ ElseNode (location: (1,17)-(1,29)) - │ ├── flags: ∅ - │ ├── else_keyword_loc: (1,17)-(1,21) = "else" - │ ├── statements: - │ │ @ StatementsNode (location: (1,23)-(1,24)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (1,23)-(1,24)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 4 - │ └── end_keyword_loc: (1,26)-(1,29) = "end" - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (1,26)-(1,29) = "end" diff --git a/test/prism/snapshots/whitequark/pattern_matching_single_line.txt b/test/prism/snapshots/whitequark/pattern_matching_single_line.txt deleted file mode 100644 index f11ec00951..0000000000 --- a/test/prism/snapshots/whitequark/pattern_matching_single_line.txt +++ /dev/null @@ -1,55 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,11)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(3,11)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ MatchRequiredNode (location: (1,0)-(1,8)) - │ ├── flags: newline - │ ├── value: - │ │ @ IntegerNode (location: (1,0)-(1,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (1,5)-(1,8)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (1,6)-(1,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (1,5)-(1,6) = "[" - │ │ └── closing_loc: (1,7)-(1,8) = "]" - │ └── operator_loc: (1,2)-(1,4) = "=>" - ├── @ LocalVariableReadNode (location: (1,10)-(1,11)) - │ ├── flags: newline - │ ├── name: :a - │ └── depth: 0 - ├── @ MatchPredicateNode (location: (3,0)-(3,8)) - │ ├── flags: newline - │ ├── value: - │ │ @ IntegerNode (location: (3,0)-(3,1)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (3,5)-(3,8)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ LocalVariableTargetNode (location: (3,6)-(3,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: (3,5)-(3,6) = "[" - │ │ └── closing_loc: (3,7)-(3,8) = "]" - │ └── operator_loc: (3,2)-(3,4) = "in" - └── @ LocalVariableReadNode (location: (3,10)-(3,11)) - ├── flags: newline - ├── name: :a - └── depth: 0 diff --git a/test/prism/snapshots/whitequark/pattern_matching_single_line_allowed_omission_of_parentheses.txt b/test/prism/snapshots/whitequark/pattern_matching_single_line_allowed_omission_of_parentheses.txt deleted file mode 100644 index 51542e9dd2..0000000000 --- a/test/prism/snapshots/whitequark/pattern_matching_single_line_allowed_omission_of_parentheses.txt +++ /dev/null @@ -1,291 +0,0 @@ -@ ProgramNode (location: (1,0)-(11,34)) -├── flags: ∅ -├── locals: [:a, :b, :value] -└── statements: - @ StatementsNode (location: (1,0)-(11,34)) - ├── flags: ∅ - └── body: (length: 12) - ├── @ MatchRequiredNode (location: (1,0)-(1,14)) - │ ├── flags: newline - │ ├── value: - │ │ @ ArrayNode (location: (1,0)-(1,6)) - │ │ ├── flags: static_literal - │ │ ├── elements: (length: 2) - │ │ │ ├── @ IntegerNode (location: (1,1)-(1,2)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── @ IntegerNode (location: (1,4)-(1,5)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── opening_loc: (1,0)-(1,1) = "[" - │ │ └── closing_loc: (1,5)-(1,6) = "]" - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (1,10)-(1,14)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ LocalVariableTargetNode (location: (1,10)-(1,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ └── depth: 0 - │ │ │ └── @ LocalVariableTargetNode (location: (1,13)-(1,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ └── depth: 0 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (1,7)-(1,9) = "=>" - ├── @ LocalVariableReadNode (location: (1,16)-(1,17)) - │ ├── flags: newline - │ ├── name: :a - │ └── depth: 0 - ├── @ MatchPredicateNode (location: (3,0)-(3,14)) - │ ├── flags: newline - │ ├── value: - │ │ @ ArrayNode (location: (3,0)-(3,6)) - │ │ ├── flags: static_literal - │ │ ├── elements: (length: 2) - │ │ │ ├── @ IntegerNode (location: (3,1)-(3,2)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── @ IntegerNode (location: (3,4)-(3,5)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── opening_loc: (3,0)-(3,1) = "[" - │ │ └── closing_loc: (3,5)-(3,6) = "]" - │ ├── pattern: - │ │ @ ArrayPatternNode (location: (3,10)-(3,14)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── requireds: (length: 2) - │ │ │ ├── @ LocalVariableTargetNode (location: (3,10)-(3,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ └── depth: 0 - │ │ │ └── @ LocalVariableTargetNode (location: (3,13)-(3,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ └── depth: 0 - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (3,7)-(3,9) = "in" - ├── @ LocalVariableReadNode (location: (3,16)-(3,17)) - │ ├── flags: newline - │ ├── name: :a - │ └── depth: 0 - ├── @ MatchRequiredNode (location: (5,0)-(5,12)) - │ ├── flags: newline - │ ├── value: - │ │ @ HashNode (location: (5,0)-(5,6)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (5,0)-(5,1) = "{" - │ │ ├── elements: (length: 1) - │ │ │ └── @ AssocNode (location: (5,1)-(5,5)) - │ │ │ ├── flags: static_literal - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (5,1)-(5,3)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (5,1)-(5,2) = "a" - │ │ │ │ ├── closing_loc: (5,2)-(5,3) = ":" - │ │ │ │ └── unescaped: "a" - │ │ │ ├── value: - │ │ │ │ @ IntegerNode (location: (5,4)-(5,5)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── operator_loc: ∅ - │ │ └── closing_loc: (5,5)-(5,6) = "}" - │ ├── pattern: - │ │ @ HashPatternNode (location: (5,10)-(5,12)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── elements: (length: 1) - │ │ │ └── @ AssocNode (location: (5,10)-(5,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (5,10)-(5,12)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (5,10)-(5,11) = "a" - │ │ │ │ ├── closing_loc: (5,11)-(5,12) = ":" - │ │ │ │ └── unescaped: "a" - │ │ │ ├── value: - │ │ │ │ @ ImplicitNode (location: (5,10)-(5,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── value: - │ │ │ │ @ LocalVariableTargetNode (location: (5,10)-(5,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ └── depth: 0 - │ │ │ └── operator_loc: ∅ - │ │ ├── rest: ∅ - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (5,7)-(5,9) = "=>" - ├── @ LocalVariableReadNode (location: (5,14)-(5,15)) - │ ├── flags: newline - │ ├── name: :a - │ └── depth: 0 - ├── @ MatchPredicateNode (location: (7,0)-(7,12)) - │ ├── flags: newline - │ ├── value: - │ │ @ HashNode (location: (7,0)-(7,6)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (7,0)-(7,1) = "{" - │ │ ├── elements: (length: 1) - │ │ │ └── @ AssocNode (location: (7,1)-(7,5)) - │ │ │ ├── flags: static_literal - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (7,1)-(7,3)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (7,1)-(7,2) = "a" - │ │ │ │ ├── closing_loc: (7,2)-(7,3) = ":" - │ │ │ │ └── unescaped: "a" - │ │ │ ├── value: - │ │ │ │ @ IntegerNode (location: (7,4)-(7,5)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── operator_loc: ∅ - │ │ └── closing_loc: (7,5)-(7,6) = "}" - │ ├── pattern: - │ │ @ HashPatternNode (location: (7,10)-(7,12)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── elements: (length: 1) - │ │ │ └── @ AssocNode (location: (7,10)-(7,12)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (7,10)-(7,12)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (7,10)-(7,11) = "a" - │ │ │ │ ├── closing_loc: (7,11)-(7,12) = ":" - │ │ │ │ └── unescaped: "a" - │ │ │ ├── value: - │ │ │ │ @ ImplicitNode (location: (7,10)-(7,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── value: - │ │ │ │ @ LocalVariableTargetNode (location: (7,10)-(7,11)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ └── depth: 0 - │ │ │ └── operator_loc: ∅ - │ │ ├── rest: ∅ - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (7,7)-(7,9) = "in" - ├── @ LocalVariableReadNode (location: (7,14)-(7,15)) - │ ├── flags: newline - │ ├── name: :a - │ └── depth: 0 - ├── @ MatchRequiredNode (location: (9,0)-(9,27)) - │ ├── flags: newline - │ ├── value: - │ │ @ HashNode (location: (9,0)-(9,13)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (9,0)-(9,1) = "{" - │ │ ├── elements: (length: 1) - │ │ │ └── @ AssocNode (location: (9,1)-(9,12)) - │ │ │ ├── flags: static_literal - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (9,1)-(9,5)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (9,1)-(9,4) = "key" - │ │ │ │ ├── closing_loc: (9,4)-(9,5) = ":" - │ │ │ │ └── unescaped: "key" - │ │ │ ├── value: - │ │ │ │ @ SymbolNode (location: (9,6)-(9,12)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (9,6)-(9,7) = ":" - │ │ │ │ ├── value_loc: (9,7)-(9,12) = "value" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "value" - │ │ │ └── operator_loc: ∅ - │ │ └── closing_loc: (9,12)-(9,13) = "}" - │ ├── pattern: - │ │ @ HashPatternNode (location: (9,17)-(9,27)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── elements: (length: 1) - │ │ │ └── @ AssocNode (location: (9,17)-(9,27)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (9,17)-(9,21)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (9,17)-(9,20) = "key" - │ │ │ │ ├── closing_loc: (9,20)-(9,21) = ":" - │ │ │ │ └── unescaped: "key" - │ │ │ ├── value: - │ │ │ │ @ LocalVariableTargetNode (location: (9,22)-(9,27)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :value - │ │ │ │ └── depth: 0 - │ │ │ └── operator_loc: ∅ - │ │ ├── rest: ∅ - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (9,14)-(9,16) = "=>" - ├── @ LocalVariableReadNode (location: (9,29)-(9,34)) - │ ├── flags: newline - │ ├── name: :value - │ └── depth: 0 - ├── @ MatchPredicateNode (location: (11,0)-(11,27)) - │ ├── flags: newline - │ ├── value: - │ │ @ HashNode (location: (11,0)-(11,13)) - │ │ ├── flags: static_literal - │ │ ├── opening_loc: (11,0)-(11,1) = "{" - │ │ ├── elements: (length: 1) - │ │ │ └── @ AssocNode (location: (11,1)-(11,12)) - │ │ │ ├── flags: static_literal - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (11,1)-(11,5)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (11,1)-(11,4) = "key" - │ │ │ │ ├── closing_loc: (11,4)-(11,5) = ":" - │ │ │ │ └── unescaped: "key" - │ │ │ ├── value: - │ │ │ │ @ SymbolNode (location: (11,6)-(11,12)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (11,6)-(11,7) = ":" - │ │ │ │ ├── value_loc: (11,7)-(11,12) = "value" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "value" - │ │ │ └── operator_loc: ∅ - │ │ └── closing_loc: (11,12)-(11,13) = "}" - │ ├── pattern: - │ │ @ HashPatternNode (location: (11,17)-(11,27)) - │ │ ├── flags: ∅ - │ │ ├── constant: ∅ - │ │ ├── elements: (length: 1) - │ │ │ └── @ AssocNode (location: (11,17)-(11,27)) - │ │ │ ├── flags: ∅ - │ │ │ ├── key: - │ │ │ │ @ SymbolNode (location: (11,17)-(11,21)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── value_loc: (11,17)-(11,20) = "key" - │ │ │ │ ├── closing_loc: (11,20)-(11,21) = ":" - │ │ │ │ └── unescaped: "key" - │ │ │ ├── value: - │ │ │ │ @ LocalVariableTargetNode (location: (11,22)-(11,27)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :value - │ │ │ │ └── depth: 0 - │ │ │ └── operator_loc: ∅ - │ │ ├── rest: ∅ - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── operator_loc: (11,14)-(11,16) = "in" - └── @ LocalVariableReadNode (location: (11,29)-(11,34)) - ├── flags: newline - ├── name: :value - └── depth: 0 diff --git a/test/prism/snapshots/whitequark/postexe.txt b/test/prism/snapshots/whitequark/postexe.txt deleted file mode 100644 index f4648b8a98..0000000000 --- a/test/prism/snapshots/whitequark/postexe.txt +++ /dev/null @@ -1,19 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ PostExecutionNode (location: (1,0)-(1,9)) - ├── flags: newline - ├── statements: - │ @ StatementsNode (location: (1,6)-(1,7)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ IntegerNode (location: (1,6)-(1,7)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 1 - ├── keyword_loc: (1,0)-(1,3) = "END" - ├── opening_loc: (1,4)-(1,5) = "{" - └── closing_loc: (1,8)-(1,9) = "}" diff --git a/test/prism/snapshots/whitequark/preexe.txt b/test/prism/snapshots/whitequark/preexe.txt deleted file mode 100644 index f9fe60d07a..0000000000 --- a/test/prism/snapshots/whitequark/preexe.txt +++ /dev/null @@ -1,19 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ PreExecutionNode (location: (1,0)-(1,11)) - ├── flags: newline - ├── statements: - │ @ StatementsNode (location: (1,8)-(1,9)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ IntegerNode (location: (1,8)-(1,9)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 1 - ├── keyword_loc: (1,0)-(1,5) = "BEGIN" - ├── opening_loc: (1,6)-(1,7) = "{" - └── closing_loc: (1,10)-(1,11) = "}" diff --git a/test/prism/snapshots/whitequark/procarg0.txt b/test/prism/snapshots/whitequark/procarg0.txt deleted file mode 100644 index 90e03ce940..0000000000 --- a/test/prism/snapshots/whitequark/procarg0.txt +++ /dev/null @@ -1,87 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,11)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,18)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (1,0)-(1,1) = "m" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (1,2)-(1,18)) - │ ├── flags: ∅ - │ ├── locals: [:foo, :bar] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (1,4)-(1,16)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (1,5)-(1,15)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ MultiTargetNode (location: (1,5)-(1,15)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── lefts: (length: 2) - │ │ │ │ │ ├── @ RequiredParameterNode (location: (1,6)-(1,9)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── name: :foo - │ │ │ │ │ └── @ RequiredParameterNode (location: (1,11)-(1,14)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── name: :bar - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── rights: (length: 0) - │ │ │ │ ├── lparen_loc: (1,5)-(1,6) = "(" - │ │ │ │ └── rparen_loc: (1,14)-(1,15) = ")" - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (1,4)-(1,5) = "|" - │ │ └── closing_loc: (1,15)-(1,16) = "|" - │ ├── body: ∅ - │ ├── opening_loc: (1,2)-(1,3) = "{" - │ └── closing_loc: (1,17)-(1,18) = "}" - └── @ CallNode (location: (3,0)-(3,11)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :m - ├── message_loc: (3,0)-(3,1) = "m" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (3,2)-(3,11)) - ├── flags: ∅ - ├── locals: [:foo] - ├── parameters: - │ @ BlockParametersNode (location: (3,4)-(3,9)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (3,5)-(3,8)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (3,5)-(3,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :foo - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (3,4)-(3,5) = "|" - │ └── closing_loc: (3,8)-(3,9) = "|" - ├── body: ∅ - ├── opening_loc: (3,2)-(3,3) = "{" - └── closing_loc: (3,10)-(3,11) = "}" diff --git a/test/prism/snapshots/whitequark/range_exclusive.txt b/test/prism/snapshots/whitequark/range_exclusive.txt deleted file mode 100644 index 2351c33fbc..0000000000 --- a/test/prism/snapshots/whitequark/range_exclusive.txt +++ /dev/null @@ -1,18 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ RangeNode (location: (1,0)-(1,5)) - ├── flags: newline, static_literal, exclude_end - ├── left: - │ @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── right: - │ @ IntegerNode (location: (1,4)-(1,5)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - └── operator_loc: (1,1)-(1,4) = "..." diff --git a/test/prism/snapshots/whitequark/range_inclusive.txt b/test/prism/snapshots/whitequark/range_inclusive.txt deleted file mode 100644 index 6d703816d6..0000000000 --- a/test/prism/snapshots/whitequark/range_inclusive.txt +++ /dev/null @@ -1,18 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ RangeNode (location: (1,0)-(1,4)) - ├── flags: newline, static_literal - ├── left: - │ @ IntegerNode (location: (1,0)-(1,1)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── right: - │ @ IntegerNode (location: (1,3)-(1,4)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - └── operator_loc: (1,1)-(1,3) = ".." diff --git a/test/prism/snapshots/whitequark/rational.txt b/test/prism/snapshots/whitequark/rational.txt deleted file mode 100644 index f35fa5b5e3..0000000000 --- a/test/prism/snapshots/whitequark/rational.txt +++ /dev/null @@ -1,15 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,3)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,3)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ RationalNode (location: (1,0)-(1,5)) - │ ├── flags: newline, static_literal, decimal - │ ├── numerator: 421 - │ └── denominator: 10 - └── @ RationalNode (location: (3,0)-(3,3)) - ├── flags: newline, static_literal, decimal - ├── numerator: 42 - └── denominator: 1 diff --git a/test/prism/snapshots/whitequark/regex_interp.txt b/test/prism/snapshots/whitequark/regex_interp.txt deleted file mode 100644 index e440274cc2..0000000000 --- a/test/prism/snapshots/whitequark/regex_interp.txt +++ /dev/null @@ -1,42 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedRegularExpressionNode (location: (1,0)-(1,14)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,1) = "/" - ├── parts: (length: 3) - │ ├── @ StringNode (location: (1,1)-(1,4)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (1,1)-(1,4) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ ├── @ EmbeddedStatementsNode (location: (1,4)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,4)-(1,6) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,6)-(1,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (1,6)-(1,9)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (1,6)-(1,9) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── closing_loc: (1,9)-(1,10) = "}" - │ └── @ StringNode (location: (1,10)-(1,13)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (1,10)-(1,13) = "baz" - │ ├── closing_loc: ∅ - │ └── unescaped: "baz" - └── closing_loc: (1,13)-(1,14) = "/" diff --git a/test/prism/snapshots/whitequark/regex_plain.txt b/test/prism/snapshots/whitequark/regex_plain.txt deleted file mode 100644 index 44dde97c79..0000000000 --- a/test/prism/snapshots/whitequark/regex_plain.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ RegularExpressionNode (location: (1,0)-(1,10)) - ├── flags: newline, static_literal, ignore_case, multi_line, forced_us_ascii_encoding - ├── opening_loc: (1,0)-(1,1) = "/" - ├── content_loc: (1,1)-(1,7) = "source" - ├── closing_loc: (1,7)-(1,10) = "/im" - └── unescaped: "source" diff --git a/test/prism/snapshots/whitequark/resbody_list.txt b/test/prism/snapshots/whitequark/resbody_list.txt deleted file mode 100644 index 3fa753b434..0000000000 --- a/test/prism/snapshots/whitequark/resbody_list.txt +++ /dev/null @@ -1,52 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,39)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,39)) - ├── flags: ∅ - └── body: (length: 1) - └── @ BeginNode (location: (1,0)-(1,39)) - ├── flags: newline - ├── begin_keyword_loc: (1,0)-(1,5) = "begin" - ├── statements: - │ @ StatementsNode (location: (1,7)-(1,11)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,7)-(1,11)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :meth - │ ├── message_loc: (1,7)-(1,11) = "meth" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── rescue_clause: - │ @ RescueNode (location: (1,13)-(1,34)) - │ ├── flags: ∅ - │ ├── keyword_loc: (1,13)-(1,19) = "rescue" - │ ├── exceptions: (length: 1) - │ │ └── @ ConstantReadNode (location: (1,20)-(1,29)) - │ │ ├── flags: ∅ - │ │ └── name: :Exception - │ ├── operator_loc: ∅ - │ ├── reference: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (1,31)-(1,34)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,31)-(1,34)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,31)-(1,34) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── subsequent: ∅ - ├── else_clause: ∅ - ├── ensure_clause: ∅ - └── end_keyword_loc: (1,36)-(1,39) = "end" diff --git a/test/prism/snapshots/whitequark/resbody_list_mrhs.txt b/test/prism/snapshots/whitequark/resbody_list_mrhs.txt deleted file mode 100644 index d8889d36e8..0000000000 --- a/test/prism/snapshots/whitequark/resbody_list_mrhs.txt +++ /dev/null @@ -1,62 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,44)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,44)) - ├── flags: ∅ - └── body: (length: 1) - └── @ BeginNode (location: (1,0)-(1,44)) - ├── flags: newline - ├── begin_keyword_loc: (1,0)-(1,5) = "begin" - ├── statements: - │ @ StatementsNode (location: (1,7)-(1,11)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,7)-(1,11)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :meth - │ ├── message_loc: (1,7)-(1,11) = "meth" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── rescue_clause: - │ @ RescueNode (location: (1,13)-(1,39)) - │ ├── flags: ∅ - │ ├── keyword_loc: (1,13)-(1,19) = "rescue" - │ ├── exceptions: (length: 2) - │ │ ├── @ ConstantReadNode (location: (1,20)-(1,29)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :Exception - │ │ └── @ CallNode (location: (1,31)-(1,34)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,31)-(1,34) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── operator_loc: ∅ - │ ├── reference: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (1,36)-(1,39)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,36)-(1,39)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,36)-(1,39) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── subsequent: ∅ - ├── else_clause: ∅ - ├── ensure_clause: ∅ - └── end_keyword_loc: (1,41)-(1,44) = "end" diff --git a/test/prism/snapshots/whitequark/resbody_list_var.txt b/test/prism/snapshots/whitequark/resbody_list_var.txt deleted file mode 100644 index 0fe7382834..0000000000 --- a/test/prism/snapshots/whitequark/resbody_list_var.txt +++ /dev/null @@ -1,63 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,39)) -├── flags: ∅ -├── locals: [:ex] -└── statements: - @ StatementsNode (location: (1,0)-(1,39)) - ├── flags: ∅ - └── body: (length: 1) - └── @ BeginNode (location: (1,0)-(1,39)) - ├── flags: newline - ├── begin_keyword_loc: (1,0)-(1,5) = "begin" - ├── statements: - │ @ StatementsNode (location: (1,7)-(1,11)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,7)-(1,11)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :meth - │ ├── message_loc: (1,7)-(1,11) = "meth" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── rescue_clause: - │ @ RescueNode (location: (1,13)-(1,34)) - │ ├── flags: ∅ - │ ├── keyword_loc: (1,13)-(1,19) = "rescue" - │ ├── exceptions: (length: 1) - │ │ └── @ CallNode (location: (1,20)-(1,23)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,20)-(1,23) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── operator_loc: (1,24)-(1,26) = "=>" - │ ├── reference: - │ │ @ LocalVariableTargetNode (location: (1,27)-(1,29)) - │ │ ├── flags: ∅ - │ │ ├── name: :ex - │ │ └── depth: 0 - │ ├── statements: - │ │ @ StatementsNode (location: (1,31)-(1,34)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,31)-(1,34)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,31)-(1,34) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── subsequent: ∅ - ├── else_clause: ∅ - ├── ensure_clause: ∅ - └── end_keyword_loc: (1,36)-(1,39) = "end" diff --git a/test/prism/snapshots/whitequark/resbody_var.txt b/test/prism/snapshots/whitequark/resbody_var.txt deleted file mode 100644 index ce5237a01b..0000000000 --- a/test/prism/snapshots/whitequark/resbody_var.txt +++ /dev/null @@ -1,98 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,35)) -├── flags: ∅ -├── locals: [:ex] -└── statements: - @ StatementsNode (location: (1,0)-(3,35)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ BeginNode (location: (1,0)-(1,36)) - │ ├── flags: newline - │ ├── begin_keyword_loc: (1,0)-(1,5) = "begin" - │ ├── statements: - │ │ @ StatementsNode (location: (1,7)-(1,11)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,7)-(1,11)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :meth - │ │ ├── message_loc: (1,7)-(1,11) = "meth" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (1,13)-(1,31)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (1,13)-(1,19) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: (1,20)-(1,22) = "=>" - │ │ ├── reference: - │ │ │ @ InstanceVariableTargetNode (location: (1,23)-(1,26)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :@ex - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,28)-(1,31)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (1,28)-(1,31)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (1,28)-(1,31) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (1,33)-(1,36) = "end" - └── @ BeginNode (location: (3,0)-(3,35)) - ├── flags: newline - ├── begin_keyword_loc: (3,0)-(3,5) = "begin" - ├── statements: - │ @ StatementsNode (location: (3,7)-(3,11)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (3,7)-(3,11)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :meth - │ ├── message_loc: (3,7)-(3,11) = "meth" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── rescue_clause: - │ @ RescueNode (location: (3,13)-(3,30)) - │ ├── flags: ∅ - │ ├── keyword_loc: (3,13)-(3,19) = "rescue" - │ ├── exceptions: (length: 0) - │ ├── operator_loc: (3,20)-(3,22) = "=>" - │ ├── reference: - │ │ @ LocalVariableTargetNode (location: (3,23)-(3,25)) - │ │ ├── flags: ∅ - │ │ ├── name: :ex - │ │ └── depth: 0 - │ ├── statements: - │ │ @ StatementsNode (location: (3,27)-(3,30)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (3,27)-(3,30)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (3,27)-(3,30) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── subsequent: ∅ - ├── else_clause: ∅ - ├── ensure_clause: ∅ - └── end_keyword_loc: (3,32)-(3,35) = "end" diff --git a/test/prism/snapshots/whitequark/rescue.txt b/test/prism/snapshots/whitequark/rescue.txt deleted file mode 100644 index fa421b902c..0000000000 --- a/test/prism/snapshots/whitequark/rescue.txt +++ /dev/null @@ -1,49 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,29)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,29)) - ├── flags: ∅ - └── body: (length: 1) - └── @ BeginNode (location: (1,0)-(1,29)) - ├── flags: newline - ├── begin_keyword_loc: (1,0)-(1,5) = "begin" - ├── statements: - │ @ StatementsNode (location: (1,7)-(1,11)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,7)-(1,11)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :meth - │ ├── message_loc: (1,7)-(1,11) = "meth" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── rescue_clause: - │ @ RescueNode (location: (1,13)-(1,24)) - │ ├── flags: ∅ - │ ├── keyword_loc: (1,13)-(1,19) = "rescue" - │ ├── exceptions: (length: 0) - │ ├── operator_loc: ∅ - │ ├── reference: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (1,21)-(1,24)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,21)-(1,24)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,21)-(1,24) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── subsequent: ∅ - ├── else_clause: ∅ - ├── ensure_clause: ∅ - └── end_keyword_loc: (1,26)-(1,29) = "end" diff --git a/test/prism/snapshots/whitequark/rescue_else.txt b/test/prism/snapshots/whitequark/rescue_else.txt deleted file mode 100644 index 31a4deab9f..0000000000 --- a/test/prism/snapshots/whitequark/rescue_else.txt +++ /dev/null @@ -1,67 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,40)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,40)) - ├── flags: ∅ - └── body: (length: 1) - └── @ BeginNode (location: (1,0)-(1,40)) - ├── flags: newline - ├── begin_keyword_loc: (1,0)-(1,5) = "begin" - ├── statements: - │ @ StatementsNode (location: (1,7)-(1,11)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,7)-(1,11)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :meth - │ ├── message_loc: (1,7)-(1,11) = "meth" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── rescue_clause: - │ @ RescueNode (location: (1,13)-(1,24)) - │ ├── flags: ∅ - │ ├── keyword_loc: (1,13)-(1,19) = "rescue" - │ ├── exceptions: (length: 0) - │ ├── operator_loc: ∅ - │ ├── reference: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (1,21)-(1,24)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,21)-(1,24)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,21)-(1,24) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── subsequent: ∅ - ├── else_clause: - │ @ ElseNode (location: (1,26)-(1,40)) - │ ├── flags: ∅ - │ ├── else_keyword_loc: (1,26)-(1,30) = "else" - │ ├── statements: - │ │ @ StatementsNode (location: (1,32)-(1,35)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,32)-(1,35)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,32)-(1,35) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── end_keyword_loc: (1,37)-(1,40) = "end" - ├── ensure_clause: ∅ - └── end_keyword_loc: (1,37)-(1,40) = "end" diff --git a/test/prism/snapshots/whitequark/rescue_else_ensure.txt b/test/prism/snapshots/whitequark/rescue_else_ensure.txt deleted file mode 100644 index a300a253b8..0000000000 --- a/test/prism/snapshots/whitequark/rescue_else_ensure.txt +++ /dev/null @@ -1,85 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,51)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,51)) - ├── flags: ∅ - └── body: (length: 1) - └── @ BeginNode (location: (1,0)-(1,51)) - ├── flags: newline - ├── begin_keyword_loc: (1,0)-(1,5) = "begin" - ├── statements: - │ @ StatementsNode (location: (1,7)-(1,11)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,7)-(1,11)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :meth - │ ├── message_loc: (1,7)-(1,11) = "meth" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── rescue_clause: - │ @ RescueNode (location: (1,13)-(1,24)) - │ ├── flags: ∅ - │ ├── keyword_loc: (1,13)-(1,19) = "rescue" - │ ├── exceptions: (length: 0) - │ ├── operator_loc: ∅ - │ ├── reference: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (1,21)-(1,24)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,21)-(1,24)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (1,21)-(1,24) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── subsequent: ∅ - ├── else_clause: - │ @ ElseNode (location: (1,26)-(1,42)) - │ ├── flags: ∅ - │ ├── else_keyword_loc: (1,26)-(1,30) = "else" - │ ├── statements: - │ │ @ StatementsNode (location: (1,31)-(1,34)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,31)-(1,34)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,31)-(1,34) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── end_keyword_loc: (1,36)-(1,42) = "ensure" - ├── ensure_clause: - │ @ EnsureNode (location: (1,36)-(1,51)) - │ ├── flags: ∅ - │ ├── ensure_keyword_loc: (1,36)-(1,42) = "ensure" - │ ├── statements: - │ │ @ StatementsNode (location: (1,44)-(1,47)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,44)-(1,47)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,44)-(1,47) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── end_keyword_loc: (1,48)-(1,51) = "end" - └── end_keyword_loc: (1,48)-(1,51) = "end" diff --git a/test/prism/snapshots/whitequark/rescue_ensure.txt b/test/prism/snapshots/whitequark/rescue_ensure.txt deleted file mode 100644 index ac345e440a..0000000000 --- a/test/prism/snapshots/whitequark/rescue_ensure.txt +++ /dev/null @@ -1,67 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,42)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,42)) - ├── flags: ∅ - └── body: (length: 1) - └── @ BeginNode (location: (1,0)-(1,42)) - ├── flags: newline - ├── begin_keyword_loc: (1,0)-(1,5) = "begin" - ├── statements: - │ @ StatementsNode (location: (1,7)-(1,11)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,7)-(1,11)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :meth - │ ├── message_loc: (1,7)-(1,11) = "meth" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── rescue_clause: - │ @ RescueNode (location: (1,13)-(1,24)) - │ ├── flags: ∅ - │ ├── keyword_loc: (1,13)-(1,19) = "rescue" - │ ├── exceptions: (length: 0) - │ ├── operator_loc: ∅ - │ ├── reference: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (1,21)-(1,24)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,21)-(1,24)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (1,21)-(1,24) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── subsequent: ∅ - ├── else_clause: ∅ - ├── ensure_clause: - │ @ EnsureNode (location: (1,26)-(1,42)) - │ ├── flags: ∅ - │ ├── ensure_keyword_loc: (1,26)-(1,32) = "ensure" - │ ├── statements: - │ │ @ StatementsNode (location: (1,34)-(1,37)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,34)-(1,37)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,34)-(1,37) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── end_keyword_loc: (1,39)-(1,42) = "end" - └── end_keyword_loc: (1,39)-(1,42) = "end" diff --git a/test/prism/snapshots/whitequark/rescue_in_lambda_block.txt b/test/prism/snapshots/whitequark/rescue_in_lambda_block.txt deleted file mode 100644 index 790202d61f..0000000000 --- a/test/prism/snapshots/whitequark/rescue_in_lambda_block.txt +++ /dev/null @@ -1,31 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,17)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,17)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LambdaNode (location: (1,0)-(1,17)) - ├── flags: newline - ├── locals: [] - ├── operator_loc: (1,0)-(1,2) = "->" - ├── opening_loc: (1,3)-(1,5) = "do" - ├── closing_loc: (1,14)-(1,17) = "end" - ├── parameters: ∅ - └── body: - @ BeginNode (location: (1,3)-(1,17)) - ├── flags: ∅ - ├── begin_keyword_loc: ∅ - ├── statements: ∅ - ├── rescue_clause: - │ @ RescueNode (location: (1,6)-(1,12)) - │ ├── flags: ∅ - │ ├── keyword_loc: (1,6)-(1,12) = "rescue" - │ ├── exceptions: (length: 0) - │ ├── operator_loc: ∅ - │ ├── reference: ∅ - │ ├── statements: ∅ - │ └── subsequent: ∅ - ├── else_clause: ∅ - ├── ensure_clause: ∅ - └── end_keyword_loc: (1,14)-(1,17) = "end" diff --git a/test/prism/snapshots/whitequark/rescue_mod.txt b/test/prism/snapshots/whitequark/rescue_mod.txt deleted file mode 100644 index abed85c1b9..0000000000 --- a/test/prism/snapshots/whitequark/rescue_mod.txt +++ /dev/null @@ -1,32 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,15)) - ├── flags: ∅ - └── body: (length: 1) - └── @ RescueModifierNode (location: (1,0)-(1,15)) - ├── flags: newline - ├── expression: - │ @ CallNode (location: (1,0)-(1,4)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :meth - │ ├── message_loc: (1,0)-(1,4) = "meth" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── keyword_loc: (1,5)-(1,11) = "rescue" - └── rescue_expression: - @ CallNode (location: (1,12)-(1,15)) - ├── flags: variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :bar - ├── message_loc: (1,12)-(1,15) = "bar" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/rescue_mod_asgn.txt b/test/prism/snapshots/whitequark/rescue_mod_asgn.txt deleted file mode 100644 index a2fa161e4e..0000000000 --- a/test/prism/snapshots/whitequark/rescue_mod_asgn.txt +++ /dev/null @@ -1,39 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,21)) -├── flags: ∅ -├── locals: [:foo] -└── statements: - @ StatementsNode (location: (1,0)-(1,21)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableWriteNode (location: (1,0)-(1,21)) - ├── flags: newline - ├── name: :foo - ├── depth: 0 - ├── name_loc: (1,0)-(1,3) = "foo" - ├── value: - │ @ RescueModifierNode (location: (1,6)-(1,21)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (1,6)-(1,10)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :meth - │ │ ├── message_loc: (1,6)-(1,10) = "meth" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── keyword_loc: (1,11)-(1,17) = "rescue" - │ └── rescue_expression: - │ @ CallNode (location: (1,18)-(1,21)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (1,18)-(1,21) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── operator_loc: (1,4)-(1,5) = "=" diff --git a/test/prism/snapshots/whitequark/rescue_mod_masgn.txt b/test/prism/snapshots/whitequark/rescue_mod_masgn.txt deleted file mode 100644 index b5ca37b129..0000000000 --- a/test/prism/snapshots/whitequark/rescue_mod_masgn.txt +++ /dev/null @@ -1,50 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,29)) -├── flags: ∅ -├── locals: [:foo, :bar] -└── statements: - @ StatementsNode (location: (1,0)-(1,29)) - ├── flags: ∅ - └── body: (length: 1) - └── @ MultiWriteNode (location: (1,0)-(1,29)) - ├── flags: newline - ├── lefts: (length: 2) - │ ├── @ LocalVariableTargetNode (location: (1,0)-(1,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ └── @ LocalVariableTargetNode (location: (1,5)-(1,8)) - │ ├── flags: ∅ - │ ├── name: :bar - │ └── depth: 0 - ├── rest: ∅ - ├── rights: (length: 0) - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── operator_loc: (1,9)-(1,10) = "=" - └── value: - @ RescueModifierNode (location: (1,11)-(1,29)) - ├── flags: ∅ - ├── expression: - │ @ CallNode (location: (1,11)-(1,15)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :meth - │ ├── message_loc: (1,11)-(1,15) = "meth" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── keyword_loc: (1,16)-(1,22) = "rescue" - └── rescue_expression: - @ ArrayNode (location: (1,23)-(1,29)) - ├── flags: static_literal - ├── elements: (length: 2) - │ ├── @ IntegerNode (location: (1,24)-(1,25)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── @ IntegerNode (location: (1,27)-(1,28)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── opening_loc: (1,23)-(1,24) = "[" - └── closing_loc: (1,28)-(1,29) = "]" diff --git a/test/prism/snapshots/whitequark/rescue_mod_op_assign.txt b/test/prism/snapshots/whitequark/rescue_mod_op_assign.txt deleted file mode 100644 index 22101d7c98..0000000000 --- a/test/prism/snapshots/whitequark/rescue_mod_op_assign.txt +++ /dev/null @@ -1,40 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,22)) -├── flags: ∅ -├── locals: [:foo] -└── statements: - @ StatementsNode (location: (1,0)-(1,22)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableOperatorWriteNode (location: (1,0)-(1,22)) - ├── flags: newline - ├── name_loc: (1,0)-(1,3) = "foo" - ├── binary_operator_loc: (1,4)-(1,6) = "+=" - ├── value: - │ @ RescueModifierNode (location: (1,7)-(1,22)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (1,7)-(1,11)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :meth - │ │ ├── message_loc: (1,7)-(1,11) = "meth" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── keyword_loc: (1,12)-(1,18) = "rescue" - │ └── rescue_expression: - │ @ CallNode (location: (1,19)-(1,22)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (1,19)-(1,22) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── name: :foo - ├── binary_operator: :+ - └── depth: 0 diff --git a/test/prism/snapshots/whitequark/rescue_without_begin_end.txt b/test/prism/snapshots/whitequark/rescue_without_begin_end.txt deleted file mode 100644 index 318ecc79e6..0000000000 --- a/test/prism/snapshots/whitequark/rescue_without_begin_end.txt +++ /dev/null @@ -1,66 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,30)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,30)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,30)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :meth - ├── message_loc: (1,0)-(1,4) = "meth" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,5)-(1,30)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: - │ @ BeginNode (location: (1,5)-(1,30)) - │ ├── flags: ∅ - │ ├── begin_keyword_loc: ∅ - │ ├── statements: - │ │ @ StatementsNode (location: (1,9)-(1,12)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,9)-(1,12)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,9)-(1,12) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rescue_clause: - │ │ @ RescueNode (location: (1,14)-(1,25)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (1,14)-(1,20) = "rescue" - │ │ ├── exceptions: (length: 0) - │ │ ├── operator_loc: ∅ - │ │ ├── reference: ∅ - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,22)-(1,25)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (1,22)-(1,25)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (1,22)-(1,25) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── subsequent: ∅ - │ ├── else_clause: ∅ - │ ├── ensure_clause: ∅ - │ └── end_keyword_loc: (1,27)-(1,30) = "end" - ├── opening_loc: (1,5)-(1,7) = "do" - └── closing_loc: (1,27)-(1,30) = "end" diff --git a/test/prism/snapshots/whitequark/restarg_named.txt b/test/prism/snapshots/whitequark/restarg_named.txt deleted file mode 100644 index 0bb6b9d2ba..0000000000 --- a/test/prism/snapshots/whitequark/restarg_named.txt +++ /dev/null @@ -1,35 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,16)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,16)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,16)) - ├── flags: newline - ├── name: :f - ├── name_loc: (1,4)-(1,5) = "f" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,10)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: - │ │ @ RestParameterNode (location: (1,6)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ ├── name_loc: (1,7)-(1,10) = "foo" - │ │ └── operator_loc: (1,6)-(1,7) = "*" - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: ∅ - ├── locals: [:foo] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,5)-(1,6) = "(" - ├── rparen_loc: (1,10)-(1,11) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,13)-(1,16) = "end" diff --git a/test/prism/snapshots/whitequark/restarg_unnamed.txt b/test/prism/snapshots/whitequark/restarg_unnamed.txt deleted file mode 100644 index 0fc102a82c..0000000000 --- a/test/prism/snapshots/whitequark/restarg_unnamed.txt +++ /dev/null @@ -1,35 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,13)) - ├── flags: newline - ├── name: :f - ├── name_loc: (1,4)-(1,5) = "f" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,6)-(1,7)) - │ ├── flags: ∅ - │ ├── requireds: (length: 0) - │ ├── optionals: (length: 0) - │ ├── rest: - │ │ @ RestParameterNode (location: (1,6)-(1,7)) - │ │ ├── flags: ∅ - │ │ ├── name: ∅ - │ │ ├── name_loc: ∅ - │ │ └── operator_loc: (1,6)-(1,7) = "*" - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: ∅ - ├── locals: [] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,5)-(1,6) = "(" - ├── rparen_loc: (1,7)-(1,8) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,10)-(1,13) = "end" diff --git a/test/prism/snapshots/whitequark/return.txt b/test/prism/snapshots/whitequark/return.txt deleted file mode 100644 index 1e059ba63c..0000000000 --- a/test/prism/snapshots/whitequark/return.txt +++ /dev/null @@ -1,65 +0,0 @@ -@ ProgramNode (location: (1,0)-(7,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(7,11)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ ReturnNode (location: (1,0)-(1,6)) - │ ├── flags: newline - │ ├── keyword_loc: (1,0)-(1,6) = "return" - │ └── arguments: ∅ - ├── @ ReturnNode (location: (3,0)-(3,10)) - │ ├── flags: newline - │ ├── keyword_loc: (3,0)-(3,6) = "return" - │ └── arguments: - │ @ ArgumentsNode (location: (3,7)-(3,10)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (3,7)-(3,10)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (3,7)-(3,10) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ ReturnNode (location: (5,0)-(5,8)) - │ ├── flags: newline - │ ├── keyword_loc: (5,0)-(5,6) = "return" - │ └── arguments: - │ @ ArgumentsNode (location: (5,6)-(5,8)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ ParenthesesNode (location: (5,6)-(5,8)) - │ ├── flags: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (5,6)-(5,7) = "(" - │ └── closing_loc: (5,7)-(5,8) = ")" - └── @ ReturnNode (location: (7,0)-(7,11)) - ├── flags: newline - ├── keyword_loc: (7,0)-(7,6) = "return" - └── arguments: - @ ArgumentsNode (location: (7,6)-(7,11)) - ├── flags: ∅ - └── arguments: (length: 1) - └── @ ParenthesesNode (location: (7,6)-(7,11)) - ├── flags: ∅ - ├── body: - │ @ StatementsNode (location: (7,7)-(7,10)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (7,7)-(7,10)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (7,7)-(7,10) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── opening_loc: (7,6)-(7,7) = "(" - └── closing_loc: (7,10)-(7,11) = ")" diff --git a/test/prism/snapshots/whitequark/return_block.txt b/test/prism/snapshots/whitequark/return_block.txt deleted file mode 100644 index 90161b6750..0000000000 --- a/test/prism/snapshots/whitequark/return_block.txt +++ /dev/null @@ -1,44 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,21)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,21)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ReturnNode (location: (1,0)-(1,21)) - ├── flags: newline - ├── keyword_loc: (1,0)-(1,6) = "return" - └── arguments: - @ ArgumentsNode (location: (1,7)-(1,21)) - ├── flags: ∅ - └── arguments: (length: 1) - └── @ CallNode (location: (1,7)-(1,21)) - ├── flags: ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :fun - ├── message_loc: (1,7)-(1,10) = "fun" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,11)-(1,14)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (1,11)-(1,14)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,11)-(1,14) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,15)-(1,21)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: ∅ - ├── opening_loc: (1,15)-(1,17) = "do" - └── closing_loc: (1,18)-(1,21) = "end" diff --git a/test/prism/snapshots/whitequark/ruby_bug_10279.txt b/test/prism/snapshots/whitequark/ruby_bug_10279.txt deleted file mode 100644 index 0076c954a5..0000000000 --- a/test/prism/snapshots/whitequark/ruby_bug_10279.txt +++ /dev/null @@ -1,39 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,24)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,24)) - ├── flags: ∅ - └── body: (length: 1) - └── @ HashNode (location: (1,0)-(1,24)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,1) = "{" - ├── elements: (length: 1) - │ └── @ AssocNode (location: (1,1)-(1,23)) - │ ├── flags: ∅ - │ ├── key: - │ │ @ SymbolNode (location: (1,1)-(1,3)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (1,1)-(1,2) = "a" - │ │ ├── closing_loc: (1,2)-(1,3) = ":" - │ │ └── unescaped: "a" - │ ├── value: - │ │ @ IfNode (location: (1,4)-(1,23)) - │ │ ├── flags: newline - │ │ ├── if_keyword_loc: (1,4)-(1,6) = "if" - │ │ ├── predicate: - │ │ │ @ TrueNode (location: (1,7)-(1,11)) - │ │ │ └── flags: static_literal - │ │ ├── then_keyword_loc: (1,12)-(1,16) = "then" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,17)-(1,19)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ IntegerNode (location: (1,17)-(1,19)) - │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ └── value: 42 - │ │ ├── subsequent: ∅ - │ │ └── end_keyword_loc: (1,20)-(1,23) = "end" - │ └── operator_loc: ∅ - └── closing_loc: (1,23)-(1,24) = "}" diff --git a/test/prism/snapshots/whitequark/ruby_bug_10653.txt b/test/prism/snapshots/whitequark/ruby_bug_10653.txt deleted file mode 100644 index 3a562d8b1f..0000000000 --- a/test/prism/snapshots/whitequark/ruby_bug_10653.txt +++ /dev/null @@ -1,199 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,31)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,31)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ IfNode (location: (1,0)-(1,33)) - │ ├── flags: newline - │ ├── if_keyword_loc: ∅ - │ ├── predicate: - │ │ @ FalseNode (location: (1,0)-(1,5)) - │ │ └── flags: static_literal - │ ├── then_keyword_loc: (1,6)-(1,7) = "?" - │ ├── statements: - │ │ @ StatementsNode (location: (1,8)-(1,20)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,8)-(1,20)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :raise - │ │ ├── message_loc: (1,8)-(1,13) = "raise" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (1,14)-(1,20)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (1,14)-(1,16) = "do" - │ │ └── closing_loc: (1,17)-(1,20) = "end" - │ ├── subsequent: - │ │ @ ElseNode (location: (1,21)-(1,33)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (1,21)-(1,22) = ":" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,23)-(1,33)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (1,23)-(1,33)) - │ │ │ ├── flags: newline, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :tap - │ │ │ ├── message_loc: (1,23)-(1,26) = "tap" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (1,27)-(1,33)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: ∅ - │ │ │ ├── opening_loc: (1,27)-(1,29) = "do" - │ │ │ └── closing_loc: (1,30)-(1,33) = "end" - │ │ └── end_keyword_loc: ∅ - │ └── end_keyword_loc: ∅ - ├── @ IfNode (location: (3,0)-(3,25)) - │ ├── flags: newline - │ ├── if_keyword_loc: ∅ - │ ├── predicate: - │ │ @ FalseNode (location: (3,0)-(3,5)) - │ │ └── flags: static_literal - │ ├── then_keyword_loc: (3,6)-(3,7) = "?" - │ ├── statements: - │ │ @ StatementsNode (location: (3,8)-(3,16)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (3,8)-(3,16)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :raise - │ │ ├── message_loc: (3,8)-(3,13) = "raise" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (3,14)-(3,16)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (3,14)-(3,15) = "{" - │ │ └── closing_loc: (3,15)-(3,16) = "}" - │ ├── subsequent: - │ │ @ ElseNode (location: (3,17)-(3,25)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (3,17)-(3,18) = ":" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (3,19)-(3,25)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (3,19)-(3,25)) - │ │ │ ├── flags: newline, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :tap - │ │ │ ├── message_loc: (3,19)-(3,22) = "tap" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (3,23)-(3,25)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: ∅ - │ │ │ ├── opening_loc: (3,23)-(3,24) = "{" - │ │ │ └── closing_loc: (3,24)-(3,25) = "}" - │ │ └── end_keyword_loc: ∅ - │ └── end_keyword_loc: ∅ - └── @ IfNode (location: (5,0)-(5,31)) - ├── flags: newline - ├── if_keyword_loc: ∅ - ├── predicate: - │ @ TrueNode (location: (5,0)-(5,4)) - │ └── flags: static_literal - ├── then_keyword_loc: (5,5)-(5,6) = "?" - ├── statements: - │ @ StatementsNode (location: (5,7)-(5,27)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (5,7)-(5,27)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ IntegerNode (location: (5,7)-(5,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── call_operator_loc: (5,8)-(5,9) = "." - │ ├── name: :tap - │ ├── message_loc: (5,9)-(5,12) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (5,13)-(5,27)) - │ ├── flags: ∅ - │ ├── locals: [:n] - │ ├── parameters: - │ │ @ BlockParametersNode (location: (5,16)-(5,19)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (5,17)-(5,18)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (5,17)-(5,18)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :n - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (5,16)-(5,17) = "|" - │ │ └── closing_loc: (5,18)-(5,19) = "|" - │ ├── body: - │ │ @ StatementsNode (location: (5,20)-(5,23)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (5,20)-(5,23)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :p - │ │ ├── message_loc: (5,20)-(5,21) = "p" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (5,22)-(5,23)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ LocalVariableReadNode (location: (5,22)-(5,23)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :n - │ │ │ └── depth: 0 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (5,13)-(5,15) = "do" - │ └── closing_loc: (5,24)-(5,27) = "end" - ├── subsequent: - │ @ ElseNode (location: (5,28)-(5,31)) - │ ├── flags: ∅ - │ ├── else_keyword_loc: (5,28)-(5,29) = ":" - │ ├── statements: - │ │ @ StatementsNode (location: (5,30)-(5,31)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (5,30)-(5,31)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 0 - │ └── end_keyword_loc: ∅ - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/whitequark/ruby_bug_11107.txt b/test/prism/snapshots/whitequark/ruby_bug_11107.txt deleted file mode 100644 index 4ed332f903..0000000000 --- a/test/prism/snapshots/whitequark/ruby_bug_11107.txt +++ /dev/null @@ -1,54 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,24)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,24)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,24)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :p - ├── message_loc: (1,0)-(1,1) = "p" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,24)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ LambdaNode (location: (1,2)-(1,24)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── operator_loc: (1,2)-(1,4) = "->" - │ ├── opening_loc: (1,7)-(1,9) = "do" - │ ├── closing_loc: (1,21)-(1,24) = "end" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (1,4)-(1,6)) - │ │ ├── flags: ∅ - │ │ ├── parameters: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (1,4)-(1,5) = "(" - │ │ └── closing_loc: (1,5)-(1,6) = ")" - │ └── body: - │ @ StatementsNode (location: (1,10)-(1,20)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,10)-(1,20)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,10)-(1,11) = "a" - │ ├── opening_loc: (1,11)-(1,12) = "(" - │ ├── arguments: ∅ - │ ├── closing_loc: (1,12)-(1,13) = ")" - │ └── block: - │ @ BlockNode (location: (1,14)-(1,20)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (1,14)-(1,16) = "do" - │ └── closing_loc: (1,17)-(1,20) = "end" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/ruby_bug_11380.txt b/test/prism/snapshots/whitequark/ruby_bug_11380.txt deleted file mode 100644 index 5893034b65..0000000000 --- a/test/prism/snapshots/whitequark/ruby_bug_11380.txt +++ /dev/null @@ -1,61 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,28)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,28)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,28)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :p - ├── message_loc: (1,0)-(1,1) = "p" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,21)) - │ ├── flags: contains_keywords - │ └── arguments: (length: 2) - │ ├── @ LambdaNode (location: (1,2)-(1,15)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── operator_loc: (1,2)-(1,4) = "->" - │ │ ├── opening_loc: (1,5)-(1,6) = "{" - │ │ ├── closing_loc: (1,14)-(1,15) = "}" - │ │ ├── parameters: ∅ - │ │ └── body: - │ │ @ StatementsNode (location: (1,7)-(1,13)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ SymbolNode (location: (1,7)-(1,13)) - │ │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,7)-(1,8) = ":" - │ │ ├── value_loc: (1,8)-(1,13) = "hello" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "hello" - │ └── @ KeywordHashNode (location: (1,17)-(1,21)) - │ ├── flags: symbol_keys - │ └── elements: (length: 1) - │ └── @ AssocNode (location: (1,17)-(1,21)) - │ ├── flags: static_literal - │ ├── key: - │ │ @ SymbolNode (location: (1,17)-(1,19)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (1,17)-(1,18) = "a" - │ │ ├── closing_loc: (1,18)-(1,19) = ":" - │ │ └── unescaped: "a" - │ ├── value: - │ │ @ IntegerNode (location: (1,20)-(1,21)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,22)-(1,28)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: ∅ - ├── opening_loc: (1,22)-(1,24) = "do" - └── closing_loc: (1,25)-(1,28) = "end" diff --git a/test/prism/snapshots/whitequark/ruby_bug_11873.txt b/test/prism/snapshots/whitequark/ruby_bug_11873.txt deleted file mode 100644 index a92b217482..0000000000 --- a/test/prism/snapshots/whitequark/ruby_bug_11873.txt +++ /dev/null @@ -1,793 +0,0 @@ -@ ProgramNode (location: (1,0)-(23,22)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(23,22)) - ├── flags: ∅ - └── body: (length: 12) - ├── @ CallNode (location: (1,0)-(1,20)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,2)-(1,13)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (1,2)-(1,8)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (1,2)-(1,3) = "b" - │ │ │ ├── opening_loc: (1,3)-(1,4) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (1,4)-(1,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (1,4)-(1,7)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (1,4)-(1,5) = "c" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (1,6)-(1,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (1,6)-(1,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (1,6)-(1,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: (1,7)-(1,8) = ")" - │ │ │ └── block: ∅ - │ │ └── @ StringNode (location: (1,10)-(1,13)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,10)-(1,11) = "\"" - │ │ ├── content_loc: (1,11)-(1,12) = "x" - │ │ ├── closing_loc: (1,12)-(1,13) = "\"" - │ │ └── unescaped: "x" - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (1,14)-(1,20)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (1,14)-(1,16) = "do" - │ └── closing_loc: (1,17)-(1,20) = "end" - ├── @ CallNode (location: (3,0)-(3,20)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (3,0)-(3,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (3,2)-(3,13)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (3,2)-(3,8)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (3,2)-(3,3) = "b" - │ │ │ ├── opening_loc: (3,3)-(3,4) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (3,4)-(3,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (3,4)-(3,7)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (3,4)-(3,5) = "c" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (3,6)-(3,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (3,6)-(3,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (3,6)-(3,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: (3,7)-(3,8) = ")" - │ │ │ └── block: ∅ - │ │ └── @ RegularExpressionNode (location: (3,10)-(3,13)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (3,10)-(3,11) = "/" - │ │ ├── content_loc: (3,11)-(3,12) = "x" - │ │ ├── closing_loc: (3,12)-(3,13) = "/" - │ │ └── unescaped: "x" - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (3,14)-(3,20)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (3,14)-(3,16) = "do" - │ └── closing_loc: (3,17)-(3,20) = "end" - ├── @ CallNode (location: (5,0)-(5,21)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (5,0)-(5,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (5,2)-(5,14)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (5,2)-(5,8)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (5,2)-(5,3) = "b" - │ │ │ ├── opening_loc: (5,3)-(5,4) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (5,4)-(5,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (5,4)-(5,7)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (5,4)-(5,5) = "c" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (5,6)-(5,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (5,6)-(5,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (5,6)-(5,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: (5,7)-(5,8) = ")" - │ │ │ └── block: ∅ - │ │ └── @ RegularExpressionNode (location: (5,10)-(5,14)) - │ │ ├── flags: static_literal, multi_line, forced_us_ascii_encoding - │ │ ├── opening_loc: (5,10)-(5,11) = "/" - │ │ ├── content_loc: (5,11)-(5,12) = "x" - │ │ ├── closing_loc: (5,12)-(5,14) = "/m" - │ │ └── unescaped: "x" - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (5,15)-(5,21)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (5,15)-(5,17) = "do" - │ └── closing_loc: (5,18)-(5,21) = "end" - ├── @ CallNode (location: (7,0)-(7,21)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (7,0)-(7,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (7,2)-(7,14)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (7,2)-(7,9)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (7,2)-(7,3) = "b" - │ │ │ ├── opening_loc: (7,3)-(7,4) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (7,4)-(7,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (7,4)-(7,8)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (7,4)-(7,5) = "c" - │ │ │ │ ├── opening_loc: (7,5)-(7,6) = "(" - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (7,6)-(7,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (7,6)-(7,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (7,6)-(7,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: (7,7)-(7,8) = ")" - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: (7,8)-(7,9) = ")" - │ │ │ └── block: ∅ - │ │ └── @ StringNode (location: (7,11)-(7,14)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (7,11)-(7,12) = "\"" - │ │ ├── content_loc: (7,12)-(7,13) = "x" - │ │ ├── closing_loc: (7,13)-(7,14) = "\"" - │ │ └── unescaped: "x" - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (7,15)-(7,21)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (7,15)-(7,17) = "do" - │ └── closing_loc: (7,18)-(7,21) = "end" - ├── @ CallNode (location: (9,0)-(9,21)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (9,0)-(9,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (9,2)-(9,14)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (9,2)-(9,9)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (9,2)-(9,3) = "b" - │ │ │ ├── opening_loc: (9,3)-(9,4) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (9,4)-(9,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (9,4)-(9,8)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (9,4)-(9,5) = "c" - │ │ │ │ ├── opening_loc: (9,5)-(9,6) = "(" - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (9,6)-(9,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (9,6)-(9,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (9,6)-(9,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: (9,7)-(9,8) = ")" - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: (9,8)-(9,9) = ")" - │ │ │ └── block: ∅ - │ │ └── @ RegularExpressionNode (location: (9,11)-(9,14)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (9,11)-(9,12) = "/" - │ │ ├── content_loc: (9,12)-(9,13) = "x" - │ │ ├── closing_loc: (9,13)-(9,14) = "/" - │ │ └── unescaped: "x" - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (9,15)-(9,21)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (9,15)-(9,17) = "do" - │ └── closing_loc: (9,18)-(9,21) = "end" - ├── @ CallNode (location: (11,0)-(11,22)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (11,0)-(11,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (11,2)-(11,15)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (11,2)-(11,9)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (11,2)-(11,3) = "b" - │ │ │ ├── opening_loc: (11,3)-(11,4) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (11,4)-(11,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (11,4)-(11,8)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (11,4)-(11,5) = "c" - │ │ │ │ ├── opening_loc: (11,5)-(11,6) = "(" - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (11,6)-(11,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (11,6)-(11,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (11,6)-(11,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: (11,7)-(11,8) = ")" - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: (11,8)-(11,9) = ")" - │ │ │ └── block: ∅ - │ │ └── @ RegularExpressionNode (location: (11,11)-(11,15)) - │ │ ├── flags: static_literal, multi_line, forced_us_ascii_encoding - │ │ ├── opening_loc: (11,11)-(11,12) = "/" - │ │ ├── content_loc: (11,12)-(11,13) = "x" - │ │ ├── closing_loc: (11,13)-(11,15) = "/m" - │ │ └── unescaped: "x" - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (11,16)-(11,22)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (11,16)-(11,18) = "do" - │ └── closing_loc: (11,19)-(11,22) = "end" - ├── @ CallNode (location: (13,0)-(13,20)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (13,0)-(13,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (13,2)-(13,13)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (13,2)-(13,8)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (13,2)-(13,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (13,3)-(13,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (13,4)-(13,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (13,4)-(13,7)) - │ │ │ │ ├── flags: newline, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (13,4)-(13,5) = "c" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (13,6)-(13,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (13,6)-(13,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (13,6)-(13,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── opening_loc: (13,3)-(13,4) = "{" - │ │ │ └── closing_loc: (13,7)-(13,8) = "}" - │ │ └── @ StringNode (location: (13,10)-(13,13)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (13,10)-(13,11) = "\"" - │ │ ├── content_loc: (13,11)-(13,12) = "x" - │ │ ├── closing_loc: (13,12)-(13,13) = "\"" - │ │ └── unescaped: "x" - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (13,14)-(13,20)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (13,14)-(13,16) = "do" - │ └── closing_loc: (13,17)-(13,20) = "end" - ├── @ CallNode (location: (15,0)-(15,20)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (15,0)-(15,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (15,2)-(15,13)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (15,2)-(15,8)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (15,2)-(15,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (15,3)-(15,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (15,4)-(15,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (15,4)-(15,7)) - │ │ │ │ ├── flags: newline, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (15,4)-(15,5) = "c" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (15,6)-(15,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (15,6)-(15,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (15,6)-(15,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── opening_loc: (15,3)-(15,4) = "{" - │ │ │ └── closing_loc: (15,7)-(15,8) = "}" - │ │ └── @ RegularExpressionNode (location: (15,10)-(15,13)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (15,10)-(15,11) = "/" - │ │ ├── content_loc: (15,11)-(15,12) = "x" - │ │ ├── closing_loc: (15,12)-(15,13) = "/" - │ │ └── unescaped: "x" - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (15,14)-(15,20)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (15,14)-(15,16) = "do" - │ └── closing_loc: (15,17)-(15,20) = "end" - ├── @ CallNode (location: (17,0)-(17,21)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (17,0)-(17,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (17,2)-(17,14)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (17,2)-(17,8)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (17,2)-(17,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (17,3)-(17,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (17,4)-(17,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (17,4)-(17,7)) - │ │ │ │ ├── flags: newline, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (17,4)-(17,5) = "c" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (17,6)-(17,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (17,6)-(17,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (17,6)-(17,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── opening_loc: (17,3)-(17,4) = "{" - │ │ │ └── closing_loc: (17,7)-(17,8) = "}" - │ │ └── @ RegularExpressionNode (location: (17,10)-(17,14)) - │ │ ├── flags: static_literal, multi_line, forced_us_ascii_encoding - │ │ ├── opening_loc: (17,10)-(17,11) = "/" - │ │ ├── content_loc: (17,11)-(17,12) = "x" - │ │ ├── closing_loc: (17,12)-(17,14) = "/m" - │ │ └── unescaped: "x" - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (17,15)-(17,21)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (17,15)-(17,17) = "do" - │ └── closing_loc: (17,18)-(17,21) = "end" - ├── @ CallNode (location: (19,0)-(19,21)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (19,0)-(19,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (19,2)-(19,14)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (19,2)-(19,9)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (19,2)-(19,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (19,3)-(19,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (19,4)-(19,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (19,4)-(19,8)) - │ │ │ │ ├── flags: newline, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (19,4)-(19,5) = "c" - │ │ │ │ ├── opening_loc: (19,5)-(19,6) = "(" - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (19,6)-(19,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (19,6)-(19,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (19,6)-(19,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: (19,7)-(19,8) = ")" - │ │ │ │ └── block: ∅ - │ │ │ ├── opening_loc: (19,3)-(19,4) = "{" - │ │ │ └── closing_loc: (19,8)-(19,9) = "}" - │ │ └── @ StringNode (location: (19,11)-(19,14)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (19,11)-(19,12) = "\"" - │ │ ├── content_loc: (19,12)-(19,13) = "x" - │ │ ├── closing_loc: (19,13)-(19,14) = "\"" - │ │ └── unescaped: "x" - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (19,15)-(19,21)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (19,15)-(19,17) = "do" - │ └── closing_loc: (19,18)-(19,21) = "end" - ├── @ CallNode (location: (21,0)-(21,21)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (21,0)-(21,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (21,2)-(21,14)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (21,2)-(21,9)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (21,2)-(21,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (21,3)-(21,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (21,4)-(21,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (21,4)-(21,8)) - │ │ │ │ ├── flags: newline, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (21,4)-(21,5) = "c" - │ │ │ │ ├── opening_loc: (21,5)-(21,6) = "(" - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (21,6)-(21,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (21,6)-(21,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (21,6)-(21,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: (21,7)-(21,8) = ")" - │ │ │ │ └── block: ∅ - │ │ │ ├── opening_loc: (21,3)-(21,4) = "{" - │ │ │ └── closing_loc: (21,8)-(21,9) = "}" - │ │ └── @ RegularExpressionNode (location: (21,11)-(21,14)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (21,11)-(21,12) = "/" - │ │ ├── content_loc: (21,12)-(21,13) = "x" - │ │ ├── closing_loc: (21,13)-(21,14) = "/" - │ │ └── unescaped: "x" - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (21,15)-(21,21)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (21,15)-(21,17) = "do" - │ └── closing_loc: (21,18)-(21,21) = "end" - └── @ CallNode (location: (23,0)-(23,22)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (23,0)-(23,1) = "a" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (23,2)-(23,15)) - │ ├── flags: ∅ - │ └── arguments: (length: 2) - │ ├── @ CallNode (location: (23,2)-(23,9)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (23,2)-(23,3) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (23,3)-(23,9)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (23,4)-(23,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (23,4)-(23,8)) - │ │ │ ├── flags: newline, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :c - │ │ │ ├── message_loc: (23,4)-(23,5) = "c" - │ │ │ ├── opening_loc: (23,5)-(23,6) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (23,6)-(23,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (23,6)-(23,7)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :d - │ │ │ │ ├── message_loc: (23,6)-(23,7) = "d" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: (23,7)-(23,8) = ")" - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (23,3)-(23,4) = "{" - │ │ └── closing_loc: (23,8)-(23,9) = "}" - │ └── @ RegularExpressionNode (location: (23,11)-(23,15)) - │ ├── flags: static_literal, multi_line, forced_us_ascii_encoding - │ ├── opening_loc: (23,11)-(23,12) = "/" - │ ├── content_loc: (23,12)-(23,13) = "x" - │ ├── closing_loc: (23,13)-(23,15) = "/m" - │ └── unescaped: "x" - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (23,16)-(23,22)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: ∅ - ├── opening_loc: (23,16)-(23,18) = "do" - └── closing_loc: (23,19)-(23,22) = "end" diff --git a/test/prism/snapshots/whitequark/ruby_bug_11873_a.txt b/test/prism/snapshots/whitequark/ruby_bug_11873_a.txt deleted file mode 100644 index 6897357de8..0000000000 --- a/test/prism/snapshots/whitequark/ruby_bug_11873_a.txt +++ /dev/null @@ -1,1285 +0,0 @@ -@ ProgramNode (location: (1,0)-(39,20)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(39,20)) - ├── flags: ∅ - └── body: (length: 20) - ├── @ CallNode (location: (1,0)-(1,18)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,2)-(1,11)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (1,2)-(1,8)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (1,2)-(1,3) = "b" - │ │ │ ├── opening_loc: (1,3)-(1,4) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (1,4)-(1,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (1,4)-(1,7)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (1,4)-(1,5) = "c" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (1,6)-(1,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (1,6)-(1,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (1,6)-(1,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: (1,7)-(1,8) = ")" - │ │ │ └── block: ∅ - │ │ └── @ IntegerNode (location: (1,10)-(1,11)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (1,12)-(1,18)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (1,12)-(1,14) = "do" - │ └── closing_loc: (1,15)-(1,18) = "end" - ├── @ CallNode (location: (3,0)-(3,20)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (3,0)-(3,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (3,2)-(3,13)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (3,2)-(3,8)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (3,2)-(3,3) = "b" - │ │ │ ├── opening_loc: (3,3)-(3,4) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (3,4)-(3,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (3,4)-(3,7)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (3,4)-(3,5) = "c" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (3,6)-(3,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (3,6)-(3,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (3,6)-(3,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: (3,7)-(3,8) = ")" - │ │ │ └── block: ∅ - │ │ └── @ FloatNode (location: (3,10)-(3,13)) - │ │ ├── flags: static_literal - │ │ └── value: 1.0 - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (3,14)-(3,20)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (3,14)-(3,16) = "do" - │ └── closing_loc: (3,17)-(3,20) = "end" - ├── @ CallNode (location: (5,0)-(5,21)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (5,0)-(5,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (5,2)-(5,14)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (5,2)-(5,8)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (5,2)-(5,3) = "b" - │ │ │ ├── opening_loc: (5,3)-(5,4) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (5,4)-(5,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (5,4)-(5,7)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (5,4)-(5,5) = "c" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (5,6)-(5,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (5,6)-(5,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (5,6)-(5,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: (5,7)-(5,8) = ")" - │ │ │ └── block: ∅ - │ │ └── @ ImaginaryNode (location: (5,10)-(5,14)) - │ │ ├── flags: static_literal - │ │ └── numeric: - │ │ @ FloatNode (location: (5,10)-(5,13)) - │ │ ├── flags: static_literal - │ │ └── value: 1.0 - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (5,15)-(5,21)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (5,15)-(5,17) = "do" - │ └── closing_loc: (5,18)-(5,21) = "end" - ├── @ CallNode (location: (7,0)-(7,21)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (7,0)-(7,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (7,2)-(7,14)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (7,2)-(7,8)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (7,2)-(7,3) = "b" - │ │ │ ├── opening_loc: (7,3)-(7,4) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (7,4)-(7,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (7,4)-(7,7)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (7,4)-(7,5) = "c" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (7,6)-(7,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (7,6)-(7,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (7,6)-(7,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: (7,7)-(7,8) = ")" - │ │ │ └── block: ∅ - │ │ └── @ RationalNode (location: (7,10)-(7,14)) - │ │ ├── flags: static_literal, decimal - │ │ ├── numerator: 1 - │ │ └── denominator: 1 - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (7,15)-(7,21)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (7,15)-(7,17) = "do" - │ └── closing_loc: (7,18)-(7,21) = "end" - ├── @ CallNode (location: (9,0)-(9,19)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (9,0)-(9,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (9,2)-(9,12)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (9,2)-(9,8)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (9,2)-(9,3) = "b" - │ │ │ ├── opening_loc: (9,3)-(9,4) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (9,4)-(9,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (9,4)-(9,7)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (9,4)-(9,5) = "c" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (9,6)-(9,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (9,6)-(9,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (9,6)-(9,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: (9,7)-(9,8) = ")" - │ │ │ └── block: ∅ - │ │ └── @ SymbolNode (location: (9,10)-(9,12)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (9,10)-(9,11) = ":" - │ │ ├── value_loc: (9,11)-(9,12) = "e" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "e" - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (9,13)-(9,19)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (9,13)-(9,15) = "do" - │ └── closing_loc: (9,16)-(9,19) = "end" - ├── @ CallNode (location: (11,0)-(11,19)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (11,0)-(11,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (11,2)-(11,12)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (11,2)-(11,9)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (11,2)-(11,3) = "b" - │ │ │ ├── opening_loc: (11,3)-(11,4) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (11,4)-(11,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (11,4)-(11,8)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (11,4)-(11,5) = "c" - │ │ │ │ ├── opening_loc: (11,5)-(11,6) = "(" - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (11,6)-(11,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (11,6)-(11,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (11,6)-(11,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: (11,7)-(11,8) = ")" - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: (11,8)-(11,9) = ")" - │ │ │ └── block: ∅ - │ │ └── @ IntegerNode (location: (11,11)-(11,12)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (11,13)-(11,19)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (11,13)-(11,15) = "do" - │ └── closing_loc: (11,16)-(11,19) = "end" - ├── @ CallNode (location: (13,0)-(13,21)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (13,0)-(13,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (13,2)-(13,14)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (13,2)-(13,9)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (13,2)-(13,3) = "b" - │ │ │ ├── opening_loc: (13,3)-(13,4) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (13,4)-(13,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (13,4)-(13,8)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (13,4)-(13,5) = "c" - │ │ │ │ ├── opening_loc: (13,5)-(13,6) = "(" - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (13,6)-(13,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (13,6)-(13,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (13,6)-(13,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: (13,7)-(13,8) = ")" - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: (13,8)-(13,9) = ")" - │ │ │ └── block: ∅ - │ │ └── @ FloatNode (location: (13,11)-(13,14)) - │ │ ├── flags: static_literal - │ │ └── value: 1.0 - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (13,15)-(13,21)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (13,15)-(13,17) = "do" - │ └── closing_loc: (13,18)-(13,21) = "end" - ├── @ CallNode (location: (15,0)-(15,22)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (15,0)-(15,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (15,2)-(15,15)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (15,2)-(15,9)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (15,2)-(15,3) = "b" - │ │ │ ├── opening_loc: (15,3)-(15,4) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (15,4)-(15,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (15,4)-(15,8)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (15,4)-(15,5) = "c" - │ │ │ │ ├── opening_loc: (15,5)-(15,6) = "(" - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (15,6)-(15,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (15,6)-(15,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (15,6)-(15,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: (15,7)-(15,8) = ")" - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: (15,8)-(15,9) = ")" - │ │ │ └── block: ∅ - │ │ └── @ ImaginaryNode (location: (15,11)-(15,15)) - │ │ ├── flags: static_literal - │ │ └── numeric: - │ │ @ FloatNode (location: (15,11)-(15,14)) - │ │ ├── flags: static_literal - │ │ └── value: 1.0 - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (15,16)-(15,22)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (15,16)-(15,18) = "do" - │ └── closing_loc: (15,19)-(15,22) = "end" - ├── @ CallNode (location: (17,0)-(17,22)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (17,0)-(17,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (17,2)-(17,15)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (17,2)-(17,9)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (17,2)-(17,3) = "b" - │ │ │ ├── opening_loc: (17,3)-(17,4) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (17,4)-(17,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (17,4)-(17,8)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (17,4)-(17,5) = "c" - │ │ │ │ ├── opening_loc: (17,5)-(17,6) = "(" - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (17,6)-(17,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (17,6)-(17,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (17,6)-(17,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: (17,7)-(17,8) = ")" - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: (17,8)-(17,9) = ")" - │ │ │ └── block: ∅ - │ │ └── @ RationalNode (location: (17,11)-(17,15)) - │ │ ├── flags: static_literal, decimal - │ │ ├── numerator: 1 - │ │ └── denominator: 1 - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (17,16)-(17,22)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (17,16)-(17,18) = "do" - │ └── closing_loc: (17,19)-(17,22) = "end" - ├── @ CallNode (location: (19,0)-(19,20)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (19,0)-(19,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (19,2)-(19,13)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (19,2)-(19,9)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (19,2)-(19,3) = "b" - │ │ │ ├── opening_loc: (19,3)-(19,4) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (19,4)-(19,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (19,4)-(19,8)) - │ │ │ │ ├── flags: ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (19,4)-(19,5) = "c" - │ │ │ │ ├── opening_loc: (19,5)-(19,6) = "(" - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (19,6)-(19,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (19,6)-(19,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (19,6)-(19,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: (19,7)-(19,8) = ")" - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: (19,8)-(19,9) = ")" - │ │ │ └── block: ∅ - │ │ └── @ SymbolNode (location: (19,11)-(19,13)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (19,11)-(19,12) = ":" - │ │ ├── value_loc: (19,12)-(19,13) = "e" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "e" - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (19,14)-(19,20)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (19,14)-(19,16) = "do" - │ └── closing_loc: (19,17)-(19,20) = "end" - ├── @ CallNode (location: (21,0)-(21,18)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (21,0)-(21,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (21,2)-(21,11)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (21,2)-(21,8)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (21,2)-(21,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (21,3)-(21,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (21,4)-(21,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (21,4)-(21,7)) - │ │ │ │ ├── flags: newline, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (21,4)-(21,5) = "c" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (21,6)-(21,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (21,6)-(21,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (21,6)-(21,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── opening_loc: (21,3)-(21,4) = "{" - │ │ │ └── closing_loc: (21,7)-(21,8) = "}" - │ │ └── @ IntegerNode (location: (21,10)-(21,11)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (21,12)-(21,18)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (21,12)-(21,14) = "do" - │ └── closing_loc: (21,15)-(21,18) = "end" - ├── @ CallNode (location: (23,0)-(23,20)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (23,0)-(23,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (23,2)-(23,13)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (23,2)-(23,8)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (23,2)-(23,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (23,3)-(23,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (23,4)-(23,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (23,4)-(23,7)) - │ │ │ │ ├── flags: newline, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (23,4)-(23,5) = "c" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (23,6)-(23,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (23,6)-(23,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (23,6)-(23,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── opening_loc: (23,3)-(23,4) = "{" - │ │ │ └── closing_loc: (23,7)-(23,8) = "}" - │ │ └── @ FloatNode (location: (23,10)-(23,13)) - │ │ ├── flags: static_literal - │ │ └── value: 1.0 - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (23,14)-(23,20)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (23,14)-(23,16) = "do" - │ └── closing_loc: (23,17)-(23,20) = "end" - ├── @ CallNode (location: (25,0)-(25,21)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (25,0)-(25,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (25,2)-(25,14)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (25,2)-(25,8)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (25,2)-(25,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (25,3)-(25,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (25,4)-(25,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (25,4)-(25,7)) - │ │ │ │ ├── flags: newline, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (25,4)-(25,5) = "c" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (25,6)-(25,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (25,6)-(25,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (25,6)-(25,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── opening_loc: (25,3)-(25,4) = "{" - │ │ │ └── closing_loc: (25,7)-(25,8) = "}" - │ │ └── @ ImaginaryNode (location: (25,10)-(25,14)) - │ │ ├── flags: static_literal - │ │ └── numeric: - │ │ @ FloatNode (location: (25,10)-(25,13)) - │ │ ├── flags: static_literal - │ │ └── value: 1.0 - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (25,15)-(25,21)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (25,15)-(25,17) = "do" - │ └── closing_loc: (25,18)-(25,21) = "end" - ├── @ CallNode (location: (27,0)-(27,21)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (27,0)-(27,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (27,2)-(27,14)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (27,2)-(27,8)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (27,2)-(27,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (27,3)-(27,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (27,4)-(27,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (27,4)-(27,7)) - │ │ │ │ ├── flags: newline, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (27,4)-(27,5) = "c" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (27,6)-(27,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (27,6)-(27,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (27,6)-(27,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── opening_loc: (27,3)-(27,4) = "{" - │ │ │ └── closing_loc: (27,7)-(27,8) = "}" - │ │ └── @ RationalNode (location: (27,10)-(27,14)) - │ │ ├── flags: static_literal, decimal - │ │ ├── numerator: 1 - │ │ └── denominator: 1 - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (27,15)-(27,21)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (27,15)-(27,17) = "do" - │ └── closing_loc: (27,18)-(27,21) = "end" - ├── @ CallNode (location: (29,0)-(29,19)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (29,0)-(29,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (29,2)-(29,12)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (29,2)-(29,8)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (29,2)-(29,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (29,3)-(29,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (29,4)-(29,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (29,4)-(29,7)) - │ │ │ │ ├── flags: newline, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (29,4)-(29,5) = "c" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (29,6)-(29,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (29,6)-(29,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (29,6)-(29,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── opening_loc: (29,3)-(29,4) = "{" - │ │ │ └── closing_loc: (29,7)-(29,8) = "}" - │ │ └── @ SymbolNode (location: (29,10)-(29,12)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (29,10)-(29,11) = ":" - │ │ ├── value_loc: (29,11)-(29,12) = "e" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "e" - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (29,13)-(29,19)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (29,13)-(29,15) = "do" - │ └── closing_loc: (29,16)-(29,19) = "end" - ├── @ CallNode (location: (31,0)-(31,19)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (31,0)-(31,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (31,2)-(31,12)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (31,2)-(31,9)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (31,2)-(31,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (31,3)-(31,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (31,4)-(31,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (31,4)-(31,8)) - │ │ │ │ ├── flags: newline, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (31,4)-(31,5) = "c" - │ │ │ │ ├── opening_loc: (31,5)-(31,6) = "(" - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (31,6)-(31,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (31,6)-(31,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (31,6)-(31,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: (31,7)-(31,8) = ")" - │ │ │ │ └── block: ∅ - │ │ │ ├── opening_loc: (31,3)-(31,4) = "{" - │ │ │ └── closing_loc: (31,8)-(31,9) = "}" - │ │ └── @ IntegerNode (location: (31,11)-(31,12)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (31,13)-(31,19)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (31,13)-(31,15) = "do" - │ └── closing_loc: (31,16)-(31,19) = "end" - ├── @ CallNode (location: (33,0)-(33,21)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (33,0)-(33,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (33,2)-(33,14)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (33,2)-(33,9)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (33,2)-(33,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (33,3)-(33,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (33,4)-(33,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (33,4)-(33,8)) - │ │ │ │ ├── flags: newline, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (33,4)-(33,5) = "c" - │ │ │ │ ├── opening_loc: (33,5)-(33,6) = "(" - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (33,6)-(33,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (33,6)-(33,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (33,6)-(33,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: (33,7)-(33,8) = ")" - │ │ │ │ └── block: ∅ - │ │ │ ├── opening_loc: (33,3)-(33,4) = "{" - │ │ │ └── closing_loc: (33,8)-(33,9) = "}" - │ │ └── @ FloatNode (location: (33,11)-(33,14)) - │ │ ├── flags: static_literal - │ │ └── value: 1.0 - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (33,15)-(33,21)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (33,15)-(33,17) = "do" - │ └── closing_loc: (33,18)-(33,21) = "end" - ├── @ CallNode (location: (35,0)-(35,22)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (35,0)-(35,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (35,2)-(35,15)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (35,2)-(35,9)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (35,2)-(35,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (35,3)-(35,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (35,4)-(35,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (35,4)-(35,8)) - │ │ │ │ ├── flags: newline, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (35,4)-(35,5) = "c" - │ │ │ │ ├── opening_loc: (35,5)-(35,6) = "(" - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (35,6)-(35,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (35,6)-(35,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (35,6)-(35,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: (35,7)-(35,8) = ")" - │ │ │ │ └── block: ∅ - │ │ │ ├── opening_loc: (35,3)-(35,4) = "{" - │ │ │ └── closing_loc: (35,8)-(35,9) = "}" - │ │ └── @ ImaginaryNode (location: (35,11)-(35,15)) - │ │ ├── flags: static_literal - │ │ └── numeric: - │ │ @ FloatNode (location: (35,11)-(35,14)) - │ │ ├── flags: static_literal - │ │ └── value: 1.0 - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (35,16)-(35,22)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (35,16)-(35,18) = "do" - │ └── closing_loc: (35,19)-(35,22) = "end" - ├── @ CallNode (location: (37,0)-(37,22)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (37,0)-(37,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (37,2)-(37,15)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ CallNode (location: (37,2)-(37,9)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :b - │ │ │ ├── message_loc: (37,2)-(37,3) = "b" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: - │ │ │ @ BlockNode (location: (37,3)-(37,9)) - │ │ │ ├── flags: ∅ - │ │ │ ├── locals: [] - │ │ │ ├── parameters: ∅ - │ │ │ ├── body: - │ │ │ │ @ StatementsNode (location: (37,4)-(37,8)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (37,4)-(37,8)) - │ │ │ │ ├── flags: newline, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :c - │ │ │ │ ├── message_loc: (37,4)-(37,5) = "c" - │ │ │ │ ├── opening_loc: (37,5)-(37,6) = "(" - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (37,6)-(37,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (37,6)-(37,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :d - │ │ │ │ │ ├── message_loc: (37,6)-(37,7) = "d" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: (37,7)-(37,8) = ")" - │ │ │ │ └── block: ∅ - │ │ │ ├── opening_loc: (37,3)-(37,4) = "{" - │ │ │ └── closing_loc: (37,8)-(37,9) = "}" - │ │ └── @ RationalNode (location: (37,11)-(37,15)) - │ │ ├── flags: static_literal, decimal - │ │ ├── numerator: 1 - │ │ └── denominator: 1 - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (37,16)-(37,22)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (37,16)-(37,18) = "do" - │ └── closing_loc: (37,19)-(37,22) = "end" - └── @ CallNode (location: (39,0)-(39,20)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :a - ├── message_loc: (39,0)-(39,1) = "a" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (39,2)-(39,13)) - │ ├── flags: ∅ - │ └── arguments: (length: 2) - │ ├── @ CallNode (location: (39,2)-(39,9)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :b - │ │ ├── message_loc: (39,2)-(39,3) = "b" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (39,3)-(39,9)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (39,4)-(39,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (39,4)-(39,8)) - │ │ │ ├── flags: newline, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :c - │ │ │ ├── message_loc: (39,4)-(39,5) = "c" - │ │ │ ├── opening_loc: (39,5)-(39,6) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (39,6)-(39,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (39,6)-(39,7)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :d - │ │ │ │ ├── message_loc: (39,6)-(39,7) = "d" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: (39,7)-(39,8) = ")" - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (39,3)-(39,4) = "{" - │ │ └── closing_loc: (39,8)-(39,9) = "}" - │ └── @ SymbolNode (location: (39,11)-(39,13)) - │ ├── flags: static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (39,11)-(39,12) = ":" - │ ├── value_loc: (39,12)-(39,13) = "e" - │ ├── closing_loc: ∅ - │ └── unescaped: "e" - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (39,14)-(39,20)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: ∅ - ├── opening_loc: (39,14)-(39,16) = "do" - └── closing_loc: (39,17)-(39,20) = "end" diff --git a/test/prism/snapshots/whitequark/ruby_bug_11873_b.txt b/test/prism/snapshots/whitequark/ruby_bug_11873_b.txt deleted file mode 100644 index 263f4f8dd3..0000000000 --- a/test/prism/snapshots/whitequark/ruby_bug_11873_b.txt +++ /dev/null @@ -1,103 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,25)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,25)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,25)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :p - ├── message_loc: (1,0)-(1,1) = "p" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,18)) - │ ├── flags: ∅ - │ └── arguments: (length: 2) - │ ├── @ CallNode (location: (1,2)-(1,13)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :p - │ │ ├── message_loc: (1,2)-(1,3) = "p" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (1,3)-(1,13)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (1,4)-(1,12)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 2) - │ │ │ ├── @ CallNode (location: (1,4)-(1,8)) - │ │ │ │ ├── flags: newline, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :p - │ │ │ │ ├── message_loc: (1,4)-(1,5) = "p" - │ │ │ │ ├── opening_loc: (1,5)-(1,6) = "(" - │ │ │ │ ├── arguments: - │ │ │ │ │ @ ArgumentsNode (location: (1,6)-(1,7)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── arguments: (length: 1) - │ │ │ │ │ └── @ CallNode (location: (1,6)-(1,7)) - │ │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ │ ├── receiver: ∅ - │ │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ │ ├── name: :p - │ │ │ │ │ ├── message_loc: (1,6)-(1,7) = "p" - │ │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ │ ├── arguments: ∅ - │ │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ │ └── block: ∅ - │ │ │ │ ├── closing_loc: (1,7)-(1,8) = ")" - │ │ │ │ └── block: ∅ - │ │ │ └── @ CallNode (location: (1,9)-(1,12)) - │ │ │ ├── flags: newline, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :p - │ │ │ ├── message_loc: (1,9)-(1,10) = "p" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (1,11)-(1,12)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (1,11)-(1,12)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :p - │ │ │ │ ├── message_loc: (1,11)-(1,12) = "p" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── opening_loc: (1,3)-(1,4) = "{" - │ │ └── closing_loc: (1,12)-(1,13) = "}" - │ └── @ CallNode (location: (1,15)-(1,18)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :tap - │ ├── message_loc: (1,15)-(1,18) = "tap" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,19)-(1,25)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: ∅ - ├── opening_loc: (1,19)-(1,21) = "do" - └── closing_loc: (1,22)-(1,25) = "end" diff --git a/test/prism/snapshots/whitequark/ruby_bug_11989.txt b/test/prism/snapshots/whitequark/ruby_bug_11989.txt deleted file mode 100644 index 96bafab7e9..0000000000 --- a/test/prism/snapshots/whitequark/ruby_bug_11989.txt +++ /dev/null @@ -1,26 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,8)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :p - ├── message_loc: (1,0)-(1,1) = "p" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,8)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ StringNode (location: (1,2)-(1,8)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,2)-(1,8) = "<<~\"E\"" - │ ├── content_loc: (2,0)-(3,0) = " x\\n y\n" - │ ├── closing_loc: (3,0)-(4,0) = "E\n" - │ └── unescaped: "x\n y\n" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/ruby_bug_11990.txt b/test/prism/snapshots/whitequark/ruby_bug_11990.txt deleted file mode 100644 index 095381d130..0000000000 --- a/test/prism/snapshots/whitequark/ruby_bug_11990.txt +++ /dev/null @@ -1,37 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,12)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :p - ├── message_loc: (1,0)-(1,1) = "p" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,12)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ InterpolatedStringNode (location: (1,2)-(1,12)) - │ ├── flags: static_literal - │ ├── opening_loc: ∅ - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (1,2)-(1,6)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: (1,2)-(1,6) = "<<~E" - │ │ │ ├── content_loc: (2,0)-(3,0) = " x\n" - │ │ │ ├── closing_loc: (3,0)-(4,0) = "E\n" - │ │ │ └── unescaped: "x\n" - │ │ └── @ StringNode (location: (1,7)-(1,12)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: (1,7)-(1,8) = "\"" - │ │ ├── content_loc: (1,8)-(1,11) = " y" - │ │ ├── closing_loc: (1,11)-(1,12) = "\"" - │ │ └── unescaped: " y" - │ └── closing_loc: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/ruby_bug_12073.txt b/test/prism/snapshots/whitequark/ruby_bug_12073.txt deleted file mode 100644 index 0b20229de9..0000000000 --- a/test/prism/snapshots/whitequark/ruby_bug_12073.txt +++ /dev/null @@ -1,104 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,34)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(3,34)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ LocalVariableWriteNode (location: (1,0)-(1,5)) - │ ├── flags: newline - │ ├── name: :a - │ ├── depth: 0 - │ ├── name_loc: (1,0)-(1,1) = "a" - │ ├── value: - │ │ @ IntegerNode (location: (1,4)-(1,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (1,2)-(1,3) = "=" - ├── @ CallNode (location: (1,7)-(1,13)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,7)-(1,8) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,9)-(1,13)) - │ │ ├── flags: contains_keywords - │ │ └── arguments: (length: 1) - │ │ └── @ KeywordHashNode (location: (1,9)-(1,13)) - │ │ ├── flags: symbol_keys - │ │ └── elements: (length: 1) - │ │ └── @ AssocNode (location: (1,9)-(1,13)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (1,9)-(1,11)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (1,9)-(1,10) = "b" - │ │ │ ├── closing_loc: (1,10)-(1,11) = ":" - │ │ │ └── unescaped: "b" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (1,12)-(1,13)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── operator_loc: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ DefNode (location: (3,0)-(3,34)) - ├── flags: newline - ├── name: :foo - ├── name_loc: (3,4)-(3,7) = "foo" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (3,8)-(3,13)) - │ ├── flags: ∅ - │ ├── requireds: (length: 1) - │ │ └── @ RequiredParameterNode (location: (3,8)-(3,13)) - │ │ ├── flags: ∅ - │ │ └── name: :raise - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: ∅ - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (3,15)-(3,29)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (3,15)-(3,29)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :raise - │ ├── message_loc: (3,15)-(3,20) = "raise" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (3,21)-(3,29)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 2) - │ │ ├── @ ConstantPathNode (location: (3,21)-(3,25)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parent: - │ │ │ │ @ ConstantReadNode (location: (3,21)-(3,22)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :A - │ │ │ ├── name: :B - │ │ │ ├── delimiter_loc: (3,22)-(3,24) = "::" - │ │ │ └── name_loc: (3,24)-(3,25) = "B" - │ │ └── @ StringNode (location: (3,27)-(3,29)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (3,27)-(3,28) = "'" - │ │ ├── content_loc: (3,28)-(3,28) = "" - │ │ ├── closing_loc: (3,28)-(3,29) = "'" - │ │ └── unescaped: "" - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── locals: [:raise] - ├── def_keyword_loc: (3,0)-(3,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (3,31)-(3,34) = "end" diff --git a/test/prism/snapshots/whitequark/ruby_bug_12402.txt b/test/prism/snapshots/whitequark/ruby_bug_12402.txt deleted file mode 100644 index 6f915342c0..0000000000 --- a/test/prism/snapshots/whitequark/ruby_bug_12402.txt +++ /dev/null @@ -1,613 +0,0 @@ -@ ProgramNode (location: (1,0)-(27,31)) -├── flags: ∅ -├── locals: [:foo] -└── statements: - @ StatementsNode (location: (1,0)-(27,31)) - ├── flags: ∅ - └── body: (length: 14) - ├── @ LocalVariableOperatorWriteNode (location: (1,0)-(1,27)) - │ ├── flags: newline - │ ├── name_loc: (1,0)-(1,3) = "foo" - │ ├── binary_operator_loc: (1,4)-(1,6) = "+=" - │ ├── value: - │ │ @ RescueModifierNode (location: (1,7)-(1,27)) - │ │ ├── flags: ∅ - │ │ ├── expression: - │ │ │ @ CallNode (location: (1,7)-(1,16)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :raise - │ │ │ ├── message_loc: (1,7)-(1,12) = "raise" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (1,13)-(1,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (1,13)-(1,16)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (1,13)-(1,16) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── keyword_loc: (1,17)-(1,23) = "rescue" - │ │ └── rescue_expression: - │ │ @ NilNode (location: (1,24)-(1,27)) - │ │ └── flags: static_literal - │ ├── name: :foo - │ ├── binary_operator: :+ - │ └── depth: 0 - ├── @ LocalVariableOperatorWriteNode (location: (3,0)-(3,28)) - │ ├── flags: newline - │ ├── name_loc: (3,0)-(3,3) = "foo" - │ ├── binary_operator_loc: (3,4)-(3,6) = "+=" - │ ├── value: - │ │ @ RescueModifierNode (location: (3,7)-(3,28)) - │ │ ├── flags: ∅ - │ │ ├── expression: - │ │ │ @ CallNode (location: (3,7)-(3,17)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :raise - │ │ │ ├── message_loc: (3,7)-(3,12) = "raise" - │ │ │ ├── opening_loc: (3,12)-(3,13) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (3,13)-(3,16)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (3,13)-(3,16)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (3,13)-(3,16) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: (3,16)-(3,17) = ")" - │ │ │ └── block: ∅ - │ │ ├── keyword_loc: (3,18)-(3,24) = "rescue" - │ │ └── rescue_expression: - │ │ @ NilNode (location: (3,25)-(3,28)) - │ │ └── flags: static_literal - │ ├── name: :foo - │ ├── binary_operator: :+ - │ └── depth: 0 - ├── @ LocalVariableWriteNode (location: (5,0)-(5,26)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── depth: 0 - │ ├── name_loc: (5,0)-(5,3) = "foo" - │ ├── value: - │ │ @ RescueModifierNode (location: (5,6)-(5,26)) - │ │ ├── flags: ∅ - │ │ ├── expression: - │ │ │ @ CallNode (location: (5,6)-(5,15)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :raise - │ │ │ ├── message_loc: (5,6)-(5,11) = "raise" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (5,12)-(5,15)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (5,12)-(5,15)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (5,12)-(5,15) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── keyword_loc: (5,16)-(5,22) = "rescue" - │ │ └── rescue_expression: - │ │ @ NilNode (location: (5,23)-(5,26)) - │ │ └── flags: static_literal - │ └── operator_loc: (5,4)-(5,5) = "=" - ├── @ LocalVariableWriteNode (location: (7,0)-(7,27)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── depth: 0 - │ ├── name_loc: (7,0)-(7,3) = "foo" - │ ├── value: - │ │ @ RescueModifierNode (location: (7,6)-(7,27)) - │ │ ├── flags: ∅ - │ │ ├── expression: - │ │ │ @ CallNode (location: (7,6)-(7,16)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :raise - │ │ │ ├── message_loc: (7,6)-(7,11) = "raise" - │ │ │ ├── opening_loc: (7,11)-(7,12) = "(" - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (7,12)-(7,15)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ CallNode (location: (7,12)-(7,15)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (7,12)-(7,15) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── closing_loc: (7,15)-(7,16) = ")" - │ │ │ └── block: ∅ - │ │ ├── keyword_loc: (7,17)-(7,23) = "rescue" - │ │ └── rescue_expression: - │ │ @ NilNode (location: (7,24)-(7,27)) - │ │ └── flags: static_literal - │ └── operator_loc: (7,4)-(7,5) = "=" - ├── @ CallOperatorWriteNode (location: (9,0)-(9,29)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (9,0)-(9,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── call_operator_loc: (9,3)-(9,4) = "." - │ ├── message_loc: (9,4)-(9,5) = "C" - │ ├── read_name: :C - │ ├── write_name: :C= - │ ├── binary_operator: :+ - │ ├── binary_operator_loc: (9,6)-(9,8) = "+=" - │ └── value: - │ @ RescueModifierNode (location: (9,9)-(9,29)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (9,9)-(9,18)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :raise - │ │ ├── message_loc: (9,9)-(9,14) = "raise" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (9,15)-(9,18)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ CallNode (location: (9,15)-(9,18)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (9,15)-(9,18) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── keyword_loc: (9,19)-(9,25) = "rescue" - │ └── rescue_expression: - │ @ NilNode (location: (9,26)-(9,29)) - │ └── flags: static_literal - ├── @ CallOperatorWriteNode (location: (11,0)-(11,30)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (11,0)-(11,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── call_operator_loc: (11,3)-(11,4) = "." - │ ├── message_loc: (11,4)-(11,5) = "C" - │ ├── read_name: :C - │ ├── write_name: :C= - │ ├── binary_operator: :+ - │ ├── binary_operator_loc: (11,6)-(11,8) = "+=" - │ └── value: - │ @ RescueModifierNode (location: (11,9)-(11,30)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (11,9)-(11,19)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :raise - │ │ ├── message_loc: (11,9)-(11,14) = "raise" - │ │ ├── opening_loc: (11,14)-(11,15) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (11,15)-(11,18)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ CallNode (location: (11,15)-(11,18)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (11,15)-(11,18) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── closing_loc: (11,18)-(11,19) = ")" - │ │ └── block: ∅ - │ ├── keyword_loc: (11,20)-(11,26) = "rescue" - │ └── rescue_expression: - │ @ NilNode (location: (11,27)-(11,30)) - │ └── flags: static_literal - ├── @ CallOperatorWriteNode (location: (13,0)-(13,29)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (13,0)-(13,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── call_operator_loc: (13,3)-(13,4) = "." - │ ├── message_loc: (13,4)-(13,5) = "m" - │ ├── read_name: :m - │ ├── write_name: :m= - │ ├── binary_operator: :+ - │ ├── binary_operator_loc: (13,6)-(13,8) = "+=" - │ └── value: - │ @ RescueModifierNode (location: (13,9)-(13,29)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (13,9)-(13,18)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :raise - │ │ ├── message_loc: (13,9)-(13,14) = "raise" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (13,15)-(13,18)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ CallNode (location: (13,15)-(13,18)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (13,15)-(13,18) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── keyword_loc: (13,19)-(13,25) = "rescue" - │ └── rescue_expression: - │ @ NilNode (location: (13,26)-(13,29)) - │ └── flags: static_literal - ├── @ CallOperatorWriteNode (location: (15,0)-(15,30)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (15,0)-(15,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── call_operator_loc: (15,3)-(15,4) = "." - │ ├── message_loc: (15,4)-(15,5) = "m" - │ ├── read_name: :m - │ ├── write_name: :m= - │ ├── binary_operator: :+ - │ ├── binary_operator_loc: (15,6)-(15,8) = "+=" - │ └── value: - │ @ RescueModifierNode (location: (15,9)-(15,30)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (15,9)-(15,19)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :raise - │ │ ├── message_loc: (15,9)-(15,14) = "raise" - │ │ ├── opening_loc: (15,14)-(15,15) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (15,15)-(15,18)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ CallNode (location: (15,15)-(15,18)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (15,15)-(15,18) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── closing_loc: (15,18)-(15,19) = ")" - │ │ └── block: ∅ - │ ├── keyword_loc: (15,20)-(15,26) = "rescue" - │ └── rescue_expression: - │ @ NilNode (location: (15,27)-(15,30)) - │ └── flags: static_literal - ├── @ ConstantPathOrWriteNode (location: (17,0)-(17,31)) - │ ├── flags: newline - │ ├── target: - │ │ @ ConstantPathNode (location: (17,0)-(17,6)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ LocalVariableReadNode (location: (17,0)-(17,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :foo - │ │ │ └── depth: 0 - │ │ ├── name: :C - │ │ ├── delimiter_loc: (17,3)-(17,5) = "::" - │ │ └── name_loc: (17,5)-(17,6) = "C" - │ ├── operator_loc: (17,7)-(17,10) = "||=" - │ └── value: - │ @ RescueModifierNode (location: (17,11)-(17,31)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (17,11)-(17,20)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :raise - │ │ ├── message_loc: (17,11)-(17,16) = "raise" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (17,17)-(17,20)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ CallNode (location: (17,17)-(17,20)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (17,17)-(17,20) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── keyword_loc: (17,21)-(17,27) = "rescue" - │ └── rescue_expression: - │ @ NilNode (location: (17,28)-(17,31)) - │ └── flags: static_literal - ├── @ ConstantPathOrWriteNode (location: (19,0)-(19,32)) - │ ├── flags: newline - │ ├── target: - │ │ @ ConstantPathNode (location: (19,0)-(19,6)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ LocalVariableReadNode (location: (19,0)-(19,3)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :foo - │ │ │ └── depth: 0 - │ │ ├── name: :C - │ │ ├── delimiter_loc: (19,3)-(19,5) = "::" - │ │ └── name_loc: (19,5)-(19,6) = "C" - │ ├── operator_loc: (19,7)-(19,10) = "||=" - │ └── value: - │ @ RescueModifierNode (location: (19,11)-(19,32)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (19,11)-(19,21)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :raise - │ │ ├── message_loc: (19,11)-(19,16) = "raise" - │ │ ├── opening_loc: (19,16)-(19,17) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (19,17)-(19,20)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ CallNode (location: (19,17)-(19,20)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (19,17)-(19,20) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── closing_loc: (19,20)-(19,21) = ")" - │ │ └── block: ∅ - │ ├── keyword_loc: (19,22)-(19,28) = "rescue" - │ └── rescue_expression: - │ @ NilNode (location: (19,29)-(19,32)) - │ └── flags: static_literal - ├── @ CallOperatorWriteNode (location: (21,0)-(21,30)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (21,0)-(21,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── call_operator_loc: (21,3)-(21,5) = "::" - │ ├── message_loc: (21,5)-(21,6) = "m" - │ ├── read_name: :m - │ ├── write_name: :m= - │ ├── binary_operator: :+ - │ ├── binary_operator_loc: (21,7)-(21,9) = "+=" - │ └── value: - │ @ RescueModifierNode (location: (21,10)-(21,30)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (21,10)-(21,19)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :raise - │ │ ├── message_loc: (21,10)-(21,15) = "raise" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (21,16)-(21,19)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ CallNode (location: (21,16)-(21,19)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (21,16)-(21,19) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── keyword_loc: (21,20)-(21,26) = "rescue" - │ └── rescue_expression: - │ @ NilNode (location: (21,27)-(21,30)) - │ └── flags: static_literal - ├── @ CallOperatorWriteNode (location: (23,0)-(23,31)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (23,0)-(23,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── call_operator_loc: (23,3)-(23,5) = "::" - │ ├── message_loc: (23,5)-(23,6) = "m" - │ ├── read_name: :m - │ ├── write_name: :m= - │ ├── binary_operator: :+ - │ ├── binary_operator_loc: (23,7)-(23,9) = "+=" - │ └── value: - │ @ RescueModifierNode (location: (23,10)-(23,31)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (23,10)-(23,20)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :raise - │ │ ├── message_loc: (23,10)-(23,15) = "raise" - │ │ ├── opening_loc: (23,15)-(23,16) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (23,16)-(23,19)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ CallNode (location: (23,16)-(23,19)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (23,16)-(23,19) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── closing_loc: (23,19)-(23,20) = ")" - │ │ └── block: ∅ - │ ├── keyword_loc: (23,21)-(23,27) = "rescue" - │ └── rescue_expression: - │ @ NilNode (location: (23,28)-(23,31)) - │ └── flags: static_literal - ├── @ IndexOperatorWriteNode (location: (25,0)-(25,30)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ LocalVariableReadNode (location: (25,0)-(25,3)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── call_operator_loc: ∅ - │ ├── opening_loc: (25,3)-(25,4) = "[" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (25,4)-(25,5)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (25,4)-(25,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 0 - │ ├── closing_loc: (25,5)-(25,6) = "]" - │ ├── block: ∅ - │ ├── binary_operator: :+ - │ ├── binary_operator_loc: (25,7)-(25,9) = "+=" - │ └── value: - │ @ RescueModifierNode (location: (25,10)-(25,30)) - │ ├── flags: ∅ - │ ├── expression: - │ │ @ CallNode (location: (25,10)-(25,19)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :raise - │ │ ├── message_loc: (25,10)-(25,15) = "raise" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (25,16)-(25,19)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ CallNode (location: (25,16)-(25,19)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (25,16)-(25,19) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── keyword_loc: (25,20)-(25,26) = "rescue" - │ └── rescue_expression: - │ @ NilNode (location: (25,27)-(25,30)) - │ └── flags: static_literal - └── @ IndexOperatorWriteNode (location: (27,0)-(27,31)) - ├── flags: newline - ├── receiver: - │ @ LocalVariableReadNode (location: (27,0)-(27,3)) - │ ├── flags: ∅ - │ ├── name: :foo - │ └── depth: 0 - ├── call_operator_loc: ∅ - ├── opening_loc: (27,3)-(27,4) = "[" - ├── arguments: - │ @ ArgumentsNode (location: (27,4)-(27,5)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (27,4)-(27,5)) - │ ├── flags: static_literal, decimal - │ └── value: 0 - ├── closing_loc: (27,5)-(27,6) = "]" - ├── block: ∅ - ├── binary_operator: :+ - ├── binary_operator_loc: (27,7)-(27,9) = "+=" - └── value: - @ RescueModifierNode (location: (27,10)-(27,31)) - ├── flags: ∅ - ├── expression: - │ @ CallNode (location: (27,10)-(27,20)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :raise - │ ├── message_loc: (27,10)-(27,15) = "raise" - │ ├── opening_loc: (27,15)-(27,16) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (27,16)-(27,19)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (27,16)-(27,19)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (27,16)-(27,19) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (27,19)-(27,20) = ")" - │ └── block: ∅ - ├── keyword_loc: (27,21)-(27,27) = "rescue" - └── rescue_expression: - @ NilNode (location: (27,28)-(27,31)) - └── flags: static_literal diff --git a/test/prism/snapshots/whitequark/ruby_bug_12669.txt b/test/prism/snapshots/whitequark/ruby_bug_12669.txt deleted file mode 100644 index 9d1a924b79..0000000000 --- a/test/prism/snapshots/whitequark/ruby_bug_12669.txt +++ /dev/null @@ -1,143 +0,0 @@ -@ ProgramNode (location: (1,0)-(7,16)) -├── flags: ∅ -├── locals: [:a, :b] -└── statements: - @ StatementsNode (location: (1,0)-(7,16)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ LocalVariableOperatorWriteNode (location: (1,0)-(1,18)) - │ ├── flags: newline - │ ├── name_loc: (1,0)-(1,1) = "a" - │ ├── binary_operator_loc: (1,2)-(1,4) = "+=" - │ ├── value: - │ │ @ LocalVariableOperatorWriteNode (location: (1,5)-(1,18)) - │ │ ├── flags: ∅ - │ │ ├── name_loc: (1,5)-(1,6) = "b" - │ │ ├── binary_operator_loc: (1,7)-(1,9) = "+=" - │ │ ├── value: - │ │ │ @ CallNode (location: (1,10)-(1,18)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :raise - │ │ │ ├── message_loc: (1,10)-(1,15) = "raise" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (1,16)-(1,18)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ SymbolNode (location: (1,16)-(1,18)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (1,16)-(1,17) = ":" - │ │ │ │ ├── value_loc: (1,17)-(1,18) = "x" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "x" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── name: :b - │ │ ├── binary_operator: :+ - │ │ └── depth: 0 - │ ├── name: :a - │ ├── binary_operator: :+ - │ └── depth: 0 - ├── @ LocalVariableOperatorWriteNode (location: (3,0)-(3,17)) - │ ├── flags: newline - │ ├── name_loc: (3,0)-(3,1) = "a" - │ ├── binary_operator_loc: (3,2)-(3,4) = "+=" - │ ├── value: - │ │ @ LocalVariableWriteNode (location: (3,5)-(3,17)) - │ │ ├── flags: ∅ - │ │ ├── name: :b - │ │ ├── depth: 0 - │ │ ├── name_loc: (3,5)-(3,6) = "b" - │ │ ├── value: - │ │ │ @ CallNode (location: (3,9)-(3,17)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :raise - │ │ │ ├── message_loc: (3,9)-(3,14) = "raise" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (3,15)-(3,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ SymbolNode (location: (3,15)-(3,17)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (3,15)-(3,16) = ":" - │ │ │ │ ├── value_loc: (3,16)-(3,17) = "x" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "x" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── operator_loc: (3,7)-(3,8) = "=" - │ ├── name: :a - │ ├── binary_operator: :+ - │ └── depth: 0 - ├── @ LocalVariableWriteNode (location: (5,0)-(5,17)) - │ ├── flags: newline - │ ├── name: :a - │ ├── depth: 0 - │ ├── name_loc: (5,0)-(5,1) = "a" - │ ├── value: - │ │ @ LocalVariableOperatorWriteNode (location: (5,4)-(5,17)) - │ │ ├── flags: ∅ - │ │ ├── name_loc: (5,4)-(5,5) = "b" - │ │ ├── binary_operator_loc: (5,6)-(5,8) = "+=" - │ │ ├── value: - │ │ │ @ CallNode (location: (5,9)-(5,17)) - │ │ │ ├── flags: ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :raise - │ │ │ ├── message_loc: (5,9)-(5,14) = "raise" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: - │ │ │ │ @ ArgumentsNode (location: (5,15)-(5,17)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── arguments: (length: 1) - │ │ │ │ └── @ SymbolNode (location: (5,15)-(5,17)) - │ │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ │ ├── opening_loc: (5,15)-(5,16) = ":" - │ │ │ │ ├── value_loc: (5,16)-(5,17) = "x" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "x" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── name: :b - │ │ ├── binary_operator: :+ - │ │ └── depth: 0 - │ └── operator_loc: (5,2)-(5,3) = "=" - └── @ LocalVariableWriteNode (location: (7,0)-(7,16)) - ├── flags: newline - ├── name: :a - ├── depth: 0 - ├── name_loc: (7,0)-(7,1) = "a" - ├── value: - │ @ LocalVariableWriteNode (location: (7,4)-(7,16)) - │ ├── flags: ∅ - │ ├── name: :b - │ ├── depth: 0 - │ ├── name_loc: (7,4)-(7,5) = "b" - │ ├── value: - │ │ @ CallNode (location: (7,8)-(7,16)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :raise - │ │ ├── message_loc: (7,8)-(7,13) = "raise" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (7,14)-(7,16)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ SymbolNode (location: (7,14)-(7,16)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: (7,14)-(7,15) = ":" - │ │ │ ├── value_loc: (7,15)-(7,16) = "x" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "x" - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── operator_loc: (7,6)-(7,7) = "=" - └── operator_loc: (7,2)-(7,3) = "=" diff --git a/test/prism/snapshots/whitequark/ruby_bug_12686.txt b/test/prism/snapshots/whitequark/ruby_bug_12686.txt deleted file mode 100644 index 515ee75674..0000000000 --- a/test/prism/snapshots/whitequark/ruby_bug_12686.txt +++ /dev/null @@ -1,45 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,16)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,16)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,16)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :f - ├── message_loc: (1,0)-(1,1) = "f" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,2)-(1,16)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ ParenthesesNode (location: (1,2)-(1,16)) - │ ├── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,3)-(1,15)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ RescueModifierNode (location: (1,3)-(1,15)) - │ │ ├── flags: newline - │ │ ├── expression: - │ │ │ @ CallNode (location: (1,3)-(1,4)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :g - │ │ │ ├── message_loc: (1,3)-(1,4) = "g" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── keyword_loc: (1,5)-(1,11) = "rescue" - │ │ └── rescue_expression: - │ │ @ NilNode (location: (1,12)-(1,15)) - │ │ └── flags: static_literal - │ ├── opening_loc: (1,2)-(1,3) = "(" - │ └── closing_loc: (1,15)-(1,16) = ")" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/ruby_bug_13547.txt b/test/prism/snapshots/whitequark/ruby_bug_13547.txt deleted file mode 100644 index d0ac79d7ff..0000000000 --- a/test/prism/snapshots/whitequark/ruby_bug_13547.txt +++ /dev/null @@ -1,34 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,9)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,4)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :meth - │ ├── message_loc: (1,0)-(1,4) = "meth" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :[] - ├── message_loc: (1,4)-(1,6) = "[]" - ├── opening_loc: (1,4)-(1,5) = "[" - ├── arguments: ∅ - ├── closing_loc: (1,5)-(1,6) = "]" - └── block: - @ BlockNode (location: (1,7)-(1,9)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: ∅ - ├── opening_loc: (1,7)-(1,8) = "{" - └── closing_loc: (1,8)-(1,9) = "}" diff --git a/test/prism/snapshots/whitequark/ruby_bug_14690.txt b/test/prism/snapshots/whitequark/ruby_bug_14690.txt deleted file mode 100644 index 377c0e0a0e..0000000000 --- a/test/prism/snapshots/whitequark/ruby_bug_14690.txt +++ /dev/null @@ -1,65 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,23)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,23)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,23)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :let - ├── message_loc: (1,0)-(1,3) = "let" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,6)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ ParenthesesNode (location: (1,4)-(1,6)) - │ ├── flags: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (1,4)-(1,5) = "(" - │ └── closing_loc: (1,5)-(1,6) = ")" - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,7)-(1,23)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (1,9)-(1,21)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,9)-(1,21)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (1,9)-(1,10) = "m" - │ ├── opening_loc: (1,10)-(1,11) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,11)-(1,12)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (1,11)-(1,12)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :a - │ │ ├── message_loc: (1,11)-(1,12) = "a" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (1,12)-(1,13) = ")" - │ └── block: - │ @ BlockNode (location: (1,14)-(1,21)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (1,14)-(1,16) = "do" - │ └── closing_loc: (1,18)-(1,21) = "end" - ├── opening_loc: (1,7)-(1,8) = "{" - └── closing_loc: (1,22)-(1,23) = "}" diff --git a/test/prism/snapshots/whitequark/ruby_bug_15789.txt b/test/prism/snapshots/whitequark/ruby_bug_15789.txt deleted file mode 100644 index c6ac7447a8..0000000000 --- a/test/prism/snapshots/whitequark/ruby_bug_15789.txt +++ /dev/null @@ -1,140 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,19)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,19)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,20)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (1,0)-(1,1) = "m" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,2)-(1,20)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ LambdaNode (location: (1,2)-(1,20)) - │ │ ├── flags: ∅ - │ │ ├── locals: [:a] - │ │ ├── operator_loc: (1,2)-(1,4) = "->" - │ │ ├── opening_loc: (1,17)-(1,18) = "{" - │ │ ├── closing_loc: (1,19)-(1,20) = "}" - │ │ ├── parameters: - │ │ │ @ BlockParametersNode (location: (1,4)-(1,16)) - │ │ │ ├── flags: ∅ - │ │ │ ├── parameters: - │ │ │ │ @ ParametersNode (location: (1,5)-(1,15)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── requireds: (length: 0) - │ │ │ │ ├── optionals: (length: 1) - │ │ │ │ │ └── @ OptionalParameterNode (location: (1,5)-(1,15)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── name: :a - │ │ │ │ │ ├── name_loc: (1,5)-(1,6) = "a" - │ │ │ │ │ ├── operator_loc: (1,7)-(1,8) = "=" - │ │ │ │ │ └── value: - │ │ │ │ │ @ LambdaNode (location: (1,9)-(1,15)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ ├── locals: [:_1] - │ │ │ │ │ ├── operator_loc: (1,9)-(1,11) = "->" - │ │ │ │ │ ├── opening_loc: (1,11)-(1,12) = "{" - │ │ │ │ │ ├── closing_loc: (1,14)-(1,15) = "}" - │ │ │ │ │ ├── parameters: - │ │ │ │ │ │ @ NumberedParametersNode (location: (1,9)-(1,15)) - │ │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ │ └── maximum: 1 - │ │ │ │ │ └── body: - │ │ │ │ │ @ StatementsNode (location: (1,12)-(1,14)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── body: (length: 1) - │ │ │ │ │ └── @ LocalVariableReadNode (location: (1,12)-(1,14)) - │ │ │ │ │ ├── flags: newline - │ │ │ │ │ ├── name: :_1 - │ │ │ │ │ └── depth: 0 - │ │ │ │ ├── rest: ∅ - │ │ │ │ ├── posts: (length: 0) - │ │ │ │ ├── keywords: (length: 0) - │ │ │ │ ├── keyword_rest: ∅ - │ │ │ │ └── block: ∅ - │ │ │ ├── locals: (length: 0) - │ │ │ ├── opening_loc: (1,4)-(1,5) = "(" - │ │ │ └── closing_loc: (1,15)-(1,16) = ")" - │ │ └── body: - │ │ @ StatementsNode (location: (1,18)-(1,19)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (1,18)-(1,19)) - │ │ ├── flags: newline - │ │ ├── name: :a - │ │ └── depth: 0 - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (3,0)-(3,19)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :m - ├── message_loc: (3,0)-(3,1) = "m" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (3,2)-(3,19)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ LambdaNode (location: (3,2)-(3,19)) - │ ├── flags: ∅ - │ ├── locals: [:a] - │ ├── operator_loc: (3,2)-(3,4) = "->" - │ ├── opening_loc: (3,16)-(3,17) = "{" - │ ├── closing_loc: (3,18)-(3,19) = "}" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (3,4)-(3,15)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (3,5)-(3,14)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 1) - │ │ │ │ └── @ OptionalKeywordParameterNode (location: (3,5)-(3,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ ├── name_loc: (3,5)-(3,7) = "a:" - │ │ │ │ └── value: - │ │ │ │ @ LambdaNode (location: (3,8)-(3,14)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── locals: [:_1] - │ │ │ │ ├── operator_loc: (3,8)-(3,10) = "->" - │ │ │ │ ├── opening_loc: (3,10)-(3,11) = "{" - │ │ │ │ ├── closing_loc: (3,13)-(3,14) = "}" - │ │ │ │ ├── parameters: - │ │ │ │ │ @ NumberedParametersNode (location: (3,8)-(3,14)) - │ │ │ │ │ ├── flags: ∅ - │ │ │ │ │ └── maximum: 1 - │ │ │ │ └── body: - │ │ │ │ @ StatementsNode (location: (3,11)-(3,13)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ LocalVariableReadNode (location: (3,11)-(3,13)) - │ │ │ │ ├── flags: newline - │ │ │ │ ├── name: :_1 - │ │ │ │ └── depth: 0 - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (3,4)-(3,5) = "(" - │ │ └── closing_loc: (3,14)-(3,15) = ")" - │ └── body: - │ @ StatementsNode (location: (3,17)-(3,18)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ LocalVariableReadNode (location: (3,17)-(3,18)) - │ ├── flags: newline - │ ├── name: :a - │ └── depth: 0 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/ruby_bug_9669.txt b/test/prism/snapshots/whitequark/ruby_bug_9669.txt deleted file mode 100644 index c771c50c8a..0000000000 --- a/test/prism/snapshots/whitequark/ruby_bug_9669.txt +++ /dev/null @@ -1,67 +0,0 @@ -@ ProgramNode (location: (1,0)-(8,1)) -├── flags: ∅ -├── locals: [:o] -└── statements: - @ StatementsNode (location: (1,0)-(8,1)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ DefNode (location: (1,0)-(3,3)) - │ ├── flags: newline - │ ├── name: :a - │ ├── name_loc: (1,4)-(1,5) = "a" - │ ├── receiver: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,6)-(1,8)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ RequiredKeywordParameterNode (location: (1,6)-(1,8)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :b - │ │ │ └── name_loc: (1,6)-(1,8) = "b:" - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (2,0)-(2,6)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ ReturnNode (location: (2,0)-(2,6)) - │ │ ├── flags: newline - │ │ ├── keyword_loc: (2,0)-(2,6) = "return" - │ │ └── arguments: ∅ - │ ├── locals: [:b] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (3,0)-(3,3) = "end" - └── @ LocalVariableWriteNode (location: (5,0)-(8,1)) - ├── flags: newline - ├── name: :o - ├── depth: 0 - ├── name_loc: (5,0)-(5,1) = "o" - ├── value: - │ @ HashNode (location: (5,4)-(8,1)) - │ ├── flags: static_literal - │ ├── opening_loc: (5,4)-(5,5) = "{" - │ ├── elements: (length: 1) - │ │ └── @ AssocNode (location: (6,0)-(7,1)) - │ │ ├── flags: static_literal - │ │ ├── key: - │ │ │ @ SymbolNode (location: (6,0)-(6,2)) - │ │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── value_loc: (6,0)-(6,1) = "a" - │ │ │ ├── closing_loc: (6,1)-(6,2) = ":" - │ │ │ └── unescaped: "a" - │ │ ├── value: - │ │ │ @ IntegerNode (location: (7,0)-(7,1)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── operator_loc: ∅ - │ └── closing_loc: (8,0)-(8,1) = "}" - └── operator_loc: (5,2)-(5,3) = "=" diff --git a/test/prism/snapshots/whitequark/sclass.txt b/test/prism/snapshots/whitequark/sclass.txt deleted file mode 100644 index 346d1a4149..0000000000 --- a/test/prism/snapshots/whitequark/sclass.txt +++ /dev/null @@ -1,30 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,22)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,22)) - ├── flags: ∅ - └── body: (length: 1) - └── @ SingletonClassNode (location: (1,0)-(1,22)) - ├── flags: newline - ├── locals: [] - ├── class_keyword_loc: (1,0)-(1,5) = "class" - ├── operator_loc: (1,6)-(1,8) = "<<" - ├── expression: - │ @ CallNode (location: (1,9)-(1,12)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,9)-(1,12) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (1,14)-(1,17)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ NilNode (location: (1,14)-(1,17)) - │ └── flags: newline, static_literal - └── end_keyword_loc: (1,19)-(1,22) = "end" diff --git a/test/prism/snapshots/whitequark/self.txt b/test/prism/snapshots/whitequark/self.txt deleted file mode 100644 index e3a1a9f7df..0000000000 --- a/test/prism/snapshots/whitequark/self.txt +++ /dev/null @@ -1,9 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ SelfNode (location: (1,0)-(1,4)) - └── flags: newline diff --git a/test/prism/snapshots/whitequark/send_attr_asgn.txt b/test/prism/snapshots/whitequark/send_attr_asgn.txt deleted file mode 100644 index faeb5a7c7c..0000000000 --- a/test/prism/snapshots/whitequark/send_attr_asgn.txt +++ /dev/null @@ -1,109 +0,0 @@ -@ ProgramNode (location: (1,0)-(7,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(7,10)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ CallNode (location: (1,0)-(1,9)) - │ ├── flags: newline, attribute_write - │ ├── receiver: - │ │ @ CallNode (location: (1,0)-(1,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,0)-(1,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (1,3)-(1,4) = "." - │ ├── name: :A= - │ ├── message_loc: (1,4)-(1,5) = "A" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,8)-(1,9)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (1,8)-(1,9)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (3,0)-(3,9)) - │ ├── flags: newline, attribute_write - │ ├── receiver: - │ │ @ CallNode (location: (3,0)-(3,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (3,0)-(3,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (3,3)-(3,4) = "." - │ ├── name: :a= - │ ├── message_loc: (3,4)-(3,5) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (3,8)-(3,9)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (3,8)-(3,9)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ ConstantPathWriteNode (location: (5,0)-(5,10)) - │ ├── flags: newline - │ ├── target: - │ │ @ ConstantPathNode (location: (5,0)-(5,6)) - │ │ ├── flags: ∅ - │ │ ├── parent: - │ │ │ @ CallNode (location: (5,0)-(5,3)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :foo - │ │ │ ├── message_loc: (5,0)-(5,3) = "foo" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── name: :A - │ │ ├── delimiter_loc: (5,3)-(5,5) = "::" - │ │ └── name_loc: (5,5)-(5,6) = "A" - │ ├── operator_loc: (5,7)-(5,8) = "=" - │ └── value: - │ @ IntegerNode (location: (5,9)-(5,10)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - └── @ CallNode (location: (7,0)-(7,10)) - ├── flags: newline, attribute_write - ├── receiver: - │ @ CallNode (location: (7,0)-(7,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (7,0)-(7,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (7,3)-(7,5) = "::" - ├── name: :a= - ├── message_loc: (7,5)-(7,6) = "a" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (7,9)-(7,10)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (7,9)-(7,10)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/send_attr_asgn_conditional.txt b/test/prism/snapshots/whitequark/send_attr_asgn_conditional.txt deleted file mode 100644 index cb849e3f05..0000000000 --- a/test/prism/snapshots/whitequark/send_attr_asgn_conditional.txt +++ /dev/null @@ -1,33 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,8)) - ├── flags: newline, safe_navigation, attribute_write - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,1)-(1,3) = "&." - ├── name: :b= - ├── message_loc: (1,3)-(1,4) = "b" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,7)-(1,8)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (1,7)-(1,8)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/send_binary_op.txt b/test/prism/snapshots/whitequark/send_binary_op.txt deleted file mode 100644 index 49a2cffa65..0000000000 --- a/test/prism/snapshots/whitequark/send_binary_op.txt +++ /dev/null @@ -1,553 +0,0 @@ -@ ProgramNode (location: (1,0)-(41,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(41,7)) - ├── flags: ∅ - └── body: (length: 21) - ├── @ CallNode (location: (1,0)-(1,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (1,0)-(1,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,0)-(1,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :!= - │ ├── message_loc: (1,4)-(1,6) = "!=" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,7)-(1,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (1,7)-(1,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (3,0)-(3,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (3,0)-(3,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (3,0)-(3,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :!~ - │ ├── message_loc: (3,4)-(3,6) = "!~" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (3,7)-(3,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (3,7)-(3,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (5,0)-(5,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (5,0)-(5,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (5,0)-(5,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :% - │ ├── message_loc: (5,4)-(5,5) = "%" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (5,6)-(5,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (5,6)-(5,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (7,0)-(7,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (7,0)-(7,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (7,0)-(7,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :& - │ ├── message_loc: (7,4)-(7,5) = "&" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (7,6)-(7,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (7,6)-(7,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (9,0)-(9,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (9,0)-(9,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (9,0)-(9,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :* - │ ├── message_loc: (9,4)-(9,5) = "*" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (9,6)-(9,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (9,6)-(9,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (11,0)-(11,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (11,0)-(11,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (11,0)-(11,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :** - │ ├── message_loc: (11,4)-(11,6) = "**" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (11,7)-(11,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (11,7)-(11,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (13,0)-(13,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (13,0)-(13,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (13,0)-(13,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :+ - │ ├── message_loc: (13,4)-(13,5) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (13,6)-(13,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (13,6)-(13,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (15,0)-(15,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (15,0)-(15,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (15,0)-(15,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :- - │ ├── message_loc: (15,4)-(15,5) = "-" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (15,6)-(15,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (15,6)-(15,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (17,0)-(17,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (17,0)-(17,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (17,0)-(17,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :/ - │ ├── message_loc: (17,4)-(17,5) = "/" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (17,6)-(17,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (17,6)-(17,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (19,0)-(19,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (19,0)-(19,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (19,0)-(19,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :< - │ ├── message_loc: (19,4)-(19,5) = "<" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (19,6)-(19,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (19,6)-(19,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (21,0)-(21,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (21,0)-(21,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (21,0)-(21,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :<< - │ ├── message_loc: (21,4)-(21,6) = "<<" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (21,7)-(21,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (21,7)-(21,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (23,0)-(23,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (23,0)-(23,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (23,0)-(23,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :<= - │ ├── message_loc: (23,4)-(23,6) = "<=" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (23,7)-(23,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (23,7)-(23,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (25,0)-(25,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (25,0)-(25,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (25,0)-(25,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :<=> - │ ├── message_loc: (25,4)-(25,7) = "<=>" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (25,8)-(25,9)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (25,8)-(25,9)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (27,0)-(27,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (27,0)-(27,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (27,0)-(27,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :== - │ ├── message_loc: (27,4)-(27,6) = "==" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (27,7)-(27,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (27,7)-(27,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (29,0)-(29,9)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (29,0)-(29,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (29,0)-(29,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :=== - │ ├── message_loc: (29,4)-(29,7) = "===" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (29,8)-(29,9)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (29,8)-(29,9)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (31,0)-(31,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (31,0)-(31,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (31,0)-(31,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :=~ - │ ├── message_loc: (31,4)-(31,6) = "=~" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (31,7)-(31,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (31,7)-(31,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (33,0)-(33,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (33,0)-(33,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (33,0)-(33,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :> - │ ├── message_loc: (33,4)-(33,5) = ">" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (33,6)-(33,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (33,6)-(33,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (35,0)-(35,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (35,0)-(35,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (35,0)-(35,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :>= - │ ├── message_loc: (35,4)-(35,6) = ">=" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (35,7)-(35,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (35,7)-(35,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (37,0)-(37,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (37,0)-(37,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (37,0)-(37,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :>> - │ ├── message_loc: (37,4)-(37,6) = ">>" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (37,7)-(37,8)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (37,7)-(37,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (39,0)-(39,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (39,0)-(39,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (39,0)-(39,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :^ - │ ├── message_loc: (39,4)-(39,5) = "^" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (39,6)-(39,7)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (39,6)-(39,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (41,0)-(41,7)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (41,0)-(41,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (41,0)-(41,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :| - ├── message_loc: (41,4)-(41,5) = "|" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (41,6)-(41,7)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (41,6)-(41,7)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/send_block_chain_cmd.txt b/test/prism/snapshots/whitequark/send_block_chain_cmd.txt deleted file mode 100644 index bce45c38ee..0000000000 --- a/test/prism/snapshots/whitequark/send_block_chain_cmd.txt +++ /dev/null @@ -1,337 +0,0 @@ -@ ProgramNode (location: (1,0)-(13,23)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(13,23)) - ├── flags: ∅ - └── body: (length: 7) - ├── @ CallNode (location: (1,0)-(1,21)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (1,0)-(1,13)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :meth - │ │ ├── message_loc: (1,0)-(1,4) = "meth" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (1,7)-(1,13)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (1,7)-(1,9) = "do" - │ │ └── closing_loc: (1,10)-(1,13) = "end" - │ ├── call_operator_loc: (1,13)-(1,14) = "." - │ ├── name: :fun - │ ├── message_loc: (1,14)-(1,17) = "fun" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,18)-(1,21)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (1,18)-(1,21)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,18)-(1,21) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (3,0)-(3,28)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (3,0)-(3,13)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :meth - │ │ ├── message_loc: (3,0)-(3,4) = "meth" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (3,5)-(3,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (3,5)-(3,6)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (3,7)-(3,13)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (3,7)-(3,9) = "do" - │ │ └── closing_loc: (3,10)-(3,13) = "end" - │ ├── call_operator_loc: (3,13)-(3,14) = "." - │ ├── name: :fun - │ ├── message_loc: (3,14)-(3,17) = "fun" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (3,18)-(3,21)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (3,18)-(3,21)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (3,18)-(3,21) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (3,22)-(3,28)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (3,22)-(3,24) = "do" - │ └── closing_loc: (3,25)-(3,28) = "end" - ├── @ CallNode (location: (5,0)-(5,20)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (5,0)-(5,13)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :meth - │ │ ├── message_loc: (5,0)-(5,4) = "meth" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (5,5)-(5,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (5,5)-(5,6)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (5,7)-(5,13)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (5,7)-(5,9) = "do" - │ │ └── closing_loc: (5,10)-(5,13) = "end" - │ ├── call_operator_loc: (5,13)-(5,14) = "." - │ ├── name: :fun - │ ├── message_loc: (5,14)-(5,17) = "fun" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (5,18)-(5,20)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (5,18)-(5,19) = "{" - │ └── closing_loc: (5,19)-(5,20) = "}" - ├── @ CallNode (location: (7,0)-(7,22)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (7,0)-(7,13)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :meth - │ │ ├── message_loc: (7,0)-(7,4) = "meth" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (7,5)-(7,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (7,5)-(7,6)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (7,7)-(7,13)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (7,7)-(7,9) = "do" - │ │ └── closing_loc: (7,10)-(7,13) = "end" - │ ├── call_operator_loc: (7,13)-(7,14) = "." - │ ├── name: :fun - │ ├── message_loc: (7,14)-(7,17) = "fun" - │ ├── opening_loc: (7,17)-(7,18) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (7,18)-(7,21)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (7,18)-(7,21)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (7,18)-(7,21) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (7,21)-(7,22) = ")" - │ └── block: ∅ - ├── @ CallNode (location: (9,0)-(9,25)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (9,0)-(9,13)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :meth - │ │ ├── message_loc: (9,0)-(9,4) = "meth" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (9,5)-(9,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (9,5)-(9,6)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (9,7)-(9,13)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (9,7)-(9,9) = "do" - │ │ └── closing_loc: (9,10)-(9,13) = "end" - │ ├── call_operator_loc: (9,13)-(9,14) = "." - │ ├── name: :fun - │ ├── message_loc: (9,14)-(9,17) = "fun" - │ ├── opening_loc: (9,17)-(9,18) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (9,18)-(9,21)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (9,18)-(9,21)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (9,18)-(9,21) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: (9,21)-(9,22) = ")" - │ └── block: - │ @ BlockNode (location: (9,23)-(9,25)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (9,23)-(9,24) = "{" - │ └── closing_loc: (9,24)-(9,25) = "}" - ├── @ CallNode (location: (11,0)-(11,22)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (11,0)-(11,13)) - │ │ ├── flags: ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :meth - │ │ ├── message_loc: (11,0)-(11,4) = "meth" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (11,5)-(11,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (11,5)-(11,6)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── closing_loc: ∅ - │ │ └── block: - │ │ @ BlockNode (location: (11,7)-(11,13)) - │ │ ├── flags: ∅ - │ │ ├── locals: [] - │ │ ├── parameters: ∅ - │ │ ├── body: ∅ - │ │ ├── opening_loc: (11,7)-(11,9) = "do" - │ │ └── closing_loc: (11,10)-(11,13) = "end" - │ ├── call_operator_loc: (11,13)-(11,15) = "::" - │ ├── name: :fun - │ ├── message_loc: (11,15)-(11,18) = "fun" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (11,19)-(11,22)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (11,19)-(11,22)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (11,19)-(11,22) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (13,0)-(13,23)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (13,0)-(13,13)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :meth - │ ├── message_loc: (13,0)-(13,4) = "meth" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (13,5)-(13,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (13,5)-(13,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (13,7)-(13,13)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (13,7)-(13,9) = "do" - │ └── closing_loc: (13,10)-(13,13) = "end" - ├── call_operator_loc: (13,13)-(13,15) = "::" - ├── name: :fun - ├── message_loc: (13,15)-(13,18) = "fun" - ├── opening_loc: (13,18)-(13,19) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (13,19)-(13,22)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (13,19)-(13,22)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (13,19)-(13,22) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: (13,22)-(13,23) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/send_block_conditional.txt b/test/prism/snapshots/whitequark/send_block_conditional.txt deleted file mode 100644 index 86ef0dbf36..0000000000 --- a/test/prism/snapshots/whitequark/send_block_conditional.txt +++ /dev/null @@ -1,34 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,11)) - ├── flags: newline, safe_navigation - ├── receiver: - │ @ CallNode (location: (1,0)-(1,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,0)-(1,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,3)-(1,5) = "&." - ├── name: :bar - ├── message_loc: (1,5)-(1,8) = "bar" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,9)-(1,11)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: ∅ - ├── opening_loc: (1,9)-(1,10) = "{" - └── closing_loc: (1,10)-(1,11) = "}" diff --git a/test/prism/snapshots/whitequark/send_call.txt b/test/prism/snapshots/whitequark/send_call.txt deleted file mode 100644 index 4ed17fbaee..0000000000 --- a/test/prism/snapshots/whitequark/send_call.txt +++ /dev/null @@ -1,59 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,8)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ CallNode (location: (1,0)-(1,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (1,0)-(1,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,0)-(1,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (1,3)-(1,4) = "." - │ ├── name: :call - │ ├── message_loc: ∅ - │ ├── opening_loc: (1,4)-(1,5) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,5)-(1,6)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (1,5)-(1,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── closing_loc: (1,6)-(1,7) = ")" - │ └── block: ∅ - └── @ CallNode (location: (3,0)-(3,8)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (3,0)-(3,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (3,0)-(3,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (3,3)-(3,5) = "::" - ├── name: :call - ├── message_loc: ∅ - ├── opening_loc: (3,5)-(3,6) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (3,6)-(3,7)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (3,6)-(3,7)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: (3,7)-(3,8) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/send_conditional.txt b/test/prism/snapshots/whitequark/send_conditional.txt deleted file mode 100644 index 7faa6ac04e..0000000000 --- a/test/prism/snapshots/whitequark/send_conditional.txt +++ /dev/null @@ -1,27 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,4)) - ├── flags: newline, safe_navigation - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,1)-(1,3) = "&." - ├── name: :b - ├── message_loc: (1,3)-(1,4) = "b" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/send_index.txt b/test/prism/snapshots/whitequark/send_index.txt deleted file mode 100644 index 5aec47c484..0000000000 --- a/test/prism/snapshots/whitequark/send_index.txt +++ /dev/null @@ -1,36 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,9)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,0)-(1,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :[] - ├── message_loc: (1,3)-(1,9) = "[1, 2]" - ├── opening_loc: (1,3)-(1,4) = "[" - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,8)) - │ ├── flags: ∅ - │ └── arguments: (length: 2) - │ ├── @ IntegerNode (location: (1,4)-(1,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── @ IntegerNode (location: (1,7)-(1,8)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── closing_loc: (1,8)-(1,9) = "]" - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/send_index_asgn.txt b/test/prism/snapshots/whitequark/send_index_asgn.txt deleted file mode 100644 index fe0f71956a..0000000000 --- a/test/prism/snapshots/whitequark/send_index_asgn.txt +++ /dev/null @@ -1,39 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,13)) - ├── flags: newline, attribute_write - ├── receiver: - │ @ CallNode (location: (1,0)-(1,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,0)-(1,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :[]= - ├── message_loc: (1,3)-(1,9) = "[1, 2]" - ├── opening_loc: (1,3)-(1,4) = "[" - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,13)) - │ ├── flags: ∅ - │ └── arguments: (length: 3) - │ ├── @ IntegerNode (location: (1,4)-(1,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── @ IntegerNode (location: (1,7)-(1,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ └── @ IntegerNode (location: (1,12)-(1,13)) - │ ├── flags: static_literal, decimal - │ └── value: 3 - ├── closing_loc: (1,8)-(1,9) = "]" - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/send_index_asgn_legacy.txt b/test/prism/snapshots/whitequark/send_index_asgn_legacy.txt deleted file mode 100644 index fe0f71956a..0000000000 --- a/test/prism/snapshots/whitequark/send_index_asgn_legacy.txt +++ /dev/null @@ -1,39 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,13)) - ├── flags: newline, attribute_write - ├── receiver: - │ @ CallNode (location: (1,0)-(1,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,0)-(1,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :[]= - ├── message_loc: (1,3)-(1,9) = "[1, 2]" - ├── opening_loc: (1,3)-(1,4) = "[" - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,13)) - │ ├── flags: ∅ - │ └── arguments: (length: 3) - │ ├── @ IntegerNode (location: (1,4)-(1,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── @ IntegerNode (location: (1,7)-(1,8)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 2 - │ └── @ IntegerNode (location: (1,12)-(1,13)) - │ ├── flags: static_literal, decimal - │ └── value: 3 - ├── closing_loc: (1,8)-(1,9) = "]" - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/send_index_cmd.txt b/test/prism/snapshots/whitequark/send_index_cmd.txt deleted file mode 100644 index 89a5c41fc3..0000000000 --- a/test/prism/snapshots/whitequark/send_index_cmd.txt +++ /dev/null @@ -1,53 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,10)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,0)-(1,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :[] - ├── message_loc: (1,3)-(1,10) = "[m bar]" - ├── opening_loc: (1,3)-(1,4) = "[" - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,9)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (1,4)-(1,9)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (1,4)-(1,5) = "m" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,6)-(1,9)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (1,6)-(1,9)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,6)-(1,9) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: (1,9)-(1,10) = "]" - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/send_index_legacy.txt b/test/prism/snapshots/whitequark/send_index_legacy.txt deleted file mode 100644 index 5aec47c484..0000000000 --- a/test/prism/snapshots/whitequark/send_index_legacy.txt +++ /dev/null @@ -1,36 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,9)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (1,0)-(1,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,0)-(1,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :[] - ├── message_loc: (1,3)-(1,9) = "[1, 2]" - ├── opening_loc: (1,3)-(1,4) = "[" - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,8)) - │ ├── flags: ∅ - │ └── arguments: (length: 2) - │ ├── @ IntegerNode (location: (1,4)-(1,5)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── @ IntegerNode (location: (1,7)-(1,8)) - │ ├── flags: static_literal, decimal - │ └── value: 2 - ├── closing_loc: (1,8)-(1,9) = "]" - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/send_lambda.txt b/test/prism/snapshots/whitequark/send_lambda.txt deleted file mode 100644 index a1693734e8..0000000000 --- a/test/prism/snapshots/whitequark/send_lambda.txt +++ /dev/null @@ -1,51 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,5)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ LambdaNode (location: (1,0)-(1,8)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── operator_loc: (1,0)-(1,2) = "->" - │ ├── opening_loc: (1,5)-(1,6) = "{" - │ ├── closing_loc: (1,7)-(1,8) = "}" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (1,3)-(1,4)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (1,3)-(1,4)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: - │ │ │ │ @ RestParameterNode (location: (1,3)-(1,4)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: ∅ - │ │ │ │ ├── name_loc: ∅ - │ │ │ │ └── operator_loc: (1,3)-(1,4) = "*" - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── body: ∅ - ├── @ LambdaNode (location: (3,0)-(3,9)) - │ ├── flags: newline - │ ├── locals: [] - │ ├── operator_loc: (3,0)-(3,2) = "->" - │ ├── opening_loc: (3,3)-(3,5) = "do" - │ ├── closing_loc: (3,6)-(3,9) = "end" - │ ├── parameters: ∅ - │ └── body: ∅ - └── @ LambdaNode (location: (5,0)-(5,5)) - ├── flags: newline - ├── locals: [] - ├── operator_loc: (5,0)-(5,2) = "->" - ├── opening_loc: (5,2)-(5,3) = "{" - ├── closing_loc: (5,4)-(5,5) = "}" - ├── parameters: ∅ - └── body: ∅ diff --git a/test/prism/snapshots/whitequark/send_lambda_args.txt b/test/prism/snapshots/whitequark/send_lambda_args.txt deleted file mode 100644 index ffa9a6ba9e..0000000000 --- a/test/prism/snapshots/whitequark/send_lambda_args.txt +++ /dev/null @@ -1,59 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,9)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ LambdaNode (location: (1,0)-(1,10)) - │ ├── flags: newline - │ ├── locals: [:a] - │ ├── operator_loc: (1,0)-(1,2) = "->" - │ ├── opening_loc: (1,7)-(1,8) = "{" - │ ├── closing_loc: (1,9)-(1,10) = "}" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (1,3)-(1,6)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (1,4)-(1,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 1) - │ │ │ │ └── @ RequiredParameterNode (location: (1,4)-(1,5)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── name: :a - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 0) - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: (1,3)-(1,4) = "(" - │ │ └── closing_loc: (1,5)-(1,6) = ")" - │ └── body: ∅ - └── @ LambdaNode (location: (3,0)-(3,9)) - ├── flags: newline - ├── locals: [:a] - ├── operator_loc: (3,0)-(3,2) = "->" - ├── opening_loc: (3,6)-(3,7) = "{" - ├── closing_loc: (3,8)-(3,9) = "}" - ├── parameters: - │ @ BlockParametersNode (location: (3,2)-(3,5)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (3,3)-(3,4)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (3,3)-(3,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: (3,2)-(3,3) = "(" - │ └── closing_loc: (3,4)-(3,5) = ")" - └── body: ∅ diff --git a/test/prism/snapshots/whitequark/send_lambda_args_noparen.txt b/test/prism/snapshots/whitequark/send_lambda_args_noparen.txt deleted file mode 100644 index 2cbe43e6e0..0000000000 --- a/test/prism/snapshots/whitequark/send_lambda_args_noparen.txt +++ /dev/null @@ -1,65 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,9)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ LambdaNode (location: (1,0)-(1,11)) - │ ├── flags: newline - │ ├── locals: [:a] - │ ├── operator_loc: (1,0)-(1,2) = "->" - │ ├── opening_loc: (1,8)-(1,9) = "{" - │ ├── closing_loc: (1,10)-(1,11) = "}" - │ ├── parameters: - │ │ @ BlockParametersNode (location: (1,3)-(1,7)) - │ │ ├── flags: ∅ - │ │ ├── parameters: - │ │ │ @ ParametersNode (location: (1,3)-(1,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── requireds: (length: 0) - │ │ │ ├── optionals: (length: 0) - │ │ │ ├── rest: ∅ - │ │ │ ├── posts: (length: 0) - │ │ │ ├── keywords: (length: 1) - │ │ │ │ └── @ OptionalKeywordParameterNode (location: (1,3)-(1,7)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ ├── name: :a - │ │ │ │ ├── name_loc: (1,3)-(1,5) = "a:" - │ │ │ │ └── value: - │ │ │ │ @ IntegerNode (location: (1,6)-(1,7)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ ├── keyword_rest: ∅ - │ │ │ └── block: ∅ - │ │ ├── locals: (length: 0) - │ │ ├── opening_loc: ∅ - │ │ └── closing_loc: ∅ - │ └── body: ∅ - └── @ LambdaNode (location: (3,0)-(3,9)) - ├── flags: newline - ├── locals: [:a] - ├── operator_loc: (3,0)-(3,2) = "->" - ├── opening_loc: (3,6)-(3,7) = "{" - ├── closing_loc: (3,8)-(3,9) = "}" - ├── parameters: - │ @ BlockParametersNode (location: (3,3)-(3,5)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (3,3)-(3,5)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 0) - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 1) - │ │ │ └── @ RequiredKeywordParameterNode (location: (3,3)-(3,5)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── name_loc: (3,3)-(3,5) = "a:" - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 0) - │ ├── opening_loc: ∅ - │ └── closing_loc: ∅ - └── body: ∅ diff --git a/test/prism/snapshots/whitequark/send_lambda_args_shadow.txt b/test/prism/snapshots/whitequark/send_lambda_args_shadow.txt deleted file mode 100644 index 5cd6660d4a..0000000000 --- a/test/prism/snapshots/whitequark/send_lambda_args_shadow.txt +++ /dev/null @@ -1,39 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,19)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,19)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LambdaNode (location: (1,0)-(1,19)) - ├── flags: newline - ├── locals: [:a, :foo, :bar] - ├── operator_loc: (1,0)-(1,2) = "->" - ├── opening_loc: (1,16)-(1,17) = "{" - ├── closing_loc: (1,18)-(1,19) = "}" - ├── parameters: - │ @ BlockParametersNode (location: (1,2)-(1,15)) - │ ├── flags: ∅ - │ ├── parameters: - │ │ @ ParametersNode (location: (1,3)-(1,4)) - │ │ ├── flags: ∅ - │ │ ├── requireds: (length: 1) - │ │ │ └── @ RequiredParameterNode (location: (1,3)-(1,4)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ ├── optionals: (length: 0) - │ │ ├── rest: ∅ - │ │ ├── posts: (length: 0) - │ │ ├── keywords: (length: 0) - │ │ ├── keyword_rest: ∅ - │ │ └── block: ∅ - │ ├── locals: (length: 2) - │ │ ├── @ BlockLocalVariableNode (location: (1,6)-(1,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :foo - │ │ └── @ BlockLocalVariableNode (location: (1,11)-(1,14)) - │ │ ├── flags: ∅ - │ │ └── name: :bar - │ ├── opening_loc: (1,2)-(1,3) = "(" - │ └── closing_loc: (1,14)-(1,15) = ")" - └── body: ∅ diff --git a/test/prism/snapshots/whitequark/send_lambda_legacy.txt b/test/prism/snapshots/whitequark/send_lambda_legacy.txt deleted file mode 100644 index 902e140459..0000000000 --- a/test/prism/snapshots/whitequark/send_lambda_legacy.txt +++ /dev/null @@ -1,15 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LambdaNode (location: (1,0)-(1,5)) - ├── flags: newline - ├── locals: [] - ├── operator_loc: (1,0)-(1,2) = "->" - ├── opening_loc: (1,2)-(1,3) = "{" - ├── closing_loc: (1,4)-(1,5) = "}" - ├── parameters: ∅ - └── body: ∅ diff --git a/test/prism/snapshots/whitequark/send_op_asgn_conditional.txt b/test/prism/snapshots/whitequark/send_op_asgn_conditional.txt deleted file mode 100644 index 68e09171f8..0000000000 --- a/test/prism/snapshots/whitequark/send_op_asgn_conditional.txt +++ /dev/null @@ -1,29 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,10)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallAndWriteNode (location: (1,0)-(1,10)) - ├── flags: newline, safe_navigation - ├── receiver: - │ @ CallNode (location: (1,0)-(1,1)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :a - │ ├── message_loc: (1,0)-(1,1) = "a" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (1,1)-(1,3) = "&." - ├── message_loc: (1,3)-(1,4) = "b" - ├── read_name: :b - ├── write_name: :b= - ├── operator_loc: (1,5)-(1,8) = "&&=" - └── value: - @ IntegerNode (location: (1,9)-(1,10)) - ├── flags: static_literal, decimal - └── value: 1 diff --git a/test/prism/snapshots/whitequark/send_plain.txt b/test/prism/snapshots/whitequark/send_plain.txt deleted file mode 100644 index 96643ddcab..0000000000 --- a/test/prism/snapshots/whitequark/send_plain.txt +++ /dev/null @@ -1,67 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,8)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ CallNode (location: (1,0)-(1,7)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (1,0)-(1,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,0)-(1,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (1,3)-(1,4) = "." - │ ├── name: :fun - │ ├── message_loc: (1,4)-(1,7) = "fun" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (3,0)-(3,10)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (3,0)-(3,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (3,0)-(3,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (3,3)-(3,5) = "::" - │ ├── name: :Fun - │ ├── message_loc: (3,5)-(3,8) = "Fun" - │ ├── opening_loc: (3,8)-(3,9) = "(" - │ ├── arguments: ∅ - │ ├── closing_loc: (3,9)-(3,10) = ")" - │ └── block: ∅ - └── @ CallNode (location: (5,0)-(5,8)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (5,0)-(5,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (5,0)-(5,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (5,3)-(5,5) = "::" - ├── name: :fun - ├── message_loc: (5,5)-(5,8) = "fun" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/send_plain_cmd.txt b/test/prism/snapshots/whitequark/send_plain_cmd.txt deleted file mode 100644 index 2785712baa..0000000000 --- a/test/prism/snapshots/whitequark/send_plain_cmd.txt +++ /dev/null @@ -1,106 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,12)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ CallNode (location: (1,0)-(1,11)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (1,0)-(1,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,0)-(1,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (1,3)-(1,4) = "." - │ ├── name: :fun - │ ├── message_loc: (1,4)-(1,7) = "fun" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,8)-(1,11)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (1,8)-(1,11)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,8)-(1,11) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (3,0)-(3,12)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (3,0)-(3,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (3,0)-(3,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (3,3)-(3,5) = "::" - │ ├── name: :Fun - │ ├── message_loc: (3,5)-(3,8) = "Fun" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (3,9)-(3,12)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (3,9)-(3,12)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (3,9)-(3,12) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (5,0)-(5,12)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (5,0)-(5,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (5,0)-(5,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: (5,3)-(5,5) = "::" - ├── name: :fun - ├── message_loc: (5,5)-(5,8) = "fun" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (5,9)-(5,12)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (5,9)-(5,12)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (5,9)-(5,12) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/send_self.txt b/test/prism/snapshots/whitequark/send_self.txt deleted file mode 100644 index f3c56f5413..0000000000 --- a/test/prism/snapshots/whitequark/send_self.txt +++ /dev/null @@ -1,43 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,6)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ CallNode (location: (1,0)-(1,3)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :fun - │ ├── message_loc: (1,0)-(1,3) = "fun" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (3,0)-(3,4)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :fun! - │ ├── message_loc: (3,0)-(3,4) = "fun!" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (5,0)-(5,6)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :fun - ├── message_loc: (5,0)-(5,3) = "fun" - ├── opening_loc: (5,3)-(5,4) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (5,4)-(5,5)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (5,4)-(5,5)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: (5,5)-(5,6) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/send_self_block.txt b/test/prism/snapshots/whitequark/send_self_block.txt deleted file mode 100644 index 2d526d5d48..0000000000 --- a/test/prism/snapshots/whitequark/send_self_block.txt +++ /dev/null @@ -1,81 +0,0 @@ -@ ProgramNode (location: (1,0)-(7,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(7,10)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ CallNode (location: (1,0)-(1,10)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :fun - │ ├── message_loc: (1,0)-(1,3) = "fun" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (1,4)-(1,10)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (1,4)-(1,6) = "do" - │ └── closing_loc: (1,7)-(1,10) = "end" - ├── @ CallNode (location: (3,0)-(3,7)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :fun - │ ├── message_loc: (3,0)-(3,3) = "fun" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (3,4)-(3,7)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (3,4)-(3,5) = "{" - │ └── closing_loc: (3,6)-(3,7) = "}" - ├── @ CallNode (location: (5,0)-(5,9)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :fun - │ ├── message_loc: (5,0)-(5,3) = "fun" - │ ├── opening_loc: (5,3)-(5,4) = "(" - │ ├── arguments: ∅ - │ ├── closing_loc: (5,4)-(5,5) = ")" - │ └── block: - │ @ BlockNode (location: (5,6)-(5,9)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (5,6)-(5,7) = "{" - │ └── closing_loc: (5,8)-(5,9) = "}" - └── @ CallNode (location: (7,0)-(7,10)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :fun - ├── message_loc: (7,0)-(7,3) = "fun" - ├── opening_loc: (7,3)-(7,4) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (7,4)-(7,5)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ IntegerNode (location: (7,4)-(7,5)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── closing_loc: (7,5)-(7,6) = ")" - └── block: - @ BlockNode (location: (7,7)-(7,10)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: ∅ - ├── opening_loc: (7,7)-(7,8) = "{" - └── closing_loc: (7,9)-(7,10) = "}" diff --git a/test/prism/snapshots/whitequark/send_unary_op.txt b/test/prism/snapshots/whitequark/send_unary_op.txt deleted file mode 100644 index 970b78417f..0000000000 --- a/test/prism/snapshots/whitequark/send_unary_op.txt +++ /dev/null @@ -1,67 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,4)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ CallNode (location: (1,0)-(1,4)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (1,1)-(1,4)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,1)-(1,4) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :+@ - │ ├── message_loc: (1,0)-(1,1) = "+" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (3,0)-(3,4)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (3,1)-(3,4)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (3,1)-(3,4) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :-@ - │ ├── message_loc: (3,0)-(3,1) = "-" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (5,0)-(5,4)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (5,1)-(5,4)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (5,1)-(5,4) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :~ - ├── message_loc: (5,0)-(5,1) = "~" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/slash_newline_in_heredocs.txt b/test/prism/snapshots/whitequark/slash_newline_in_heredocs.txt deleted file mode 100644 index bd9fa7916d..0000000000 --- a/test/prism/snapshots/whitequark/slash_newline_in_heredocs.txt +++ /dev/null @@ -1,36 +0,0 @@ -@ ProgramNode (location: (1,0)-(8,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(8,4)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ StringNode (location: (1,0)-(1,4)) - │ ├── flags: newline - │ ├── opening_loc: (1,0)-(1,4) = "<<-E" - │ ├── content_loc: (2,0)-(5,0) = " 1 \\\n 2\n 3\n" - │ ├── closing_loc: (5,0)-(6,0) = "E\n" - │ └── unescaped: " 1 2\n 3\n" - └── @ InterpolatedStringNode (location: (8,0)-(8,4)) - ├── flags: newline, static_literal - ├── opening_loc: (8,0)-(8,4) = "<<~E" - ├── parts: (length: 3) - │ ├── @ StringNode (location: (9,0)-(10,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (9,0)-(10,0) = " 1 \\\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "1 " - │ ├── @ StringNode (location: (10,0)-(11,0)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (10,0)-(11,0) = " 2\n" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "2\n" - │ └── @ StringNode (location: (11,0)-(12,0)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (11,0)-(12,0) = " 3\n" - │ ├── closing_loc: ∅ - │ └── unescaped: "3\n" - └── closing_loc: (12,0)-(13,0) = "E\n" diff --git a/test/prism/snapshots/whitequark/space_args_arg.txt b/test/prism/snapshots/whitequark/space_args_arg.txt deleted file mode 100644 index a0149c5f32..0000000000 --- a/test/prism/snapshots/whitequark/space_args_arg.txt +++ /dev/null @@ -1,31 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,7)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,7)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :fun - ├── message_loc: (1,0)-(1,3) = "fun" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,7)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ ParenthesesNode (location: (1,4)-(1,7)) - │ ├── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,5)-(1,6)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (1,5)-(1,6)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 1 - │ ├── opening_loc: (1,4)-(1,5) = "(" - │ └── closing_loc: (1,6)-(1,7) = ")" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/space_args_arg_block.txt b/test/prism/snapshots/whitequark/space_args_arg_block.txt deleted file mode 100644 index c3289c1448..0000000000 --- a/test/prism/snapshots/whitequark/space_args_arg_block.txt +++ /dev/null @@ -1,120 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,10)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ CallNode (location: (1,0)-(1,14)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (1,0)-(1,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,0)-(1,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (1,3)-(1,4) = "." - │ ├── name: :fun - │ ├── message_loc: (1,4)-(1,7) = "fun" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,8)-(1,11)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ ParenthesesNode (location: (1,8)-(1,11)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (1,9)-(1,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ IntegerNode (location: (1,9)-(1,10)) - │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── opening_loc: (1,8)-(1,9) = "(" - │ │ └── closing_loc: (1,10)-(1,11) = ")" - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (1,12)-(1,14)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (1,12)-(1,13) = "{" - │ └── closing_loc: (1,13)-(1,14) = "}" - ├── @ CallNode (location: (3,0)-(3,15)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (3,0)-(3,3)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (3,0)-(3,3) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: (3,3)-(3,5) = "::" - │ ├── name: :fun - │ ├── message_loc: (3,5)-(3,8) = "fun" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (3,9)-(3,12)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ ParenthesesNode (location: (3,9)-(3,12)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (3,10)-(3,11)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ IntegerNode (location: (3,10)-(3,11)) - │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── opening_loc: (3,9)-(3,10) = "(" - │ │ └── closing_loc: (3,11)-(3,12) = ")" - │ ├── closing_loc: ∅ - │ └── block: - │ @ BlockNode (location: (3,13)-(3,15)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (3,13)-(3,14) = "{" - │ └── closing_loc: (3,14)-(3,15) = "}" - └── @ CallNode (location: (5,0)-(5,10)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :fun - ├── message_loc: (5,0)-(5,3) = "fun" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (5,4)-(5,7)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ ParenthesesNode (location: (5,4)-(5,7)) - │ ├── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (5,5)-(5,6)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (5,5)-(5,6)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 1 - │ ├── opening_loc: (5,4)-(5,5) = "(" - │ └── closing_loc: (5,6)-(5,7) = ")" - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (5,8)-(5,10)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: ∅ - ├── opening_loc: (5,8)-(5,9) = "{" - └── closing_loc: (5,9)-(5,10) = "}" diff --git a/test/prism/snapshots/whitequark/space_args_arg_call.txt b/test/prism/snapshots/whitequark/space_args_arg_call.txt deleted file mode 100644 index 538a865e2a..0000000000 --- a/test/prism/snapshots/whitequark/space_args_arg_call.txt +++ /dev/null @@ -1,41 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,12)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :fun - ├── message_loc: (1,0)-(1,3) = "fun" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,12)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (1,4)-(1,12)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ ParenthesesNode (location: (1,4)-(1,7)) - │ │ ├── flags: ∅ - │ │ ├── body: - │ │ │ @ StatementsNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ IntegerNode (location: (1,5)-(1,6)) - │ │ │ ├── flags: newline, static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── opening_loc: (1,4)-(1,5) = "(" - │ │ └── closing_loc: (1,6)-(1,7) = ")" - │ ├── call_operator_loc: (1,7)-(1,8) = "." - │ ├── name: :to_i - │ ├── message_loc: (1,8)-(1,12) = "to_i" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/space_args_arg_newline.txt b/test/prism/snapshots/whitequark/space_args_arg_newline.txt deleted file mode 100644 index d3fbe23299..0000000000 --- a/test/prism/snapshots/whitequark/space_args_arg_newline.txt +++ /dev/null @@ -1,31 +0,0 @@ -@ ProgramNode (location: (1,0)-(2,1)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(2,1)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(2,1)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :fun - ├── message_loc: (1,0)-(1,3) = "fun" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(2,1)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ ParenthesesNode (location: (1,4)-(2,1)) - │ ├── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,5)-(1,6)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (1,5)-(1,6)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 1 - │ ├── opening_loc: (1,4)-(1,5) = "(" - │ └── closing_loc: (2,0)-(2,1) = ")" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/space_args_block.txt b/test/prism/snapshots/whitequark/space_args_block.txt deleted file mode 100644 index 19b5064886..0000000000 --- a/test/prism/snapshots/whitequark/space_args_block.txt +++ /dev/null @@ -1,32 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,9)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,9)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,9)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :fun - ├── message_loc: (1,0)-(1,3) = "fun" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,6)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ ParenthesesNode (location: (1,4)-(1,6)) - │ ├── flags: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (1,4)-(1,5) = "(" - │ └── closing_loc: (1,5)-(1,6) = ")" - ├── closing_loc: ∅ - └── block: - @ BlockNode (location: (1,7)-(1,9)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: ∅ - ├── opening_loc: (1,7)-(1,8) = "{" - └── closing_loc: (1,8)-(1,9) = "}" diff --git a/test/prism/snapshots/whitequark/space_args_cmd.txt b/test/prism/snapshots/whitequark/space_args_cmd.txt deleted file mode 100644 index f91b7edbbe..0000000000 --- a/test/prism/snapshots/whitequark/space_args_cmd.txt +++ /dev/null @@ -1,51 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,11)) - ├── flags: newline, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :fun - ├── message_loc: (1,0)-(1,3) = "fun" - ├── opening_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (1,4)-(1,11)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ ParenthesesNode (location: (1,4)-(1,11)) - │ ├── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,5)-(1,10)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,5)-(1,10)) - │ │ ├── flags: newline, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :f - │ │ ├── message_loc: (1,5)-(1,6) = "f" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (1,7)-(1,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ CallNode (location: (1,7)-(1,10)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (1,7)-(1,10) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (1,4)-(1,5) = "(" - │ └── closing_loc: (1,10)-(1,11) = ")" - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/string___FILE__.txt b/test/prism/snapshots/whitequark/string___FILE__.txt deleted file mode 100644 index 98cd05e689..0000000000 --- a/test/prism/snapshots/whitequark/string___FILE__.txt +++ /dev/null @@ -1,10 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ SourceFileNode (location: (1,0)-(1,8)) - ├── flags: newline - └── filepath: "whitequark/string___FILE__.txt" diff --git a/test/prism/snapshots/whitequark/string_concat.txt b/test/prism/snapshots/whitequark/string_concat.txt deleted file mode 100644 index 1320fae371..0000000000 --- a/test/prism/snapshots/whitequark/string_concat.txt +++ /dev/null @@ -1,36 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(1,14)) - ├── flags: newline - ├── opening_loc: ∅ - ├── parts: (length: 2) - │ ├── @ InterpolatedStringNode (location: (1,0)-(1,8)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,0)-(1,1) = "\"" - │ │ ├── parts: (length: 2) - │ │ │ ├── @ StringNode (location: (1,1)-(1,4)) - │ │ │ │ ├── flags: static_literal, frozen - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── content_loc: (1,1)-(1,4) = "foo" - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── unescaped: "foo" - │ │ │ └── @ EmbeddedVariableNode (location: (1,4)-(1,7)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (1,4)-(1,5) = "#" - │ │ │ └── variable: - │ │ │ @ InstanceVariableReadNode (location: (1,5)-(1,7)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :@a - │ │ └── closing_loc: (1,7)-(1,8) = "\"" - │ └── @ StringNode (location: (1,9)-(1,14)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: (1,9)-(1,10) = "\"" - │ ├── content_loc: (1,10)-(1,13) = "bar" - │ ├── closing_loc: (1,13)-(1,14) = "\"" - │ └── unescaped: "bar" - └── closing_loc: ∅ diff --git a/test/prism/snapshots/whitequark/string_dvar.txt b/test/prism/snapshots/whitequark/string_dvar.txt deleted file mode 100644 index ab11f00013..0000000000 --- a/test/prism/snapshots/whitequark/string_dvar.txt +++ /dev/null @@ -1,45 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(1,14)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,1) = "\"" - ├── parts: (length: 5) - │ ├── @ EmbeddedVariableNode (location: (1,1)-(1,4)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (1,1)-(1,2) = "#" - │ │ └── variable: - │ │ @ InstanceVariableReadNode (location: (1,2)-(1,4)) - │ │ ├── flags: ∅ - │ │ └── name: :@a - │ ├── @ StringNode (location: (1,4)-(1,5)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (1,4)-(1,5) = " " - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: " " - │ ├── @ EmbeddedVariableNode (location: (1,5)-(1,9)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (1,5)-(1,6) = "#" - │ │ └── variable: - │ │ @ ClassVariableReadNode (location: (1,6)-(1,9)) - │ │ ├── flags: ∅ - │ │ └── name: :@@a - │ ├── @ StringNode (location: (1,9)-(1,10)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (1,9)-(1,10) = " " - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: " " - │ └── @ EmbeddedVariableNode (location: (1,10)-(1,13)) - │ ├── flags: ∅ - │ ├── operator_loc: (1,10)-(1,11) = "#" - │ └── variable: - │ @ GlobalVariableReadNode (location: (1,11)-(1,13)) - │ ├── flags: ∅ - │ └── name: :$a - └── closing_loc: (1,13)-(1,14) = "\"" diff --git a/test/prism/snapshots/whitequark/string_interp.txt b/test/prism/snapshots/whitequark/string_interp.txt deleted file mode 100644 index 22ddaed0cd..0000000000 --- a/test/prism/snapshots/whitequark/string_interp.txt +++ /dev/null @@ -1,42 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedStringNode (location: (1,0)-(1,14)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,1) = "\"" - ├── parts: (length: 3) - │ ├── @ StringNode (location: (1,1)-(1,4)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (1,1)-(1,4) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ ├── @ EmbeddedStatementsNode (location: (1,4)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,4)-(1,6) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,6)-(1,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (1,6)-(1,9)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (1,6)-(1,9) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── closing_loc: (1,9)-(1,10) = "}" - │ └── @ StringNode (location: (1,10)-(1,13)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (1,10)-(1,13) = "baz" - │ ├── closing_loc: ∅ - │ └── unescaped: "baz" - └── closing_loc: (1,13)-(1,14) = "\"" diff --git a/test/prism/snapshots/whitequark/string_plain.txt b/test/prism/snapshots/whitequark/string_plain.txt deleted file mode 100644 index 0a763cef60..0000000000 --- a/test/prism/snapshots/whitequark/string_plain.txt +++ /dev/null @@ -1,19 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,8)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ StringNode (location: (1,0)-(1,10)) - │ ├── flags: newline - │ ├── opening_loc: (1,0)-(1,3) = "%q(" - │ ├── content_loc: (1,3)-(1,9) = "foobar" - │ ├── closing_loc: (1,9)-(1,10) = ")" - │ └── unescaped: "foobar" - └── @ StringNode (location: (3,0)-(3,8)) - ├── flags: newline - ├── opening_loc: (3,0)-(3,1) = "'" - ├── content_loc: (3,1)-(3,7) = "foobar" - ├── closing_loc: (3,7)-(3,8) = "'" - └── unescaped: "foobar" diff --git a/test/prism/snapshots/whitequark/super.txt b/test/prism/snapshots/whitequark/super.txt deleted file mode 100644 index da89dbda28..0000000000 --- a/test/prism/snapshots/whitequark/super.txt +++ /dev/null @@ -1,54 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,10)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ SuperNode (location: (1,0)-(1,9)) - │ ├── flags: newline - │ ├── keyword_loc: (1,0)-(1,5) = "super" - │ ├── lparen_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,6)-(1,9)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ CallNode (location: (1,6)-(1,9)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,6)-(1,9) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── rparen_loc: ∅ - │ └── block: ∅ - ├── @ SuperNode (location: (3,0)-(3,7)) - │ ├── flags: newline - │ ├── keyword_loc: (3,0)-(3,5) = "super" - │ ├── lparen_loc: (3,5)-(3,6) = "(" - │ ├── arguments: ∅ - │ ├── rparen_loc: (3,6)-(3,7) = ")" - │ └── block: ∅ - └── @ SuperNode (location: (5,0)-(5,10)) - ├── flags: newline - ├── keyword_loc: (5,0)-(5,5) = "super" - ├── lparen_loc: (5,5)-(5,6) = "(" - ├── arguments: - │ @ ArgumentsNode (location: (5,6)-(5,9)) - │ ├── flags: ∅ - │ └── arguments: (length: 1) - │ └── @ CallNode (location: (5,6)-(5,9)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (5,6)-(5,9) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── rparen_loc: (5,9)-(5,10) = ")" - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/super_block.txt b/test/prism/snapshots/whitequark/super_block.txt deleted file mode 100644 index 095856ef40..0000000000 --- a/test/prism/snapshots/whitequark/super_block.txt +++ /dev/null @@ -1,54 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,21)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,21)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ ForwardingSuperNode (location: (1,0)-(1,12)) - │ ├── flags: newline - │ └── block: - │ @ BlockNode (location: (1,6)-(1,12)) - │ ├── flags: ∅ - │ ├── locals: [] - │ ├── parameters: ∅ - │ ├── body: ∅ - │ ├── opening_loc: (1,6)-(1,8) = "do" - │ └── closing_loc: (1,9)-(1,12) = "end" - └── @ SuperNode (location: (3,0)-(3,21)) - ├── flags: newline - ├── keyword_loc: (3,0)-(3,5) = "super" - ├── lparen_loc: ∅ - ├── arguments: - │ @ ArgumentsNode (location: (3,6)-(3,14)) - │ ├── flags: ∅ - │ └── arguments: (length: 2) - │ ├── @ CallNode (location: (3,6)-(3,9)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (3,6)-(3,9) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── @ CallNode (location: (3,11)-(3,14)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (3,11)-(3,14) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── rparen_loc: ∅ - └── block: - @ BlockNode (location: (3,15)-(3,21)) - ├── flags: ∅ - ├── locals: [] - ├── parameters: ∅ - ├── body: ∅ - ├── opening_loc: (3,15)-(3,17) = "do" - └── closing_loc: (3,18)-(3,21) = "end" diff --git a/test/prism/snapshots/whitequark/symbol_interp.txt b/test/prism/snapshots/whitequark/symbol_interp.txt deleted file mode 100644 index 46a24b6c7e..0000000000 --- a/test/prism/snapshots/whitequark/symbol_interp.txt +++ /dev/null @@ -1,42 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,15)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,15)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedSymbolNode (location: (1,0)-(1,15)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,2) = ":\"" - ├── parts: (length: 3) - │ ├── @ StringNode (location: (1,2)-(1,5)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (1,2)-(1,5) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ ├── @ EmbeddedStatementsNode (location: (1,5)-(1,11)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,5)-(1,7) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,7)-(1,10)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (1,7)-(1,10)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (1,7)-(1,10) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── closing_loc: (1,10)-(1,11) = "}" - │ └── @ StringNode (location: (1,11)-(1,14)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (1,11)-(1,14) = "baz" - │ ├── closing_loc: ∅ - │ └── unescaped: "baz" - └── closing_loc: (1,14)-(1,15) = "\"" diff --git a/test/prism/snapshots/whitequark/symbol_plain.txt b/test/prism/snapshots/whitequark/symbol_plain.txt deleted file mode 100644 index 803f2847cd..0000000000 --- a/test/prism/snapshots/whitequark/symbol_plain.txt +++ /dev/null @@ -1,19 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,4)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ SymbolNode (location: (1,0)-(1,6)) - │ ├── flags: newline, static_literal, forced_us_ascii_encoding - │ ├── opening_loc: (1,0)-(1,2) = ":'" - │ ├── value_loc: (1,2)-(1,5) = "foo" - │ ├── closing_loc: (1,5)-(1,6) = "'" - │ └── unescaped: "foo" - └── @ SymbolNode (location: (3,0)-(3,4)) - ├── flags: newline, static_literal, forced_us_ascii_encoding - ├── opening_loc: (3,0)-(3,1) = ":" - ├── value_loc: (3,1)-(3,4) = "foo" - ├── closing_loc: ∅ - └── unescaped: "foo" diff --git a/test/prism/snapshots/whitequark/ternary.txt b/test/prism/snapshots/whitequark/ternary.txt deleted file mode 100644 index 4aa7991675..0000000000 --- a/test/prism/snapshots/whitequark/ternary.txt +++ /dev/null @@ -1,42 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,11)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,11)) - ├── flags: ∅ - └── body: (length: 1) - └── @ IfNode (location: (1,0)-(1,11)) - ├── flags: newline - ├── if_keyword_loc: ∅ - ├── predicate: - │ @ CallNode (location: (1,0)-(1,3)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,0)-(1,3) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── then_keyword_loc: (1,4)-(1,5) = "?" - ├── statements: - │ @ StatementsNode (location: (1,6)-(1,7)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ IntegerNode (location: (1,6)-(1,7)) - │ ├── flags: newline, static_literal, decimal - │ └── value: 1 - ├── subsequent: - │ @ ElseNode (location: (1,8)-(1,11)) - │ ├── flags: ∅ - │ ├── else_keyword_loc: (1,8)-(1,9) = ":" - │ ├── statements: - │ │ @ StatementsNode (location: (1,10)-(1,11)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ IntegerNode (location: (1,10)-(1,11)) - │ │ ├── flags: newline, static_literal, decimal - │ │ └── value: 2 - │ └── end_keyword_loc: ∅ - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/whitequark/ternary_ambiguous_symbol.txt b/test/prism/snapshots/whitequark/ternary_ambiguous_symbol.txt deleted file mode 100644 index 4d1900fc5f..0000000000 --- a/test/prism/snapshots/whitequark/ternary_ambiguous_symbol.txt +++ /dev/null @@ -1,61 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,13)) -├── flags: ∅ -├── locals: [:t] -└── statements: - @ StatementsNode (location: (1,0)-(1,13)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ LocalVariableWriteNode (location: (1,0)-(1,3)) - │ ├── flags: newline - │ ├── name: :t - │ ├── depth: 0 - │ ├── name_loc: (1,0)-(1,1) = "t" - │ ├── value: - │ │ @ IntegerNode (location: (1,2)-(1,3)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── operator_loc: (1,1)-(1,2) = "=" - └── @ IfNode (location: (1,4)-(1,13)) - ├── flags: newline - ├── if_keyword_loc: ∅ - ├── predicate: - │ @ ParenthesesNode (location: (1,4)-(1,9)) - │ ├── flags: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,5)-(1,8)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,5)-(1,8)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,5)-(1,8) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── opening_loc: (1,4)-(1,5) = "(" - │ └── closing_loc: (1,8)-(1,9) = ")" - ├── then_keyword_loc: (1,9)-(1,10) = "?" - ├── statements: - │ @ StatementsNode (location: (1,10)-(1,11)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ LocalVariableReadNode (location: (1,10)-(1,11)) - │ ├── flags: newline - │ ├── name: :t - │ └── depth: 0 - ├── subsequent: - │ @ ElseNode (location: (1,11)-(1,13)) - │ ├── flags: ∅ - │ ├── else_keyword_loc: (1,11)-(1,12) = ":" - │ ├── statements: - │ │ @ StatementsNode (location: (1,12)-(1,13)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ ConstantReadNode (location: (1,12)-(1,13)) - │ │ ├── flags: newline - │ │ └── name: :T - │ └── end_keyword_loc: ∅ - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/whitequark/trailing_forward_arg.txt b/test/prism/snapshots/whitequark/trailing_forward_arg.txt deleted file mode 100644 index 75fce37a34..0000000000 --- a/test/prism/snapshots/whitequark/trailing_forward_arg.txt +++ /dev/null @@ -1,63 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,40)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,40)) - ├── flags: ∅ - └── body: (length: 1) - └── @ DefNode (location: (1,0)-(1,40)) - ├── flags: newline - ├── name: :foo - ├── name_loc: (1,4)-(1,7) = "foo" - ├── receiver: ∅ - ├── parameters: - │ @ ParametersNode (location: (1,8)-(1,17)) - │ ├── flags: ∅ - │ ├── requireds: (length: 2) - │ │ ├── @ RequiredParameterNode (location: (1,8)-(1,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── name: :a - │ │ └── @ RequiredParameterNode (location: (1,11)-(1,12)) - │ │ ├── flags: ∅ - │ │ └── name: :b - │ ├── optionals: (length: 0) - │ ├── rest: ∅ - │ ├── posts: (length: 0) - │ ├── keywords: (length: 0) - │ ├── keyword_rest: - │ │ @ ForwardingParameterNode (location: (1,14)-(1,17)) - │ │ └── flags: ∅ - │ └── block: ∅ - ├── body: - │ @ StatementsNode (location: (1,20)-(1,35)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,20)-(1,35)) - │ ├── flags: newline, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (1,20)-(1,23) = "bar" - │ ├── opening_loc: (1,23)-(1,24) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,24)-(1,34)) - │ │ ├── flags: contains_forwarding - │ │ └── arguments: (length: 3) - │ │ ├── @ LocalVariableReadNode (location: (1,24)-(1,25)) - │ │ │ ├── flags: ∅ - │ │ │ ├── name: :a - │ │ │ └── depth: 0 - │ │ ├── @ IntegerNode (location: (1,27)-(1,29)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 42 - │ │ └── @ ForwardingArgumentsNode (location: (1,31)-(1,34)) - │ │ └── flags: ∅ - │ ├── closing_loc: (1,34)-(1,35) = ")" - │ └── block: ∅ - ├── locals: [:a, :b] - ├── def_keyword_loc: (1,0)-(1,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: (1,7)-(1,8) = "(" - ├── rparen_loc: (1,17)-(1,18) = ")" - ├── equal_loc: ∅ - └── end_keyword_loc: (1,37)-(1,40) = "end" diff --git a/test/prism/snapshots/whitequark/true.txt b/test/prism/snapshots/whitequark/true.txt deleted file mode 100644 index ba705338ba..0000000000 --- a/test/prism/snapshots/whitequark/true.txt +++ /dev/null @@ -1,9 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ TrueNode (location: (1,0)-(1,4)) - └── flags: newline, static_literal diff --git a/test/prism/snapshots/whitequark/unary_num_pow_precedence.txt b/test/prism/snapshots/whitequark/unary_num_pow_precedence.txt deleted file mode 100644 index 0f2fb776b4..0000000000 --- a/test/prism/snapshots/whitequark/unary_num_pow_precedence.txt +++ /dev/null @@ -1,84 +0,0 @@ -@ ProgramNode (location: (1,0)-(5,10)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(5,10)) - ├── flags: ∅ - └── body: (length: 3) - ├── @ CallNode (location: (1,0)-(1,10)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ FloatNode (location: (1,0)-(1,4)) - │ │ ├── flags: static_literal - │ │ └── value: 2.0 - │ ├── call_operator_loc: ∅ - │ ├── name: :** - │ ├── message_loc: (1,5)-(1,7) = "**" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,8)-(1,10)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (1,8)-(1,10)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 10 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── @ CallNode (location: (3,0)-(3,8)) - │ ├── flags: newline - │ ├── receiver: - │ │ @ CallNode (location: (3,1)-(3,8)) - │ │ ├── flags: ∅ - │ │ ├── receiver: - │ │ │ @ IntegerNode (location: (3,1)-(3,2)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :** - │ │ ├── message_loc: (3,3)-(3,5) = "**" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (3,6)-(3,8)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (3,6)-(3,8)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 10 - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :-@ - │ ├── message_loc: (3,0)-(3,1) = "-" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ CallNode (location: (5,0)-(5,10)) - ├── flags: newline - ├── receiver: - │ @ CallNode (location: (5,1)-(5,10)) - │ ├── flags: ∅ - │ ├── receiver: - │ │ @ FloatNode (location: (5,1)-(5,4)) - │ │ ├── flags: static_literal - │ │ └── value: 2.0 - │ ├── call_operator_loc: ∅ - │ ├── name: :** - │ ├── message_loc: (5,5)-(5,7) = "**" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (5,8)-(5,10)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ IntegerNode (location: (5,8)-(5,10)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 10 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── call_operator_loc: ∅ - ├── name: :-@ - ├── message_loc: (5,0)-(5,1) = "-" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/undef.txt b/test/prism/snapshots/whitequark/undef.txt deleted file mode 100644 index a24ba2f868..0000000000 --- a/test/prism/snapshots/whitequark/undef.txt +++ /dev/null @@ -1,45 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,27)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,27)) - ├── flags: ∅ - └── body: (length: 1) - └── @ UndefNode (location: (1,0)-(1,27)) - ├── flags: newline - ├── names: (length: 3) - │ ├── @ SymbolNode (location: (1,6)-(1,9)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: ∅ - │ │ ├── value_loc: (1,6)-(1,9) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ ├── @ SymbolNode (location: (1,11)-(1,15)) - │ │ ├── flags: static_literal, forced_us_ascii_encoding - │ │ ├── opening_loc: (1,11)-(1,12) = ":" - │ │ ├── value_loc: (1,12)-(1,15) = "bar" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "bar" - │ └── @ InterpolatedSymbolNode (location: (1,17)-(1,27)) - │ ├── flags: ∅ - │ ├── opening_loc: (1,17)-(1,19) = ":\"" - │ ├── parts: (length: 2) - │ │ ├── @ StringNode (location: (1,19)-(1,22)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (1,19)-(1,22) = "foo" - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo" - │ │ └── @ EmbeddedStatementsNode (location: (1,22)-(1,26)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,22)-(1,24) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,24)-(1,25)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ IntegerNode (location: (1,24)-(1,25)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── closing_loc: (1,25)-(1,26) = "}" - │ └── closing_loc: (1,26)-(1,27) = "\"" - └── keyword_loc: (1,0)-(1,5) = "undef" diff --git a/test/prism/snapshots/whitequark/unless.txt b/test/prism/snapshots/whitequark/unless.txt deleted file mode 100644 index 3d417e355d..0000000000 --- a/test/prism/snapshots/whitequark/unless.txt +++ /dev/null @@ -1,69 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,20)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,20)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ UnlessNode (location: (1,0)-(1,24)) - │ ├── flags: newline - │ ├── keyword_loc: (1,0)-(1,6) = "unless" - │ ├── predicate: - │ │ @ CallNode (location: (1,7)-(1,10)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,7)-(1,10) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: (1,11)-(1,15) = "then" - │ ├── statements: - │ │ @ StatementsNode (location: (1,16)-(1,19)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,16)-(1,19)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,16)-(1,19) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── else_clause: ∅ - │ └── end_keyword_loc: (1,21)-(1,24) = "end" - └── @ UnlessNode (location: (3,0)-(3,20)) - ├── flags: newline - ├── keyword_loc: (3,0)-(3,6) = "unless" - ├── predicate: - │ @ CallNode (location: (3,7)-(3,10)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (3,7)-(3,10) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── then_keyword_loc: ∅ - ├── statements: - │ @ StatementsNode (location: (3,12)-(3,15)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (3,12)-(3,15)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (3,12)-(3,15) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── else_clause: ∅ - └── end_keyword_loc: (3,17)-(3,20) = "end" diff --git a/test/prism/snapshots/whitequark/unless_else.txt b/test/prism/snapshots/whitequark/unless_else.txt deleted file mode 100644 index ffdb215692..0000000000 --- a/test/prism/snapshots/whitequark/unless_else.txt +++ /dev/null @@ -1,105 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,30)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,30)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ UnlessNode (location: (1,0)-(1,34)) - │ ├── flags: newline - │ ├── keyword_loc: (1,0)-(1,6) = "unless" - │ ├── predicate: - │ │ @ CallNode (location: (1,7)-(1,10)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,7)-(1,10) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: (1,11)-(1,15) = "then" - │ ├── statements: - │ │ @ StatementsNode (location: (1,16)-(1,19)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,16)-(1,19)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,16)-(1,19) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── else_clause: - │ │ @ ElseNode (location: (1,21)-(1,34)) - │ │ ├── flags: ∅ - │ │ ├── else_keyword_loc: (1,21)-(1,25) = "else" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,26)-(1,29)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (1,26)-(1,29)) - │ │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (1,26)-(1,29) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── end_keyword_loc: (1,31)-(1,34) = "end" - │ └── end_keyword_loc: (1,31)-(1,34) = "end" - └── @ UnlessNode (location: (3,0)-(3,30)) - ├── flags: newline - ├── keyword_loc: (3,0)-(3,6) = "unless" - ├── predicate: - │ @ CallNode (location: (3,7)-(3,10)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (3,7)-(3,10) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── then_keyword_loc: ∅ - ├── statements: - │ @ StatementsNode (location: (3,12)-(3,15)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (3,12)-(3,15)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (3,12)-(3,15) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── else_clause: - │ @ ElseNode (location: (3,17)-(3,30)) - │ ├── flags: ∅ - │ ├── else_keyword_loc: (3,17)-(3,21) = "else" - │ ├── statements: - │ │ @ StatementsNode (location: (3,22)-(3,25)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (3,22)-(3,25)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :baz - │ │ ├── message_loc: (3,22)-(3,25) = "baz" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── end_keyword_loc: (3,27)-(3,30) = "end" - └── end_keyword_loc: (3,27)-(3,30) = "end" diff --git a/test/prism/snapshots/whitequark/unless_mod.txt b/test/prism/snapshots/whitequark/unless_mod.txt deleted file mode 100644 index 5dd1c2d25d..0000000000 --- a/test/prism/snapshots/whitequark/unless_mod.txt +++ /dev/null @@ -1,38 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ UnlessNode (location: (1,0)-(1,14)) - ├── flags: newline - ├── keyword_loc: (1,4)-(1,10) = "unless" - ├── predicate: - │ @ CallNode (location: (1,11)-(1,14)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,11)-(1,14) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── then_keyword_loc: ∅ - ├── statements: - │ @ StatementsNode (location: (1,0)-(1,3)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,0)-(1,3)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (1,0)-(1,3) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── else_clause: ∅ - └── end_keyword_loc: ∅ diff --git a/test/prism/snapshots/whitequark/until.txt b/test/prism/snapshots/whitequark/until.txt deleted file mode 100644 index 0a0f2b35be..0000000000 --- a/test/prism/snapshots/whitequark/until.txt +++ /dev/null @@ -1,65 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,19)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,19)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ UntilNode (location: (1,0)-(1,21)) - │ ├── flags: newline - │ ├── keyword_loc: (1,0)-(1,5) = "until" - │ ├── closing_loc: (1,18)-(1,21) = "end" - │ ├── predicate: - │ │ @ CallNode (location: (1,6)-(1,9)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,6)-(1,9) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── statements: - │ @ StatementsNode (location: (1,13)-(1,17)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,13)-(1,17)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :meth - │ ├── message_loc: (1,13)-(1,17) = "meth" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ UntilNode (location: (3,0)-(3,19)) - ├── flags: newline - ├── keyword_loc: (3,0)-(3,5) = "until" - ├── closing_loc: (3,16)-(3,19) = "end" - ├── predicate: - │ @ CallNode (location: (3,6)-(3,9)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (3,6)-(3,9) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── statements: - @ StatementsNode (location: (3,11)-(3,15)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (3,11)-(3,15)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :meth - ├── message_loc: (3,11)-(3,15) = "meth" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/until_mod.txt b/test/prism/snapshots/whitequark/until_mod.txt deleted file mode 100644 index f491018524..0000000000 --- a/test/prism/snapshots/whitequark/until_mod.txt +++ /dev/null @@ -1,36 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ UntilNode (location: (1,0)-(1,14)) - ├── flags: newline - ├── keyword_loc: (1,5)-(1,10) = "until" - ├── closing_loc: ∅ - ├── predicate: - │ @ CallNode (location: (1,11)-(1,14)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,11)-(1,14) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,4)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :meth - ├── message_loc: (1,0)-(1,4) = "meth" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/until_post.txt b/test/prism/snapshots/whitequark/until_post.txt deleted file mode 100644 index c5efd5ebe7..0000000000 --- a/test/prism/snapshots/whitequark/until_post.txt +++ /dev/null @@ -1,47 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,24)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,24)) - ├── flags: ∅ - └── body: (length: 1) - └── @ UntilNode (location: (1,0)-(1,24)) - ├── flags: newline, begin_modifier - ├── keyword_loc: (1,15)-(1,20) = "until" - ├── closing_loc: ∅ - ├── predicate: - │ @ CallNode (location: (1,21)-(1,24)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,21)-(1,24) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ BeginNode (location: (1,0)-(1,14)) - ├── flags: newline - ├── begin_keyword_loc: (1,0)-(1,5) = "begin" - ├── statements: - │ @ StatementsNode (location: (1,6)-(1,10)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,6)-(1,10)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :meth - │ ├── message_loc: (1,6)-(1,10) = "meth" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── rescue_clause: ∅ - ├── else_clause: ∅ - ├── ensure_clause: ∅ - └── end_keyword_loc: (1,11)-(1,14) = "end" diff --git a/test/prism/snapshots/whitequark/var_and_asgn.txt b/test/prism/snapshots/whitequark/var_and_asgn.txt deleted file mode 100644 index 1fd4b042bf..0000000000 --- a/test/prism/snapshots/whitequark/var_and_asgn.txt +++ /dev/null @@ -1,17 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,7)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(1,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableAndWriteNode (location: (1,0)-(1,7)) - ├── flags: newline - ├── name_loc: (1,0)-(1,1) = "a" - ├── operator_loc: (1,2)-(1,5) = "&&=" - ├── value: - │ @ IntegerNode (location: (1,6)-(1,7)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── name: :a - └── depth: 0 diff --git a/test/prism/snapshots/whitequark/var_op_asgn.txt b/test/prism/snapshots/whitequark/var_op_asgn.txt deleted file mode 100644 index bc863b31c7..0000000000 --- a/test/prism/snapshots/whitequark/var_op_asgn.txt +++ /dev/null @@ -1,65 +0,0 @@ -@ ProgramNode (location: (1,0)-(7,23)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(7,23)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ ClassVariableOperatorWriteNode (location: (1,0)-(1,11)) - │ ├── flags: newline - │ ├── name: :@@var - │ ├── name_loc: (1,0)-(1,5) = "@@var" - │ ├── binary_operator_loc: (1,6)-(1,8) = "|=" - │ ├── value: - │ │ @ IntegerNode (location: (1,9)-(1,11)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 10 - │ └── binary_operator: :| - ├── @ InstanceVariableOperatorWriteNode (location: (3,0)-(3,7)) - │ ├── flags: newline - │ ├── name: :@a - │ ├── name_loc: (3,0)-(3,2) = "@a" - │ ├── binary_operator_loc: (3,3)-(3,5) = "|=" - │ ├── value: - │ │ @ IntegerNode (location: (3,6)-(3,7)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ └── binary_operator: :| - ├── @ LocalVariableOperatorWriteNode (location: (5,0)-(5,6)) - │ ├── flags: newline - │ ├── name_loc: (5,0)-(5,1) = "a" - │ ├── binary_operator_loc: (5,2)-(5,4) = "+=" - │ ├── value: - │ │ @ IntegerNode (location: (5,5)-(5,6)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 1 - │ ├── name: :a - │ ├── binary_operator: :+ - │ └── depth: 0 - └── @ DefNode (location: (7,0)-(7,23)) - ├── flags: newline - ├── name: :a - ├── name_loc: (7,4)-(7,5) = "a" - ├── receiver: ∅ - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (7,7)-(7,18)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ ClassVariableOperatorWriteNode (location: (7,7)-(7,18)) - │ ├── flags: newline - │ ├── name: :@@var - │ ├── name_loc: (7,7)-(7,12) = "@@var" - │ ├── binary_operator_loc: (7,13)-(7,15) = "|=" - │ ├── value: - │ │ @ IntegerNode (location: (7,16)-(7,18)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 10 - │ └── binary_operator: :| - ├── locals: [] - ├── def_keyword_loc: (7,0)-(7,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (7,20)-(7,23) = "end" diff --git a/test/prism/snapshots/whitequark/var_op_asgn_cmd.txt b/test/prism/snapshots/whitequark/var_op_asgn_cmd.txt deleted file mode 100644 index 381c98a95a..0000000000 --- a/test/prism/snapshots/whitequark/var_op_asgn_cmd.txt +++ /dev/null @@ -1,32 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,12)) -├── flags: ∅ -├── locals: [:foo] -└── statements: - @ StatementsNode (location: (1,0)-(1,12)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableOperatorWriteNode (location: (1,0)-(1,12)) - ├── flags: newline - ├── name_loc: (1,0)-(1,3) = "foo" - ├── binary_operator_loc: (1,4)-(1,6) = "+=" - ├── value: - │ @ CallNode (location: (1,7)-(1,12)) - │ ├── flags: ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :m - │ ├── message_loc: (1,7)-(1,8) = "m" - │ ├── opening_loc: ∅ - │ ├── arguments: - │ │ @ ArgumentsNode (location: (1,9)-(1,12)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 1) - │ │ └── @ LocalVariableReadNode (location: (1,9)-(1,12)) - │ │ ├── flags: ∅ - │ │ ├── name: :foo - │ │ └── depth: 0 - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── name: :foo - ├── binary_operator: :+ - └── depth: 0 diff --git a/test/prism/snapshots/whitequark/var_or_asgn.txt b/test/prism/snapshots/whitequark/var_or_asgn.txt deleted file mode 100644 index 2d034c7f2d..0000000000 --- a/test/prism/snapshots/whitequark/var_or_asgn.txt +++ /dev/null @@ -1,17 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,7)) -├── flags: ∅ -├── locals: [:a] -└── statements: - @ StatementsNode (location: (1,0)-(1,7)) - ├── flags: ∅ - └── body: (length: 1) - └── @ LocalVariableOrWriteNode (location: (1,0)-(1,7)) - ├── flags: newline - ├── name_loc: (1,0)-(1,1) = "a" - ├── operator_loc: (1,2)-(1,5) = "||=" - ├── value: - │ @ IntegerNode (location: (1,6)-(1,7)) - │ ├── flags: static_literal, decimal - │ └── value: 1 - ├── name: :a - └── depth: 0 diff --git a/test/prism/snapshots/whitequark/when_multi.txt b/test/prism/snapshots/whitequark/when_multi.txt deleted file mode 100644 index b4038b74a8..0000000000 --- a/test/prism/snapshots/whitequark/when_multi.txt +++ /dev/null @@ -1,55 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,37)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,37)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(1,37)) - ├── flags: newline - ├── predicate: - │ @ CallNode (location: (1,5)-(1,8)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,5)-(1,8) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── conditions: (length: 1) - │ └── @ WhenNode (location: (1,10)-(1,32)) - │ ├── flags: ∅ - │ ├── keyword_loc: (1,10)-(1,14) = "when" - │ ├── conditions: (length: 2) - │ │ ├── @ StringNode (location: (1,15)-(1,20)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: (1,15)-(1,16) = "'" - │ │ │ ├── content_loc: (1,16)-(1,19) = "bar" - │ │ │ ├── closing_loc: (1,19)-(1,20) = "'" - │ │ │ └── unescaped: "bar" - │ │ └── @ StringNode (location: (1,22)-(1,27)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: (1,22)-(1,23) = "'" - │ │ ├── content_loc: (1,23)-(1,26) = "baz" - │ │ ├── closing_loc: (1,26)-(1,27) = "'" - │ │ └── unescaped: "baz" - │ ├── then_keyword_loc: ∅ - │ └── statements: - │ @ StatementsNode (location: (1,29)-(1,32)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,29)-(1,32)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (1,29)-(1,32) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (1,34)-(1,37) = "end" diff --git a/test/prism/snapshots/whitequark/when_splat.txt b/test/prism/snapshots/whitequark/when_splat.txt deleted file mode 100644 index f5d9080539..0000000000 --- a/test/prism/snapshots/whitequark/when_splat.txt +++ /dev/null @@ -1,80 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,43)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,43)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(1,43)) - ├── flags: newline - ├── predicate: - │ @ CallNode (location: (1,5)-(1,8)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,5)-(1,8) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── conditions: (length: 2) - │ ├── @ WhenNode (location: (1,10)-(1,27)) - │ │ ├── flags: ∅ - │ │ ├── keyword_loc: (1,10)-(1,14) = "when" - │ │ ├── conditions: (length: 2) - │ │ │ ├── @ IntegerNode (location: (1,15)-(1,16)) - │ │ │ │ ├── flags: static_literal, decimal - │ │ │ │ └── value: 1 - │ │ │ └── @ SplatNode (location: (1,18)-(1,22)) - │ │ │ ├── flags: ∅ - │ │ │ ├── operator_loc: (1,18)-(1,19) = "*" - │ │ │ └── expression: - │ │ │ @ CallNode (location: (1,19)-(1,22)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :baz - │ │ │ ├── message_loc: (1,19)-(1,22) = "baz" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ ├── then_keyword_loc: ∅ - │ │ └── statements: - │ │ @ StatementsNode (location: (1,24)-(1,27)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ CallNode (location: (1,24)-(1,27)) - │ │ ├── flags: newline, variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :bar - │ │ ├── message_loc: (1,24)-(1,27) = "bar" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── @ WhenNode (location: (1,29)-(1,38)) - │ ├── flags: ∅ - │ ├── keyword_loc: (1,29)-(1,33) = "when" - │ ├── conditions: (length: 1) - │ │ └── @ SplatNode (location: (1,34)-(1,38)) - │ │ ├── flags: ∅ - │ │ ├── operator_loc: (1,34)-(1,35) = "*" - │ │ └── expression: - │ │ @ CallNode (location: (1,35)-(1,38)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,35)-(1,38) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ ├── then_keyword_loc: ∅ - │ └── statements: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (1,40)-(1,43) = "end" diff --git a/test/prism/snapshots/whitequark/when_then.txt b/test/prism/snapshots/whitequark/when_then.txt deleted file mode 100644 index cb964cfb53..0000000000 --- a/test/prism/snapshots/whitequark/when_then.txt +++ /dev/null @@ -1,49 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,34)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,34)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(1,34)) - ├── flags: newline - ├── predicate: - │ @ CallNode (location: (1,5)-(1,8)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,5)-(1,8) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── conditions: (length: 1) - │ └── @ WhenNode (location: (1,10)-(1,29)) - │ ├── flags: ∅ - │ ├── keyword_loc: (1,10)-(1,14) = "when" - │ ├── conditions: (length: 1) - │ │ └── @ StringNode (location: (1,15)-(1,20)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: (1,15)-(1,16) = "'" - │ │ ├── content_loc: (1,16)-(1,19) = "bar" - │ │ ├── closing_loc: (1,19)-(1,20) = "'" - │ │ └── unescaped: "bar" - │ ├── then_keyword_loc: (1,21)-(1,25) = "then" - │ └── statements: - │ @ StatementsNode (location: (1,26)-(1,29)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,26)-(1,29)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :bar - │ ├── message_loc: (1,26)-(1,29) = "bar" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── else_clause: ∅ - ├── case_keyword_loc: (1,0)-(1,4) = "case" - └── end_keyword_loc: (1,31)-(1,34) = "end" diff --git a/test/prism/snapshots/whitequark/while.txt b/test/prism/snapshots/whitequark/while.txt deleted file mode 100644 index 949a3952d3..0000000000 --- a/test/prism/snapshots/whitequark/while.txt +++ /dev/null @@ -1,65 +0,0 @@ -@ ProgramNode (location: (1,0)-(3,19)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(3,19)) - ├── flags: ∅ - └── body: (length: 2) - ├── @ WhileNode (location: (1,0)-(1,21)) - │ ├── flags: newline - │ ├── keyword_loc: (1,0)-(1,5) = "while" - │ ├── closing_loc: (1,18)-(1,21) = "end" - │ ├── predicate: - │ │ @ CallNode (location: (1,6)-(1,9)) - │ │ ├── flags: variable_call, ignore_visibility - │ │ ├── receiver: ∅ - │ │ ├── call_operator_loc: ∅ - │ │ ├── name: :foo - │ │ ├── message_loc: (1,6)-(1,9) = "foo" - │ │ ├── opening_loc: ∅ - │ │ ├── arguments: ∅ - │ │ ├── closing_loc: ∅ - │ │ └── block: ∅ - │ └── statements: - │ @ StatementsNode (location: (1,13)-(1,17)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,13)-(1,17)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :meth - │ ├── message_loc: (1,13)-(1,17) = "meth" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── @ WhileNode (location: (3,0)-(3,19)) - ├── flags: newline - ├── keyword_loc: (3,0)-(3,5) = "while" - ├── closing_loc: (3,16)-(3,19) = "end" - ├── predicate: - │ @ CallNode (location: (3,6)-(3,9)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (3,6)-(3,9) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── statements: - @ StatementsNode (location: (3,11)-(3,15)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (3,11)-(3,15)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :meth - ├── message_loc: (3,11)-(3,15) = "meth" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/while_mod.txt b/test/prism/snapshots/whitequark/while_mod.txt deleted file mode 100644 index 696163e433..0000000000 --- a/test/prism/snapshots/whitequark/while_mod.txt +++ /dev/null @@ -1,36 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ WhileNode (location: (1,0)-(1,14)) - ├── flags: newline - ├── keyword_loc: (1,5)-(1,10) = "while" - ├── closing_loc: ∅ - ├── predicate: - │ @ CallNode (location: (1,11)-(1,14)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,11)-(1,14) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── statements: - @ StatementsNode (location: (1,0)-(1,4)) - ├── flags: ∅ - └── body: (length: 1) - └── @ CallNode (location: (1,0)-(1,4)) - ├── flags: newline, variable_call, ignore_visibility - ├── receiver: ∅ - ├── call_operator_loc: ∅ - ├── name: :meth - ├── message_loc: (1,0)-(1,4) = "meth" - ├── opening_loc: ∅ - ├── arguments: ∅ - ├── closing_loc: ∅ - └── block: ∅ diff --git a/test/prism/snapshots/whitequark/while_post.txt b/test/prism/snapshots/whitequark/while_post.txt deleted file mode 100644 index 32cef381f1..0000000000 --- a/test/prism/snapshots/whitequark/while_post.txt +++ /dev/null @@ -1,47 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,24)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,24)) - ├── flags: ∅ - └── body: (length: 1) - └── @ WhileNode (location: (1,0)-(1,24)) - ├── flags: newline, begin_modifier - ├── keyword_loc: (1,15)-(1,20) = "while" - ├── closing_loc: ∅ - ├── predicate: - │ @ CallNode (location: (1,21)-(1,24)) - │ ├── flags: variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :foo - │ ├── message_loc: (1,21)-(1,24) = "foo" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - └── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ BeginNode (location: (1,0)-(1,14)) - ├── flags: newline - ├── begin_keyword_loc: (1,0)-(1,5) = "begin" - ├── statements: - │ @ StatementsNode (location: (1,6)-(1,10)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ CallNode (location: (1,6)-(1,10)) - │ ├── flags: newline, variable_call, ignore_visibility - │ ├── receiver: ∅ - │ ├── call_operator_loc: ∅ - │ ├── name: :meth - │ ├── message_loc: (1,6)-(1,10) = "meth" - │ ├── opening_loc: ∅ - │ ├── arguments: ∅ - │ ├── closing_loc: ∅ - │ └── block: ∅ - ├── rescue_clause: ∅ - ├── else_clause: ∅ - ├── ensure_clause: ∅ - └── end_keyword_loc: (1,11)-(1,14) = "end" diff --git a/test/prism/snapshots/whitequark/xstring_interp.txt b/test/prism/snapshots/whitequark/xstring_interp.txt deleted file mode 100644 index 7808b93250..0000000000 --- a/test/prism/snapshots/whitequark/xstring_interp.txt +++ /dev/null @@ -1,42 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,14)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,14)) - ├── flags: ∅ - └── body: (length: 1) - └── @ InterpolatedXStringNode (location: (1,0)-(1,14)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,1) = "`" - ├── parts: (length: 3) - │ ├── @ StringNode (location: (1,1)-(1,4)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (1,1)-(1,4) = "foo" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: "foo" - │ ├── @ EmbeddedStatementsNode (location: (1,4)-(1,10)) - │ │ ├── flags: ∅ - │ │ ├── opening_loc: (1,4)-(1,6) = "\#{" - │ │ ├── statements: - │ │ │ @ StatementsNode (location: (1,6)-(1,9)) - │ │ │ ├── flags: ∅ - │ │ │ └── body: (length: 1) - │ │ │ └── @ CallNode (location: (1,6)-(1,9)) - │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ ├── receiver: ∅ - │ │ │ ├── call_operator_loc: ∅ - │ │ │ ├── name: :bar - │ │ │ ├── message_loc: (1,6)-(1,9) = "bar" - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── arguments: ∅ - │ │ │ ├── closing_loc: ∅ - │ │ │ └── block: ∅ - │ │ └── closing_loc: (1,9)-(1,10) = "}" - │ └── @ StringNode (location: (1,10)-(1,13)) - │ ├── flags: static_literal, frozen - │ ├── opening_loc: ∅ - │ ├── content_loc: (1,10)-(1,13) = "baz" - │ ├── closing_loc: ∅ - │ └── unescaped: "baz" - └── closing_loc: (1,13)-(1,14) = "`" diff --git a/test/prism/snapshots/whitequark/xstring_plain.txt b/test/prism/snapshots/whitequark/xstring_plain.txt deleted file mode 100644 index dae47ddcff..0000000000 --- a/test/prism/snapshots/whitequark/xstring_plain.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,8)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,8)) - ├── flags: ∅ - └── body: (length: 1) - └── @ XStringNode (location: (1,0)-(1,8)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,1) = "`" - ├── content_loc: (1,1)-(1,7) = "foobar" - ├── closing_loc: (1,7)-(1,8) = "`" - └── unescaped: "foobar" diff --git a/test/prism/snapshots/whitequark/zsuper.txt b/test/prism/snapshots/whitequark/zsuper.txt deleted file mode 100644 index f64ecb3594..0000000000 --- a/test/prism/snapshots/whitequark/zsuper.txt +++ /dev/null @@ -1,10 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,5)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,5)) - ├── flags: ∅ - └── body: (length: 1) - └── @ ForwardingSuperNode (location: (1,0)-(1,5)) - ├── flags: newline - └── block: ∅ diff --git a/test/prism/snapshots/xstring.txt b/test/prism/snapshots/xstring.txt deleted file mode 100644 index 837cd581a4..0000000000 --- a/test/prism/snapshots/xstring.txt +++ /dev/null @@ -1,72 +0,0 @@ -@ ProgramNode (location: (1,0)-(13,4)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(13,4)) - ├── flags: ∅ - └── body: (length: 6) - ├── @ XStringNode (location: (1,0)-(1,7)) - │ ├── flags: newline - │ ├── opening_loc: (1,0)-(1,3) = "%x[" - │ ├── content_loc: (1,3)-(1,6) = "foo" - │ ├── closing_loc: (1,6)-(1,7) = "]" - │ └── unescaped: "foo" - ├── @ InterpolatedXStringNode (location: (3,0)-(3,16)) - │ ├── flags: newline - │ ├── opening_loc: (3,0)-(3,1) = "`" - │ ├── parts: (length: 3) - │ │ ├── @ StringNode (location: (3,1)-(3,5)) - │ │ │ ├── flags: static_literal, frozen - │ │ │ ├── opening_loc: ∅ - │ │ │ ├── content_loc: (3,1)-(3,5) = "foo " - │ │ │ ├── closing_loc: ∅ - │ │ │ └── unescaped: "foo " - │ │ ├── @ EmbeddedStatementsNode (location: (3,5)-(3,11)) - │ │ │ ├── flags: ∅ - │ │ │ ├── opening_loc: (3,5)-(3,7) = "\#{" - │ │ │ ├── statements: - │ │ │ │ @ StatementsNode (location: (3,7)-(3,10)) - │ │ │ │ ├── flags: ∅ - │ │ │ │ └── body: (length: 1) - │ │ │ │ └── @ CallNode (location: (3,7)-(3,10)) - │ │ │ │ ├── flags: variable_call, ignore_visibility - │ │ │ │ ├── receiver: ∅ - │ │ │ │ ├── call_operator_loc: ∅ - │ │ │ │ ├── name: :bar - │ │ │ │ ├── message_loc: (3,7)-(3,10) = "bar" - │ │ │ │ ├── opening_loc: ∅ - │ │ │ │ ├── arguments: ∅ - │ │ │ │ ├── closing_loc: ∅ - │ │ │ │ └── block: ∅ - │ │ │ └── closing_loc: (3,10)-(3,11) = "}" - │ │ └── @ StringNode (location: (3,11)-(3,15)) - │ │ ├── flags: static_literal, frozen - │ │ ├── opening_loc: ∅ - │ │ ├── content_loc: (3,11)-(3,15) = " baz" - │ │ ├── closing_loc: ∅ - │ │ └── unescaped: " baz" - │ └── closing_loc: (3,15)-(3,16) = "`" - ├── @ XStringNode (location: (5,0)-(5,5)) - │ ├── flags: newline - │ ├── opening_loc: (5,0)-(5,1) = "`" - │ ├── content_loc: (5,1)-(5,4) = "foo" - │ ├── closing_loc: (5,4)-(5,5) = "`" - │ └── unescaped: "foo" - ├── @ XStringNode (location: (7,0)-(9,1)) - │ ├── flags: newline - │ ├── opening_loc: (7,0)-(7,3) = "%x{" - │ ├── content_loc: (7,3)-(9,0) = "\n foo\n" - │ ├── closing_loc: (9,0)-(9,1) = "}" - │ └── unescaped: "\n foo\n" - ├── @ XStringNode (location: (11,0)-(11,2)) - │ ├── flags: newline - │ ├── opening_loc: (11,0)-(11,1) = "`" - │ ├── content_loc: (11,1)-(11,1) = "" - │ ├── closing_loc: (11,1)-(11,2) = "`" - │ └── unescaped: "" - └── @ XStringNode (location: (13,0)-(13,4)) - ├── flags: newline - ├── opening_loc: (13,0)-(13,3) = "%x{" - ├── content_loc: (13,3)-(13,3) = "" - ├── closing_loc: (13,3)-(13,4) = "}" - └── unescaped: "" diff --git a/test/prism/snapshots/xstring_with_backslash.txt b/test/prism/snapshots/xstring_with_backslash.txt deleted file mode 100644 index ca58f5cd40..0000000000 --- a/test/prism/snapshots/xstring_with_backslash.txt +++ /dev/null @@ -1,13 +0,0 @@ -@ ProgramNode (location: (1,0)-(1,6)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(1,6)) - ├── flags: ∅ - └── body: (length: 1) - └── @ XStringNode (location: (1,0)-(1,6)) - ├── flags: newline - ├── opening_loc: (1,0)-(1,1) = "`" - ├── content_loc: (1,1)-(1,5) = "f\\oo" - ├── closing_loc: (1,5)-(1,6) = "`" - └── unescaped: "foo" diff --git a/test/prism/snapshots/yield.txt b/test/prism/snapshots/yield.txt deleted file mode 100644 index c62751b8e6..0000000000 --- a/test/prism/snapshots/yield.txt +++ /dev/null @@ -1,117 +0,0 @@ -@ ProgramNode (location: (1,0)-(7,28)) -├── flags: ∅ -├── locals: [] -└── statements: - @ StatementsNode (location: (1,0)-(7,28)) - ├── flags: ∅ - └── body: (length: 4) - ├── @ DefNode (location: (1,0)-(1,19)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (1,4)-(1,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (1,9)-(1,14)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ YieldNode (location: (1,9)-(1,14)) - │ │ ├── flags: newline - │ │ ├── keyword_loc: (1,9)-(1,14) = "yield" - │ │ ├── lparen_loc: ∅ - │ │ ├── arguments: ∅ - │ │ └── rparen_loc: ∅ - │ ├── locals: [] - │ ├── def_keyword_loc: (1,0)-(1,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (1,16)-(1,19) = "end" - ├── @ DefNode (location: (3,0)-(3,21)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (3,4)-(3,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (3,9)-(3,16)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ YieldNode (location: (3,9)-(3,16)) - │ │ ├── flags: newline - │ │ ├── keyword_loc: (3,9)-(3,14) = "yield" - │ │ ├── lparen_loc: (3,14)-(3,15) = "(" - │ │ ├── arguments: ∅ - │ │ └── rparen_loc: (3,15)-(3,16) = ")" - │ ├── locals: [] - │ ├── def_keyword_loc: (3,0)-(3,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (3,18)-(3,21) = "end" - ├── @ DefNode (location: (5,0)-(5,22)) - │ ├── flags: newline - │ ├── name: :foo - │ ├── name_loc: (5,4)-(5,7) = "foo" - │ ├── receiver: ∅ - │ ├── parameters: ∅ - │ ├── body: - │ │ @ StatementsNode (location: (5,9)-(5,17)) - │ │ ├── flags: ∅ - │ │ └── body: (length: 1) - │ │ └── @ YieldNode (location: (5,9)-(5,17)) - │ │ ├── flags: newline - │ │ ├── keyword_loc: (5,9)-(5,14) = "yield" - │ │ ├── lparen_loc: (5,14)-(5,15) = "(" - │ │ ├── arguments: - │ │ │ @ ArgumentsNode (location: (5,15)-(5,16)) - │ │ │ ├── flags: ∅ - │ │ │ └── arguments: (length: 1) - │ │ │ └── @ IntegerNode (location: (5,15)-(5,16)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ └── rparen_loc: (5,16)-(5,17) = ")" - │ ├── locals: [] - │ ├── def_keyword_loc: (5,0)-(5,3) = "def" - │ ├── operator_loc: ∅ - │ ├── lparen_loc: ∅ - │ ├── rparen_loc: ∅ - │ ├── equal_loc: ∅ - │ └── end_keyword_loc: (5,19)-(5,22) = "end" - └── @ DefNode (location: (7,0)-(7,28)) - ├── flags: newline - ├── name: :foo - ├── name_loc: (7,4)-(7,7) = "foo" - ├── receiver: ∅ - ├── parameters: ∅ - ├── body: - │ @ StatementsNode (location: (7,9)-(7,23)) - │ ├── flags: ∅ - │ └── body: (length: 1) - │ └── @ YieldNode (location: (7,9)-(7,23)) - │ ├── flags: newline - │ ├── keyword_loc: (7,9)-(7,14) = "yield" - │ ├── lparen_loc: (7,14)-(7,15) = "(" - │ ├── arguments: - │ │ @ ArgumentsNode (location: (7,15)-(7,22)) - │ │ ├── flags: ∅ - │ │ └── arguments: (length: 3) - │ │ ├── @ IntegerNode (location: (7,15)-(7,16)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 1 - │ │ ├── @ IntegerNode (location: (7,18)-(7,19)) - │ │ │ ├── flags: static_literal, decimal - │ │ │ └── value: 2 - │ │ └── @ IntegerNode (location: (7,21)-(7,22)) - │ │ ├── flags: static_literal, decimal - │ │ └── value: 3 - │ └── rparen_loc: (7,22)-(7,23) = ")" - ├── locals: [] - ├── def_keyword_loc: (7,0)-(7,3) = "def" - ├── operator_loc: ∅ - ├── lparen_loc: ∅ - ├── rparen_loc: ∅ - ├── equal_loc: ∅ - └── end_keyword_loc: (7,25)-(7,28) = "end" diff --git a/test/prism/snapshots_test.rb b/test/prism/snapshots_test.rb deleted file mode 100644 index 0744eafad3..0000000000 --- a/test/prism/snapshots_test.rb +++ /dev/null @@ -1,73 +0,0 @@ -# frozen_string_literal: true - -require_relative "test_helper" - -module Prism - class SnapshotsTest < TestCase - # When we pretty-print the trees to compare against the snapshots, we want - # to be certain that we print with the same external encoding. This is - # because methods like Symbol#inspect take into account external encoding - # and it could change how the snapshot is generated. On machines with - # certain settings (like LANG=C or -Eascii-8bit) this could have been - # changed. So here we're going to force it to be UTF-8 to keep the snapshots - # consistent. - def setup - @previous_default_external = Encoding.default_external - ignore_warnings { Encoding.default_external = Encoding::UTF_8 } - end - - def teardown - ignore_warnings { Encoding.default_external = @previous_default_external } - end - - except = [] - - # These fail on TruffleRuby due to a difference in Symbol#inspect: - # :测试 vs :"测试" - if RUBY_ENGINE == "truffleruby" - except.push( - "emoji_method_calls.txt", - "seattlerb/bug202.txt", - "seattlerb/magic_encoding_comment.txt" - ) - end - - Fixture.each(except: except) do |fixture| - define_method(fixture.test_name) { assert_snapshot(fixture) } - end - - private - - def assert_snapshot(fixture) - source = fixture.read - - result = Prism.parse(source, filepath: fixture.path) - assert result.success? - - printed = PP.pp(result.value, +"", 79) - snapshot = fixture.snapshot_path - - if File.exist?(snapshot) - saved = File.read(snapshot) - - # If the snapshot file exists, but the printed value does not match the - # snapshot, then update the snapshot file. - if printed != saved - File.write(snapshot, printed) - warn("Updated snapshot at #{snapshot}.") - end - - # If the snapshot file exists, then assert that the printed value - # matches the snapshot. - assert_equal(saved, printed) - else - # If the snapshot file does not yet exist, then write it out now. - directory = File.dirname(snapshot) - FileUtils.mkdir_p(directory) unless File.directory?(directory) - - File.write(snapshot, printed) - warn("Created snapshot at #{snapshot}.") - end - end - end -end |