summaryrefslogtreecommitdiff
path: root/test/prism
diff options
context:
space:
mode:
authorKevin Newton <[email protected]>2024-09-13 15:33:14 -0400
committerKevin Newton <[email protected]>2024-09-16 08:44:19 -0400
commitd57bc870ac8021f2c23e4da346d037820ad45d64 (patch)
tree2f1611ffe01a7966cf305f6d5dbcf5d4e9496b3f /test/prism
parentfab01b15e999e9f9e18389dabfce3919e080ed56 (diff)
[PRISM] Remove snapshot testing from Prism sync
Notes
Notes: Merged: https://github.com/ruby/ruby/pull/11624
Diffstat (limited to 'test/prism')
-rw-r--r--test/prism/snapshots/alias.txt215
-rw-r--r--test/prism/snapshots/arithmetic.txt257
-rw-r--r--test/prism/snapshots/arrays.txt1886
-rw-r--r--test/prism/snapshots/begin_ensure.txt286
-rw-r--r--test/prism/snapshots/begin_rescue.txt786
-rw-r--r--test/prism/snapshots/blocks.txt829
-rw-r--r--test/prism/snapshots/boolean_operators.txt59
-rw-r--r--test/prism/snapshots/booleans.txt11
-rw-r--r--test/prism/snapshots/break.txt499
-rw-r--r--test/prism/snapshots/case.txt554
-rw-r--r--test/prism/snapshots/classes.txt418
-rw-r--r--test/prism/snapshots/command_method_call.txt773
-rw-r--r--test/prism/snapshots/comments.txt147
-rw-r--r--test/prism/snapshots/constants.txt1336
-rw-r--r--test/prism/snapshots/dash_heredocs.txt273
-rw-r--r--test/prism/snapshots/defined.txt99
-rw-r--r--test/prism/snapshots/dos_endings.txt114
-rw-r--r--test/prism/snapshots/dstring.txt89
-rw-r--r--test/prism/snapshots/dsym_str.txt13
-rw-r--r--test/prism/snapshots/embdoc_no_newline_at_end.txt7
-rw-r--r--test/prism/snapshots/emoji_method_calls.txt33
-rw-r--r--test/prism/snapshots/endless_methods.txt115
-rw-r--r--test/prism/snapshots/endless_range_in_conditional.txt58
-rw-r--r--test/prism/snapshots/for.txt219
-rw-r--r--test/prism/snapshots/global_variables.txt217
-rw-r--r--test/prism/snapshots/hashes.txt422
-rw-r--r--test/prism/snapshots/heredoc.txt13
-rw-r--r--test/prism/snapshots/heredoc_with_carriage_returns.txt13
-rw-r--r--test/prism/snapshots/heredoc_with_comment.txt23
-rw-r--r--test/prism/snapshots/heredoc_with_escaped_newline_at_start.txt69
-rw-r--r--test/prism/snapshots/heredoc_with_trailing_newline.txt13
-rw-r--r--test/prism/snapshots/heredocs_leading_whitespace.txt65
-rw-r--r--test/prism/snapshots/heredocs_nested.txt104
-rw-r--r--test/prism/snapshots/heredocs_with_ignored_newlines.txt72
-rw-r--r--test/prism/snapshots/heredocs_with_ignored_newlines_and_non_empty.txt13
-rw-r--r--test/prism/snapshots/if.txt611
-rw-r--r--test/prism/snapshots/indented_file_end.txt21
-rw-r--r--test/prism/snapshots/integer_operations.txt643
-rw-r--r--test/prism/snapshots/keyword_method_names.txt191
-rw-r--r--test/prism/snapshots/keywords.txt59
-rw-r--r--test/prism/snapshots/lambda.txt221
-rw-r--r--test/prism/snapshots/method_calls.txt2592
-rw-r--r--test/prism/snapshots/methods.txt2245
-rw-r--r--test/prism/snapshots/modules.txt204
-rw-r--r--test/prism/snapshots/multi_write.txt111
-rw-r--r--test/prism/snapshots/newline_terminated.txt109
-rw-r--r--test/prism/snapshots/next.txt372
-rw-r--r--test/prism/snapshots/nils.txt43
-rw-r--r--test/prism/snapshots/non_alphanumeric_methods.txt545
-rw-r--r--test/prism/snapshots/not.txt360
-rw-r--r--test/prism/snapshots/numbers.txt147
-rw-r--r--test/prism/snapshots/patterns.txt5570
-rw-r--r--test/prism/snapshots/procs.txt451
-rw-r--r--test/prism/snapshots/range_begin_open_exclusive.txt15
-rw-r--r--test/prism/snapshots/range_begin_open_inclusive.txt15
-rw-r--r--test/prism/snapshots/range_end_open_exclusive.txt15
-rw-r--r--test/prism/snapshots/range_end_open_inclusive.txt15
-rw-r--r--test/prism/snapshots/ranges.txt548
-rw-r--r--test/prism/snapshots/regex.txt545
-rw-r--r--test/prism/snapshots/regex_char_width.txt57
-rw-r--r--test/prism/snapshots/repeat_parameters.txt509
-rw-r--r--test/prism/snapshots/rescue.txt584
-rw-r--r--test/prism/snapshots/return.txt179
-rw-r--r--test/prism/snapshots/seattlerb/BEGIN.txt19
-rw-r--r--test/prism/snapshots/seattlerb/TestRubyParserShared.txt398
-rw-r--r--test/prism/snapshots/seattlerb/__ENCODING__.txt9
-rw-r--r--test/prism/snapshots/seattlerb/alias_gvar_backref.txt18
-rw-r--r--test/prism/snapshots/seattlerb/alias_resword.txt24
-rw-r--r--test/prism/snapshots/seattlerb/and_multi.txt33
-rw-r--r--test/prism/snapshots/seattlerb/aref_args_assocs.txt26
-rw-r--r--test/prism/snapshots/seattlerb/aref_args_lit_assocs.txt29
-rw-r--r--test/prism/snapshots/seattlerb/args_kw_block.txt43
-rw-r--r--test/prism/snapshots/seattlerb/array_line_breaks.txt27
-rw-r--r--test/prism/snapshots/seattlerb/array_lits_trailing_calls.txt37
-rw-r--r--test/prism/snapshots/seattlerb/assoc__bare.txt36
-rw-r--r--test/prism/snapshots/seattlerb/assoc_label.txt37
-rw-r--r--test/prism/snapshots/seattlerb/attr_asgn_colon_id.txt26
-rw-r--r--test/prism/snapshots/seattlerb/attrasgn_array_arg.txt44
-rw-r--r--test/prism/snapshots/seattlerb/attrasgn_array_lhs.txt85
-rw-r--r--test/prism/snapshots/seattlerb/attrasgn_primary_dot_constant.txt33
-rw-r--r--test/prism/snapshots/seattlerb/backticks_interpolation_line.txt43
-rw-r--r--test/prism/snapshots/seattlerb/bang_eq.txt26
-rw-r--r--test/prism/snapshots/seattlerb/bdot2.txt40
-rw-r--r--test/prism/snapshots/seattlerb/bdot3.txt40
-rw-r--r--test/prism/snapshots/seattlerb/begin_ensure_no_bodies.txt20
-rw-r--r--test/prism/snapshots/seattlerb/begin_rescue_else_ensure_bodies.txt57
-rw-r--r--test/prism/snapshots/seattlerb/begin_rescue_else_ensure_no_bodies.txt33
-rw-r--r--test/prism/snapshots/seattlerb/begin_rescue_ensure_no_bodies.txt28
-rw-r--r--test/prism/snapshots/seattlerb/block_arg__bare.txt35
-rw-r--r--test/prism/snapshots/seattlerb/block_arg_kwsplat.txt44
-rw-r--r--test/prism/snapshots/seattlerb/block_arg_opt_arg_block.txt59
-rw-r--r--test/prism/snapshots/seattlerb/block_arg_opt_splat.txt56
-rw-r--r--test/prism/snapshots/seattlerb/block_arg_opt_splat_arg_block_omfg.txt64
-rw-r--r--test/prism/snapshots/seattlerb/block_arg_optional.txt48
-rw-r--r--test/prism/snapshots/seattlerb/block_arg_scope.txt45
-rw-r--r--test/prism/snapshots/seattlerb/block_arg_scope2.txt48
-rw-r--r--test/prism/snapshots/seattlerb/block_arg_splat_arg.txt50
-rw-r--r--test/prism/snapshots/seattlerb/block_args_kwargs.txt51
-rw-r--r--test/prism/snapshots/seattlerb/block_args_no_kwargs.txt43
-rw-r--r--test/prism/snapshots/seattlerb/block_args_opt1.txt67
-rw-r--r--test/prism/snapshots/seattlerb/block_args_opt2.txt57
-rw-r--r--test/prism/snapshots/seattlerb/block_args_opt2_2.txt80
-rw-r--r--test/prism/snapshots/seattlerb/block_args_opt3.txt89
-rw-r--r--test/prism/snapshots/seattlerb/block_call_defn_call_block_call.txt86
-rw-r--r--test/prism/snapshots/seattlerb/block_call_dot_op2_brace_block.txt108
-rw-r--r--test/prism/snapshots/seattlerb/block_call_dot_op2_cmd_args_do_block.txt121
-rw-r--r--test/prism/snapshots/seattlerb/block_call_operation_colon.txt57
-rw-r--r--test/prism/snapshots/seattlerb/block_call_operation_dot.txt57
-rw-r--r--test/prism/snapshots/seattlerb/block_call_paren_call_block_call.txt65
-rw-r--r--test/prism/snapshots/seattlerb/block_command_operation_colon.txt52
-rw-r--r--test/prism/snapshots/seattlerb/block_command_operation_dot.txt52
-rw-r--r--test/prism/snapshots/seattlerb/block_decomp_anon_splat_arg.txt53
-rw-r--r--test/prism/snapshots/seattlerb/block_decomp_arg_splat.txt53
-rw-r--r--test/prism/snapshots/seattlerb/block_decomp_arg_splat_arg.txt59
-rw-r--r--test/prism/snapshots/seattlerb/block_decomp_splat.txt53
-rw-r--r--test/prism/snapshots/seattlerb/block_kw.txt47
-rw-r--r--test/prism/snapshots/seattlerb/block_kw__required.txt43
-rw-r--r--test/prism/snapshots/seattlerb/block_kwarg_lvar.txt57
-rw-r--r--test/prism/snapshots/seattlerb/block_kwarg_lvar_multiple.txt68
-rw-r--r--test/prism/snapshots/seattlerb/block_opt_arg.txt51
-rw-r--r--test/prism/snapshots/seattlerb/block_opt_splat.txt53
-rw-r--r--test/prism/snapshots/seattlerb/block_opt_splat_arg_block_omfg.txt61
-rw-r--r--test/prism/snapshots/seattlerb/block_optarg.txt51
-rw-r--r--test/prism/snapshots/seattlerb/block_paren_splat.txt56
-rw-r--r--test/prism/snapshots/seattlerb/block_reg_optarg.txt54
-rw-r--r--test/prism/snapshots/seattlerb/block_return.txt62
-rw-r--r--test/prism/snapshots/seattlerb/block_scope.txt33
-rw-r--r--test/prism/snapshots/seattlerb/block_splat_reg.txt47
-rw-r--r--test/prism/snapshots/seattlerb/bug169.txt32
-rw-r--r--test/prism/snapshots/seattlerb/bug179.txt32
-rw-r--r--test/prism/snapshots/seattlerb/bug190.txt13
-rw-r--r--test/prism/snapshots/seattlerb/bug191.txt97
-rw-r--r--test/prism/snapshots/seattlerb/bug202.txt26
-rw-r--r--test/prism/snapshots/seattlerb/bug236.txt79
-rw-r--r--test/prism/snapshots/seattlerb/bug290.txt28
-rw-r--r--test/prism/snapshots/seattlerb/bug_187.txt64
-rw-r--r--test/prism/snapshots/seattlerb/bug_215.txt17
-rw-r--r--test/prism/snapshots/seattlerb/bug_249.txt95
-rw-r--r--test/prism/snapshots/seattlerb/bug_and.txt28
-rw-r--r--test/prism/snapshots/seattlerb/bug_args__19.txt65
-rw-r--r--test/prism/snapshots/seattlerb/bug_args_masgn.txt55
-rw-r--r--test/prism/snapshots/seattlerb/bug_args_masgn2.txt65
-rw-r--r--test/prism/snapshots/seattlerb/bug_args_masgn_outer_parens__19.txt62
-rw-r--r--test/prism/snapshots/seattlerb/bug_call_arglist_parens.txt122
-rw-r--r--test/prism/snapshots/seattlerb/bug_case_when_regexp.txt32
-rw-r--r--test/prism/snapshots/seattlerb/bug_comma.txt44
-rw-r--r--test/prism/snapshots/seattlerb/bug_cond_pct.txt26
-rw-r--r--test/prism/snapshots/seattlerb/bug_hash_args.txt42
-rw-r--r--test/prism/snapshots/seattlerb/bug_hash_args_trailing_comma.txt42
-rw-r--r--test/prism/snapshots/seattlerb/bug_hash_interp_array.txt32
-rw-r--r--test/prism/snapshots/seattlerb/bug_masgn_right.txt55
-rw-r--r--test/prism/snapshots/seattlerb/bug_not_parens.txt27
-rw-r--r--test/prism/snapshots/seattlerb/bug_op_asgn_rescue.txt31
-rw-r--r--test/prism/snapshots/seattlerb/call_and.txt26
-rw-r--r--test/prism/snapshots/seattlerb/call_arg_assoc.txt37
-rw-r--r--test/prism/snapshots/seattlerb/call_arg_assoc_kwsplat.txt47
-rw-r--r--test/prism/snapshots/seattlerb/call_arg_kwsplat.txt40
-rw-r--r--test/prism/snapshots/seattlerb/call_args_assoc_quoted.txt114
-rw-r--r--test/prism/snapshots/seattlerb/call_args_assoc_trailing_comma.txt37
-rw-r--r--test/prism/snapshots/seattlerb/call_args_command.txt56
-rw-r--r--test/prism/snapshots/seattlerb/call_array_arg.txt40
-rw-r--r--test/prism/snapshots/seattlerb/call_array_block_call.txt44
-rw-r--r--test/prism/snapshots/seattlerb/call_array_lambda_block_call.txt46
-rw-r--r--test/prism/snapshots/seattlerb/call_array_lit_inline_hash.txt48
-rw-r--r--test/prism/snapshots/seattlerb/call_assoc.txt34
-rw-r--r--test/prism/snapshots/seattlerb/call_assoc_new.txt37
-rw-r--r--test/prism/snapshots/seattlerb/call_assoc_new_if_multiline.txt65
-rw-r--r--test/prism/snapshots/seattlerb/call_assoc_trailing_comma.txt34
-rw-r--r--test/prism/snapshots/seattlerb/call_bang_command_call.txt43
-rw-r--r--test/prism/snapshots/seattlerb/call_bang_squiggle.txt26
-rw-r--r--test/prism/snapshots/seattlerb/call_begin_call_block_call.txt58
-rw-r--r--test/prism/snapshots/seattlerb/call_block_arg_named.txt31
-rw-r--r--test/prism/snapshots/seattlerb/call_carat.txt26
-rw-r--r--test/prism/snapshots/seattlerb/call_colon2.txt20
-rw-r--r--test/prism/snapshots/seattlerb/call_colon_parens.txt20
-rw-r--r--test/prism/snapshots/seattlerb/call_div.txt26
-rw-r--r--test/prism/snapshots/seattlerb/call_dot_parens.txt20
-rw-r--r--test/prism/snapshots/seattlerb/call_env.txt27
-rw-r--r--test/prism/snapshots/seattlerb/call_eq3.txt26
-rw-r--r--test/prism/snapshots/seattlerb/call_gt.txt26
-rw-r--r--test/prism/snapshots/seattlerb/call_kwsplat.txt30
-rw-r--r--test/prism/snapshots/seattlerb/call_leading_dots.txt37
-rw-r--r--test/prism/snapshots/seattlerb/call_leading_dots_comment.txt37
-rw-r--r--test/prism/snapshots/seattlerb/call_lt.txt26
-rw-r--r--test/prism/snapshots/seattlerb/call_lte.txt26
-rw-r--r--test/prism/snapshots/seattlerb/call_not.txt20
-rw-r--r--test/prism/snapshots/seattlerb/call_pipe.txt26
-rw-r--r--test/prism/snapshots/seattlerb/call_rshift.txt26
-rw-r--r--test/prism/snapshots/seattlerb/call_self_brackets.txt25
-rw-r--r--test/prism/snapshots/seattlerb/call_spaceship.txt26
-rw-r--r--test/prism/snapshots/seattlerb/call_stabby_do_end_with_block.txt47
-rw-r--r--test/prism/snapshots/seattlerb/call_stabby_with_braces_block.txt47
-rw-r--r--test/prism/snapshots/seattlerb/call_star.txt26
-rw-r--r--test/prism/snapshots/seattlerb/call_star2.txt26
-rw-r--r--test/prism/snapshots/seattlerb/call_trailing_comma.txt23
-rw-r--r--test/prism/snapshots/seattlerb/call_trailing_dots.txt37
-rw-r--r--test/prism/snapshots/seattlerb/call_unary_bang.txt20
-rw-r--r--test/prism/snapshots/seattlerb/case_in.txt1109
-rw-r--r--test/prism/snapshots/seattlerb/case_in_31.txt57
-rw-r--r--test/prism/snapshots/seattlerb/case_in_37.txt68
-rw-r--r--test/prism/snapshots/seattlerb/case_in_42.txt53
-rw-r--r--test/prism/snapshots/seattlerb/case_in_42_2.txt50
-rw-r--r--test/prism/snapshots/seattlerb/case_in_47.txt59
-rw-r--r--test/prism/snapshots/seattlerb/case_in_67.txt39
-rw-r--r--test/prism/snapshots/seattlerb/case_in_86.txt60
-rw-r--r--test/prism/snapshots/seattlerb/case_in_86_2.txt60
-rw-r--r--test/prism/snapshots/seattlerb/case_in_array_pat_const.txt50
-rw-r--r--test/prism/snapshots/seattlerb/case_in_array_pat_const2.txt56
-rw-r--r--test/prism/snapshots/seattlerb/case_in_array_pat_paren_assign.txt58
-rw-r--r--test/prism/snapshots/seattlerb/case_in_const.txt35
-rw-r--r--test/prism/snapshots/seattlerb/case_in_else.txt49
-rw-r--r--test/prism/snapshots/seattlerb/case_in_find.txt56
-rw-r--r--test/prism/snapshots/seattlerb/case_in_find_array.txt52
-rw-r--r--test/prism/snapshots/seattlerb/case_in_hash_pat.txt76
-rw-r--r--test/prism/snapshots/seattlerb/case_in_hash_pat_assign.txt100
-rw-r--r--test/prism/snapshots/seattlerb/case_in_hash_pat_paren_assign.txt59
-rw-r--r--test/prism/snapshots/seattlerb/case_in_hash_pat_paren_true.txt55
-rw-r--r--test/prism/snapshots/seattlerb/case_in_hash_pat_rest.txt65
-rw-r--r--test/prism/snapshots/seattlerb/case_in_hash_pat_rest_solo.txt50
-rw-r--r--test/prism/snapshots/seattlerb/case_in_if_unless_post_mod.txt82
-rw-r--r--test/prism/snapshots/seattlerb/case_in_multiple.txt68
-rw-r--r--test/prism/snapshots/seattlerb/case_in_or.txt46
-rw-r--r--test/prism/snapshots/seattlerb/class_comments.txt37
-rw-r--r--test/prism/snapshots/seattlerb/cond_unary_minus.txt18
-rw-r--r--test/prism/snapshots/seattlerb/const_2_op_asgn_or2.txt27
-rw-r--r--test/prism/snapshots/seattlerb/const_3_op_asgn_or.txt21
-rw-r--r--test/prism/snapshots/seattlerb/const_op_asgn_and1.txt22
-rw-r--r--test/prism/snapshots/seattlerb/const_op_asgn_and2.txt21
-rw-r--r--test/prism/snapshots/seattlerb/const_op_asgn_or.txt24
-rw-r--r--test/prism/snapshots/seattlerb/defined_eh_parens.txt16
-rw-r--r--test/prism/snapshots/seattlerb/defn_arg_asplat_arg.txt41
-rw-r--r--test/prism/snapshots/seattlerb/defn_arg_forward_args.txt57
-rw-r--r--test/prism/snapshots/seattlerb/defn_args_forward_args.txt69
-rw-r--r--test/prism/snapshots/seattlerb/defn_comments.txt21
-rw-r--r--test/prism/snapshots/seattlerb/defn_endless_command.txt40
-rw-r--r--test/prism/snapshots/seattlerb/defn_endless_command_rescue.txt48
-rw-r--r--test/prism/snapshots/seattlerb/defn_forward_args.txt50
-rw-r--r--test/prism/snapshots/seattlerb/defn_forward_args__no_parens.txt50
-rw-r--r--test/prism/snapshots/seattlerb/defn_kwarg_env.txt62
-rw-r--r--test/prism/snapshots/seattlerb/defn_kwarg_kwarg.txt49
-rw-r--r--test/prism/snapshots/seattlerb/defn_kwarg_kwsplat.txt43
-rw-r--r--test/prism/snapshots/seattlerb/defn_kwarg_kwsplat_anon.txt43
-rw-r--r--test/prism/snapshots/seattlerb/defn_kwarg_lvar.txt48
-rw-r--r--test/prism/snapshots/seattlerb/defn_kwarg_no_parens.txt38
-rw-r--r--test/prism/snapshots/seattlerb/defn_kwarg_val.txt41
-rw-r--r--test/prism/snapshots/seattlerb/defn_no_kwargs.txt34
-rw-r--r--test/prism/snapshots/seattlerb/defn_oneliner.txt53
-rw-r--r--test/prism/snapshots/seattlerb/defn_oneliner_eq2.txt55
-rw-r--r--test/prism/snapshots/seattlerb/defn_oneliner_noargs.txt34
-rw-r--r--test/prism/snapshots/seattlerb/defn_oneliner_noargs_parentheses.txt34
-rw-r--r--test/prism/snapshots/seattlerb/defn_oneliner_rescue.txt180
-rw-r--r--test/prism/snapshots/seattlerb/defn_opt_last_arg.txt38
-rw-r--r--test/prism/snapshots/seattlerb/defn_opt_reg.txt41
-rw-r--r--test/prism/snapshots/seattlerb/defn_opt_splat_arg.txt47
-rw-r--r--test/prism/snapshots/seattlerb/defn_powarg.txt35
-rw-r--r--test/prism/snapshots/seattlerb/defn_reg_opt_reg.txt48
-rw-r--r--test/prism/snapshots/seattlerb/defn_splat_arg.txt38
-rw-r--r--test/prism/snapshots/seattlerb/defn_unary_not.txt26
-rw-r--r--test/prism/snapshots/seattlerb/defns_reserved.txt23
-rw-r--r--test/prism/snapshots/seattlerb/defs_as_arg_with_do_block_inside.txt66
-rw-r--r--test/prism/snapshots/seattlerb/defs_comments.txt23
-rw-r--r--test/prism/snapshots/seattlerb/defs_endless_command.txt50
-rw-r--r--test/prism/snapshots/seattlerb/defs_endless_command_rescue.txt58
-rw-r--r--test/prism/snapshots/seattlerb/defs_kwarg.txt40
-rw-r--r--test/prism/snapshots/seattlerb/defs_oneliner.txt55
-rw-r--r--test/prism/snapshots/seattlerb/defs_oneliner_eq2.txt57
-rw-r--r--test/prism/snapshots/seattlerb/defs_oneliner_rescue.txt186
-rw-r--r--test/prism/snapshots/seattlerb/difficult0_.txt75
-rw-r--r--test/prism/snapshots/seattlerb/difficult1_line_numbers.txt272
-rw-r--r--test/prism/snapshots/seattlerb/difficult1_line_numbers2.txt86
-rw-r--r--test/prism/snapshots/seattlerb/difficult2_.txt81
-rw-r--r--test/prism/snapshots/seattlerb/difficult3_.txt59
-rw-r--r--test/prism/snapshots/seattlerb/difficult3_2.txt47
-rw-r--r--test/prism/snapshots/seattlerb/difficult3_3.txt52
-rw-r--r--test/prism/snapshots/seattlerb/difficult3_4.txt47
-rw-r--r--test/prism/snapshots/seattlerb/difficult3_5.txt54
-rw-r--r--test/prism/snapshots/seattlerb/difficult3__10.txt59
-rw-r--r--test/prism/snapshots/seattlerb/difficult3__11.txt53
-rw-r--r--test/prism/snapshots/seattlerb/difficult3__12.txt56
-rw-r--r--test/prism/snapshots/seattlerb/difficult3__6.txt62
-rw-r--r--test/prism/snapshots/seattlerb/difficult3__7.txt56
-rw-r--r--test/prism/snapshots/seattlerb/difficult3__8.txt59
-rw-r--r--test/prism/snapshots/seattlerb/difficult3__9.txt56
-rw-r--r--test/prism/snapshots/seattlerb/difficult4__leading_dots.txt27
-rw-r--r--test/prism/snapshots/seattlerb/difficult4__leading_dots2.txt18
-rw-r--r--test/prism/snapshots/seattlerb/difficult6_.txt70
-rw-r--r--test/prism/snapshots/seattlerb/difficult6__7.txt61
-rw-r--r--test/prism/snapshots/seattlerb/difficult6__8.txt61
-rw-r--r--test/prism/snapshots/seattlerb/difficult7_.txt105
-rw-r--r--test/prism/snapshots/seattlerb/do_bug.txt68
-rw-r--r--test/prism/snapshots/seattlerb/do_lambda.txt21
-rw-r--r--test/prism/snapshots/seattlerb/dot2_nil__26.txt22
-rw-r--r--test/prism/snapshots/seattlerb/dot3_nil__26.txt22
-rw-r--r--test/prism/snapshots/seattlerb/dstr_evstr.txt44
-rw-r--r--test/prism/snapshots/seattlerb/dstr_evstr_empty_end.txt30
-rw-r--r--test/prism/snapshots/seattlerb/dstr_lex_state.txt39
-rw-r--r--test/prism/snapshots/seattlerb/dstr_str.txt32
-rw-r--r--test/prism/snapshots/seattlerb/dsym_esc_to_sym.txt13
-rw-r--r--test/prism/snapshots/seattlerb/dsym_to_sym.txt41
-rw-r--r--test/prism/snapshots/seattlerb/eq_begin_line_numbers.txt13
-rw-r--r--test/prism/snapshots/seattlerb/eq_begin_why_wont_people_use_their_spacebar.txt54
-rw-r--r--test/prism/snapshots/seattlerb/evstr_evstr.txt48
-rw-r--r--test/prism/snapshots/seattlerb/evstr_str.txt36
-rw-r--r--test/prism/snapshots/seattlerb/expr_not_bang.txt40
-rw-r--r--test/prism/snapshots/seattlerb/f_kw.txt38
-rw-r--r--test/prism/snapshots/seattlerb/f_kw__required.txt34
-rw-r--r--test/prism/snapshots/seattlerb/flip2_env_lvar.txt40
-rw-r--r--test/prism/snapshots/seattlerb/float_with_if_modifier.txt23
-rw-r--r--test/prism/snapshots/seattlerb/heredoc__backslash_dos_format.txt20
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_backslash_nl.txt19
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_bad_hex_escape.txt20
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_bad_oct_escape.txt20
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_comma_arg.txt29
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_lineno.txt30
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_nested.txt46
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_squiggly.txt37
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_squiggly_blank_line_plus_interpolation.txt72
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_squiggly_blank_lines.txt37
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_squiggly_empty.txt13
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_squiggly_interp.txt54
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_squiggly_no_indent.txt13
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_squiggly_tabs.txt31
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_squiggly_tabs_extra.txt31
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_squiggly_visually_blank_lines.txt37
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_trailing_slash_continued_call.txt23
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_unicode.txt13
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_with_carriage_return_escapes.txt13
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_with_carriage_return_escapes_windows.txt13
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_with_extra_carriage_horrible_mix.txt13
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_with_extra_carriage_returns.txt13
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_with_extra_carriage_returns_windows.txt13
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_with_interpolation_and_carriage_return_escapes.txt31
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_with_interpolation_and_carriage_return_escapes_windows.txt31
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_with_not_global_interpolation.txt13
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_with_only_carriage_returns.txt13
-rw-r--r--test/prism/snapshots/seattlerb/heredoc_with_only_carriage_returns_windows.txt13
-rw-r--r--test/prism/snapshots/seattlerb/if_elsif.txt29
-rw-r--r--test/prism/snapshots/seattlerb/if_symbol.txt34
-rw-r--r--test/prism/snapshots/seattlerb/in_expr_no_case.txt21
-rw-r--r--test/prism/snapshots/seattlerb/index_0.txt40
-rw-r--r--test/prism/snapshots/seattlerb/index_0_opasgn.txt38
-rw-r--r--test/prism/snapshots/seattlerb/integer_with_if_modifier.txt23
-rw-r--r--test/prism/snapshots/seattlerb/interpolated_symbol_array_line_breaks.txt27
-rw-r--r--test/prism/snapshots/seattlerb/interpolated_word_array_line_breaks.txt27
-rw-r--r--test/prism/snapshots/seattlerb/iter_args_1.txt45
-rw-r--r--test/prism/snapshots/seattlerb/iter_args_10_1.txt56
-rw-r--r--test/prism/snapshots/seattlerb/iter_args_10_2.txt61
-rw-r--r--test/prism/snapshots/seattlerb/iter_args_11_1.txt59
-rw-r--r--test/prism/snapshots/seattlerb/iter_args_11_2.txt64
-rw-r--r--test/prism/snapshots/seattlerb/iter_args_2__19.txt52
-rw-r--r--test/prism/snapshots/seattlerb/iter_args_3.txt58
-rw-r--r--test/prism/snapshots/seattlerb/iter_args_4.txt50
-rw-r--r--test/prism/snapshots/seattlerb/iter_args_5.txt47
-rw-r--r--test/prism/snapshots/seattlerb/iter_args_6.txt54
-rw-r--r--test/prism/snapshots/seattlerb/iter_args_7_1.txt53
-rw-r--r--test/prism/snapshots/seattlerb/iter_args_7_2.txt58
-rw-r--r--test/prism/snapshots/seattlerb/iter_args_8_1.txt56
-rw-r--r--test/prism/snapshots/seattlerb/iter_args_8_2.txt61
-rw-r--r--test/prism/snapshots/seattlerb/iter_args_9_1.txt51
-rw-r--r--test/prism/snapshots/seattlerb/iter_args_9_2.txt56
-rw-r--r--test/prism/snapshots/seattlerb/iter_kwarg.txt47
-rw-r--r--test/prism/snapshots/seattlerb/iter_kwarg_kwsplat.txt52
-rw-r--r--test/prism/snapshots/seattlerb/label_vs_string.txt36
-rw-r--r--test/prism/snapshots/seattlerb/lambda_do_vs_brace.txt103
-rw-r--r--test/prism/snapshots/seattlerb/lasgn_arg_rescue_arg.txt25
-rw-r--r--test/prism/snapshots/seattlerb/lasgn_call_bracket_rescue_arg.txt38
-rw-r--r--test/prism/snapshots/seattlerb/lasgn_call_nobracket_rescue_arg.txt38
-rw-r--r--test/prism/snapshots/seattlerb/lasgn_command.txt40
-rw-r--r--test/prism/snapshots/seattlerb/lasgn_env.txt17
-rw-r--r--test/prism/snapshots/seattlerb/lasgn_ivar_env.txt16
-rw-r--r--test/prism/snapshots/seattlerb/lasgn_lasgn_command_call.txt37
-rw-r--r--test/prism/snapshots/seattlerb/lasgn_middle_splat.txt53
-rw-r--r--test/prism/snapshots/seattlerb/magic_encoding_comment.txt55
-rw-r--r--test/prism/snapshots/seattlerb/masgn_anon_splat_arg.txt34
-rw-r--r--test/prism/snapshots/seattlerb/masgn_arg_colon_arg.txt46
-rw-r--r--test/prism/snapshots/seattlerb/masgn_arg_ident.txt46
-rw-r--r--test/prism/snapshots/seattlerb/masgn_arg_splat_arg.txt42
-rw-r--r--test/prism/snapshots/seattlerb/masgn_colon2.txt47
-rw-r--r--test/prism/snapshots/seattlerb/masgn_colon3.txt39
-rw-r--r--test/prism/snapshots/seattlerb/masgn_command_call.txt48
-rw-r--r--test/prism/snapshots/seattlerb/masgn_double_paren.txt41
-rw-r--r--test/prism/snapshots/seattlerb/masgn_lhs_splat.txt38
-rw-r--r--test/prism/snapshots/seattlerb/masgn_paren.txt44
-rw-r--r--test/prism/snapshots/seattlerb/masgn_splat_arg.txt38
-rw-r--r--test/prism/snapshots/seattlerb/masgn_splat_arg_arg.txt42
-rw-r--r--test/prism/snapshots/seattlerb/masgn_star.txt23
-rw-r--r--test/prism/snapshots/seattlerb/masgn_var_star_var.txt38
-rw-r--r--test/prism/snapshots/seattlerb/messy_op_asgn_lineno.txt66
-rw-r--r--test/prism/snapshots/seattlerb/method_call_assoc_trailing_comma.txt44
-rw-r--r--test/prism/snapshots/seattlerb/method_call_trailing_comma.txt33
-rw-r--r--test/prism/snapshots/seattlerb/mlhs_back_anonsplat.txt42
-rw-r--r--test/prism/snapshots/seattlerb/mlhs_back_splat.txt46
-rw-r--r--test/prism/snapshots/seattlerb/mlhs_front_anonsplat.txt42
-rw-r--r--test/prism/snapshots/seattlerb/mlhs_front_splat.txt46
-rw-r--r--test/prism/snapshots/seattlerb/mlhs_keyword.txt34
-rw-r--r--test/prism/snapshots/seattlerb/mlhs_mid_anonsplat.txt54
-rw-r--r--test/prism/snapshots/seattlerb/mlhs_mid_splat.txt58
-rw-r--r--test/prism/snapshots/seattlerb/mlhs_rescue.txt42
-rw-r--r--test/prism/snapshots/seattlerb/module_comments.txt35
-rw-r--r--test/prism/snapshots/seattlerb/multiline_hash_declaration.txt103
-rw-r--r--test/prism/snapshots/seattlerb/non_interpolated_symbol_array_line_breaks.txt27
-rw-r--r--test/prism/snapshots/seattlerb/non_interpolated_word_array_line_breaks.txt27
-rw-r--r--test/prism/snapshots/seattlerb/op_asgn_command_call.txt40
-rw-r--r--test/prism/snapshots/seattlerb/op_asgn_dot_ident_command_call.txt35
-rw-r--r--test/prism/snapshots/seattlerb/op_asgn_index_command_call.txt55
-rw-r--r--test/prism/snapshots/seattlerb/op_asgn_primary_colon_const_command_call.txt45
-rw-r--r--test/prism/snapshots/seattlerb/op_asgn_primary_colon_identifier1.txt23
-rw-r--r--test/prism/snapshots/seattlerb/op_asgn_primary_colon_identifier_command_call.txt43
-rw-r--r--test/prism/snapshots/seattlerb/op_asgn_val_dot_ident_command_call.txt42
-rw-r--r--test/prism/snapshots/seattlerb/parse_def_special_name.txt21
-rw-r--r--test/prism/snapshots/seattlerb/parse_if_not_canonical.txt68
-rw-r--r--test/prism/snapshots/seattlerb/parse_if_not_noncanonical.txt68
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_block.txt34
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_block_inline_comment.txt37
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_block_inline_comment_leading_newlines.txt37
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_block_inline_multiline_comment.txt37
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_call_ivar_arg_no_parens_line_break.txt23
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_call_ivar_line_break_paren.txt23
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_call_no_args.txt69
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_defn_complex.txt75
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_defn_no_parens.txt35
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_defn_no_parens_args.txt33
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_dot2.txt53
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_dot2_open.txt40
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_dot3.txt53
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_dot3_open.txt40
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_dstr_escaped_newline.txt25
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_dstr_soft_newline.txt25
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_evstr_after_break.txt41
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_hash_lit.txt26
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_heredoc.txt47
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_heredoc_evstr.txt42
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_heredoc_hardnewline.txt26
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_heredoc_regexp_chars.txt37
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_iter_call_no_parens.txt82
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_iter_call_parens.txt82
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_multiline_str.txt16
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_multiline_str_literal_n.txt16
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_newlines.txt9
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_op_asgn.txt35
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_postexe.txt26
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_preexe.txt26
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_rescue.txt70
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_return.txt47
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_str_with_newline_escape.txt28
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_to_ary.txt44
-rw-r--r--test/prism/snapshots/seattlerb/parse_line_trailing_newlines.txt27
-rw-r--r--test/prism/snapshots/seattlerb/parse_opt_call_args_assocs_comma.txt37
-rw-r--r--test/prism/snapshots/seattlerb/parse_opt_call_args_lit_comma.txt26
-rw-r--r--test/prism/snapshots/seattlerb/parse_pattern_019.txt39
-rw-r--r--test/prism/snapshots/seattlerb/parse_pattern_044.txt46
-rw-r--r--test/prism/snapshots/seattlerb/parse_pattern_051.txt55
-rw-r--r--test/prism/snapshots/seattlerb/parse_pattern_058.txt88
-rw-r--r--test/prism/snapshots/seattlerb/parse_pattern_058_2.txt80
-rw-r--r--test/prism/snapshots/seattlerb/parse_pattern_069.txt56
-rw-r--r--test/prism/snapshots/seattlerb/parse_pattern_076.txt69
-rw-r--r--test/prism/snapshots/seattlerb/parse_until_not_canonical.txt52
-rw-r--r--test/prism/snapshots/seattlerb/parse_until_not_noncanonical.txt52
-rw-r--r--test/prism/snapshots/seattlerb/parse_while_not_canonical.txt52
-rw-r--r--test/prism/snapshots/seattlerb/parse_while_not_noncanonical.txt52
-rw-r--r--test/prism/snapshots/seattlerb/pctW_lineno.txt54
-rw-r--r--test/prism/snapshots/seattlerb/pct_Q_backslash_nl.txt13
-rw-r--r--test/prism/snapshots/seattlerb/pct_nl.txt20
-rw-r--r--test/prism/snapshots/seattlerb/pct_w_heredoc_interp_nested.txt55
-rw-r--r--test/prism/snapshots/seattlerb/pipe_semicolon.txt43
-rw-r--r--test/prism/snapshots/seattlerb/pipe_space.txt40
-rw-r--r--test/prism/snapshots/seattlerb/qWords_space.txt12
-rw-r--r--test/prism/snapshots/seattlerb/qsymbols.txt30
-rw-r--r--test/prism/snapshots/seattlerb/qsymbols_empty.txt12
-rw-r--r--test/prism/snapshots/seattlerb/qsymbols_empty_space.txt12
-rw-r--r--test/prism/snapshots/seattlerb/qsymbols_interp.txt62
-rw-r--r--test/prism/snapshots/seattlerb/quoted_symbol_hash_arg.txt39
-rw-r--r--test/prism/snapshots/seattlerb/quoted_symbol_keys.txt29
-rw-r--r--test/prism/snapshots/seattlerb/qw_escape.txt13
-rw-r--r--test/prism/snapshots/seattlerb/qw_escape_term.txt13
-rw-r--r--test/prism/snapshots/seattlerb/qwords_empty.txt12
-rw-r--r--test/prism/snapshots/seattlerb/read_escape_unicode_curlies.txt13
-rw-r--r--test/prism/snapshots/seattlerb/read_escape_unicode_h4.txt13
-rw-r--r--test/prism/snapshots/seattlerb/regexp.txt37
-rw-r--r--test/prism/snapshots/seattlerb/regexp_esc_C_slash.txt13
-rw-r--r--test/prism/snapshots/seattlerb/regexp_esc_u.txt13
-rw-r--r--test/prism/snapshots/seattlerb/regexp_escape_extended.txt13
-rw-r--r--test/prism/snapshots/seattlerb/regexp_unicode_curlies.txt19
-rw-r--r--test/prism/snapshots/seattlerb/required_kwarg_no_value.txt38
-rw-r--r--test/prism/snapshots/seattlerb/rescue_do_end_ensure_result.txt65
-rw-r--r--test/prism/snapshots/seattlerb/rescue_do_end_no_raise.txt86
-rw-r--r--test/prism/snapshots/seattlerb/rescue_do_end_raised.txt59
-rw-r--r--test/prism/snapshots/seattlerb/rescue_do_end_rescued.txt90
-rw-r--r--test/prism/snapshots/seattlerb/rescue_in_block.txt53
-rw-r--r--test/prism/snapshots/seattlerb/rescue_parens.txt53
-rw-r--r--test/prism/snapshots/seattlerb/return_call_assocs.txt227
-rw-r--r--test/prism/snapshots/seattlerb/rhs_asgn.txt19
-rw-r--r--test/prism/snapshots/seattlerb/ruby21_numbers.txt29
-rw-r--r--test/prism/snapshots/seattlerb/safe_attrasgn.txt33
-rw-r--r--test/prism/snapshots/seattlerb/safe_attrasgn_constant.txt33
-rw-r--r--test/prism/snapshots/seattlerb/safe_call.txt27
-rw-r--r--test/prism/snapshots/seattlerb/safe_call_after_newline.txt27
-rw-r--r--test/prism/snapshots/seattlerb/safe_call_dot_parens.txt27
-rw-r--r--test/prism/snapshots/seattlerb/safe_call_newline.txt27
-rw-r--r--test/prism/snapshots/seattlerb/safe_call_operator.txt33
-rw-r--r--test/prism/snapshots/seattlerb/safe_call_rhs_newline.txt34
-rw-r--r--test/prism/snapshots/seattlerb/safe_calls.txt43
-rw-r--r--test/prism/snapshots/seattlerb/safe_op_asgn.txt43
-rw-r--r--test/prism/snapshots/seattlerb/safe_op_asgn2.txt36
-rw-r--r--test/prism/snapshots/seattlerb/slashy_newlines_within_string.txt59
-rw-r--r--test/prism/snapshots/seattlerb/stabby_arg_no_paren.txt33
-rw-r--r--test/prism/snapshots/seattlerb/stabby_arg_opt_splat_arg_block_omfg.txt55
-rw-r--r--test/prism/snapshots/seattlerb/stabby_block_iter_call.txt64
-rw-r--r--test/prism/snapshots/seattlerb/stabby_block_iter_call_no_target_with_arg.txt60
-rw-r--r--test/prism/snapshots/seattlerb/stabby_block_kw.txt38
-rw-r--r--test/prism/snapshots/seattlerb/stabby_block_kw__required.txt34
-rw-r--r--test/prism/snapshots/seattlerb/stabby_proc_scope.txt36
-rw-r--r--test/prism/snapshots/seattlerb/str_backslashes.txt26
-rw-r--r--test/prism/snapshots/seattlerb/str_double_double_escaped_newline.txt36
-rw-r--r--test/prism/snapshots/seattlerb/str_double_escaped_newline.txt36
-rw-r--r--test/prism/snapshots/seattlerb/str_double_newline.txt36
-rw-r--r--test/prism/snapshots/seattlerb/str_evstr.txt36
-rw-r--r--test/prism/snapshots/seattlerb/str_evstr_escape.txt42
-rw-r--r--test/prism/snapshots/seattlerb/str_heredoc_interp.txt36
-rw-r--r--test/prism/snapshots/seattlerb/str_interp_ternary_or_label.txt113
-rw-r--r--test/prism/snapshots/seattlerb/str_lit_concat_bad_encodings.txt24
-rw-r--r--test/prism/snapshots/seattlerb/str_newline_hash_line_number.txt16
-rw-r--r--test/prism/snapshots/seattlerb/str_pct_Q_nested.txt42
-rw-r--r--test/prism/snapshots/seattlerb/str_pct_nested_nested.txt48
-rw-r--r--test/prism/snapshots/seattlerb/str_pct_q.txt13
-rw-r--r--test/prism/snapshots/seattlerb/str_single_double_escaped_newline.txt36
-rw-r--r--test/prism/snapshots/seattlerb/str_single_escaped_newline.txt36
-rw-r--r--test/prism/snapshots/seattlerb/str_single_newline.txt36
-rw-r--r--test/prism/snapshots/seattlerb/str_str.txt32
-rw-r--r--test/prism/snapshots/seattlerb/str_str_str.txt38
-rw-r--r--test/prism/snapshots/seattlerb/super_arg.txt20
-rw-r--r--test/prism/snapshots/seattlerb/symbol_empty.txt13
-rw-r--r--test/prism/snapshots/seattlerb/symbol_list.txt58
-rw-r--r--test/prism/snapshots/seattlerb/symbols.txt30
-rw-r--r--test/prism/snapshots/seattlerb/symbols_empty.txt12
-rw-r--r--test/prism/snapshots/seattlerb/symbols_empty_space.txt12
-rw-r--r--test/prism/snapshots/seattlerb/symbols_interp.txt30
-rw-r--r--test/prism/snapshots/seattlerb/thingy.txt59
-rw-r--r--test/prism/snapshots/seattlerb/uminus_float.txt10
-rw-r--r--test/prism/snapshots/seattlerb/unary_minus.txt27
-rw-r--r--test/prism/snapshots/seattlerb/unary_plus.txt27
-rw-r--r--test/prism/snapshots/seattlerb/unary_plus_on_literal.txt23
-rw-r--r--test/prism/snapshots/seattlerb/unary_tilde.txt27
-rw-r--r--test/prism/snapshots/seattlerb/utf8_bom.txt23
-rw-r--r--test/prism/snapshots/seattlerb/when_splat.txt44
-rw-r--r--test/prism/snapshots/seattlerb/words_interp.txt34
-rw-r--r--test/prism/snapshots/single_method_call_with_bang.txt17
-rw-r--r--test/prism/snapshots/single_quote_heredocs.txt13
-rw-r--r--test/prism/snapshots/spanning_heredoc.txt420
-rw-r--r--test/prism/snapshots/spanning_heredoc_newlines.txt157
-rw-r--r--test/prism/snapshots/strings.txt548
-rw-r--r--test/prism/snapshots/super.txt148
-rw-r--r--test/prism/snapshots/symbols.txt482
-rw-r--r--test/prism/snapshots/ternary_operator.txt340
-rw-r--r--test/prism/snapshots/tilde_heredocs.txt421
-rw-r--r--test/prism/snapshots/undef.txt131
-rw-r--r--test/prism/snapshots/unescaping.txt36
-rw-r--r--test/prism/snapshots/unless.txt203
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/alias.txt35
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/assignment.txt1181
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/block.txt1541
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/case.txt480
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/class.txt260
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/def.txt1325
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/defined.txt67
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/defs.txt395
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/dstr.txt389
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/empty.txt7
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/empty_begin.txt12
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/flipflop.txt257
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/for.txt190
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/hookexe.txt55
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/if.txt330
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/kwbegin.txt570
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/lambda.txt170
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/literal.txt1309
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/module.txt121
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/opasgn.txt539
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/pattern.txt542
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/pragma.txt24
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/range.txt61
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/rescue.txt111
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/send.txt2274
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/since/27.txt58
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/since/30.txt106
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/since/31.txt100
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/since/32.txt174
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/singletons.txt15
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/super.txt302
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/unary.txt309
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/undef.txt33
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/variables.txt62
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/while.txt786
-rw-r--r--test/prism/snapshots/unparser/corpus/semantic/and.txt243
-rw-r--r--test/prism/snapshots/unparser/corpus/semantic/block.txt213
-rw-r--r--test/prism/snapshots/unparser/corpus/semantic/def.txt100
-rw-r--r--test/prism/snapshots/unparser/corpus/semantic/dstr.txt639
-rw-r--r--test/prism/snapshots/unparser/corpus/semantic/kwbegin.txt294
-rw-r--r--test/prism/snapshots/unparser/corpus/semantic/literal.txt112
-rw-r--r--test/prism/snapshots/unparser/corpus/semantic/opasgn.txt75
-rw-r--r--test/prism/snapshots/unparser/corpus/semantic/send.txt165
-rw-r--r--test/prism/snapshots/unparser/corpus/semantic/undef.txt33
-rw-r--r--test/prism/snapshots/unparser/corpus/semantic/while.txt303
-rw-r--r--test/prism/snapshots/until.txt202
-rw-r--r--test/prism/snapshots/variables.txt459
-rw-r--r--test/prism/snapshots/while.txt529
-rw-r--r--test/prism/snapshots/whitequark/__ENCODING__.txt9
-rw-r--r--test/prism/snapshots/whitequark/__ENCODING___legacy_.txt9
-rw-r--r--test/prism/snapshots/whitequark/alias.txt24
-rw-r--r--test/prism/snapshots/whitequark/alias_gvar.txt29
-rw-r--r--test/prism/snapshots/whitequark/ambiuous_quoted_label_in_ternary_operator.txt67
-rw-r--r--test/prism/snapshots/whitequark/and.txt57
-rw-r--r--test/prism/snapshots/whitequark/and_asgn.txt61
-rw-r--r--test/prism/snapshots/whitequark/and_or_masgn.txt107
-rw-r--r--test/prism/snapshots/whitequark/anonymous_blockarg.txt52
-rw-r--r--test/prism/snapshots/whitequark/arg.txt62
-rw-r--r--test/prism/snapshots/whitequark/arg_duplicate_ignored.txt65
-rw-r--r--test/prism/snapshots/whitequark/arg_label.txt124
-rw-r--r--test/prism/snapshots/whitequark/arg_scope.txt40
-rw-r--r--test/prism/snapshots/whitequark/args.txt1157
-rw-r--r--test/prism/snapshots/whitequark/args_args_assocs.txt101
-rw-r--r--test/prism/snapshots/whitequark/args_args_assocs_comma.txt57
-rw-r--r--test/prism/snapshots/whitequark/args_args_comma.txt40
-rw-r--r--test/prism/snapshots/whitequark/args_args_star.txt95
-rw-r--r--test/prism/snapshots/whitequark/args_assocs_comma.txt47
-rw-r--r--test/prism/snapshots/whitequark/args_block_pass.txt31
-rw-r--r--test/prism/snapshots/whitequark/args_cmd.txt43
-rw-r--r--test/prism/snapshots/whitequark/args_star.txt75
-rw-r--r--test/prism/snapshots/whitequark/array_assocs.txt48
-rw-r--r--test/prism/snapshots/whitequark/array_plain.txt18
-rw-r--r--test/prism/snapshots/whitequark/array_splat.txt73
-rw-r--r--test/prism/snapshots/whitequark/array_symbols.txt24
-rw-r--r--test/prism/snapshots/whitequark/array_symbols_empty.txt17
-rw-r--r--test/prism/snapshots/whitequark/array_symbols_interp.txt75
-rw-r--r--test/prism/snapshots/whitequark/array_words.txt24
-rw-r--r--test/prism/snapshots/whitequark/array_words_empty.txt17
-rw-r--r--test/prism/snapshots/whitequark/array_words_interp.txt88
-rw-r--r--test/prism/snapshots/whitequark/asgn_cmd.txt62
-rw-r--r--test/prism/snapshots/whitequark/asgn_mrhs.txt94
-rw-r--r--test/prism/snapshots/whitequark/back_ref.txt10
-rw-r--r--test/prism/snapshots/whitequark/bang.txt27
-rw-r--r--test/prism/snapshots/whitequark/bang_cmd.txt40
-rw-r--r--test/prism/snapshots/whitequark/begin_cmdarg.txt57
-rw-r--r--test/prism/snapshots/whitequark/beginless_erange_after_newline.txt25
-rw-r--r--test/prism/snapshots/whitequark/beginless_irange_after_newline.txt25
-rw-r--r--test/prism/snapshots/whitequark/beginless_range.txt23
-rw-r--r--test/prism/snapshots/whitequark/blockarg.txt35
-rw-r--r--test/prism/snapshots/whitequark/blockargs.txt1442
-rw-r--r--test/prism/snapshots/whitequark/bug_435.txt46
-rw-r--r--test/prism/snapshots/whitequark/bug_447.txt60
-rw-r--r--test/prism/snapshots/whitequark/bug_452.txt68
-rw-r--r--test/prism/snapshots/whitequark/bug_466.txt77
-rw-r--r--test/prism/snapshots/whitequark/bug_473.txt38
-rw-r--r--test/prism/snapshots/whitequark/bug_480.txt43
-rw-r--r--test/prism/snapshots/whitequark/bug_481.txt54
-rw-r--r--test/prism/snapshots/whitequark/bug_ascii_8bit_in_literal.txt13
-rw-r--r--test/prism/snapshots/whitequark/bug_cmd_string_lookahead.txt33
-rw-r--r--test/prism/snapshots/whitequark/bug_cmdarg.txt114
-rw-r--r--test/prism/snapshots/whitequark/bug_def_no_paren_eql_begin.txt21
-rw-r--r--test/prism/snapshots/whitequark/bug_do_block_in_call_args.txt56
-rw-r--r--test/prism/snapshots/whitequark/bug_do_block_in_cmdarg.txt45
-rw-r--r--test/prism/snapshots/whitequark/bug_do_block_in_hash_brace.txt411
-rw-r--r--test/prism/snapshots/whitequark/bug_heredoc_do.txt33
-rw-r--r--test/prism/snapshots/whitequark/bug_interp_single.txt44
-rw-r--r--test/prism/snapshots/whitequark/bug_lambda_leakage.txt43
-rw-r--r--test/prism/snapshots/whitequark/bug_regex_verification.txt13
-rw-r--r--test/prism/snapshots/whitequark/bug_rescue_empty_else.txt31
-rw-r--r--test/prism/snapshots/whitequark/bug_while_not_parens_do.txt33
-rw-r--r--test/prism/snapshots/whitequark/case_cond.txt39
-rw-r--r--test/prism/snapshots/whitequark/case_cond_else.txt53
-rw-r--r--test/prism/snapshots/whitequark/case_expr.txt49
-rw-r--r--test/prism/snapshots/whitequark/case_expr_else.txt67
-rw-r--r--test/prism/snapshots/whitequark/casgn_scoped.txt24
-rw-r--r--test/prism/snapshots/whitequark/casgn_toplevel.txt21
-rw-r--r--test/prism/snapshots/whitequark/casgn_unscoped.txt16
-rw-r--r--test/prism/snapshots/whitequark/character.txt13
-rw-r--r--test/prism/snapshots/whitequark/class.txt33
-rw-r--r--test/prism/snapshots/whitequark/class_super.txt23
-rw-r--r--test/prism/snapshots/whitequark/class_super_label.txt39
-rw-r--r--test/prism/snapshots/whitequark/comments_before_leading_dot__27.txt87
-rw-r--r--test/prism/snapshots/whitequark/complex.txt33
-rw-r--r--test/prism/snapshots/whitequark/cond_begin.txt46
-rw-r--r--test/prism/snapshots/whitequark/cond_begin_masgn.txt60
-rw-r--r--test/prism/snapshots/whitequark/cond_eflipflop.txt83
-rw-r--r--test/prism/snapshots/whitequark/cond_eflipflop_with_beginless_range.txt30
-rw-r--r--test/prism/snapshots/whitequark/cond_eflipflop_with_endless_range.txt30
-rw-r--r--test/prism/snapshots/whitequark/cond_iflipflop.txt83
-rw-r--r--test/prism/snapshots/whitequark/cond_iflipflop_with_beginless_range.txt30
-rw-r--r--test/prism/snapshots/whitequark/cond_iflipflop_with_endless_range.txt30
-rw-r--r--test/prism/snapshots/whitequark/cond_match_current_line.txt37
-rw-r--r--test/prism/snapshots/whitequark/const_op_asgn.txt114
-rw-r--r--test/prism/snapshots/whitequark/const_scoped.txt16
-rw-r--r--test/prism/snapshots/whitequark/const_toplevel.txt13
-rw-r--r--test/prism/snapshots/whitequark/const_unscoped.txt10
-rw-r--r--test/prism/snapshots/whitequark/cpath.txt38
-rw-r--r--test/prism/snapshots/whitequark/cvar.txt10
-rw-r--r--test/prism/snapshots/whitequark/cvasgn.txt16
-rw-r--r--test/prism/snapshots/whitequark/dedenting_heredoc.txt505
-rw-r--r--test/prism/snapshots/whitequark/dedenting_interpolating_heredoc_fake_line_continuation.txt24
-rw-r--r--test/prism/snapshots/whitequark/dedenting_non_interpolating_heredoc_line_continuation.txt24
-rw-r--r--test/prism/snapshots/whitequark/def.txt91
-rw-r--r--test/prism/snapshots/whitequark/defined.txt48
-rw-r--r--test/prism/snapshots/whitequark/defs.txt102
-rw-r--r--test/prism/snapshots/whitequark/empty_stmt.txt7
-rw-r--r--test/prism/snapshots/whitequark/endless_comparison_method.txt241
-rw-r--r--test/prism/snapshots/whitequark/endless_method.txt165
-rw-r--r--test/prism/snapshots/whitequark/endless_method_command_syntax.txt427
-rw-r--r--test/prism/snapshots/whitequark/endless_method_forwarded_args_legacy.txt50
-rw-r--r--test/prism/snapshots/whitequark/endless_method_with_rescue_mod.txt65
-rw-r--r--test/prism/snapshots/whitequark/endless_method_without_args.txt105
-rw-r--r--test/prism/snapshots/whitequark/ensure.txt46
-rw-r--r--test/prism/snapshots/whitequark/ensure_empty.txt20
-rw-r--r--test/prism/snapshots/whitequark/false.txt9
-rw-r--r--test/prism/snapshots/whitequark/float.txt13
-rw-r--r--test/prism/snapshots/whitequark/for.txt93
-rw-r--r--test/prism/snapshots/whitequark/for_mlhs.txt65
-rw-r--r--test/prism/snapshots/whitequark/forward_arg.txt50
-rw-r--r--test/prism/snapshots/whitequark/forward_arg_with_open_args.txt456
-rw-r--r--test/prism/snapshots/whitequark/forward_args_legacy.txt115
-rw-r--r--test/prism/snapshots/whitequark/forwarded_argument_with_kwrestarg.txt65
-rw-r--r--test/prism/snapshots/whitequark/forwarded_argument_with_restarg.txt62
-rw-r--r--test/prism/snapshots/whitequark/forwarded_kwrestarg.txt58
-rw-r--r--test/prism/snapshots/whitequark/forwarded_kwrestarg_with_additional_kwarg.txt71
-rw-r--r--test/prism/snapshots/whitequark/forwarded_restarg.txt55
-rw-r--r--test/prism/snapshots/whitequark/gvar.txt10
-rw-r--r--test/prism/snapshots/whitequark/gvasgn.txt16
-rw-r--r--test/prism/snapshots/whitequark/hash_empty.txt12
-rw-r--r--test/prism/snapshots/whitequark/hash_hashrocket.txt56
-rw-r--r--test/prism/snapshots/whitequark/hash_kwsplat.txt40
-rw-r--r--test/prism/snapshots/whitequark/hash_label.txt26
-rw-r--r--test/prism/snapshots/whitequark/hash_label_end.txt112
-rw-r--r--test/prism/snapshots/whitequark/hash_pair_value_omission.txt111
-rw-r--r--test/prism/snapshots/whitequark/heredoc.txt25
-rw-r--r--test/prism/snapshots/whitequark/if.txt69
-rw-r--r--test/prism/snapshots/whitequark/if_else.txt105
-rw-r--r--test/prism/snapshots/whitequark/if_elsif.txt73
-rw-r--r--test/prism/snapshots/whitequark/if_masgn__24.txt50
-rw-r--r--test/prism/snapshots/whitequark/if_mod.txt38
-rw-r--r--test/prism/snapshots/whitequark/if_nl_then.txt38
-rw-r--r--test/prism/snapshots/whitequark/int.txt16
-rw-r--r--test/prism/snapshots/whitequark/int___LINE__.txt9
-rw-r--r--test/prism/snapshots/whitequark/interp_digit_var.txt275
-rw-r--r--test/prism/snapshots/whitequark/ivar.txt10
-rw-r--r--test/prism/snapshots/whitequark/ivasgn.txt16
-rw-r--r--test/prism/snapshots/whitequark/keyword_argument_omission.txt71
-rw-r--r--test/prism/snapshots/whitequark/kwarg.txt34
-rw-r--r--test/prism/snapshots/whitequark/kwbegin_compstmt.txt38
-rw-r--r--test/prism/snapshots/whitequark/kwnilarg.txt97
-rw-r--r--test/prism/snapshots/whitequark/kwoptarg.txt38
-rw-r--r--test/prism/snapshots/whitequark/kwoptarg_with_kwrestarg_and_forwarded_args.txt65
-rw-r--r--test/prism/snapshots/whitequark/kwrestarg_named.txt35
-rw-r--r--test/prism/snapshots/whitequark/kwrestarg_unnamed.txt35
-rw-r--r--test/prism/snapshots/whitequark/lbrace_arg_after_command_args.txt61
-rw-r--r--test/prism/snapshots/whitequark/lparenarg_after_lvar__since_25.txt75
-rw-r--r--test/prism/snapshots/whitequark/lvar.txt17
-rw-r--r--test/prism/snapshots/whitequark/lvar_injecting_match.txt44
-rw-r--r--test/prism/snapshots/whitequark/lvasgn.txt21
-rw-r--r--test/prism/snapshots/whitequark/masgn.txt95
-rw-r--r--test/prism/snapshots/whitequark/masgn_attr.txt96
-rw-r--r--test/prism/snapshots/whitequark/masgn_cmd.txt41
-rw-r--r--test/prism/snapshots/whitequark/masgn_const.txt55
-rw-r--r--test/prism/snapshots/whitequark/masgn_nested.txt77
-rw-r--r--test/prism/snapshots/whitequark/masgn_splat.txt323
-rw-r--r--test/prism/snapshots/whitequark/method_definition_in_while_cond.txt223
-rw-r--r--test/prism/snapshots/whitequark/module.txt18
-rw-r--r--test/prism/snapshots/whitequark/multiple_pattern_matches.txt203
-rw-r--r--test/prism/snapshots/whitequark/newline_in_hash_argument.txt182
-rw-r--r--test/prism/snapshots/whitequark/nil.txt9
-rw-r--r--test/prism/snapshots/whitequark/nil_expression.txt20
-rw-r--r--test/prism/snapshots/whitequark/non_lvar_injecting_match.txt48
-rw-r--r--test/prism/snapshots/whitequark/not.txt57
-rw-r--r--test/prism/snapshots/whitequark/not_cmd.txt40
-rw-r--r--test/prism/snapshots/whitequark/not_masgn__24.txt52
-rw-r--r--test/prism/snapshots/whitequark/nth_ref.txt10
-rw-r--r--test/prism/snapshots/whitequark/numbered_args_after_27.txt165
-rw-r--r--test/prism/snapshots/whitequark/numparam_outside_block.txt127
-rw-r--r--test/prism/snapshots/whitequark/numparam_ruby_bug_19025.txt55
-rw-r--r--test/prism/snapshots/whitequark/op_asgn.txt76
-rw-r--r--test/prism/snapshots/whitequark/op_asgn_cmd.txt181
-rw-r--r--test/prism/snapshots/whitequark/op_asgn_index.txt40
-rw-r--r--test/prism/snapshots/whitequark/op_asgn_index_cmd.txt60
-rw-r--r--test/prism/snapshots/whitequark/optarg.txt80
-rw-r--r--test/prism/snapshots/whitequark/or.txt57
-rw-r--r--test/prism/snapshots/whitequark/or_asgn.txt61
-rw-r--r--test/prism/snapshots/whitequark/parser_bug_272.txt48
-rw-r--r--test/prism/snapshots/whitequark/parser_bug_490.txt129
-rw-r--r--test/prism/snapshots/whitequark/parser_bug_507.txt42
-rw-r--r--test/prism/snapshots/whitequark/parser_bug_518.txt23
-rw-r--r--test/prism/snapshots/whitequark/parser_bug_525.txt71
-rw-r--r--test/prism/snapshots/whitequark/parser_bug_604.txt60
-rw-r--r--test/prism/snapshots/whitequark/parser_bug_640.txt24
-rw-r--r--test/prism/snapshots/whitequark/parser_bug_645.txt41
-rw-r--r--test/prism/snapshots/whitequark/parser_bug_830.txt13
-rw-r--r--test/prism/snapshots/whitequark/parser_bug_989.txt13
-rw-r--r--test/prism/snapshots/whitequark/parser_drops_truncated_parts_of_squiggly_heredoc.txt23
-rw-r--r--test/prism/snapshots/whitequark/parser_slash_slash_n_escaping_in_literals.txt141
-rw-r--r--test/prism/snapshots/whitequark/pattern_matching__FILE__LINE_literals.txt63
-rw-r--r--test/prism/snapshots/whitequark/pattern_matching_blank_else.txt37
-rw-r--r--test/prism/snapshots/whitequark/pattern_matching_else.txt43
-rw-r--r--test/prism/snapshots/whitequark/pattern_matching_single_line.txt55
-rw-r--r--test/prism/snapshots/whitequark/pattern_matching_single_line_allowed_omission_of_parentheses.txt291
-rw-r--r--test/prism/snapshots/whitequark/postexe.txt19
-rw-r--r--test/prism/snapshots/whitequark/preexe.txt19
-rw-r--r--test/prism/snapshots/whitequark/procarg0.txt87
-rw-r--r--test/prism/snapshots/whitequark/range_exclusive.txt18
-rw-r--r--test/prism/snapshots/whitequark/range_inclusive.txt18
-rw-r--r--test/prism/snapshots/whitequark/rational.txt15
-rw-r--r--test/prism/snapshots/whitequark/regex_interp.txt42
-rw-r--r--test/prism/snapshots/whitequark/regex_plain.txt13
-rw-r--r--test/prism/snapshots/whitequark/resbody_list.txt52
-rw-r--r--test/prism/snapshots/whitequark/resbody_list_mrhs.txt62
-rw-r--r--test/prism/snapshots/whitequark/resbody_list_var.txt63
-rw-r--r--test/prism/snapshots/whitequark/resbody_var.txt98
-rw-r--r--test/prism/snapshots/whitequark/rescue.txt49
-rw-r--r--test/prism/snapshots/whitequark/rescue_else.txt67
-rw-r--r--test/prism/snapshots/whitequark/rescue_else_ensure.txt85
-rw-r--r--test/prism/snapshots/whitequark/rescue_ensure.txt67
-rw-r--r--test/prism/snapshots/whitequark/rescue_in_lambda_block.txt31
-rw-r--r--test/prism/snapshots/whitequark/rescue_mod.txt32
-rw-r--r--test/prism/snapshots/whitequark/rescue_mod_asgn.txt39
-rw-r--r--test/prism/snapshots/whitequark/rescue_mod_masgn.txt50
-rw-r--r--test/prism/snapshots/whitequark/rescue_mod_op_assign.txt40
-rw-r--r--test/prism/snapshots/whitequark/rescue_without_begin_end.txt66
-rw-r--r--test/prism/snapshots/whitequark/restarg_named.txt35
-rw-r--r--test/prism/snapshots/whitequark/restarg_unnamed.txt35
-rw-r--r--test/prism/snapshots/whitequark/return.txt65
-rw-r--r--test/prism/snapshots/whitequark/return_block.txt44
-rw-r--r--test/prism/snapshots/whitequark/ruby_bug_10279.txt39
-rw-r--r--test/prism/snapshots/whitequark/ruby_bug_10653.txt199
-rw-r--r--test/prism/snapshots/whitequark/ruby_bug_11107.txt54
-rw-r--r--test/prism/snapshots/whitequark/ruby_bug_11380.txt61
-rw-r--r--test/prism/snapshots/whitequark/ruby_bug_11873.txt793
-rw-r--r--test/prism/snapshots/whitequark/ruby_bug_11873_a.txt1285
-rw-r--r--test/prism/snapshots/whitequark/ruby_bug_11873_b.txt103
-rw-r--r--test/prism/snapshots/whitequark/ruby_bug_11989.txt26
-rw-r--r--test/prism/snapshots/whitequark/ruby_bug_11990.txt37
-rw-r--r--test/prism/snapshots/whitequark/ruby_bug_12073.txt104
-rw-r--r--test/prism/snapshots/whitequark/ruby_bug_12402.txt613
-rw-r--r--test/prism/snapshots/whitequark/ruby_bug_12669.txt143
-rw-r--r--test/prism/snapshots/whitequark/ruby_bug_12686.txt45
-rw-r--r--test/prism/snapshots/whitequark/ruby_bug_13547.txt34
-rw-r--r--test/prism/snapshots/whitequark/ruby_bug_14690.txt65
-rw-r--r--test/prism/snapshots/whitequark/ruby_bug_15789.txt140
-rw-r--r--test/prism/snapshots/whitequark/ruby_bug_9669.txt67
-rw-r--r--test/prism/snapshots/whitequark/sclass.txt30
-rw-r--r--test/prism/snapshots/whitequark/self.txt9
-rw-r--r--test/prism/snapshots/whitequark/send_attr_asgn.txt109
-rw-r--r--test/prism/snapshots/whitequark/send_attr_asgn_conditional.txt33
-rw-r--r--test/prism/snapshots/whitequark/send_binary_op.txt553
-rw-r--r--test/prism/snapshots/whitequark/send_block_chain_cmd.txt337
-rw-r--r--test/prism/snapshots/whitequark/send_block_conditional.txt34
-rw-r--r--test/prism/snapshots/whitequark/send_call.txt59
-rw-r--r--test/prism/snapshots/whitequark/send_conditional.txt27
-rw-r--r--test/prism/snapshots/whitequark/send_index.txt36
-rw-r--r--test/prism/snapshots/whitequark/send_index_asgn.txt39
-rw-r--r--test/prism/snapshots/whitequark/send_index_asgn_legacy.txt39
-rw-r--r--test/prism/snapshots/whitequark/send_index_cmd.txt53
-rw-r--r--test/prism/snapshots/whitequark/send_index_legacy.txt36
-rw-r--r--test/prism/snapshots/whitequark/send_lambda.txt51
-rw-r--r--test/prism/snapshots/whitequark/send_lambda_args.txt59
-rw-r--r--test/prism/snapshots/whitequark/send_lambda_args_noparen.txt65
-rw-r--r--test/prism/snapshots/whitequark/send_lambda_args_shadow.txt39
-rw-r--r--test/prism/snapshots/whitequark/send_lambda_legacy.txt15
-rw-r--r--test/prism/snapshots/whitequark/send_op_asgn_conditional.txt29
-rw-r--r--test/prism/snapshots/whitequark/send_plain.txt67
-rw-r--r--test/prism/snapshots/whitequark/send_plain_cmd.txt106
-rw-r--r--test/prism/snapshots/whitequark/send_self.txt43
-rw-r--r--test/prism/snapshots/whitequark/send_self_block.txt81
-rw-r--r--test/prism/snapshots/whitequark/send_unary_op.txt67
-rw-r--r--test/prism/snapshots/whitequark/slash_newline_in_heredocs.txt36
-rw-r--r--test/prism/snapshots/whitequark/space_args_arg.txt31
-rw-r--r--test/prism/snapshots/whitequark/space_args_arg_block.txt120
-rw-r--r--test/prism/snapshots/whitequark/space_args_arg_call.txt41
-rw-r--r--test/prism/snapshots/whitequark/space_args_arg_newline.txt31
-rw-r--r--test/prism/snapshots/whitequark/space_args_block.txt32
-rw-r--r--test/prism/snapshots/whitequark/space_args_cmd.txt51
-rw-r--r--test/prism/snapshots/whitequark/string___FILE__.txt10
-rw-r--r--test/prism/snapshots/whitequark/string_concat.txt36
-rw-r--r--test/prism/snapshots/whitequark/string_dvar.txt45
-rw-r--r--test/prism/snapshots/whitequark/string_interp.txt42
-rw-r--r--test/prism/snapshots/whitequark/string_plain.txt19
-rw-r--r--test/prism/snapshots/whitequark/super.txt54
-rw-r--r--test/prism/snapshots/whitequark/super_block.txt54
-rw-r--r--test/prism/snapshots/whitequark/symbol_interp.txt42
-rw-r--r--test/prism/snapshots/whitequark/symbol_plain.txt19
-rw-r--r--test/prism/snapshots/whitequark/ternary.txt42
-rw-r--r--test/prism/snapshots/whitequark/ternary_ambiguous_symbol.txt61
-rw-r--r--test/prism/snapshots/whitequark/trailing_forward_arg.txt63
-rw-r--r--test/prism/snapshots/whitequark/true.txt9
-rw-r--r--test/prism/snapshots/whitequark/unary_num_pow_precedence.txt84
-rw-r--r--test/prism/snapshots/whitequark/undef.txt45
-rw-r--r--test/prism/snapshots/whitequark/unless.txt69
-rw-r--r--test/prism/snapshots/whitequark/unless_else.txt105
-rw-r--r--test/prism/snapshots/whitequark/unless_mod.txt38
-rw-r--r--test/prism/snapshots/whitequark/until.txt65
-rw-r--r--test/prism/snapshots/whitequark/until_mod.txt36
-rw-r--r--test/prism/snapshots/whitequark/until_post.txt47
-rw-r--r--test/prism/snapshots/whitequark/var_and_asgn.txt17
-rw-r--r--test/prism/snapshots/whitequark/var_op_asgn.txt65
-rw-r--r--test/prism/snapshots/whitequark/var_op_asgn_cmd.txt32
-rw-r--r--test/prism/snapshots/whitequark/var_or_asgn.txt17
-rw-r--r--test/prism/snapshots/whitequark/when_multi.txt55
-rw-r--r--test/prism/snapshots/whitequark/when_splat.txt80
-rw-r--r--test/prism/snapshots/whitequark/when_then.txt49
-rw-r--r--test/prism/snapshots/whitequark/while.txt65
-rw-r--r--test/prism/snapshots/whitequark/while_mod.txt36
-rw-r--r--test/prism/snapshots/whitequark/while_post.txt47
-rw-r--r--test/prism/snapshots/whitequark/xstring_interp.txt42
-rw-r--r--test/prism/snapshots/whitequark/xstring_plain.txt13
-rw-r--r--test/prism/snapshots/whitequark/zsuper.txt10
-rw-r--r--test/prism/snapshots/xstring.txt72
-rw-r--r--test/prism/snapshots/xstring_with_backslash.txt13
-rw-r--r--test/prism/snapshots/yield.txt117
-rw-r--r--test/prism/snapshots_test.rb73
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