summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorUfuk Kayserilioglu <ufuk.kayserilioglu@shopify.com>2023-12-11 22:28:58 +0200
committergit <svn-admin@ruby-lang.org>2023-12-12 13:05:09 +0000
commitd313c82f797852037012138284d4e49fdaf284c4 (patch)
tree9c21ff192eb8f4771c0805c1f2098a9070d4e8aa /test
parent43229d531ff77cd9f8414e75141fcf54fafb22c4 (diff)
[ruby/prism] Update tests and snapshots
https://github.com/ruby/prism/commit/0663e2bcfa
Diffstat (limited to 'test')
-rw-r--r--test/prism/errors_test.rb10
-rw-r--r--test/prism/snapshots/arrays.txt7
-rw-r--r--test/prism/snapshots/constants.txt2
-rw-r--r--test/prism/snapshots/if.txt1
-rw-r--r--test/prism/snapshots/method_calls.txt13
-rw-r--r--test/prism/snapshots/methods.txt1
-rw-r--r--test/prism/snapshots/rescue.txt1
-rw-r--r--test/prism/snapshots/seattlerb/aref_args_assocs.txt1
-rw-r--r--test/prism/snapshots/seattlerb/aref_args_lit_assocs.txt1
-rw-r--r--test/prism/snapshots/seattlerb/assoc_label.txt1
-rw-r--r--test/prism/snapshots/seattlerb/bug_249.txt1
-rw-r--r--test/prism/snapshots/seattlerb/bug_hash_args.txt1
-rw-r--r--test/prism/snapshots/seattlerb/bug_hash_args_trailing_comma.txt1
-rw-r--r--test/prism/snapshots/seattlerb/call_arg_assoc.txt1
-rw-r--r--test/prism/snapshots/seattlerb/call_arg_assoc_kwsplat.txt1
-rw-r--r--test/prism/snapshots/seattlerb/call_arg_kwsplat.txt1
-rw-r--r--test/prism/snapshots/seattlerb/call_args_assoc_quoted.txt3
-rw-r--r--test/prism/snapshots/seattlerb/call_args_assoc_trailing_comma.txt1
-rw-r--r--test/prism/snapshots/seattlerb/call_array_lit_inline_hash.txt1
-rw-r--r--test/prism/snapshots/seattlerb/call_assoc.txt1
-rw-r--r--test/prism/snapshots/seattlerb/call_assoc_new.txt1
-rw-r--r--test/prism/snapshots/seattlerb/call_assoc_new_if_multiline.txt1
-rw-r--r--test/prism/snapshots/seattlerb/call_assoc_trailing_comma.txt1
-rw-r--r--test/prism/snapshots/seattlerb/call_kwsplat.txt1
-rw-r--r--test/prism/snapshots/seattlerb/defn_kwarg_env.txt1
-rw-r--r--test/prism/snapshots/seattlerb/difficult2_.txt1
-rw-r--r--test/prism/snapshots/seattlerb/method_call_assoc_trailing_comma.txt1
-rw-r--r--test/prism/snapshots/seattlerb/multiline_hash_declaration.txt3
-rw-r--r--test/prism/snapshots/seattlerb/parse_opt_call_args_assocs_comma.txt1
-rw-r--r--test/prism/snapshots/seattlerb/quoted_symbol_hash_arg.txt1
-rw-r--r--test/prism/snapshots/seattlerb/return_call_assocs.txt6
-rw-r--r--test/prism/snapshots/seattlerb/yield_call_assocs.txt6
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/send.txt6
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/since/32.txt1
-rw-r--r--test/prism/snapshots/whitequark/args_args_assocs.txt2
-rw-r--r--test/prism/snapshots/whitequark/args_args_assocs_comma.txt1
-rw-r--r--test/prism/snapshots/whitequark/args_assocs.txt6
-rw-r--r--test/prism/snapshots/whitequark/args_assocs_comma.txt1
-rw-r--r--test/prism/snapshots/whitequark/args_assocs_legacy.txt6
-rw-r--r--test/prism/snapshots/whitequark/array_assocs.txt2
-rw-r--r--test/prism/snapshots/whitequark/bug_cmdarg.txt2
-rw-r--r--test/prism/snapshots/whitequark/forwarded_argument_with_kwrestarg.txt1
-rw-r--r--test/prism/snapshots/whitequark/forwarded_kwrestarg.txt1
-rw-r--r--test/prism/snapshots/whitequark/forwarded_kwrestarg_with_additional_kwarg.txt1
-rw-r--r--test/prism/snapshots/whitequark/keyword_argument_omission.txt1
-rw-r--r--test/prism/snapshots/whitequark/kwoptarg_with_kwrestarg_and_forwarded_args.txt1
-rw-r--r--test/prism/snapshots/whitequark/newline_in_hash_argument.txt2
-rw-r--r--test/prism/snapshots/whitequark/parser_bug_525.txt1
-rw-r--r--test/prism/snapshots/whitequark/ruby_bug_11380.txt1
-rw-r--r--test/prism/snapshots/whitequark/ruby_bug_12073.txt1
50 files changed, 106 insertions, 5 deletions
diff --git a/test/prism/errors_test.rb b/test/prism/errors_test.rb
index 816df4667e..e11a7bdc82 100644
--- a/test/prism/errors_test.rb
+++ b/test/prism/errors_test.rb
@@ -367,7 +367,7 @@ module Prism
Location(),
Location(),
ArgumentsNode(1, [
- KeywordHashNode([AssocSplatNode(expression("kwargs"), Location())]),
+ KeywordHashNode(0, [AssocSplatNode(expression("kwargs"), Location())]),
SplatNode(Location(), expression("args"))
]),
Location(),
@@ -414,13 +414,13 @@ module Prism
Location(),
Location(),
ArgumentsNode(0, [
- KeywordHashNode(
- [AssocNode(
+ KeywordHashNode(1, [
+ AssocNode(
SymbolNode(0, nil, Location(), Location(), "foo"),
expression("bar"),
nil
- )]
- ),
+ )
+ ]),
SplatNode(Location(), expression("args"))
]),
Location(),
diff --git a/test/prism/snapshots/arrays.txt b/test/prism/snapshots/arrays.txt
index c970620ae4..7601fc38d9 100644
--- a/test/prism/snapshots/arrays.txt
+++ b/test/prism/snapshots/arrays.txt
@@ -79,6 +79,7 @@
│ ├── flags: ∅
│ ├── elements: (length: 1)
│ │ └── @ KeywordHashNode (location: (5,1)-(5,12))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (5,1)-(5,12))
│ │ ├── key:
@@ -175,6 +176,7 @@
│ ├── flags: ∅
│ ├── elements: (length: 1)
│ │ └── @ KeywordHashNode (location: (28,1)-(28,11))
+ │ │ ├── flags: ∅
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (28,1)-(28,11))
│ │ ├── key:
@@ -632,6 +634,7 @@
│ ├── flags: ∅
│ ├── elements: (length: 1)
│ │ └── @ KeywordHashNode (location: (49,1)-(49,5))
+ │ │ ├── flags: ∅
│ │ └── elements: (length: 1)
│ │ └── @ AssocSplatNode (location: (49,1)-(49,5))
│ │ ├── value:
@@ -646,6 +649,7 @@
│ ├── flags: ∅
│ ├── elements: (length: 1)
│ │ └── @ KeywordHashNode (location: (51,1)-(51,5))
+ │ │ ├── flags: ∅
│ │ └── elements: (length: 1)
│ │ └── @ AssocSplatNode (location: (51,1)-(51,5))
│ │ ├── value:
@@ -668,6 +672,7 @@
│ │ ├── @ IntegerNode (location: (53,1)-(53,2))
│ │ │ └── flags: decimal
│ │ └── @ KeywordHashNode (location: (53,4)-(53,8))
+ │ │ ├── flags: ∅
│ │ └── elements: (length: 1)
│ │ └── @ AssocSplatNode (location: (53,4)-(53,8))
│ │ ├── value:
@@ -690,6 +695,7 @@
│ │ ├── @ IntegerNode (location: (55,1)-(55,2))
│ │ │ └── flags: decimal
│ │ └── @ KeywordHashNode (location: (55,4)-(55,20))
+ │ │ ├── flags: ∅
│ │ └── elements: (length: 3)
│ │ ├── @ AssocSplatNode (location: (55,4)-(55,8))
│ │ │ ├── value:
@@ -730,6 +736,7 @@
│ ├── flags: ∅
│ ├── elements: (length: 1)
│ │ └── @ KeywordHashNode (location: (58,2)-(58,12))
+ │ │ ├── flags: ∅
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (58,2)-(58,12))
│ │ ├── key:
diff --git a/test/prism/snapshots/constants.txt b/test/prism/snapshots/constants.txt
index 7abd8cf69e..2210e26cc4 100644
--- a/test/prism/snapshots/constants.txt
+++ b/test/prism/snapshots/constants.txt
@@ -117,6 +117,7 @@
│ │ ├── flags: contains_keyword_splat
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (17,4)-(17,9))
+ │ │ ├── flags: ∅
│ │ └── elements: (length: 1)
│ │ └── @ AssocSplatNode (location: (17,4)-(17,9))
│ │ ├── value:
@@ -198,6 +199,7 @@
│ │ ├── flags: contains_keyword_splat
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (23,9)-(23,14))
+ │ │ ├── flags: ∅
│ │ └── elements: (length: 1)
│ │ └── @ AssocSplatNode (location: (23,9)-(23,14))
│ │ ├── value:
diff --git a/test/prism/snapshots/if.txt b/test/prism/snapshots/if.txt
index 965ca959ce..6733e57bed 100644
--- a/test/prism/snapshots/if.txt
+++ b/test/prism/snapshots/if.txt
@@ -250,6 +250,7 @@
│ │ │ ├── flags: ∅
│ │ │ └── arguments: (length: 1)
│ │ │ └── @ KeywordHashNode (location: (25,4)-(25,6))
+ │ │ │ ├── flags: static_keys
│ │ │ └── elements: (length: 1)
│ │ │ └── @ AssocNode (location: (25,4)-(25,6))
│ │ │ ├── key:
diff --git a/test/prism/snapshots/method_calls.txt b/test/prism/snapshots/method_calls.txt
index a60a9a1803..772d4cadbf 100644
--- a/test/prism/snapshots/method_calls.txt
+++ b/test/prism/snapshots/method_calls.txt
@@ -307,6 +307,7 @@
│ │ ├── flags: contains_keyword_splat
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (27,2)-(27,10))
+ │ │ ├── flags: ∅
│ │ └── elements: (length: 1)
│ │ └── @ AssocSplatNode (location: (27,2)-(27,10))
│ │ ├── value:
@@ -781,6 +782,7 @@
│ │ │ ├── closing_loc: ∅
│ │ │ └── unescaped: "a"
│ │ └── @ KeywordHashNode (location: (60,8)-(60,32))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 2)
│ │ ├── @ AssocNode (location: (60,8)-(60,22))
│ │ │ ├── key:
@@ -912,6 +914,7 @@
│ │ │ ├── closing_loc: ∅
│ │ │ └── unescaped: "a"
│ │ └── @ KeywordHashNode (location: (64,8)-(64,15))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (64,8)-(64,15))
│ │ ├── key:
@@ -980,6 +983,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (66,3)-(66,17))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (66,3)-(66,17))
│ │ ├── key:
@@ -1011,6 +1015,7 @@
│ │ ├── flags: contains_keyword_splat
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (68,3)-(68,40))
+ │ │ ├── flags: ∅
│ │ └── elements: (length: 3)
│ │ ├── @ AssocNode (location: (68,3)-(68,20))
│ │ │ ├── key:
@@ -1065,6 +1070,7 @@
│ │ ├── flags: contains_keyword_splat
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (70,3)-(70,40))
+ │ │ ├── flags: ∅
│ │ └── elements: (length: 3)
│ │ ├── @ AssocNode (location: (70,3)-(70,20))
│ │ │ ├── key:
@@ -1167,6 +1173,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (74,3)-(74,20))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (74,3)-(74,20))
│ │ ├── key:
@@ -1229,6 +1236,7 @@
│ │ │ ├── closing_loc: ∅
│ │ │ └── unescaped: "a"
│ │ └── @ KeywordHashNode (location: (82,0)-(82,5))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (82,0)-(82,5))
│ │ ├── key:
@@ -1279,6 +1287,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (87,4)-(87,21))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 2)
│ │ ├── @ AssocNode (location: (87,4)-(87,11))
│ │ │ ├── key:
@@ -1327,6 +1336,7 @@
│ │ ├── @ IntegerNode (location: (89,10)-(89,11))
│ │ │ └── flags: decimal
│ │ └── @ KeywordHashNode (location: (89,13)-(89,21))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (89,13)-(89,21))
│ │ ├── key:
@@ -1517,6 +1527,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (103,4)-(103,11))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (103,4)-(103,11))
│ │ ├── key:
@@ -1544,6 +1555,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (105,4)-(105,28))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (105,4)-(105,28))
│ │ ├── key:
@@ -1600,6 +1612,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (107,4)-(107,24))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (107,4)-(107,24))
│ │ ├── key:
diff --git a/test/prism/snapshots/methods.txt b/test/prism/snapshots/methods.txt
index ae7adecf22..62c117b82e 100644
--- a/test/prism/snapshots/methods.txt
+++ b/test/prism/snapshots/methods.txt
@@ -1297,6 +1297,7 @@
│ │ │ ├── flags: contains_keyword_splat
│ │ │ └── arguments: (length: 1)
│ │ │ └── @ KeywordHashNode (location: (139,11)-(139,30))
+ │ │ │ ├── flags: ∅
│ │ │ └── elements: (length: 3)
│ │ │ ├── @ AssocSplatNode (location: (139,11)-(139,16))
│ │ │ │ ├── value:
diff --git a/test/prism/snapshots/rescue.txt b/test/prism/snapshots/rescue.txt
index ca47adce68..3f9dc426a2 100644
--- a/test/prism/snapshots/rescue.txt
+++ b/test/prism/snapshots/rescue.txt
@@ -343,6 +343,7 @@
│ │ │ ├── flags: ∅
│ │ │ └── arguments: (length: 1)
│ │ │ └── @ KeywordHashNode (location: (29,4)-(29,6))
+ │ │ │ ├── flags: static_keys
│ │ │ └── elements: (length: 1)
│ │ │ └── @ AssocNode (location: (29,4)-(29,6))
│ │ │ ├── key:
diff --git a/test/prism/snapshots/seattlerb/aref_args_assocs.txt b/test/prism/snapshots/seattlerb/aref_args_assocs.txt
index b7f0446980..8286751c26 100644
--- a/test/prism/snapshots/seattlerb/aref_args_assocs.txt
+++ b/test/prism/snapshots/seattlerb/aref_args_assocs.txt
@@ -7,6 +7,7 @@
├── flags: ∅
├── elements: (length: 1)
│ └── @ KeywordHashNode (location: (1,1)-(1,7))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (1,1)-(1,7))
│ ├── key:
diff --git a/test/prism/snapshots/seattlerb/aref_args_lit_assocs.txt b/test/prism/snapshots/seattlerb/aref_args_lit_assocs.txt
index 8573d1d7b7..c809f42639 100644
--- a/test/prism/snapshots/seattlerb/aref_args_lit_assocs.txt
+++ b/test/prism/snapshots/seattlerb/aref_args_lit_assocs.txt
@@ -9,6 +9,7 @@
│ ├── @ IntegerNode (location: (1,1)-(1,2))
│ │ └── flags: decimal
│ └── @ KeywordHashNode (location: (1,4)-(1,10))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (1,4)-(1,10))
│ ├── key:
diff --git a/test/prism/snapshots/seattlerb/assoc_label.txt b/test/prism/snapshots/seattlerb/assoc_label.txt
index 17b695cf4b..1d65eef3f9 100644
--- a/test/prism/snapshots/seattlerb/assoc_label.txt
+++ b/test/prism/snapshots/seattlerb/assoc_label.txt
@@ -15,6 +15,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (1,2)-(1,5))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (1,2)-(1,5))
│ ├── key:
diff --git a/test/prism/snapshots/seattlerb/bug_249.txt b/test/prism/snapshots/seattlerb/bug_249.txt
index 90ffa88f27..4c684f32dc 100644
--- a/test/prism/snapshots/seattlerb/bug_249.txt
+++ b/test/prism/snapshots/seattlerb/bug_249.txt
@@ -66,6 +66,7 @@
│ │ ├── closing_loc: ∅
│ │ └── block: ∅
│ └── @ KeywordHashNode (location: (4,11)-(4,28))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (4,11)-(4,28))
│ ├── key:
diff --git a/test/prism/snapshots/seattlerb/bug_hash_args.txt b/test/prism/snapshots/seattlerb/bug_hash_args.txt
index c9491071ab..cea1fc8db0 100644
--- a/test/prism/snapshots/seattlerb/bug_hash_args.txt
+++ b/test/prism/snapshots/seattlerb/bug_hash_args.txt
@@ -21,6 +21,7 @@
│ │ ├── closing_loc: ∅
│ │ └── unescaped: "bar"
│ └── @ KeywordHashNode (location: (1,10)-(1,18))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (1,10)-(1,18))
│ ├── key:
diff --git a/test/prism/snapshots/seattlerb/bug_hash_args_trailing_comma.txt b/test/prism/snapshots/seattlerb/bug_hash_args_trailing_comma.txt
index 04f4173fc1..e4c2a10f2e 100644
--- a/test/prism/snapshots/seattlerb/bug_hash_args_trailing_comma.txt
+++ b/test/prism/snapshots/seattlerb/bug_hash_args_trailing_comma.txt
@@ -21,6 +21,7 @@
│ │ ├── closing_loc: ∅
│ │ └── unescaped: "bar"
│ └── @ KeywordHashNode (location: (1,10)-(1,18))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (1,10)-(1,18))
│ ├── key:
diff --git a/test/prism/snapshots/seattlerb/call_arg_assoc.txt b/test/prism/snapshots/seattlerb/call_arg_assoc.txt
index 4694b43045..4b7666a3c5 100644
--- a/test/prism/snapshots/seattlerb/call_arg_assoc.txt
+++ b/test/prism/snapshots/seattlerb/call_arg_assoc.txt
@@ -17,6 +17,7 @@
│ ├── @ IntegerNode (location: (1,2)-(1,3))
│ │ └── flags: decimal
│ └── @ KeywordHashNode (location: (1,5)-(1,9))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (1,5)-(1,9))
│ ├── key:
diff --git a/test/prism/snapshots/seattlerb/call_arg_assoc_kwsplat.txt b/test/prism/snapshots/seattlerb/call_arg_assoc_kwsplat.txt
index 6952d26fd5..9a052beffa 100644
--- a/test/prism/snapshots/seattlerb/call_arg_assoc_kwsplat.txt
+++ b/test/prism/snapshots/seattlerb/call_arg_assoc_kwsplat.txt
@@ -17,6 +17,7 @@
│ ├── @ IntegerNode (location: (1,2)-(1,3))
│ │ └── flags: decimal
│ └── @ KeywordHashNode (location: (1,5)-(1,15))
+ │ ├── flags: ∅
│ └── elements: (length: 2)
│ ├── @ AssocNode (location: (1,5)-(1,10))
│ │ ├── key:
diff --git a/test/prism/snapshots/seattlerb/call_arg_kwsplat.txt b/test/prism/snapshots/seattlerb/call_arg_kwsplat.txt
index da8d8b709b..dab497db45 100644
--- a/test/prism/snapshots/seattlerb/call_arg_kwsplat.txt
+++ b/test/prism/snapshots/seattlerb/call_arg_kwsplat.txt
@@ -25,6 +25,7 @@
│ │ ├── closing_loc: ∅
│ │ └── block: ∅
│ └── @ KeywordHashNode (location: (1,5)-(1,8))
+ │ ├── flags: ∅
│ └── elements: (length: 1)
│ └── @ AssocSplatNode (location: (1,5)-(1,8))
│ ├── value:
diff --git a/test/prism/snapshots/seattlerb/call_args_assoc_quoted.txt b/test/prism/snapshots/seattlerb/call_args_assoc_quoted.txt
index f47f517553..958231a21a 100644
--- a/test/prism/snapshots/seattlerb/call_args_assoc_quoted.txt
+++ b/test/prism/snapshots/seattlerb/call_args_assoc_quoted.txt
@@ -15,6 +15,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (1,2)-(1,11))
+ │ │ ├── flags: ∅
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (1,2)-(1,11))
│ │ ├── key:
@@ -56,6 +57,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (3,2)-(3,8))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (3,2)-(3,8))
│ │ ├── key:
@@ -83,6 +85,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (5,2)-(5,8))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (5,2)-(5,8))
│ ├── key:
diff --git a/test/prism/snapshots/seattlerb/call_args_assoc_trailing_comma.txt b/test/prism/snapshots/seattlerb/call_args_assoc_trailing_comma.txt
index b27cd84ba0..a21be7ffe8 100644
--- a/test/prism/snapshots/seattlerb/call_args_assoc_trailing_comma.txt
+++ b/test/prism/snapshots/seattlerb/call_args_assoc_trailing_comma.txt
@@ -17,6 +17,7 @@
│ ├── @ IntegerNode (location: (1,2)-(1,3))
│ │ └── flags: decimal
│ └── @ KeywordHashNode (location: (1,5)-(1,9))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (1,5)-(1,9))
│ ├── key:
diff --git a/test/prism/snapshots/seattlerb/call_array_lit_inline_hash.txt b/test/prism/snapshots/seattlerb/call_array_lit_inline_hash.txt
index 5099caf038..f8cde2f6a9 100644
--- a/test/prism/snapshots/seattlerb/call_array_lit_inline_hash.txt
+++ b/test/prism/snapshots/seattlerb/call_array_lit_inline_hash.txt
@@ -24,6 +24,7 @@
│ │ │ ├── closing_loc: ∅
│ │ │ └── unescaped: "b"
│ │ └── @ KeywordHashNode (location: (1,7)-(1,14))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (1,7)-(1,14))
│ │ ├── key:
diff --git a/test/prism/snapshots/seattlerb/call_assoc.txt b/test/prism/snapshots/seattlerb/call_assoc.txt
index 530b25e465..ba45837306 100644
--- a/test/prism/snapshots/seattlerb/call_assoc.txt
+++ b/test/prism/snapshots/seattlerb/call_assoc.txt
@@ -15,6 +15,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (1,2)-(1,6))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (1,2)-(1,6))
│ ├── key:
diff --git a/test/prism/snapshots/seattlerb/call_assoc_new.txt b/test/prism/snapshots/seattlerb/call_assoc_new.txt
index 5488fb2c46..6d12125260 100644
--- a/test/prism/snapshots/seattlerb/call_assoc_new.txt
+++ b/test/prism/snapshots/seattlerb/call_assoc_new.txt
@@ -15,6 +15,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (1,2)-(1,5))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (1,2)-(1,5))
│ ├── key:
diff --git a/test/prism/snapshots/seattlerb/call_assoc_new_if_multiline.txt b/test/prism/snapshots/seattlerb/call_assoc_new_if_multiline.txt
index 24477a761e..1c079f9d1d 100644
--- a/test/prism/snapshots/seattlerb/call_assoc_new_if_multiline.txt
+++ b/test/prism/snapshots/seattlerb/call_assoc_new_if_multiline.txt
@@ -15,6 +15,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (1,2)-(5,3))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (1,2)-(5,3))
│ ├── key:
diff --git a/test/prism/snapshots/seattlerb/call_assoc_trailing_comma.txt b/test/prism/snapshots/seattlerb/call_assoc_trailing_comma.txt
index ae3b5882ad..20e402ff4f 100644
--- a/test/prism/snapshots/seattlerb/call_assoc_trailing_comma.txt
+++ b/test/prism/snapshots/seattlerb/call_assoc_trailing_comma.txt
@@ -15,6 +15,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (1,2)-(1,6))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (1,2)-(1,6))
│ ├── key:
diff --git a/test/prism/snapshots/seattlerb/call_kwsplat.txt b/test/prism/snapshots/seattlerb/call_kwsplat.txt
index f2effca19e..04eab025f8 100644
--- a/test/prism/snapshots/seattlerb/call_kwsplat.txt
+++ b/test/prism/snapshots/seattlerb/call_kwsplat.txt
@@ -15,6 +15,7 @@
│ ├── flags: contains_keyword_splat
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (1,2)-(1,5))
+ │ ├── flags: ∅
│ └── elements: (length: 1)
│ └── @ AssocSplatNode (location: (1,2)-(1,5))
│ ├── value:
diff --git a/test/prism/snapshots/seattlerb/defn_kwarg_env.txt b/test/prism/snapshots/seattlerb/defn_kwarg_env.txt
index 8c43e4eb0a..e562b6729b 100644
--- a/test/prism/snapshots/seattlerb/defn_kwarg_env.txt
+++ b/test/prism/snapshots/seattlerb/defn_kwarg_env.txt
@@ -35,6 +35,7 @@
│ │ ├── flags: contains_keyword_splat
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (1,31)-(1,40))
+ │ │ ├── flags: ∅
│ │ └── elements: (length: 1)
│ │ └── @ AssocSplatNode (location: (1,31)-(1,40))
│ │ ├── value:
diff --git a/test/prism/snapshots/seattlerb/difficult2_.txt b/test/prism/snapshots/seattlerb/difficult2_.txt
index 182158b285..a81b0ce458 100644
--- a/test/prism/snapshots/seattlerb/difficult2_.txt
+++ b/test/prism/snapshots/seattlerb/difficult2_.txt
@@ -53,6 +53,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (2,2)-(2,6))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (2,2)-(2,6))
│ ├── key:
diff --git a/test/prism/snapshots/seattlerb/method_call_assoc_trailing_comma.txt b/test/prism/snapshots/seattlerb/method_call_assoc_trailing_comma.txt
index 1fa0510b2d..75ae0d9976 100644
--- a/test/prism/snapshots/seattlerb/method_call_assoc_trailing_comma.txt
+++ b/test/prism/snapshots/seattlerb/method_call_assoc_trailing_comma.txt
@@ -25,6 +25,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (1,4)-(1,8))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (1,4)-(1,8))
│ ├── key:
diff --git a/test/prism/snapshots/seattlerb/multiline_hash_declaration.txt b/test/prism/snapshots/seattlerb/multiline_hash_declaration.txt
index 305949a720..efa6fa242d 100644
--- a/test/prism/snapshots/seattlerb/multiline_hash_declaration.txt
+++ b/test/prism/snapshots/seattlerb/multiline_hash_declaration.txt
@@ -15,6 +15,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (1,2)-(3,1))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (1,2)-(3,1))
│ │ ├── key:
@@ -44,6 +45,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (5,2)-(6,1))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (5,2)-(6,1))
│ │ ├── key:
@@ -73,6 +75,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (8,2)-(8,11))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (8,2)-(8,11))
│ ├── key:
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
index 528ade93a7..3dc68795bb 100644
--- a/test/prism/snapshots/seattlerb/parse_opt_call_args_assocs_comma.txt
+++ b/test/prism/snapshots/seattlerb/parse_opt_call_args_assocs_comma.txt
@@ -17,6 +17,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (1,2)-(1,6))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (1,2)-(1,6))
│ ├── key:
diff --git a/test/prism/snapshots/seattlerb/quoted_symbol_hash_arg.txt b/test/prism/snapshots/seattlerb/quoted_symbol_hash_arg.txt
index 1650acc211..59bd8f0220 100644
--- a/test/prism/snapshots/seattlerb/quoted_symbol_hash_arg.txt
+++ b/test/prism/snapshots/seattlerb/quoted_symbol_hash_arg.txt
@@ -15,6 +15,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (1,5)-(1,12))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (1,5)-(1,12))
│ ├── key:
diff --git a/test/prism/snapshots/seattlerb/return_call_assocs.txt b/test/prism/snapshots/seattlerb/return_call_assocs.txt
index 047eb1d93e..8baf6c4c7e 100644
--- a/test/prism/snapshots/seattlerb/return_call_assocs.txt
+++ b/test/prism/snapshots/seattlerb/return_call_assocs.txt
@@ -12,6 +12,7 @@
│ ├── @ IntegerNode (location: (1,7)-(1,8))
│ │ └── flags: decimal
│ └── @ KeywordHashNode (location: (1,10)-(1,17))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (1,10)-(1,17))
│ ├── key:
@@ -34,6 +35,7 @@
│ ├── @ IntegerNode (location: (3,7)-(3,8))
│ │ └── flags: decimal
│ └── @ KeywordHashNode (location: (3,10)-(3,26))
+ │ ├── flags: static_keys
│ └── elements: (length: 2)
│ ├── @ AssocNode (location: (3,10)-(3,17))
│ │ ├── key:
@@ -77,6 +79,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (5,9)-(5,14))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (5,9)-(5,14))
│ │ ├── key:
@@ -110,6 +113,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (7,9)-(7,12))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (7,9)-(7,12))
│ │ ├── key:
@@ -143,6 +147,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (9,9)-(9,12))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (9,9)-(9,12))
│ │ ├── key:
@@ -176,6 +181,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (11,9)-(11,13))
+ │ ├── flags: ∅
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (11,9)-(11,13))
│ ├── key:
diff --git a/test/prism/snapshots/seattlerb/yield_call_assocs.txt b/test/prism/snapshots/seattlerb/yield_call_assocs.txt
index 559309af42..82d1765f21 100644
--- a/test/prism/snapshots/seattlerb/yield_call_assocs.txt
+++ b/test/prism/snapshots/seattlerb/yield_call_assocs.txt
@@ -13,6 +13,7 @@
│ │ ├── @ IntegerNode (location: (1,6)-(1,7))
│ │ │ └── flags: decimal
│ │ └── @ KeywordHashNode (location: (1,9)-(1,16))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (1,9)-(1,16))
│ │ ├── key:
@@ -37,6 +38,7 @@
│ │ ├── @ IntegerNode (location: (3,6)-(3,7))
│ │ │ └── flags: decimal
│ │ └── @ KeywordHashNode (location: (3,9)-(3,25))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 2)
│ │ ├── @ AssocNode (location: (3,9)-(3,16))
│ │ │ ├── key:
@@ -82,6 +84,7 @@
│ │ │ ├── flags: ∅
│ │ │ └── arguments: (length: 1)
│ │ │ └── @ KeywordHashNode (location: (5,8)-(5,13))
+ │ │ │ ├── flags: static_keys
│ │ │ └── elements: (length: 1)
│ │ │ └── @ AssocNode (location: (5,8)-(5,13))
│ │ │ ├── key:
@@ -117,6 +120,7 @@
│ │ │ ├── flags: ∅
│ │ │ └── arguments: (length: 1)
│ │ │ └── @ KeywordHashNode (location: (7,8)-(7,11))
+ │ │ │ ├── flags: static_keys
│ │ │ └── elements: (length: 1)
│ │ │ └── @ AssocNode (location: (7,8)-(7,11))
│ │ │ ├── key:
@@ -152,6 +156,7 @@
│ │ │ ├── flags: ∅
│ │ │ └── arguments: (length: 1)
│ │ │ └── @ KeywordHashNode (location: (9,8)-(9,11))
+ │ │ │ ├── flags: static_keys
│ │ │ └── elements: (length: 1)
│ │ │ └── @ AssocNode (location: (9,8)-(9,11))
│ │ │ ├── key:
@@ -187,6 +192,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (11,8)-(11,12))
+ │ │ ├── flags: ∅
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (11,8)-(11,12))
│ │ ├── key:
diff --git a/test/prism/snapshots/unparser/corpus/literal/send.txt b/test/prism/snapshots/unparser/corpus/literal/send.txt
index ccf332a384..e0e27bc522 100644
--- a/test/prism/snapshots/unparser/corpus/literal/send.txt
+++ b/test/prism/snapshots/unparser/corpus/literal/send.txt
@@ -1249,6 +1249,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (63,8)-(63,16))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (63,8)-(63,16))
│ │ ├── key:
@@ -1304,6 +1305,7 @@
│ │ │ ├── closing_loc: ∅
│ │ │ └── block: ∅
│ │ └── @ KeywordHashNode (location: (64,13)-(64,25))
+ │ │ ├── flags: ∅
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (64,13)-(64,25))
│ │ ├── key:
@@ -1567,6 +1569,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (70,4)-(70,8))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (70,4)-(70,8))
│ │ ├── key:
@@ -1612,6 +1615,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (71,6)-(71,10))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (71,6)-(71,10))
│ │ ├── key:
@@ -1657,6 +1661,7 @@
│ │ ├── flags: contains_keyword_splat
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (72,6)-(72,9))
+ │ │ ├── flags: ∅
│ │ └── elements: (length: 1)
│ │ └── @ AssocSplatNode (location: (72,6)-(72,9))
│ │ ├── value:
@@ -2073,6 +2078,7 @@
│ │ ├── flags: contains_keyword_splat
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (81,2)-(81,7))
+ │ │ ├── flags: ∅
│ │ └── elements: (length: 1)
│ │ └── @ AssocSplatNode (location: (81,2)-(81,7))
│ │ ├── value:
diff --git a/test/prism/snapshots/unparser/corpus/literal/since/32.txt b/test/prism/snapshots/unparser/corpus/literal/since/32.txt
index 09bc0e1575..85d8e595b4 100644
--- a/test/prism/snapshots/unparser/corpus/literal/since/32.txt
+++ b/test/prism/snapshots/unparser/corpus/literal/since/32.txt
@@ -40,6 +40,7 @@
│ │ │ │ ├── name: :argument
│ │ │ │ └── depth: 0
│ │ │ └── @ KeywordHashNode (location: (2,16)-(2,18))
+ │ │ │ ├── flags: ∅
│ │ │ └── elements: (length: 1)
│ │ │ └── @ AssocSplatNode (location: (2,16)-(2,18))
│ │ │ ├── value: ∅
diff --git a/test/prism/snapshots/whitequark/args_args_assocs.txt b/test/prism/snapshots/whitequark/args_args_assocs.txt
index 52a3b5c1e7..d5c0d7d136 100644
--- a/test/prism/snapshots/whitequark/args_args_assocs.txt
+++ b/test/prism/snapshots/whitequark/args_args_assocs.txt
@@ -25,6 +25,7 @@
│ │ │ ├── closing_loc: ∅
│ │ │ └── block: ∅
│ │ └── @ KeywordHashNode (location: (1,9)-(1,18))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (1,9)-(1,18))
│ │ ├── key:
@@ -62,6 +63,7 @@
│ │ ├── closing_loc: ∅
│ │ └── block: ∅
│ └── @ KeywordHashNode (location: (3,9)-(3,18))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (3,9)-(3,18))
│ ├── key:
diff --git a/test/prism/snapshots/whitequark/args_args_assocs_comma.txt b/test/prism/snapshots/whitequark/args_args_assocs_comma.txt
index 7523d2d918..2aa1644610 100644
--- a/test/prism/snapshots/whitequark/args_args_assocs_comma.txt
+++ b/test/prism/snapshots/whitequark/args_args_assocs_comma.txt
@@ -35,6 +35,7 @@
│ │ ├── closing_loc: ∅
│ │ └── block: ∅
│ └── @ KeywordHashNode (location: (1,9)-(1,18))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (1,9)-(1,18))
│ ├── key:
diff --git a/test/prism/snapshots/whitequark/args_assocs.txt b/test/prism/snapshots/whitequark/args_assocs.txt
index 31c2827df4..bf51dda187 100644
--- a/test/prism/snapshots/whitequark/args_assocs.txt
+++ b/test/prism/snapshots/whitequark/args_assocs.txt
@@ -15,6 +15,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (1,4)-(1,13))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (1,4)-(1,13))
│ │ ├── key:
@@ -42,6 +43,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (3,4)-(3,13))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (3,4)-(3,13))
│ │ ├── key:
@@ -93,6 +95,7 @@
│ │ │ ├── closing_loc: ∅
│ │ │ └── block: ∅
│ │ └── @ KeywordHashNode (location: (5,14)-(5,21))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (5,14)-(5,21))
│ │ ├── key:
@@ -121,6 +124,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (7,5)-(7,14))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (7,5)-(7,14))
│ │ ├── key:
@@ -144,6 +148,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (9,6)-(9,16))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (9,6)-(9,16))
│ │ ├── key:
@@ -167,6 +172,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (11,6)-(11,16))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (11,6)-(11,16))
│ ├── key:
diff --git a/test/prism/snapshots/whitequark/args_assocs_comma.txt b/test/prism/snapshots/whitequark/args_assocs_comma.txt
index 3cd75b7477..b98aa39cb7 100644
--- a/test/prism/snapshots/whitequark/args_assocs_comma.txt
+++ b/test/prism/snapshots/whitequark/args_assocs_comma.txt
@@ -25,6 +25,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (1,4)-(1,13))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (1,4)-(1,13))
│ ├── key:
diff --git a/test/prism/snapshots/whitequark/args_assocs_legacy.txt b/test/prism/snapshots/whitequark/args_assocs_legacy.txt
index 31c2827df4..bf51dda187 100644
--- a/test/prism/snapshots/whitequark/args_assocs_legacy.txt
+++ b/test/prism/snapshots/whitequark/args_assocs_legacy.txt
@@ -15,6 +15,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (1,4)-(1,13))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (1,4)-(1,13))
│ │ ├── key:
@@ -42,6 +43,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (3,4)-(3,13))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (3,4)-(3,13))
│ │ ├── key:
@@ -93,6 +95,7 @@
│ │ │ ├── closing_loc: ∅
│ │ │ └── block: ∅
│ │ └── @ KeywordHashNode (location: (5,14)-(5,21))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (5,14)-(5,21))
│ │ ├── key:
@@ -121,6 +124,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (7,5)-(7,14))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (7,5)-(7,14))
│ │ ├── key:
@@ -144,6 +148,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (9,6)-(9,16))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (9,6)-(9,16))
│ │ ├── key:
@@ -167,6 +172,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (11,6)-(11,16))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (11,6)-(11,16))
│ ├── key:
diff --git a/test/prism/snapshots/whitequark/array_assocs.txt b/test/prism/snapshots/whitequark/array_assocs.txt
index 0ddd0451ee..2b374744fc 100644
--- a/test/prism/snapshots/whitequark/array_assocs.txt
+++ b/test/prism/snapshots/whitequark/array_assocs.txt
@@ -7,6 +7,7 @@
│ ├── flags: ∅
│ ├── elements: (length: 1)
│ │ └── @ KeywordHashNode (location: (1,2)-(1,8))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (1,2)-(1,8))
│ │ ├── key:
@@ -24,6 +25,7 @@
│ ├── @ IntegerNode (location: (3,2)-(3,3))
│ │ └── flags: decimal
│ └── @ KeywordHashNode (location: (3,5)-(3,11))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (3,5)-(3,11))
│ ├── key:
diff --git a/test/prism/snapshots/whitequark/bug_cmdarg.txt b/test/prism/snapshots/whitequark/bug_cmdarg.txt
index 4887d808a9..6779d11735 100644
--- a/test/prism/snapshots/whitequark/bug_cmdarg.txt
+++ b/test/prism/snapshots/whitequark/bug_cmdarg.txt
@@ -15,6 +15,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (1,7)-(1,15))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (1,7)-(1,15))
│ │ ├── key:
@@ -64,6 +65,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (5,2)-(5,26))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (5,2)-(5,26))
│ ├── key:
diff --git a/test/prism/snapshots/whitequark/forwarded_argument_with_kwrestarg.txt b/test/prism/snapshots/whitequark/forwarded_argument_with_kwrestarg.txt
index ebefd06eda..ee2ae74c6d 100644
--- a/test/prism/snapshots/whitequark/forwarded_argument_with_kwrestarg.txt
+++ b/test/prism/snapshots/whitequark/forwarded_argument_with_kwrestarg.txt
@@ -40,6 +40,7 @@
│ │ │ ├── name: :argument
│ │ │ └── depth: 0
│ │ └── @ KeywordHashNode (location: (1,37)-(1,39))
+ │ │ ├── flags: ∅
│ │ └── elements: (length: 1)
│ │ └── @ AssocSplatNode (location: (1,37)-(1,39))
│ │ ├── value: ∅
diff --git a/test/prism/snapshots/whitequark/forwarded_kwrestarg.txt b/test/prism/snapshots/whitequark/forwarded_kwrestarg.txt
index 8df571dbdb..cb09606e53 100644
--- a/test/prism/snapshots/whitequark/forwarded_kwrestarg.txt
+++ b/test/prism/snapshots/whitequark/forwarded_kwrestarg.txt
@@ -35,6 +35,7 @@
│ │ ├── flags: contains_keyword_splat
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (1,17)-(1,19))
+ │ │ ├── flags: ∅
│ │ └── elements: (length: 1)
│ │ └── @ AssocSplatNode (location: (1,17)-(1,19))
│ │ ├── value: ∅
diff --git a/test/prism/snapshots/whitequark/forwarded_kwrestarg_with_additional_kwarg.txt b/test/prism/snapshots/whitequark/forwarded_kwrestarg_with_additional_kwarg.txt
index 2dbf537385..10c0cdc45a 100644
--- a/test/prism/snapshots/whitequark/forwarded_kwrestarg_with_additional_kwarg.txt
+++ b/test/prism/snapshots/whitequark/forwarded_kwrestarg_with_additional_kwarg.txt
@@ -35,6 +35,7 @@
│ │ ├── flags: contains_keyword_splat
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (1,17)-(1,35))
+ │ │ ├── flags: ∅
│ │ └── elements: (length: 2)
│ │ ├── @ AssocSplatNode (location: (1,17)-(1,19))
│ │ │ ├── value: ∅
diff --git a/test/prism/snapshots/whitequark/keyword_argument_omission.txt b/test/prism/snapshots/whitequark/keyword_argument_omission.txt
index 04f0c87c44..3ff3f9a176 100644
--- a/test/prism/snapshots/whitequark/keyword_argument_omission.txt
+++ b/test/prism/snapshots/whitequark/keyword_argument_omission.txt
@@ -15,6 +15,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (1,4)-(1,10))
+ │ ├── flags: static_keys
│ └── elements: (length: 2)
│ ├── @ AssocNode (location: (1,4)-(1,6))
│ │ ├── key:
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
index d9c0826f9e..290d66b0fc 100644
--- a/test/prism/snapshots/whitequark/kwoptarg_with_kwrestarg_and_forwarded_args.txt
+++ b/test/prism/snapshots/whitequark/kwoptarg_with_kwrestarg_and_forwarded_args.txt
@@ -40,6 +40,7 @@
│ │ ├── flags: contains_keyword_splat
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (1,21)-(1,23))
+ │ │ ├── flags: ∅
│ │ └── elements: (length: 1)
│ │ └── @ AssocSplatNode (location: (1,21)-(1,23))
│ │ ├── value: ∅
diff --git a/test/prism/snapshots/whitequark/newline_in_hash_argument.txt b/test/prism/snapshots/whitequark/newline_in_hash_argument.txt
index 46cbb8b1ba..0e036fbd85 100644
--- a/test/prism/snapshots/whitequark/newline_in_hash_argument.txt
+++ b/test/prism/snapshots/whitequark/newline_in_hash_argument.txt
@@ -93,6 +93,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (10,8)-(11,1))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (10,8)-(11,1))
│ │ ├── key:
@@ -130,6 +131,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (13,8)-(14,1))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (13,8)-(14,1))
│ ├── key:
diff --git a/test/prism/snapshots/whitequark/parser_bug_525.txt b/test/prism/snapshots/whitequark/parser_bug_525.txt
index bdcf61aba5..087cc76e1b 100644
--- a/test/prism/snapshots/whitequark/parser_bug_525.txt
+++ b/test/prism/snapshots/whitequark/parser_bug_525.txt
@@ -15,6 +15,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (1,3)-(1,11))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (1,3)-(1,11))
│ ├── key:
diff --git a/test/prism/snapshots/whitequark/ruby_bug_11380.txt b/test/prism/snapshots/whitequark/ruby_bug_11380.txt
index 59f375e822..cd2939f8bb 100644
--- a/test/prism/snapshots/whitequark/ruby_bug_11380.txt
+++ b/test/prism/snapshots/whitequark/ruby_bug_11380.txt
@@ -31,6 +31,7 @@
│ │ ├── closing_loc: ∅
│ │ └── unescaped: "hello"
│ └── @ KeywordHashNode (location: (1,17)-(1,21))
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (1,17)-(1,21))
│ ├── key:
diff --git a/test/prism/snapshots/whitequark/ruby_bug_12073.txt b/test/prism/snapshots/whitequark/ruby_bug_12073.txt
index 86be1100b7..521df7a013 100644
--- a/test/prism/snapshots/whitequark/ruby_bug_12073.txt
+++ b/test/prism/snapshots/whitequark/ruby_bug_12073.txt
@@ -23,6 +23,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (1,9)-(1,13))
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (1,9)-(1,13))
│ │ ├── key: