From 9fa524dd41be60654e8515f9e406f6f47f0ac7fa Mon Sep 17 00:00:00 2001 From: Kevin Newton Date: Mon, 20 Nov 2023 21:38:03 -0500 Subject: [PATCH] [ruby/prism] Split up CaseNode and CaseMatchNode (https://github.com/ruby/prism/pull/1801) https://github.com/ruby/prism/commit/4c1391ea56 --- prism/config.yml | 20 ++++ prism/diagnostic.c | 1 + prism/diagnostic.h | 1 + prism/prism.c | 111 +++++++++++++++--- test/prism/errors_test.rb | 2 +- test/prism/location_test.rb | 7 ++ test/prism/snapshots/case.txt | 4 +- test/prism/snapshots/patterns.txt | 104 ++++++++-------- test/prism/snapshots/seattlerb/case_in.txt | 56 ++++----- test/prism/snapshots/seattlerb/case_in_31.txt | 2 +- test/prism/snapshots/seattlerb/case_in_37.txt | 2 +- test/prism/snapshots/seattlerb/case_in_42.txt | 2 +- .../snapshots/seattlerb/case_in_42_2.txt | 2 +- test/prism/snapshots/seattlerb/case_in_47.txt | 2 +- test/prism/snapshots/seattlerb/case_in_67.txt | 2 +- test/prism/snapshots/seattlerb/case_in_86.txt | 2 +- .../snapshots/seattlerb/case_in_86_2.txt | 2 +- .../seattlerb/case_in_array_pat_const.txt | 2 +- .../seattlerb/case_in_array_pat_const2.txt | 2 +- .../case_in_array_pat_paren_assign.txt | 2 +- .../snapshots/seattlerb/case_in_const.txt | 2 +- .../snapshots/seattlerb/case_in_else.txt | 2 +- .../snapshots/seattlerb/case_in_find.txt | 2 +- .../seattlerb/case_in_find_array.txt | 2 +- .../snapshots/seattlerb/case_in_hash_pat.txt | 2 +- .../seattlerb/case_in_hash_pat_assign.txt | 2 +- .../case_in_hash_pat_paren_assign.txt | 2 +- .../seattlerb/case_in_hash_pat_paren_true.txt | 2 +- .../seattlerb/case_in_hash_pat_rest.txt | 2 +- .../seattlerb/case_in_hash_pat_rest_solo.txt | 2 +- .../seattlerb/case_in_if_unless_post_mod.txt | 2 +- .../snapshots/seattlerb/case_in_multiple.txt | 2 +- test/prism/snapshots/seattlerb/case_in_or.txt | 2 +- .../snapshots/seattlerb/parse_pattern_019.txt | 2 +- .../snapshots/seattlerb/parse_pattern_044.txt | 2 +- .../snapshots/seattlerb/parse_pattern_051.txt | 2 +- .../snapshots/seattlerb/parse_pattern_058.txt | 2 +- .../seattlerb/parse_pattern_058_2.txt | 2 +- .../snapshots/seattlerb/parse_pattern_069.txt | 2 +- .../snapshots/seattlerb/parse_pattern_076.txt | 2 +- .../unparser/corpus/literal/pattern.txt | 6 +- .../whitequark/newline_in_hash_argument.txt | 2 +- .../pattern_matching__FILE__LINE_literals.txt | 2 +- .../pattern_matching_blank_else.txt | 2 +- .../whitequark/pattern_matching_else.txt | 2 +- 45 files changed, 247 insertions(+), 135 deletions(-) diff --git a/prism/config.yml b/prism/config.yml index 052901734a..ef12f7a730 100644 --- a/prism/config.yml +++ b/prism/config.yml @@ -768,6 +768,26 @@ nodes: foo => [bar => baz] ^^^^^^^^^^^^ + - name: CaseMatchNode + fields: + - name: predicate + type: node? + - name: conditions + type: node[] + - name: consequent + type: node? + kind: ElseNode + - name: case_keyword_loc + type: location + - name: end_keyword_loc + type: location + comment: | + Represents the use of a case statement for pattern matching. + + case true + in false + end + ^^^^^^^^^ - name: CaseNode fields: - name: predicate diff --git a/prism/diagnostic.c b/prism/diagnostic.c index c1d930a430..b6a4e291a7 100644 --- a/prism/diagnostic.c +++ b/prism/diagnostic.c @@ -87,6 +87,7 @@ static const char* const diagnostic_messages[PM_DIAGNOSTIC_ID_LEN] = { [PM_ERR_CANNOT_PARSE_STRING_PART] = "Cannot parse the string part", [PM_ERR_CASE_EXPRESSION_AFTER_CASE] = "Expected an expression after `case`", [PM_ERR_CASE_EXPRESSION_AFTER_WHEN] = "Expected an expression after `when`", + [PM_ERR_CASE_MATCH_MISSING_PREDICATE] = "Expected a predicate for a case matching statement", [PM_ERR_CASE_MISSING_CONDITIONS] = "Expected a `when` or `in` clause after `case`", [PM_ERR_CASE_TERM] = "Expected an `end` to close the `case` statement", [PM_ERR_CLASS_IN_METHOD] = "Unexpected class definition in a method body", diff --git a/prism/diagnostic.h b/prism/diagnostic.h index c963289cbf..92bc88953e 100644 --- a/prism/diagnostic.h +++ b/prism/diagnostic.h @@ -73,6 +73,7 @@ typedef enum { PM_ERR_CANNOT_PARSE_STRING_PART, PM_ERR_CASE_EXPRESSION_AFTER_CASE, PM_ERR_CASE_EXPRESSION_AFTER_WHEN, + PM_ERR_CASE_MATCH_MISSING_PREDICATE, PM_ERR_CASE_MISSING_CONDITIONS, PM_ERR_CASE_TERM, PM_ERR_CLASS_IN_METHOD, diff --git a/prism/prism.c b/prism/prism.c index 7330063bd8..48b6311d2f 100644 --- a/prism/prism.c +++ b/prism/prism.c @@ -2113,7 +2113,7 @@ pm_capture_pattern_node_create(pm_parser_t *parser, pm_node_t *value, pm_node_t * Allocate and initialize a new CaseNode node. */ static pm_case_node_t * -pm_case_node_create(pm_parser_t *parser, const pm_token_t *case_keyword, pm_node_t *predicate, pm_else_node_t *consequent, const pm_token_t *end_keyword) { +pm_case_node_create(pm_parser_t *parser, const pm_token_t *case_keyword, pm_node_t *predicate, const pm_token_t *end_keyword) { pm_case_node_t *node = PM_ALLOC_NODE(parser, pm_case_node_t); *node = (pm_case_node_t) { @@ -2125,7 +2125,7 @@ pm_case_node_create(pm_parser_t *parser, const pm_token_t *case_keyword, pm_node }, }, .predicate = predicate, - .consequent = consequent, + .consequent = NULL, .case_keyword_loc = PM_LOCATION_TOKEN_VALUE(case_keyword), .end_keyword_loc = PM_LOCATION_TOKEN_VALUE(end_keyword), .conditions = { 0 } @@ -2139,7 +2139,7 @@ pm_case_node_create(pm_parser_t *parser, const pm_token_t *case_keyword, pm_node */ static void pm_case_node_condition_append(pm_case_node_t *node, pm_node_t *condition) { - assert(PM_NODE_TYPE_P(condition, PM_WHEN_NODE) || PM_NODE_TYPE_P(condition, PM_IN_NODE)); + assert(PM_NODE_TYPE_P(condition, PM_WHEN_NODE)); pm_node_list_append(&node->conditions, condition); node->base.location.end = condition->location.end; @@ -2163,6 +2163,60 @@ pm_case_node_end_keyword_loc_set(pm_case_node_t *node, const pm_token_t *end_key node->end_keyword_loc = PM_LOCATION_TOKEN_VALUE(end_keyword); } +/** + * Allocate and initialize a new CaseMatchNode node. + */ +static pm_case_match_node_t * +pm_case_match_node_create(pm_parser_t *parser, const pm_token_t *case_keyword, pm_node_t *predicate, const pm_token_t *end_keyword) { + pm_case_match_node_t *node = PM_ALLOC_NODE(parser, pm_case_match_node_t); + + *node = (pm_case_match_node_t) { + { + .type = PM_CASE_MATCH_NODE, + .location = { + .start = case_keyword->start, + .end = end_keyword->end + }, + }, + .predicate = predicate, + .consequent = NULL, + .case_keyword_loc = PM_LOCATION_TOKEN_VALUE(case_keyword), + .end_keyword_loc = PM_LOCATION_TOKEN_VALUE(end_keyword), + .conditions = { 0 } + }; + + return node; +} + +/** + * Append a new condition to a CaseMatchNode node. + */ +static void +pm_case_match_node_condition_append(pm_case_match_node_t *node, pm_node_t *condition) { + assert(PM_NODE_TYPE_P(condition, PM_IN_NODE)); + + pm_node_list_append(&node->conditions, condition); + node->base.location.end = condition->location.end; +} + +/** + * Set the consequent of a CaseMatchNode node. + */ +static void +pm_case_match_node_consequent_set(pm_case_match_node_t *node, pm_else_node_t *consequent) { + node->consequent = consequent; + node->base.location.end = consequent->base.location.end; +} + +/** + * Set the end location for a CaseMatchNode node. + */ +static void +pm_case_match_node_end_keyword_loc_set(pm_case_match_node_t *node, const pm_token_t *end_keyword) { + node->base.location.end = end_keyword->end; + node->end_keyword_loc = PM_LOCATION_TOKEN_VALUE(end_keyword); +} + /** * Allocate a new ClassNode node. */ @@ -14190,15 +14244,17 @@ parse_expression_prefix(pm_parser_t *parser, pm_binding_power_t binding_power) { if (accept1(parser, PM_TOKEN_KEYWORD_END)) { pm_parser_err_token(parser, &case_keyword, PM_ERR_CASE_MISSING_CONDITIONS); - return (pm_node_t *) pm_case_node_create(parser, &case_keyword, predicate, NULL, &parser->previous); + return (pm_node_t *) pm_case_node_create(parser, &case_keyword, predicate, &parser->previous); } // At this point we can create a case node, though we don't yet know if it // is a case-in or case-when node. pm_token_t end_keyword = not_provided(parser); - pm_case_node_t *case_node = pm_case_node_create(parser, &case_keyword, predicate, NULL, &end_keyword); + pm_node_t *node; if (match1(parser, PM_TOKEN_KEYWORD_WHEN)) { + pm_case_node_t *case_node = pm_case_node_create(parser, &case_keyword, predicate, &end_keyword); + // At this point we've seen a when keyword, so we know this is a // case-when node. We will continue to parse the when nodes until we hit // the end of the list. @@ -14238,7 +14294,23 @@ parse_expression_prefix(pm_parser_t *parser, pm_binding_power_t binding_power) { pm_case_node_condition_append(case_node, (pm_node_t *) when_node); } + + // If we didn't parse any conditions (in or when) then we need + // to indicate that we have an error. + if (case_node->conditions.size == 0) { + pm_parser_err_token(parser, &case_keyword, PM_ERR_CASE_MISSING_CONDITIONS); + } + + node = (pm_node_t *) case_node; } else { + pm_case_match_node_t *case_node = pm_case_match_node_create(parser, &case_keyword, predicate, &end_keyword); + + // If this is a case-match node (i.e., it is a pattern matching + // case statement) then we must have a predicate. + if (predicate == NULL) { + pm_parser_err_token(parser, &case_keyword, PM_ERR_CASE_MATCH_MISSING_PREDICATE); + } + // At this point we expect that we're parsing a case-in node. We will // continue to parse the in nodes until we hit the end of the list. while (match1(parser, PM_TOKEN_KEYWORD_IN)) { @@ -14292,14 +14364,16 @@ parse_expression_prefix(pm_parser_t *parser, pm_binding_power_t binding_power) { // Now that we have the full pattern and statements, we can create the // node and attach it to the case node. pm_node_t *condition = (pm_node_t *) pm_in_node_create(parser, pattern, statements, &in_keyword, &then_keyword); - pm_case_node_condition_append(case_node, condition); + pm_case_match_node_condition_append(case_node, condition); } - } - // If we didn't parse any conditions (in or when) then we need to - // indicate that we have an error. - if (case_node->conditions.size == 0) { - pm_parser_err_token(parser, &case_keyword, PM_ERR_CASE_MISSING_CONDITIONS); + // If we didn't parse any conditions (in or when) then we need + // to indicate that we have an error. + if (case_node->conditions.size == 0) { + pm_parser_err_token(parser, &case_keyword, PM_ERR_CASE_MISSING_CONDITIONS); + } + + node = (pm_node_t *) case_node; } accept2(parser, PM_TOKEN_NEWLINE, PM_TOKEN_SEMICOLON); @@ -14313,12 +14387,21 @@ parse_expression_prefix(pm_parser_t *parser, pm_binding_power_t binding_power) { else_node = pm_else_node_create(parser, &else_keyword, NULL, &parser->current); } - pm_case_node_consequent_set(case_node, else_node); + if (PM_NODE_TYPE_P(node, PM_CASE_NODE)) { + pm_case_node_consequent_set((pm_case_node_t *) node, else_node); + } else { + pm_case_match_node_consequent_set((pm_case_match_node_t *) node, else_node); + } } expect1(parser, PM_TOKEN_KEYWORD_END, PM_ERR_CASE_TERM); - pm_case_node_end_keyword_loc_set(case_node, &parser->previous); - return (pm_node_t *) case_node; + if (PM_NODE_TYPE_P(node, PM_CASE_NODE)) { + pm_case_node_end_keyword_loc_set((pm_case_node_t *) node, &parser->previous); + } else { + pm_case_match_node_end_keyword_loc_set((pm_case_match_node_t *) node, &parser->previous); + } + + return node; } case PM_TOKEN_KEYWORD_BEGIN: { parser_lex(parser); diff --git a/test/prism/errors_test.rb b/test/prism/errors_test.rb index 070b36dec2..c6ef417e55 100644 --- a/test/prism/errors_test.rb +++ b/test/prism/errors_test.rb @@ -937,7 +937,7 @@ module Prism end def test_case_without_when_clauses_errors_on_else_clause - expected = CaseNode( + expected = CaseMatchNode( SymbolNode(Location(), Location(), nil, "a"), [], ElseNode(Location(), nil, Location()), diff --git a/test/prism/location_test.rb b/test/prism/location_test.rb index 363e96fae8..02a577a73c 100644 --- a/test/prism/location_test.rb +++ b/test/prism/location_test.rb @@ -201,6 +201,13 @@ module Prism assert_location(CaseNode, "case foo; when bar; when baz; else; end") end + def test_CaseMatchNode + assert_location(CaseMatchNode, "case foo; in bar; end") + assert_location(CaseMatchNode, "case foo; in bar; else; end") + assert_location(CaseMatchNode, "case foo; in bar; in baz; end") + assert_location(CaseMatchNode, "case foo; in bar; in baz; else; end") + end + def test_ClassNode assert_location(ClassNode, "class Foo end") assert_location(ClassNode, "class Foo < Bar; end") diff --git a/test/prism/snapshots/case.txt b/test/prism/snapshots/case.txt index 3655ce16e1..7b264c1430 100644 --- a/test/prism/snapshots/case.txt +++ b/test/prism/snapshots/case.txt @@ -306,7 +306,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (38,0)-(38,4) = "case" │ └── end_keyword_loc: (38,21)-(38,24) = "end" - ├── @ CaseNode (location: (40,0)-(42,3)) + ├── @ CaseMatchNode (location: (40,0)-(42,3)) │ ├── predicate: │ │ @ MatchPredicateNode (location: (40,5)-(40,11)) │ │ ├── value: @@ -327,7 +327,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (40,0)-(40,4) = "case" │ └── end_keyword_loc: (42,0)-(42,3) = "end" - └── @ CaseNode (location: (44,0)-(44,22)) + └── @ CaseMatchNode (location: (44,0)-(44,22)) ├── predicate: │ @ MatchPredicateNode (location: (44,5)-(44,11)) │ ├── value: diff --git a/test/prism/snapshots/patterns.txt b/test/prism/snapshots/patterns.txt index 0e8c31c8c0..ef2e26de15 100644 --- a/test/prism/snapshots/patterns.txt +++ b/test/prism/snapshots/patterns.txt @@ -2778,7 +2778,7 @@ │ │ ├── name: :bar │ │ └── depth: 1 │ └── operator_loc: (125,4)-(125,6) = "in" - ├── @ CaseNode (location: (127,0)-(127,25)) + ├── @ CaseMatchNode (location: (127,0)-(127,25)) │ ├── predicate: │ │ @ CallNode (location: (127,5)-(127,8)) │ │ ├── receiver: ∅ @@ -2802,7 +2802,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (127,0)-(127,4) = "case" │ └── end_keyword_loc: (127,22)-(127,25) = "end" - ├── @ CaseNode (location: (128,0)-(128,23)) + ├── @ CaseMatchNode (location: (128,0)-(128,23)) │ ├── predicate: │ │ @ CallNode (location: (128,5)-(128,8)) │ │ ├── receiver: ∅ @@ -2825,7 +2825,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (128,0)-(128,4) = "case" │ └── end_keyword_loc: (128,20)-(128,23) = "end" - ├── @ CaseNode (location: (129,0)-(129,25)) + ├── @ CaseMatchNode (location: (129,0)-(129,25)) │ ├── predicate: │ │ @ CallNode (location: (129,5)-(129,8)) │ │ ├── receiver: ∅ @@ -2847,7 +2847,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (129,0)-(129,4) = "case" │ └── end_keyword_loc: (129,22)-(129,25) = "end" - ├── @ CaseNode (location: (130,0)-(130,24)) + ├── @ CaseMatchNode (location: (130,0)-(130,24)) │ ├── predicate: │ │ @ CallNode (location: (130,5)-(130,8)) │ │ ├── receiver: ∅ @@ -2872,7 +2872,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (130,0)-(130,4) = "case" │ └── end_keyword_loc: (130,21)-(130,24) = "end" - ├── @ CaseNode (location: (131,0)-(131,24)) + ├── @ CaseMatchNode (location: (131,0)-(131,24)) │ ├── predicate: │ │ @ CallNode (location: (131,5)-(131,8)) │ │ ├── receiver: ∅ @@ -2897,7 +2897,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (131,0)-(131,4) = "case" │ └── end_keyword_loc: (131,21)-(131,24) = "end" - ├── @ CaseNode (location: (132,0)-(132,26)) + ├── @ CaseMatchNode (location: (132,0)-(132,26)) │ ├── predicate: │ │ @ CallNode (location: (132,5)-(132,8)) │ │ ├── receiver: ∅ @@ -2923,7 +2923,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (132,0)-(132,4) = "case" │ └── end_keyword_loc: (132,23)-(132,26) = "end" - ├── @ CaseNode (location: (133,0)-(133,29)) + ├── @ CaseMatchNode (location: (133,0)-(133,29)) │ ├── predicate: │ │ @ CallNode (location: (133,5)-(133,8)) │ │ ├── receiver: ∅ @@ -2949,7 +2949,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (133,0)-(133,4) = "case" │ └── end_keyword_loc: (133,26)-(133,29) = "end" - ├── @ CaseNode (location: (134,0)-(134,28)) + ├── @ CaseMatchNode (location: (134,0)-(134,28)) │ ├── predicate: │ │ @ CallNode (location: (134,5)-(134,8)) │ │ ├── receiver: ∅ @@ -2975,7 +2975,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (134,0)-(134,4) = "case" │ └── end_keyword_loc: (134,25)-(134,28) = "end" - ├── @ CaseNode (location: (135,0)-(135,27)) + ├── @ CaseMatchNode (location: (135,0)-(135,27)) │ ├── predicate: │ │ @ CallNode (location: (135,5)-(135,8)) │ │ ├── receiver: ∅ @@ -3002,7 +3002,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (135,0)-(135,4) = "case" │ └── end_keyword_loc: (135,24)-(135,27) = "end" - ├── @ CaseNode (location: (136,0)-(136,27)) + ├── @ CaseMatchNode (location: (136,0)-(136,27)) │ ├── predicate: │ │ @ CallNode (location: (136,5)-(136,8)) │ │ ├── receiver: ∅ @@ -3028,7 +3028,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (136,0)-(136,4) = "case" │ └── end_keyword_loc: (136,24)-(136,27) = "end" - ├── @ CaseNode (location: (137,0)-(137,29)) + ├── @ CaseMatchNode (location: (137,0)-(137,29)) │ ├── predicate: │ │ @ CallNode (location: (137,5)-(137,8)) │ │ ├── receiver: ∅ @@ -3054,7 +3054,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (137,0)-(137,4) = "case" │ └── end_keyword_loc: (137,26)-(137,29) = "end" - ├── @ CaseNode (location: (138,0)-(138,29)) + ├── @ CaseMatchNode (location: (138,0)-(138,29)) │ ├── predicate: │ │ @ CallNode (location: (138,5)-(138,8)) │ │ ├── receiver: ∅ @@ -3084,7 +3084,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (138,0)-(138,4) = "case" │ └── end_keyword_loc: (138,26)-(138,29) = "end" - ├── @ CaseNode (location: (139,0)-(139,29)) + ├── @ CaseMatchNode (location: (139,0)-(139,29)) │ ├── predicate: │ │ @ CallNode (location: (139,5)-(139,8)) │ │ ├── receiver: ∅ @@ -3114,7 +3114,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (139,0)-(139,4) = "case" │ └── end_keyword_loc: (139,26)-(139,29) = "end" - ├── @ CaseNode (location: (140,0)-(140,29)) + ├── @ CaseMatchNode (location: (140,0)-(140,29)) │ ├── predicate: │ │ @ CallNode (location: (140,5)-(140,8)) │ │ ├── receiver: ∅ @@ -3145,7 +3145,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (140,0)-(140,4) = "case" │ └── end_keyword_loc: (140,26)-(140,29) = "end" - ├── @ CaseNode (location: (141,0)-(141,29)) + ├── @ CaseMatchNode (location: (141,0)-(141,29)) │ ├── predicate: │ │ @ CallNode (location: (141,5)-(141,8)) │ │ ├── receiver: ∅ @@ -3176,7 +3176,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (141,0)-(141,4) = "case" │ └── end_keyword_loc: (141,26)-(141,29) = "end" - ├── @ CaseNode (location: (142,0)-(142,29)) + ├── @ CaseMatchNode (location: (142,0)-(142,29)) │ ├── predicate: │ │ @ CallNode (location: (142,5)-(142,8)) │ │ ├── receiver: ∅ @@ -3203,7 +3203,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (142,0)-(142,4) = "case" │ └── end_keyword_loc: (142,26)-(142,29) = "end" - ├── @ CaseNode (location: (143,0)-(143,29)) + ├── @ CaseMatchNode (location: (143,0)-(143,29)) │ ├── predicate: │ │ @ CallNode (location: (143,5)-(143,8)) │ │ ├── receiver: ∅ @@ -3230,7 +3230,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (143,0)-(143,4) = "case" │ └── end_keyword_loc: (143,26)-(143,29) = "end" - ├── @ CaseNode (location: (144,0)-(144,27)) + ├── @ CaseMatchNode (location: (144,0)-(144,27)) │ ├── predicate: │ │ @ CallNode (location: (144,5)-(144,8)) │ │ ├── receiver: ∅ @@ -3257,7 +3257,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (144,0)-(144,4) = "case" │ └── end_keyword_loc: (144,24)-(144,27) = "end" - ├── @ CaseNode (location: (145,0)-(145,25)) + ├── @ CaseMatchNode (location: (145,0)-(145,25)) │ ├── predicate: │ │ @ CallNode (location: (145,5)-(145,8)) │ │ ├── receiver: ∅ @@ -3279,7 +3279,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (145,0)-(145,4) = "case" │ └── end_keyword_loc: (145,22)-(145,25) = "end" - ├── @ CaseNode (location: (146,0)-(146,26)) + ├── @ CaseMatchNode (location: (146,0)-(146,26)) │ ├── predicate: │ │ @ CallNode (location: (146,5)-(146,8)) │ │ ├── receiver: ∅ @@ -3301,7 +3301,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (146,0)-(146,4) = "case" │ └── end_keyword_loc: (146,23)-(146,26) = "end" - ├── @ CaseNode (location: (147,0)-(147,26)) + ├── @ CaseMatchNode (location: (147,0)-(147,26)) │ ├── predicate: │ │ @ CallNode (location: (147,5)-(147,8)) │ │ ├── receiver: ∅ @@ -3323,7 +3323,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (147,0)-(147,4) = "case" │ └── end_keyword_loc: (147,23)-(147,26) = "end" - ├── @ CaseNode (location: (148,0)-(148,27)) + ├── @ CaseMatchNode (location: (148,0)-(148,27)) │ ├── predicate: │ │ @ CallNode (location: (148,5)-(148,8)) │ │ ├── receiver: ∅ @@ -3345,7 +3345,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (148,0)-(148,4) = "case" │ └── end_keyword_loc: (148,24)-(148,27) = "end" - ├── @ CaseNode (location: (149,0)-(149,30)) + ├── @ CaseMatchNode (location: (149,0)-(149,30)) │ ├── predicate: │ │ @ CallNode (location: (149,5)-(149,8)) │ │ ├── receiver: ∅ @@ -3368,7 +3368,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (149,0)-(149,4) = "case" │ └── end_keyword_loc: (149,27)-(149,30) = "end" - ├── @ CaseNode (location: (150,0)-(150,30)) + ├── @ CaseMatchNode (location: (150,0)-(150,30)) │ ├── predicate: │ │ @ CallNode (location: (150,5)-(150,8)) │ │ ├── receiver: ∅ @@ -3390,7 +3390,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (150,0)-(150,4) = "case" │ └── end_keyword_loc: (150,27)-(150,30) = "end" - ├── @ CaseNode (location: (151,0)-(151,34)) + ├── @ CaseMatchNode (location: (151,0)-(151,34)) │ ├── predicate: │ │ @ CallNode (location: (151,5)-(151,8)) │ │ ├── receiver: ∅ @@ -3412,7 +3412,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (151,0)-(151,4) = "case" │ └── end_keyword_loc: (151,31)-(151,34) = "end" - ├── @ CaseNode (location: (152,0)-(152,32)) + ├── @ CaseMatchNode (location: (152,0)-(152,32)) │ ├── predicate: │ │ @ CallNode (location: (152,5)-(152,8)) │ │ ├── receiver: ∅ @@ -3445,7 +3445,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (152,0)-(152,4) = "case" │ └── end_keyword_loc: (152,29)-(152,32) = "end" - ├── @ CaseNode (location: (154,0)-(154,32)) + ├── @ CaseMatchNode (location: (154,0)-(154,32)) │ ├── predicate: │ │ @ CallNode (location: (154,5)-(154,8)) │ │ ├── receiver: ∅ @@ -3481,7 +3481,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (154,0)-(154,4) = "case" │ └── end_keyword_loc: (154,29)-(154,32) = "end" - ├── @ CaseNode (location: (155,0)-(155,30)) + ├── @ CaseMatchNode (location: (155,0)-(155,30)) │ ├── predicate: │ │ @ CallNode (location: (155,5)-(155,8)) │ │ ├── receiver: ∅ @@ -3516,7 +3516,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (155,0)-(155,4) = "case" │ └── end_keyword_loc: (155,27)-(155,30) = "end" - ├── @ CaseNode (location: (156,0)-(156,32)) + ├── @ CaseMatchNode (location: (156,0)-(156,32)) │ ├── predicate: │ │ @ CallNode (location: (156,5)-(156,8)) │ │ ├── receiver: ∅ @@ -3550,7 +3550,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (156,0)-(156,4) = "case" │ └── end_keyword_loc: (156,29)-(156,32) = "end" - ├── @ CaseNode (location: (157,0)-(157,31)) + ├── @ CaseMatchNode (location: (157,0)-(157,31)) │ ├── predicate: │ │ @ CallNode (location: (157,5)-(157,8)) │ │ ├── receiver: ∅ @@ -3587,7 +3587,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (157,0)-(157,4) = "case" │ └── end_keyword_loc: (157,28)-(157,31) = "end" - ├── @ CaseNode (location: (158,0)-(158,31)) + ├── @ CaseMatchNode (location: (158,0)-(158,31)) │ ├── predicate: │ │ @ CallNode (location: (158,5)-(158,8)) │ │ ├── receiver: ∅ @@ -3624,7 +3624,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (158,0)-(158,4) = "case" │ └── end_keyword_loc: (158,28)-(158,31) = "end" - ├── @ CaseNode (location: (159,0)-(159,33)) + ├── @ CaseMatchNode (location: (159,0)-(159,33)) │ ├── predicate: │ │ @ CallNode (location: (159,5)-(159,8)) │ │ ├── receiver: ∅ @@ -3662,7 +3662,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (159,0)-(159,4) = "case" │ └── end_keyword_loc: (159,30)-(159,33) = "end" - ├── @ CaseNode (location: (160,0)-(160,36)) + ├── @ CaseMatchNode (location: (160,0)-(160,36)) │ ├── predicate: │ │ @ CallNode (location: (160,5)-(160,8)) │ │ ├── receiver: ∅ @@ -3700,7 +3700,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (160,0)-(160,4) = "case" │ └── end_keyword_loc: (160,33)-(160,36) = "end" - ├── @ CaseNode (location: (161,0)-(161,35)) + ├── @ CaseMatchNode (location: (161,0)-(161,35)) │ ├── predicate: │ │ @ CallNode (location: (161,5)-(161,8)) │ │ ├── receiver: ∅ @@ -3738,7 +3738,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (161,0)-(161,4) = "case" │ └── end_keyword_loc: (161,32)-(161,35) = "end" - ├── @ CaseNode (location: (162,0)-(162,34)) + ├── @ CaseMatchNode (location: (162,0)-(162,34)) │ ├── predicate: │ │ @ CallNode (location: (162,5)-(162,8)) │ │ ├── receiver: ∅ @@ -3777,7 +3777,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (162,0)-(162,4) = "case" │ └── end_keyword_loc: (162,31)-(162,34) = "end" - ├── @ CaseNode (location: (163,0)-(163,34)) + ├── @ CaseMatchNode (location: (163,0)-(163,34)) │ ├── predicate: │ │ @ CallNode (location: (163,5)-(163,8)) │ │ ├── receiver: ∅ @@ -3815,7 +3815,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (163,0)-(163,4) = "case" │ └── end_keyword_loc: (163,31)-(163,34) = "end" - ├── @ CaseNode (location: (164,0)-(164,36)) + ├── @ CaseMatchNode (location: (164,0)-(164,36)) │ ├── predicate: │ │ @ CallNode (location: (164,5)-(164,8)) │ │ ├── receiver: ∅ @@ -3853,7 +3853,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (164,0)-(164,4) = "case" │ └── end_keyword_loc: (164,33)-(164,36) = "end" - ├── @ CaseNode (location: (165,0)-(165,36)) + ├── @ CaseMatchNode (location: (165,0)-(165,36)) │ ├── predicate: │ │ @ CallNode (location: (165,5)-(165,8)) │ │ ├── receiver: ∅ @@ -3895,7 +3895,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (165,0)-(165,4) = "case" │ └── end_keyword_loc: (165,33)-(165,36) = "end" - ├── @ CaseNode (location: (166,0)-(166,36)) + ├── @ CaseMatchNode (location: (166,0)-(166,36)) │ ├── predicate: │ │ @ CallNode (location: (166,5)-(166,8)) │ │ ├── receiver: ∅ @@ -3937,7 +3937,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (166,0)-(166,4) = "case" │ └── end_keyword_loc: (166,33)-(166,36) = "end" - ├── @ CaseNode (location: (167,0)-(167,36)) + ├── @ CaseMatchNode (location: (167,0)-(167,36)) │ ├── predicate: │ │ @ CallNode (location: (167,5)-(167,8)) │ │ ├── receiver: ∅ @@ -3980,7 +3980,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (167,0)-(167,4) = "case" │ └── end_keyword_loc: (167,33)-(167,36) = "end" - ├── @ CaseNode (location: (168,0)-(168,36)) + ├── @ CaseMatchNode (location: (168,0)-(168,36)) │ ├── predicate: │ │ @ CallNode (location: (168,5)-(168,8)) │ │ ├── receiver: ∅ @@ -4023,7 +4023,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (168,0)-(168,4) = "case" │ └── end_keyword_loc: (168,33)-(168,36) = "end" - ├── @ CaseNode (location: (169,0)-(169,36)) + ├── @ CaseMatchNode (location: (169,0)-(169,36)) │ ├── predicate: │ │ @ CallNode (location: (169,5)-(169,8)) │ │ ├── receiver: ∅ @@ -4062,7 +4062,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (169,0)-(169,4) = "case" │ └── end_keyword_loc: (169,33)-(169,36) = "end" - ├── @ CaseNode (location: (170,0)-(170,36)) + ├── @ CaseMatchNode (location: (170,0)-(170,36)) │ ├── predicate: │ │ @ CallNode (location: (170,5)-(170,8)) │ │ ├── receiver: ∅ @@ -4101,7 +4101,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (170,0)-(170,4) = "case" │ └── end_keyword_loc: (170,33)-(170,36) = "end" - ├── @ CaseNode (location: (171,0)-(171,34)) + ├── @ CaseMatchNode (location: (171,0)-(171,34)) │ ├── predicate: │ │ @ CallNode (location: (171,5)-(171,8)) │ │ ├── receiver: ∅ @@ -4140,7 +4140,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (171,0)-(171,4) = "case" │ └── end_keyword_loc: (171,31)-(171,34) = "end" - ├── @ CaseNode (location: (172,0)-(172,32)) + ├── @ CaseMatchNode (location: (172,0)-(172,32)) │ ├── predicate: │ │ @ CallNode (location: (172,5)-(172,8)) │ │ ├── receiver: ∅ @@ -4174,7 +4174,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (172,0)-(172,4) = "case" │ └── end_keyword_loc: (172,29)-(172,32) = "end" - ├── @ CaseNode (location: (173,0)-(173,33)) + ├── @ CaseMatchNode (location: (173,0)-(173,33)) │ ├── predicate: │ │ @ CallNode (location: (173,5)-(173,8)) │ │ ├── receiver: ∅ @@ -4208,7 +4208,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (173,0)-(173,4) = "case" │ └── end_keyword_loc: (173,30)-(173,33) = "end" - ├── @ CaseNode (location: (174,0)-(174,33)) + ├── @ CaseMatchNode (location: (174,0)-(174,33)) │ ├── predicate: │ │ @ CallNode (location: (174,5)-(174,8)) │ │ ├── receiver: ∅ @@ -4242,7 +4242,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (174,0)-(174,4) = "case" │ └── end_keyword_loc: (174,30)-(174,33) = "end" - ├── @ CaseNode (location: (175,0)-(175,34)) + ├── @ CaseMatchNode (location: (175,0)-(175,34)) │ ├── predicate: │ │ @ CallNode (location: (175,5)-(175,8)) │ │ ├── receiver: ∅ @@ -4276,7 +4276,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (175,0)-(175,4) = "case" │ └── end_keyword_loc: (175,31)-(175,34) = "end" - ├── @ CaseNode (location: (176,0)-(176,37)) + ├── @ CaseMatchNode (location: (176,0)-(176,37)) │ ├── predicate: │ │ @ CallNode (location: (176,5)-(176,8)) │ │ ├── receiver: ∅ @@ -4311,7 +4311,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (176,0)-(176,4) = "case" │ └── end_keyword_loc: (176,34)-(176,37) = "end" - ├── @ CaseNode (location: (177,0)-(177,37)) + ├── @ CaseMatchNode (location: (177,0)-(177,37)) │ ├── predicate: │ │ @ CallNode (location: (177,5)-(177,8)) │ │ ├── receiver: ∅ @@ -4345,7 +4345,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (177,0)-(177,4) = "case" │ └── end_keyword_loc: (177,34)-(177,37) = "end" - ├── @ CaseNode (location: (178,0)-(178,41)) + ├── @ CaseMatchNode (location: (178,0)-(178,41)) │ ├── predicate: │ │ @ CallNode (location: (178,5)-(178,8)) │ │ ├── receiver: ∅ @@ -4379,7 +4379,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (178,0)-(178,4) = "case" │ └── end_keyword_loc: (178,38)-(178,41) = "end" - ├── @ CaseNode (location: (179,0)-(179,39)) + ├── @ CaseMatchNode (location: (179,0)-(179,39)) │ ├── predicate: │ │ @ CallNode (location: (179,5)-(179,8)) │ │ ├── receiver: ∅ diff --git a/test/prism/snapshots/seattlerb/case_in.txt b/test/prism/snapshots/seattlerb/case_in.txt index c6150c4105..9db7851e16 100644 --- a/test/prism/snapshots/seattlerb/case_in.txt +++ b/test/prism/snapshots/seattlerb/case_in.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(111,3)) └── body: (length: 28) - ├── @ CaseNode (location: (1,0)-(3,3)) + ├── @ CaseMatchNode (location: (1,0)-(3,3)) │ ├── predicate: │ │ @ SymbolNode (location: (1,5)-(1,7)) │ │ ├── opening_loc: (1,5)-(1,6) = ":" @@ -34,7 +34,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (1,0)-(1,4) = "case" │ └── end_keyword_loc: (3,0)-(3,3) = "end" - ├── @ CaseNode (location: (5,0)-(7,3)) + ├── @ CaseMatchNode (location: (5,0)-(7,3)) │ ├── predicate: │ │ @ SymbolNode (location: (5,5)-(5,7)) │ │ ├── opening_loc: (5,5)-(5,6) = ":" @@ -64,7 +64,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (5,0)-(5,4) = "case" │ └── end_keyword_loc: (7,0)-(7,3) = "end" - ├── @ CaseNode (location: (9,0)-(11,3)) + ├── @ CaseMatchNode (location: (9,0)-(11,3)) │ ├── predicate: │ │ @ SymbolNode (location: (9,5)-(9,7)) │ │ ├── opening_loc: (9,5)-(9,6) = ":" @@ -96,7 +96,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (9,0)-(9,4) = "case" │ └── end_keyword_loc: (11,0)-(11,3) = "end" - ├── @ CaseNode (location: (13,0)-(15,3)) + ├── @ CaseMatchNode (location: (13,0)-(15,3)) │ ├── predicate: │ │ @ SymbolNode (location: (13,5)-(13,7)) │ │ ├── opening_loc: (13,5)-(13,6) = ":" @@ -126,7 +126,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (13,0)-(13,4) = "case" │ └── end_keyword_loc: (15,0)-(15,3) = "end" - ├── @ CaseNode (location: (17,0)-(19,3)) + ├── @ CaseMatchNode (location: (17,0)-(19,3)) │ ├── predicate: │ │ @ SymbolNode (location: (17,5)-(17,7)) │ │ ├── opening_loc: (17,5)-(17,6) = ":" @@ -158,7 +158,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (17,0)-(17,4) = "case" │ └── end_keyword_loc: (19,0)-(19,3) = "end" - ├── @ CaseNode (location: (21,0)-(23,3)) + ├── @ CaseMatchNode (location: (21,0)-(23,3)) │ ├── predicate: │ │ @ SymbolNode (location: (21,5)-(21,7)) │ │ ├── opening_loc: (21,5)-(21,6) = ":" @@ -181,7 +181,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (21,0)-(21,4) = "case" │ └── end_keyword_loc: (23,0)-(23,3) = "end" - ├── @ CaseNode (location: (25,0)-(27,3)) + ├── @ CaseMatchNode (location: (25,0)-(27,3)) │ ├── predicate: │ │ @ SymbolNode (location: (25,5)-(25,7)) │ │ ├── opening_loc: (25,5)-(25,6) = ":" @@ -204,7 +204,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (25,0)-(25,4) = "case" │ └── end_keyword_loc: (27,0)-(27,3) = "end" - ├── @ CaseNode (location: (29,0)-(31,3)) + ├── @ CaseMatchNode (location: (29,0)-(31,3)) │ ├── predicate: │ │ @ SymbolNode (location: (29,5)-(29,7)) │ │ ├── opening_loc: (29,5)-(29,6) = ":" @@ -227,7 +227,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (29,0)-(29,4) = "case" │ └── end_keyword_loc: (31,0)-(31,3) = "end" - ├── @ CaseNode (location: (33,0)-(35,3)) + ├── @ CaseMatchNode (location: (33,0)-(35,3)) │ ├── predicate: │ │ @ SymbolNode (location: (33,5)-(33,7)) │ │ ├── opening_loc: (33,5)-(33,6) = ":" @@ -252,7 +252,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (33,0)-(33,4) = "case" │ └── end_keyword_loc: (35,0)-(35,3) = "end" - ├── @ CaseNode (location: (37,0)-(39,3)) + ├── @ CaseMatchNode (location: (37,0)-(39,3)) │ ├── predicate: │ │ @ SymbolNode (location: (37,5)-(37,7)) │ │ ├── opening_loc: (37,5)-(37,6) = ":" @@ -270,7 +270,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (37,0)-(37,4) = "case" │ └── end_keyword_loc: (39,0)-(39,3) = "end" - ├── @ CaseNode (location: (41,0)-(43,3)) + ├── @ CaseMatchNode (location: (41,0)-(43,3)) │ ├── predicate: │ │ @ SymbolNode (location: (41,5)-(41,7)) │ │ ├── opening_loc: (41,5)-(41,6) = ":" @@ -295,7 +295,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (41,0)-(41,4) = "case" │ └── end_keyword_loc: (43,0)-(43,3) = "end" - ├── @ CaseNode (location: (45,0)-(47,3)) + ├── @ CaseMatchNode (location: (45,0)-(47,3)) │ ├── predicate: │ │ @ SymbolNode (location: (45,5)-(45,7)) │ │ ├── opening_loc: (45,5)-(45,6) = ":" @@ -317,7 +317,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (45,0)-(45,4) = "case" │ └── end_keyword_loc: (47,0)-(47,3) = "end" - ├── @ CaseNode (location: (49,0)-(51,3)) + ├── @ CaseMatchNode (location: (49,0)-(51,3)) │ ├── predicate: │ │ @ SymbolNode (location: (49,5)-(49,7)) │ │ ├── opening_loc: (49,5)-(49,6) = ":" @@ -356,7 +356,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (49,0)-(49,4) = "case" │ └── end_keyword_loc: (51,0)-(51,3) = "end" - ├── @ CaseNode (location: (53,0)-(55,3)) + ├── @ CaseMatchNode (location: (53,0)-(55,3)) │ ├── predicate: │ │ @ SymbolNode (location: (53,5)-(53,7)) │ │ ├── opening_loc: (53,5)-(53,6) = ":" @@ -396,7 +396,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (53,0)-(53,4) = "case" │ └── end_keyword_loc: (55,0)-(55,3) = "end" - ├── @ CaseNode (location: (57,0)-(59,3)) + ├── @ CaseMatchNode (location: (57,0)-(59,3)) │ ├── predicate: │ │ @ SymbolNode (location: (57,5)-(57,7)) │ │ ├── opening_loc: (57,5)-(57,6) = ":" @@ -421,7 +421,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (57,0)-(57,4) = "case" │ └── end_keyword_loc: (59,0)-(59,3) = "end" - ├── @ CaseNode (location: (61,0)-(63,3)) + ├── @ CaseMatchNode (location: (61,0)-(63,3)) │ ├── predicate: │ │ @ SymbolNode (location: (61,5)-(61,7)) │ │ ├── opening_loc: (61,5)-(61,6) = ":" @@ -461,7 +461,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (61,0)-(61,4) = "case" │ └── end_keyword_loc: (63,0)-(63,3) = "end" - ├── @ CaseNode (location: (65,0)-(67,3)) + ├── @ CaseMatchNode (location: (65,0)-(67,3)) │ ├── predicate: │ │ @ SymbolNode (location: (65,5)-(65,7)) │ │ ├── opening_loc: (65,5)-(65,6) = ":" @@ -501,7 +501,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (65,0)-(65,4) = "case" │ └── end_keyword_loc: (67,0)-(67,3) = "end" - ├── @ CaseNode (location: (69,0)-(71,3)) + ├── @ CaseMatchNode (location: (69,0)-(71,3)) │ ├── predicate: │ │ @ SymbolNode (location: (69,5)-(69,7)) │ │ ├── opening_loc: (69,5)-(69,6) = ":" @@ -552,7 +552,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (69,0)-(69,4) = "case" │ └── end_keyword_loc: (71,0)-(71,3) = "end" - ├── @ CaseNode (location: (73,0)-(75,3)) + ├── @ CaseMatchNode (location: (73,0)-(75,3)) │ ├── predicate: │ │ @ SymbolNode (location: (73,5)-(73,7)) │ │ ├── opening_loc: (73,5)-(73,6) = ":" @@ -605,7 +605,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (73,0)-(73,4) = "case" │ └── end_keyword_loc: (75,0)-(75,3) = "end" - ├── @ CaseNode (location: (77,0)-(79,3)) + ├── @ CaseMatchNode (location: (77,0)-(79,3)) │ ├── predicate: │ │ @ SymbolNode (location: (77,5)-(77,7)) │ │ ├── opening_loc: (77,5)-(77,6) = ":" @@ -635,7 +635,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (77,0)-(77,4) = "case" │ └── end_keyword_loc: (79,0)-(79,3) = "end" - ├── @ CaseNode (location: (81,0)-(83,3)) + ├── @ CaseMatchNode (location: (81,0)-(83,3)) │ ├── predicate: │ │ @ SymbolNode (location: (81,5)-(81,7)) │ │ ├── opening_loc: (81,5)-(81,6) = ":" @@ -691,7 +691,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (81,0)-(81,4) = "case" │ └── end_keyword_loc: (83,0)-(83,3) = "end" - ├── @ CaseNode (location: (85,0)-(87,3)) + ├── @ CaseMatchNode (location: (85,0)-(87,3)) │ ├── predicate: │ │ @ SymbolNode (location: (85,5)-(85,7)) │ │ ├── opening_loc: (85,5)-(85,6) = ":" @@ -714,7 +714,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (85,0)-(85,4) = "case" │ └── end_keyword_loc: (87,0)-(87,3) = "end" - ├── @ CaseNode (location: (89,0)-(91,3)) + ├── @ CaseMatchNode (location: (89,0)-(91,3)) │ ├── predicate: │ │ @ SymbolNode (location: (89,5)-(89,7)) │ │ ├── opening_loc: (89,5)-(89,6) = ":" @@ -752,7 +752,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (89,0)-(89,4) = "case" │ └── end_keyword_loc: (91,0)-(91,3) = "end" - ├── @ CaseNode (location: (93,0)-(95,3)) + ├── @ CaseMatchNode (location: (93,0)-(95,3)) │ ├── predicate: │ │ @ SymbolNode (location: (93,5)-(93,7)) │ │ ├── opening_loc: (93,5)-(93,6) = ":" @@ -790,7 +790,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (93,0)-(93,4) = "case" │ └── end_keyword_loc: (95,0)-(95,3) = "end" - ├── @ CaseNode (location: (97,0)-(99,3)) + ├── @ CaseMatchNode (location: (97,0)-(99,3)) │ ├── predicate: │ │ @ SymbolNode (location: (97,5)-(97,7)) │ │ ├── opening_loc: (97,5)-(97,6) = ":" @@ -811,7 +811,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (97,0)-(97,4) = "case" │ └── end_keyword_loc: (99,0)-(99,3) = "end" - ├── @ CaseNode (location: (101,0)-(103,3)) + ├── @ CaseMatchNode (location: (101,0)-(103,3)) │ ├── predicate: │ │ @ SymbolNode (location: (101,5)-(101,7)) │ │ ├── opening_loc: (101,5)-(101,6) = ":" @@ -837,7 +837,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (101,0)-(101,4) = "case" │ └── end_keyword_loc: (103,0)-(103,3) = "end" - ├── @ CaseNode (location: (105,0)-(107,3)) + ├── @ CaseMatchNode (location: (105,0)-(107,3)) │ ├── predicate: │ │ @ SymbolNode (location: (105,5)-(105,7)) │ │ ├── opening_loc: (105,5)-(105,6) = ":" @@ -868,7 +868,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (105,0)-(105,4) = "case" │ └── end_keyword_loc: (107,0)-(107,3) = "end" - └── @ CaseNode (location: (109,0)-(111,3)) + └── @ CaseMatchNode (location: (109,0)-(111,3)) ├── predicate: │ @ SymbolNode (location: (109,5)-(109,7)) │ ├── opening_loc: (109,5)-(109,6) = ":" diff --git a/test/prism/snapshots/seattlerb/case_in_31.txt b/test/prism/snapshots/seattlerb/case_in_31.txt index e753c3ccff..7c1a73f542 100644 --- a/test/prism/snapshots/seattlerb/case_in_31.txt +++ b/test/prism/snapshots/seattlerb/case_in_31.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(4,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(4,3)) + └── @ CaseMatchNode (location: (1,0)-(4,3)) ├── predicate: │ @ SymbolNode (location: (1,5)-(1,7)) │ ├── opening_loc: (1,5)-(1,6) = ":" diff --git a/test/prism/snapshots/seattlerb/case_in_37.txt b/test/prism/snapshots/seattlerb/case_in_37.txt index b272291f7e..a4c9aa9d42 100644 --- a/test/prism/snapshots/seattlerb/case_in_37.txt +++ b/test/prism/snapshots/seattlerb/case_in_37.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(4,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(4,3)) + └── @ CaseMatchNode (location: (1,0)-(4,3)) ├── predicate: │ @ SymbolNode (location: (1,5)-(1,7)) │ ├── opening_loc: (1,5)-(1,6) = ":" diff --git a/test/prism/snapshots/seattlerb/case_in_42.txt b/test/prism/snapshots/seattlerb/case_in_42.txt index fe69a9e3d3..bd77e493a0 100644 --- a/test/prism/snapshots/seattlerb/case_in_42.txt +++ b/test/prism/snapshots/seattlerb/case_in_42.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(3,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(3,3)) + └── @ CaseMatchNode (location: (1,0)-(3,3)) ├── predicate: │ @ SymbolNode (location: (1,5)-(1,7)) │ ├── opening_loc: (1,5)-(1,6) = ":" diff --git a/test/prism/snapshots/seattlerb/case_in_42_2.txt b/test/prism/snapshots/seattlerb/case_in_42_2.txt index f4e6806d35..86375abc07 100644 --- a/test/prism/snapshots/seattlerb/case_in_42_2.txt +++ b/test/prism/snapshots/seattlerb/case_in_42_2.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(3,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(3,3)) + └── @ CaseMatchNode (location: (1,0)-(3,3)) ├── predicate: │ @ SymbolNode (location: (1,5)-(1,7)) │ ├── opening_loc: (1,5)-(1,6) = ":" diff --git a/test/prism/snapshots/seattlerb/case_in_47.txt b/test/prism/snapshots/seattlerb/case_in_47.txt index 32b24fc98d..4c38e1de65 100644 --- a/test/prism/snapshots/seattlerb/case_in_47.txt +++ b/test/prism/snapshots/seattlerb/case_in_47.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(4,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(4,3)) + └── @ CaseMatchNode (location: (1,0)-(4,3)) ├── predicate: │ @ SymbolNode (location: (1,5)-(1,7)) │ ├── opening_loc: (1,5)-(1,6) = ":" diff --git a/test/prism/snapshots/seattlerb/case_in_67.txt b/test/prism/snapshots/seattlerb/case_in_67.txt index 73649059f0..55b188a652 100644 --- a/test/prism/snapshots/seattlerb/case_in_67.txt +++ b/test/prism/snapshots/seattlerb/case_in_67.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(3,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(3,3)) + └── @ CaseMatchNode (location: (1,0)-(3,3)) ├── predicate: │ @ SymbolNode (location: (1,5)-(1,7)) │ ├── opening_loc: (1,5)-(1,6) = ":" diff --git a/test/prism/snapshots/seattlerb/case_in_86.txt b/test/prism/snapshots/seattlerb/case_in_86.txt index 7197e77bc0..ab01082198 100644 --- a/test/prism/snapshots/seattlerb/case_in_86.txt +++ b/test/prism/snapshots/seattlerb/case_in_86.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(3,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(3,3)) + └── @ CaseMatchNode (location: (1,0)-(3,3)) ├── predicate: │ @ ArrayNode (location: (1,5)-(1,13)) │ ├── elements: (length: 2) diff --git a/test/prism/snapshots/seattlerb/case_in_86_2.txt b/test/prism/snapshots/seattlerb/case_in_86_2.txt index 9d3abbb31d..c2b320dfad 100644 --- a/test/prism/snapshots/seattlerb/case_in_86_2.txt +++ b/test/prism/snapshots/seattlerb/case_in_86_2.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(3,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(3,3)) + └── @ CaseMatchNode (location: (1,0)-(3,3)) ├── predicate: │ @ ArrayNode (location: (1,5)-(1,13)) │ ├── elements: (length: 2) diff --git a/test/prism/snapshots/seattlerb/case_in_array_pat_const.txt b/test/prism/snapshots/seattlerb/case_in_array_pat_const.txt index 8316c51f2e..8775270671 100644 --- a/test/prism/snapshots/seattlerb/case_in_array_pat_const.txt +++ b/test/prism/snapshots/seattlerb/case_in_array_pat_const.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(4,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(4,3)) + └── @ CaseMatchNode (location: (1,0)-(4,3)) ├── predicate: │ @ SymbolNode (location: (1,5)-(1,7)) │ ├── opening_loc: (1,5)-(1,6) = ":" diff --git a/test/prism/snapshots/seattlerb/case_in_array_pat_const2.txt b/test/prism/snapshots/seattlerb/case_in_array_pat_const2.txt index 9f54b921ac..1b9c57039e 100644 --- a/test/prism/snapshots/seattlerb/case_in_array_pat_const2.txt +++ b/test/prism/snapshots/seattlerb/case_in_array_pat_const2.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(4,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(4,3)) + └── @ CaseMatchNode (location: (1,0)-(4,3)) ├── predicate: │ @ SymbolNode (location: (1,5)-(1,7)) │ ├── opening_loc: (1,5)-(1,6) = ":" 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 index 0b903e8d91..b16682a272 100644 --- a/test/prism/snapshots/seattlerb/case_in_array_pat_paren_assign.txt +++ b/test/prism/snapshots/seattlerb/case_in_array_pat_paren_assign.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(4,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(4,3)) + └── @ CaseMatchNode (location: (1,0)-(4,3)) ├── predicate: │ @ SymbolNode (location: (1,5)-(1,7)) │ ├── opening_loc: (1,5)-(1,6) = ":" diff --git a/test/prism/snapshots/seattlerb/case_in_const.txt b/test/prism/snapshots/seattlerb/case_in_const.txt index 59880bc2a7..dac930a191 100644 --- a/test/prism/snapshots/seattlerb/case_in_const.txt +++ b/test/prism/snapshots/seattlerb/case_in_const.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(4,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(4,3)) + └── @ CaseMatchNode (location: (1,0)-(4,3)) ├── predicate: │ @ ConstantReadNode (location: (1,5)-(1,10)) │ └── name: :Array diff --git a/test/prism/snapshots/seattlerb/case_in_else.txt b/test/prism/snapshots/seattlerb/case_in_else.txt index c132443cc8..ba6655f7bf 100644 --- a/test/prism/snapshots/seattlerb/case_in_else.txt +++ b/test/prism/snapshots/seattlerb/case_in_else.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(6,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(6,3)) + └── @ CaseMatchNode (location: (1,0)-(6,3)) ├── predicate: │ @ ConstantReadNode (location: (1,5)-(1,10)) │ └── name: :Array diff --git a/test/prism/snapshots/seattlerb/case_in_find.txt b/test/prism/snapshots/seattlerb/case_in_find.txt index 191dee3a04..0a34234abd 100644 --- a/test/prism/snapshots/seattlerb/case_in_find.txt +++ b/test/prism/snapshots/seattlerb/case_in_find.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(3,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(3,3)) + └── @ CaseMatchNode (location: (1,0)-(3,3)) ├── predicate: │ @ SymbolNode (location: (1,5)-(1,7)) │ ├── opening_loc: (1,5)-(1,6) = ":" diff --git a/test/prism/snapshots/seattlerb/case_in_find_array.txt b/test/prism/snapshots/seattlerb/case_in_find_array.txt index df764a4b07..3fce60c9c1 100644 --- a/test/prism/snapshots/seattlerb/case_in_find_array.txt +++ b/test/prism/snapshots/seattlerb/case_in_find_array.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(3,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(3,3)) + └── @ CaseMatchNode (location: (1,0)-(3,3)) ├── predicate: │ @ SymbolNode (location: (1,5)-(1,7)) │ ├── opening_loc: (1,5)-(1,6) = ":" diff --git a/test/prism/snapshots/seattlerb/case_in_hash_pat.txt b/test/prism/snapshots/seattlerb/case_in_hash_pat.txt index a8e27b4716..174b61c0f8 100644 --- a/test/prism/snapshots/seattlerb/case_in_hash_pat.txt +++ b/test/prism/snapshots/seattlerb/case_in_hash_pat.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(4,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(4,3)) + └── @ CaseMatchNode (location: (1,0)-(4,3)) ├── predicate: │ @ SymbolNode (location: (1,5)-(1,7)) │ ├── opening_loc: (1,5)-(1,6) = ":" diff --git a/test/prism/snapshots/seattlerb/case_in_hash_pat_assign.txt b/test/prism/snapshots/seattlerb/case_in_hash_pat_assign.txt index 4df1e565a7..d0673d1de4 100644 --- a/test/prism/snapshots/seattlerb/case_in_hash_pat_assign.txt +++ b/test/prism/snapshots/seattlerb/case_in_hash_pat_assign.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(4,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(4,3)) + └── @ CaseMatchNode (location: (1,0)-(4,3)) ├── predicate: │ @ SymbolNode (location: (1,5)-(1,7)) │ ├── opening_loc: (1,5)-(1,6) = ":" 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 index a444e523f7..802f4d7efd 100644 --- a/test/prism/snapshots/seattlerb/case_in_hash_pat_paren_assign.txt +++ b/test/prism/snapshots/seattlerb/case_in_hash_pat_paren_assign.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(4,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(4,3)) + └── @ CaseMatchNode (location: (1,0)-(4,3)) ├── predicate: │ @ SymbolNode (location: (1,5)-(1,7)) │ ├── opening_loc: (1,5)-(1,6) = ":" 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 index 05a111f0e0..c445b01030 100644 --- a/test/prism/snapshots/seattlerb/case_in_hash_pat_paren_true.txt +++ b/test/prism/snapshots/seattlerb/case_in_hash_pat_paren_true.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(4,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(4,3)) + └── @ CaseMatchNode (location: (1,0)-(4,3)) ├── predicate: │ @ SymbolNode (location: (1,5)-(1,7)) │ ├── opening_loc: (1,5)-(1,6) = ":" diff --git a/test/prism/snapshots/seattlerb/case_in_hash_pat_rest.txt b/test/prism/snapshots/seattlerb/case_in_hash_pat_rest.txt index 90e325213e..83e247cb91 100644 --- a/test/prism/snapshots/seattlerb/case_in_hash_pat_rest.txt +++ b/test/prism/snapshots/seattlerb/case_in_hash_pat_rest.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(3,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(3,3)) + └── @ CaseMatchNode (location: (1,0)-(3,3)) ├── predicate: │ @ SymbolNode (location: (1,5)-(1,7)) │ ├── opening_loc: (1,5)-(1,6) = ":" 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 index 685033005f..6b6147e28f 100644 --- a/test/prism/snapshots/seattlerb/case_in_hash_pat_rest_solo.txt +++ b/test/prism/snapshots/seattlerb/case_in_hash_pat_rest_solo.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(3,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(3,3)) + └── @ CaseMatchNode (location: (1,0)-(3,3)) ├── predicate: │ @ SymbolNode (location: (1,5)-(1,7)) │ ├── opening_loc: (1,5)-(1,6) = ":" 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 index 03f29769c1..dfc51b5ea5 100644 --- a/test/prism/snapshots/seattlerb/case_in_if_unless_post_mod.txt +++ b/test/prism/snapshots/seattlerb/case_in_if_unless_post_mod.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(6,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(6,3)) + └── @ CaseMatchNode (location: (1,0)-(6,3)) ├── predicate: │ @ SymbolNode (location: (1,5)-(1,7)) │ ├── opening_loc: (1,5)-(1,6) = ":" diff --git a/test/prism/snapshots/seattlerb/case_in_multiple.txt b/test/prism/snapshots/seattlerb/case_in_multiple.txt index 046cb61838..fe6eb13fd1 100644 --- a/test/prism/snapshots/seattlerb/case_in_multiple.txt +++ b/test/prism/snapshots/seattlerb/case_in_multiple.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(6,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(6,3)) + └── @ CaseMatchNode (location: (1,0)-(6,3)) ├── predicate: │ @ SymbolNode (location: (1,5)-(1,7)) │ ├── opening_loc: (1,5)-(1,6) = ":" diff --git a/test/prism/snapshots/seattlerb/case_in_or.txt b/test/prism/snapshots/seattlerb/case_in_or.txt index 059ddcd32c..11a706b283 100644 --- a/test/prism/snapshots/seattlerb/case_in_or.txt +++ b/test/prism/snapshots/seattlerb/case_in_or.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(4,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(4,3)) + └── @ CaseMatchNode (location: (1,0)-(4,3)) ├── predicate: │ @ SymbolNode (location: (1,5)-(1,7)) │ ├── opening_loc: (1,5)-(1,6) = ":" diff --git a/test/prism/snapshots/seattlerb/parse_pattern_019.txt b/test/prism/snapshots/seattlerb/parse_pattern_019.txt index e3bf981ded..196cb186b9 100644 --- a/test/prism/snapshots/seattlerb/parse_pattern_019.txt +++ b/test/prism/snapshots/seattlerb/parse_pattern_019.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(4,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(4,3)) + └── @ CaseMatchNode (location: (1,0)-(4,3)) ├── predicate: │ @ IntegerNode (location: (1,5)-(1,6)) │ └── flags: decimal diff --git a/test/prism/snapshots/seattlerb/parse_pattern_044.txt b/test/prism/snapshots/seattlerb/parse_pattern_044.txt index c354112ebf..f83bd5b02a 100644 --- a/test/prism/snapshots/seattlerb/parse_pattern_044.txt +++ b/test/prism/snapshots/seattlerb/parse_pattern_044.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(4,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(4,3)) + └── @ CaseMatchNode (location: (1,0)-(4,3)) ├── predicate: │ @ CallNode (location: (1,5)-(1,8)) │ ├── receiver: ∅ diff --git a/test/prism/snapshots/seattlerb/parse_pattern_051.txt b/test/prism/snapshots/seattlerb/parse_pattern_051.txt index 5d95d71701..fb32cd0359 100644 --- a/test/prism/snapshots/seattlerb/parse_pattern_051.txt +++ b/test/prism/snapshots/seattlerb/parse_pattern_051.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(4,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(4,3)) + └── @ CaseMatchNode (location: (1,0)-(4,3)) ├── predicate: │ @ ArrayNode (location: (1,5)-(1,14)) │ ├── elements: (length: 3) diff --git a/test/prism/snapshots/seattlerb/parse_pattern_058.txt b/test/prism/snapshots/seattlerb/parse_pattern_058.txt index 4812556b5e..6ec42013bb 100644 --- a/test/prism/snapshots/seattlerb/parse_pattern_058.txt +++ b/test/prism/snapshots/seattlerb/parse_pattern_058.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(4,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(4,3)) + └── @ CaseMatchNode (location: (1,0)-(4,3)) ├── predicate: │ @ HashNode (location: (1,5)-(1,11)) │ ├── opening_loc: (1,5)-(1,6) = "{" diff --git a/test/prism/snapshots/seattlerb/parse_pattern_058_2.txt b/test/prism/snapshots/seattlerb/parse_pattern_058_2.txt index 4e5bf2f294..0f578ee687 100644 --- a/test/prism/snapshots/seattlerb/parse_pattern_058_2.txt +++ b/test/prism/snapshots/seattlerb/parse_pattern_058_2.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(4,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(4,3)) + └── @ CaseMatchNode (location: (1,0)-(4,3)) ├── predicate: │ @ HashNode (location: (1,5)-(1,11)) │ ├── opening_loc: (1,5)-(1,6) = "{" diff --git a/test/prism/snapshots/seattlerb/parse_pattern_069.txt b/test/prism/snapshots/seattlerb/parse_pattern_069.txt index ae40e65ddd..98661ae2fb 100644 --- a/test/prism/snapshots/seattlerb/parse_pattern_069.txt +++ b/test/prism/snapshots/seattlerb/parse_pattern_069.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(4,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(4,3)) + └── @ CaseMatchNode (location: (1,0)-(4,3)) ├── predicate: │ @ SymbolNode (location: (1,5)-(1,7)) │ ├── opening_loc: (1,5)-(1,6) = ":" diff --git a/test/prism/snapshots/seattlerb/parse_pattern_076.txt b/test/prism/snapshots/seattlerb/parse_pattern_076.txt index b6643f8609..7f3131ccfb 100644 --- a/test/prism/snapshots/seattlerb/parse_pattern_076.txt +++ b/test/prism/snapshots/seattlerb/parse_pattern_076.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(4,3)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(4,3)) + └── @ CaseMatchNode (location: (1,0)-(4,3)) ├── predicate: │ @ HashNode (location: (1,5)-(1,11)) │ ├── opening_loc: (1,5)-(1,6) = "{" diff --git a/test/prism/snapshots/unparser/corpus/literal/pattern.txt b/test/prism/snapshots/unparser/corpus/literal/pattern.txt index 61e947a3f9..492528b599 100644 --- a/test/prism/snapshots/unparser/corpus/literal/pattern.txt +++ b/test/prism/snapshots/unparser/corpus/literal/pattern.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(41,8)) └── body: (length: 4) - ├── @ CaseNode (location: (1,0)-(33,3)) + ├── @ CaseMatchNode (location: (1,0)-(33,3)) │ ├── predicate: │ │ @ CallNode (location: (1,5)-(1,8)) │ │ ├── receiver: ∅ @@ -332,7 +332,7 @@ │ │ └── end_keyword_loc: (33,0)-(33,3) = "end" │ ├── case_keyword_loc: (1,0)-(1,4) = "case" │ └── end_keyword_loc: (33,0)-(33,3) = "end" - ├── @ CaseNode (location: (34,0)-(36,3)) + ├── @ CaseMatchNode (location: (34,0)-(36,3)) │ ├── predicate: │ │ @ CallNode (location: (34,5)-(34,8)) │ │ ├── receiver: ∅ @@ -374,7 +374,7 @@ │ ├── consequent: ∅ │ ├── case_keyword_loc: (34,0)-(34,4) = "case" │ └── end_keyword_loc: (36,0)-(36,3) = "end" - ├── @ CaseNode (location: (37,0)-(40,3)) + ├── @ CaseMatchNode (location: (37,0)-(40,3)) │ ├── predicate: │ │ @ CallNode (location: (37,5)-(37,8)) │ │ ├── receiver: ∅ diff --git a/test/prism/snapshots/whitequark/newline_in_hash_argument.txt b/test/prism/snapshots/whitequark/newline_in_hash_argument.txt index 9d29c284e4..43791501f3 100644 --- a/test/prism/snapshots/whitequark/newline_in_hash_argument.txt +++ b/test/prism/snapshots/whitequark/newline_in_hash_argument.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(14,1)) └── body: (length: 3) - ├── @ CaseNode (location: (1,0)-(8,3)) + ├── @ CaseMatchNode (location: (1,0)-(8,3)) │ ├── predicate: │ │ @ CallNode (location: (1,5)-(1,8)) │ │ ├── receiver: ∅ diff --git a/test/prism/snapshots/whitequark/pattern_matching__FILE__LINE_literals.txt b/test/prism/snapshots/whitequark/pattern_matching__FILE__LINE_literals.txt index 27e151152b..c12a9a169e 100644 --- a/test/prism/snapshots/whitequark/pattern_matching__FILE__LINE_literals.txt +++ b/test/prism/snapshots/whitequark/pattern_matching__FILE__LINE_literals.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,8)-(3,11)) └── body: (length: 1) - └── @ CaseNode (location: (1,8)-(3,11)) + └── @ CaseMatchNode (location: (1,8)-(3,11)) ├── predicate: │ @ ArrayNode (location: (1,13)-(1,51)) │ ├── elements: (length: 3) diff --git a/test/prism/snapshots/whitequark/pattern_matching_blank_else.txt b/test/prism/snapshots/whitequark/pattern_matching_blank_else.txt index f6b212c8b2..308abd2f02 100644 --- a/test/prism/snapshots/whitequark/pattern_matching_blank_else.txt +++ b/test/prism/snapshots/whitequark/pattern_matching_blank_else.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(1,26)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(1,26)) + └── @ CaseMatchNode (location: (1,0)-(1,26)) ├── predicate: │ @ IntegerNode (location: (1,5)-(1,6)) │ └── flags: decimal diff --git a/test/prism/snapshots/whitequark/pattern_matching_else.txt b/test/prism/snapshots/whitequark/pattern_matching_else.txt index 358a556947..944cc7b429 100644 --- a/test/prism/snapshots/whitequark/pattern_matching_else.txt +++ b/test/prism/snapshots/whitequark/pattern_matching_else.txt @@ -3,7 +3,7 @@ └── statements: @ StatementsNode (location: (1,0)-(1,29)) └── body: (length: 1) - └── @ CaseNode (location: (1,0)-(1,29)) + └── @ CaseMatchNode (location: (1,0)-(1,29)) ├── predicate: │ @ IntegerNode (location: (1,5)-(1,6)) │ └── flags: decimal