summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--prism/config.yml4
-rw-r--r--prism/diagnostic.c2
-rw-r--r--prism/diagnostic.h2
-rw-r--r--prism/parser.h6
-rw-r--r--prism/prism.c26
-rw-r--r--prism/templates/lib/prism/node.rb.erb10
-rw-r--r--test/prism/errors_test.rb15
-rw-r--r--test/prism/fixtures/patterns.txt2
-rw-r--r--test/prism/location_test.rb2
-rw-r--r--test/prism/ruby_api_test.rb4
-rw-r--r--test/prism/snapshots/arrays.txt2
-rw-r--r--test/prism/snapshots/if.txt2
-rw-r--r--test/prism/snapshots/method_calls.txt20
-rw-r--r--test/prism/snapshots/patterns.txt24
-rw-r--r--test/prism/snapshots/rescue.txt2
-rw-r--r--test/prism/snapshots/seattlerb/assoc_label.txt2
-rw-r--r--test/prism/snapshots/seattlerb/bug_249.txt2
-rw-r--r--test/prism/snapshots/seattlerb/bug_hash_args.txt2
-rw-r--r--test/prism/snapshots/seattlerb/bug_hash_args_trailing_comma.txt2
-rw-r--r--test/prism/snapshots/seattlerb/call_args_assoc_quoted.txt4
-rw-r--r--test/prism/snapshots/seattlerb/call_array_lit_inline_hash.txt2
-rw-r--r--test/prism/snapshots/seattlerb/call_assoc_new.txt2
-rw-r--r--test/prism/snapshots/seattlerb/call_assoc_new_if_multiline.txt2
-rw-r--r--test/prism/snapshots/seattlerb/difficult2_.txt2
-rw-r--r--test/prism/snapshots/seattlerb/multiline_hash_declaration.txt6
-rw-r--r--test/prism/snapshots/seattlerb/quoted_symbol_hash_arg.txt2
-rw-r--r--test/prism/snapshots/seattlerb/return_call_assocs.txt10
-rw-r--r--test/prism/snapshots/seattlerb/yield_call_assocs.txt10
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/literal.txt12
-rw-r--r--test/prism/snapshots/unparser/corpus/literal/send.txt8
-rw-r--r--test/prism/snapshots/whitequark/args_args_assocs.txt4
-rw-r--r--test/prism/snapshots/whitequark/args_args_assocs_comma.txt2
-rw-r--r--test/prism/snapshots/whitequark/args_assocs.txt12
-rw-r--r--test/prism/snapshots/whitequark/args_assocs_comma.txt2
-rw-r--r--test/prism/snapshots/whitequark/args_assocs_legacy.txt12
-rw-r--r--test/prism/snapshots/whitequark/bug_cmdarg.txt4
-rw-r--r--test/prism/snapshots/whitequark/keyword_argument_omission.txt2
-rw-r--r--test/prism/snapshots/whitequark/newline_in_hash_argument.txt4
-rw-r--r--test/prism/snapshots/whitequark/parser_bug_525.txt2
-rw-r--r--test/prism/snapshots/whitequark/ruby_bug_11380.txt2
-rw-r--r--test/prism/snapshots/whitequark/ruby_bug_12073.txt2
41 files changed, 98 insertions, 141 deletions
diff --git a/prism/config.yml b/prism/config.yml
index 7bbe88e6b4..d3b6b08709 100644
--- a/prism/config.yml
+++ b/prism/config.yml
@@ -368,8 +368,8 @@ flags:
comment: Flags for integer nodes that correspond to the base of the integer.
- name: KeywordHashNodeFlags
values:
- - name: SYMBOL_KEYS
- comment: "a keyword hash which only has `AssocNode` elements all with symbol keys, which means the elements can be treated as keyword arguments"
+ - name: STATIC_KEYS
+ comment: "a keyword hash which only has `AssocNode` elements all with static literal keys, which means the elements can be treated as keyword arguments"
comment: Flags for keyword hash nodes.
- name: LoopFlags
values:
diff --git a/prism/diagnostic.c b/prism/diagnostic.c
index fd5dce5a04..1fc8c50cb5 100644
--- a/prism/diagnostic.c
+++ b/prism/diagnostic.c
@@ -62,7 +62,6 @@ static const char* const diagnostic_messages[PM_DIAGNOSTIC_ID_LEN] = {
[PM_ERR_ARGUMENT_FORMAL_GLOBAL] = "invalid formal argument; formal argument cannot be a global variable",
[PM_ERR_ARGUMENT_FORMAL_IVAR] = "invalid formal argument; formal argument cannot be an instance variable",
[PM_ERR_ARGUMENT_FORWARDING_UNBOUND] = "unexpected `...` in an non-parenthesized call",
- [PM_ERR_ARGUMENT_IN] = "unexpected `in` keyword in arguments",
[PM_ERR_ARGUMENT_NO_FORWARDING_AMP] = "unexpected `&` when the parent method is not forwarding",
[PM_ERR_ARGUMENT_NO_FORWARDING_ELLIPSES] = "unexpected `...` when the parent method is not forwarding",
[PM_ERR_ARGUMENT_NO_FORWARDING_STAR] = "unexpected `*` when the parent method is not forwarding",
@@ -192,7 +191,6 @@ static const char* const diagnostic_messages[PM_DIAGNOSTIC_ID_LEN] = {
[PM_ERR_MODULE_TERM] = "expected an `end` to close the `module` statement",
[PM_ERR_MULTI_ASSIGN_MULTI_SPLATS] = "multiple splats in multiple assignment",
[PM_ERR_NOT_EXPRESSION] = "expected an expression after `not`",
- [PM_ERR_NO_LOCAL_VARIABLE] = "%.*s: no such local variable",
[PM_ERR_NUMBER_LITERAL_UNDERSCORE] = "number literal ending with a `_`",
[PM_ERR_NUMBERED_PARAMETER_NOT_ALLOWED] = "numbered parameters are not allowed when an ordinary parameter is defined",
[PM_ERR_NUMBERED_PARAMETER_OUTER_SCOPE] = "numbered parameter is already used in outer scope",
diff --git a/prism/diagnostic.h b/prism/diagnostic.h
index 08a3284abf..fc1f0c2b4b 100644
--- a/prism/diagnostic.h
+++ b/prism/diagnostic.h
@@ -53,7 +53,6 @@ typedef enum {
PM_ERR_ARGUMENT_FORMAL_GLOBAL,
PM_ERR_ARGUMENT_FORMAL_IVAR,
PM_ERR_ARGUMENT_FORWARDING_UNBOUND,
- PM_ERR_ARGUMENT_IN,
PM_ERR_ARGUMENT_NO_FORWARDING_AMP,
PM_ERR_ARGUMENT_NO_FORWARDING_ELLIPSES,
PM_ERR_ARGUMENT_NO_FORWARDING_STAR,
@@ -184,7 +183,6 @@ typedef enum {
PM_ERR_MODULE_TERM,
PM_ERR_MULTI_ASSIGN_MULTI_SPLATS,
PM_ERR_NOT_EXPRESSION,
- PM_ERR_NO_LOCAL_VARIABLE,
PM_ERR_NUMBER_LITERAL_UNDERSCORE,
PM_ERR_NUMBERED_PARAMETER_NOT_ALLOWED,
PM_ERR_NUMBERED_PARAMETER_OUTER_SCOPE,
diff --git a/prism/parser.h b/prism/parser.h
index 2c58131b19..7f26054f09 100644
--- a/prism/parser.h
+++ b/prism/parser.h
@@ -17,6 +17,12 @@
#include <stdbool.h>
+// TODO: remove this by renaming the original flag
+/**
+ * Temporary alias for the PM_NODE_FLAG_STATIC_KEYS flag.
+ */
+#define PM_KEYWORD_HASH_NODE_FLAGS_SYMBOL_KEYS PM_KEYWORD_HASH_NODE_FLAGS_STATIC_KEYS
+
/**
* This enum provides various bits that represent different kinds of states that
* the lexer can track. This is used to determine which kind of token to return
diff --git a/prism/prism.c b/prism/prism.c
index ec319f2cac..79258386d6 100644
--- a/prism/prism.c
+++ b/prism/prism.c
@@ -1340,11 +1340,6 @@ pm_assoc_node_create(pm_parser_t *parser, pm_node_t *key, const pm_token_t *oper
flags = key->flags & value->flags & PM_NODE_FLAG_STATIC_LITERAL;
}
- // Hash string keys should be frozen
- if (PM_NODE_TYPE_P(key, PM_STRING_NODE)) {
- key->flags |= PM_STRING_FLAGS_FROZEN;
- }
-
*node = (pm_assoc_node_t) {
{
.type = PM_ASSOC_NODE,
@@ -11343,9 +11338,6 @@ parse_arguments(pm_parser_t *parser, pm_arguments_t *arguments, bool accepts_for
}
parsed_bare_hash = true;
- } else if (accept1(parser, PM_TOKEN_KEYWORD_IN)) {
- // TODO: Could we solve this with binding powers instead?
- pm_parser_err_current(parser, PM_ERR_ARGUMENT_IN);
}
parse_arguments_append(parser, arguments, argument);
@@ -13357,15 +13349,8 @@ parse_pattern_primitive(pm_parser_t *parser, pm_diagnostic_id_t diag_id) {
// expression to determine if it's a variable or an expression.
switch (parser->current.type) {
case PM_TOKEN_IDENTIFIER: {
- int depth = pm_parser_local_depth(parser, &parser->current);
-
- if (depth == -1) {
- depth = 0;
- PM_PARSER_ERR_TOKEN_FORMAT(parser, parser->current, PM_ERR_NO_LOCAL_VARIABLE, (int) (parser->current.end - parser->current.start), parser->current.start);
- }
-
- pm_node_t *variable = (pm_node_t *) pm_local_variable_read_node_create(parser, &parser->current, (uint32_t) depth);
parser_lex(parser);
+ pm_node_t *variable = (pm_node_t *) pm_local_variable_read_node_create(parser, &parser->previous, 0);
return (pm_node_t *) pm_pinned_variable_node_create(parser, &operator, variable);
}
@@ -17190,14 +17175,9 @@ parse_expression(pm_parser_t *parser, pm_binding_power_t binding_power, bool acc
static pm_node_t *
parse_program(pm_parser_t *parser) {
- // If the current scope is NULL, then we want to push a new top level scope.
- // The current scope could exist in the event that we are parsing an eval
- // and the user has passed into scopes that already exist.
- if (parser->current_scope == NULL) {
- pm_parser_scope_push(parser, true);
- }
-
+ pm_parser_scope_push(parser, !parser->current_scope);
parser_lex(parser);
+
pm_statements_node_t *statements = parse_statements(parser, PM_CONTEXT_MAIN);
if (!statements) {
statements = pm_statements_node_create(parser);
diff --git a/prism/templates/lib/prism/node.rb.erb b/prism/templates/lib/prism/node.rb.erb
index 65a4f0fb70..87a94a0338 100644
--- a/prism/templates/lib/prism/node.rb.erb
+++ b/prism/templates/lib/prism/node.rb.erb
@@ -44,11 +44,11 @@ module Prism
<%- end -%>
class <%= node.name -%> < Node
<%- node.fields.each do |field| -%>
- # <%= "private " if field.is_a?(Prism::FlagsField) %>attr_reader <%= field.name %>: <%= field.rbs_class %>
+ # attr_reader <%= field.name %>: <%= field.rbs_class %>
<%= "private " if field.is_a?(Prism::FlagsField) %>attr_reader :<%= field.name %>
<%- end -%>
- # def initialize: (<%= (node.fields.map { |field| "#{field.rbs_class} #{field.name}" } + ["Location location"]).join(", ") %>) -> void
+ # def initialize: (<%= (node.fields.map { |field| "#{field.name}: #{field.rbs_class}" } + ["location: Location"]).join(", ") %>) -> void
def initialize(<%= (node.fields.map(&:name) + ["location"]).join(", ") %>)
<%- node.fields.each do |field| -%>
@<%= field.name %> = <%= field.name %>
@@ -56,7 +56,7 @@ module Prism
@location = location
end
- # def accept: (Visitor visitor) -> void
+ # def accept: (visitor: Visitor) -> void
def accept(visitor)
visitor.visit_<%= node.human %>(self)
end
@@ -137,7 +137,7 @@ module Prism
# def deconstruct: () -> Array[nil | Node]
alias deconstruct child_nodes
- # def deconstruct_keys: (Array[Symbol] keys) -> { <%= (node.fields.map { |field| "#{field.name}: #{field.rbs_class}" } + ["location: Location"]).join(", ") %> }
+ # def deconstruct_keys: (keys: Array[Symbol]) -> Hash[Symbol, nil | Node | Array[Node] | String | Token | Array[Token] | Location]
def deconstruct_keys(keys)
{ <%= (node.fields.map { |field| "#{field.name}: #{field.name}" } + ["location: location"]).join(", ") %> }
end
@@ -170,7 +170,7 @@ module Prism
<%- end -%>
<%- end -%>
- # def inspect(NodeInspector inspector) -> String
+ # def inspect(inspector: NodeInspector) -> String
def inspect(inspector = NodeInspector.new)
inspector << inspector.header(self)
<%- node.fields.each_with_index do |field, index| -%>
diff --git a/test/prism/errors_test.rb b/test/prism/errors_test.rb
index 57c0719aa7..51ac7bc5cf 100644
--- a/test/prism/errors_test.rb
+++ b/test/prism/errors_test.rb
@@ -1997,21 +1997,6 @@ module Prism
end
end
- def test_command_call_in
- source = <<~RUBY
- foo 1 in a
- a = foo 2 in b
- RUBY
- message1 = 'unexpected `in` keyword in arguments'
- message2 = 'expected a newline or semicolon after the statement'
- assert_errors expression(source), source, [
- [message1, 9..10],
- [message2, 8..8],
- [message1, 24..25],
- [message2, 23..23],
- ]
- end
-
def test_constant_assignment_in_method
source = 'def foo();A=1;end'
assert_errors expression(source), source, [
diff --git a/test/prism/fixtures/patterns.txt b/test/prism/fixtures/patterns.txt
index dcd6786d4b..d73c8d025e 100644
--- a/test/prism/fixtures/patterns.txt
+++ b/test/prism/fixtures/patterns.txt
@@ -51,7 +51,7 @@ foo => __LINE__ .. __LINE__
foo => __ENCODING__ .. __ENCODING__
foo => -> { bar } .. -> { bar }
-bar = 1; foo => ^bar
+foo => ^bar
foo => ^@bar
foo => ^@@bar
foo => ^$bar
diff --git a/test/prism/location_test.rb b/test/prism/location_test.rb
index e5b7546925..809c1bd8ae 100644
--- a/test/prism/location_test.rb
+++ b/test/prism/location_test.rb
@@ -673,7 +673,7 @@ module Prism
end
def test_PinnedVariableNode
- assert_location(PinnedVariableNode, "bar = 1; foo in ^bar", 16...20, &:pattern)
+ assert_location(PinnedVariableNode, "foo in ^bar", 7...11, &:pattern)
end
def test_PostExecutionNode
diff --git a/test/prism/ruby_api_test.rb b/test/prism/ruby_api_test.rb
index 7bb80b481a..3bf89f3339 100644
--- a/test/prism/ruby_api_test.rb
+++ b/test/prism/ruby_api_test.rb
@@ -42,9 +42,7 @@ module Prism
assert_kind_of Prism::CallNode, Prism.parse("foo").value.statements.body[0]
assert_kind_of Prism::LocalVariableReadNode, Prism.parse("foo", scopes: [[:foo]]).value.statements.body[0]
- assert_equal 1, Prism.parse("foo", scopes: [[:foo], []]).value.statements.body[0].depth
-
- assert_equal [:foo], Prism.parse("foo", scopes: [[:foo]]).value.locals
+ assert_equal 2, Prism.parse("foo", scopes: [[:foo], []]).value.statements.body[0].depth
end
def test_literal_value_method
diff --git a/test/prism/snapshots/arrays.txt b/test/prism/snapshots/arrays.txt
index 93f5c8fbc1..d31cd7afc8 100644
--- a/test/prism/snapshots/arrays.txt
+++ b/test/prism/snapshots/arrays.txt
@@ -79,7 +79,7 @@
│ ├── flags: ∅
│ ├── elements: (length: 1)
│ │ └── @ KeywordHashNode (location: (5,1)-(5,12))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (5,1)-(5,12))
│ │ ├── key:
diff --git a/test/prism/snapshots/if.txt b/test/prism/snapshots/if.txt
index a5ffeac2c2..6733e57bed 100644
--- a/test/prism/snapshots/if.txt
+++ b/test/prism/snapshots/if.txt
@@ -250,7 +250,7 @@
│ │ │ ├── flags: ∅
│ │ │ └── arguments: (length: 1)
│ │ │ └── @ KeywordHashNode (location: (25,4)-(25,6))
- │ │ │ ├── flags: symbol_keys
+ │ │ │ ├── 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 f8de181d32..65f0d1df16 100644
--- a/test/prism/snapshots/method_calls.txt
+++ b/test/prism/snapshots/method_calls.txt
@@ -782,7 +782,7 @@
│ │ │ ├── closing_loc: ∅
│ │ │ └── unescaped: "a"
│ │ └── @ KeywordHashNode (location: (60,8)-(60,32))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 2)
│ │ ├── @ AssocNode (location: (60,8)-(60,22))
│ │ │ ├── key:
@@ -914,7 +914,7 @@
│ │ │ ├── closing_loc: ∅
│ │ │ └── unescaped: "a"
│ │ └── @ KeywordHashNode (location: (64,8)-(64,15))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (64,8)-(64,15))
│ │ ├── key:
@@ -983,7 +983,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (66,3)-(66,17))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (66,3)-(66,17))
│ │ ├── key:
@@ -1173,7 +1173,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (74,3)-(74,20))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (74,3)-(74,20))
│ │ ├── key:
@@ -1236,7 +1236,7 @@
│ │ │ ├── closing_loc: ∅
│ │ │ └── unescaped: "a"
│ │ └── @ KeywordHashNode (location: (82,0)-(82,5))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (82,0)-(82,5))
│ │ ├── key:
@@ -1287,7 +1287,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (87,4)-(87,21))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 2)
│ │ ├── @ AssocNode (location: (87,4)-(87,11))
│ │ │ ├── key:
@@ -1336,7 +1336,7 @@
│ │ ├── @ IntegerNode (location: (89,10)-(89,11))
│ │ │ └── flags: decimal
│ │ └── @ KeywordHashNode (location: (89,13)-(89,21))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (89,13)-(89,21))
│ │ ├── key:
@@ -1527,7 +1527,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (103,4)-(103,11))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (103,4)-(103,11))
│ │ ├── key:
@@ -1555,7 +1555,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (105,4)-(105,28))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (105,4)-(105,28))
│ │ ├── key:
@@ -1612,7 +1612,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (107,4)-(107,24))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (107,4)-(107,24))
│ │ ├── key:
diff --git a/test/prism/snapshots/patterns.txt b/test/prism/snapshots/patterns.txt
index 13179be338..aacdbb250e 100644
--- a/test/prism/snapshots/patterns.txt
+++ b/test/prism/snapshots/patterns.txt
@@ -2,7 +2,7 @@
├── locals: [:bar, :baz, :qux, :b, :a, :foo, :x]
└── statements:
@ StatementsNode (location: (1,0)-(202,19))
- └── body: (length: 176)
+ └── body: (length: 175)
├── @ MatchRequiredNode (location: (1,0)-(1,10))
│ ├── value:
│ │ @ CallNode (location: (1,0)-(1,3))
@@ -1235,34 +1235,26 @@
│ │ │ └── depth: 1
│ │ └── operator_loc: (52,18)-(52,20) = ".."
│ └── operator_loc: (52,4)-(52,6) = "=>"
- ├── @ LocalVariableWriteNode (location: (54,0)-(54,7))
- │ ├── name: :bar
- │ ├── depth: 0
- │ ├── name_loc: (54,0)-(54,3) = "bar"
+ ├── @ MatchRequiredNode (location: (54,0)-(54,11))
│ ├── value:
- │ │ @ IntegerNode (location: (54,6)-(54,7))
- │ │ └── flags: decimal
- │ └── operator_loc: (54,4)-(54,5) = "="
- ├── @ MatchRequiredNode (location: (54,9)-(54,20))
- │ ├── value:
- │ │ @ CallNode (location: (54,9)-(54,12))
+ │ │ @ CallNode (location: (54,0)-(54,3))
│ │ ├── flags: variable_call
│ │ ├── receiver: ∅
│ │ ├── call_operator_loc: ∅
│ │ ├── name: :foo
- │ │ ├── message_loc: (54,9)-(54,12) = "foo"
+ │ │ ├── message_loc: (54,0)-(54,3) = "foo"
│ │ ├── opening_loc: ∅
│ │ ├── arguments: ∅
│ │ ├── closing_loc: ∅
│ │ └── block: ∅
│ ├── pattern:
- │ │ @ PinnedVariableNode (location: (54,16)-(54,20))
+ │ │ @ PinnedVariableNode (location: (54,7)-(54,11))
│ │ ├── variable:
- │ │ │ @ LocalVariableReadNode (location: (54,17)-(54,20))
+ │ │ │ @ LocalVariableReadNode (location: (54,8)-(54,11))
│ │ │ ├── name: :bar
│ │ │ └── depth: 0
- │ │ └── operator_loc: (54,16)-(54,17) = "^"
- │ └── operator_loc: (54,13)-(54,15) = "=>"
+ │ │ └── operator_loc: (54,7)-(54,8) = "^"
+ │ └── operator_loc: (54,4)-(54,6) = "=>"
├── @ MatchRequiredNode (location: (55,0)-(55,12))
│ ├── value:
│ │ @ CallNode (location: (55,0)-(55,3))
diff --git a/test/prism/snapshots/rescue.txt b/test/prism/snapshots/rescue.txt
index 12607e8be2..3f9dc426a2 100644
--- a/test/prism/snapshots/rescue.txt
+++ b/test/prism/snapshots/rescue.txt
@@ -343,7 +343,7 @@
│ │ │ ├── flags: ∅
│ │ │ └── arguments: (length: 1)
│ │ │ └── @ KeywordHashNode (location: (29,4)-(29,6))
- │ │ │ ├── flags: symbol_keys
+ │ │ │ ├── flags: static_keys
│ │ │ └── elements: (length: 1)
│ │ │ └── @ AssocNode (location: (29,4)-(29,6))
│ │ │ ├── key:
diff --git a/test/prism/snapshots/seattlerb/assoc_label.txt b/test/prism/snapshots/seattlerb/assoc_label.txt
index c8526358f5..1d65eef3f9 100644
--- a/test/prism/snapshots/seattlerb/assoc_label.txt
+++ b/test/prism/snapshots/seattlerb/assoc_label.txt
@@ -15,7 +15,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (1,2)-(1,5))
- │ ├── flags: symbol_keys
+ │ ├── 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 c293491429..4c684f32dc 100644
--- a/test/prism/snapshots/seattlerb/bug_249.txt
+++ b/test/prism/snapshots/seattlerb/bug_249.txt
@@ -66,7 +66,7 @@
│ │ ├── closing_loc: ∅
│ │ └── block: ∅
│ └── @ KeywordHashNode (location: (4,11)-(4,28))
- │ ├── flags: symbol_keys
+ │ ├── 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 7900bbe0d1..cea1fc8db0 100644
--- a/test/prism/snapshots/seattlerb/bug_hash_args.txt
+++ b/test/prism/snapshots/seattlerb/bug_hash_args.txt
@@ -21,7 +21,7 @@
│ │ ├── closing_loc: ∅
│ │ └── unescaped: "bar"
│ └── @ KeywordHashNode (location: (1,10)-(1,18))
- │ ├── flags: symbol_keys
+ │ ├── 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 2b2b246226..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,7 +21,7 @@
│ │ ├── closing_loc: ∅
│ │ └── unescaped: "bar"
│ └── @ KeywordHashNode (location: (1,10)-(1,18))
- │ ├── flags: symbol_keys
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (1,10)-(1,18))
│ ├── key:
diff --git a/test/prism/snapshots/seattlerb/call_args_assoc_quoted.txt b/test/prism/snapshots/seattlerb/call_args_assoc_quoted.txt
index 9426531d5c..958231a21a 100644
--- a/test/prism/snapshots/seattlerb/call_args_assoc_quoted.txt
+++ b/test/prism/snapshots/seattlerb/call_args_assoc_quoted.txt
@@ -57,7 +57,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (3,2)-(3,8))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (3,2)-(3,8))
│ │ ├── key:
@@ -85,7 +85,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (5,2)-(5,8))
- │ ├── flags: symbol_keys
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (5,2)-(5,8))
│ ├── 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 f572729b8a..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,7 +24,7 @@
│ │ │ ├── closing_loc: ∅
│ │ │ └── unescaped: "b"
│ │ └── @ KeywordHashNode (location: (1,7)-(1,14))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (1,7)-(1,14))
│ │ ├── key:
diff --git a/test/prism/snapshots/seattlerb/call_assoc_new.txt b/test/prism/snapshots/seattlerb/call_assoc_new.txt
index decf68ae6e..6d12125260 100644
--- a/test/prism/snapshots/seattlerb/call_assoc_new.txt
+++ b/test/prism/snapshots/seattlerb/call_assoc_new.txt
@@ -15,7 +15,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (1,2)-(1,5))
- │ ├── flags: symbol_keys
+ │ ├── 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 c9e0ff9693..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,7 +15,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (1,2)-(5,3))
- │ ├── flags: symbol_keys
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (1,2)-(5,3))
│ ├── key:
diff --git a/test/prism/snapshots/seattlerb/difficult2_.txt b/test/prism/snapshots/seattlerb/difficult2_.txt
index 72cac371f7..a81b0ce458 100644
--- a/test/prism/snapshots/seattlerb/difficult2_.txt
+++ b/test/prism/snapshots/seattlerb/difficult2_.txt
@@ -53,7 +53,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (2,2)-(2,6))
- │ ├── flags: symbol_keys
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (2,2)-(2,6))
│ ├── key:
diff --git a/test/prism/snapshots/seattlerb/multiline_hash_declaration.txt b/test/prism/snapshots/seattlerb/multiline_hash_declaration.txt
index f377bda17c..efa6fa242d 100644
--- a/test/prism/snapshots/seattlerb/multiline_hash_declaration.txt
+++ b/test/prism/snapshots/seattlerb/multiline_hash_declaration.txt
@@ -15,7 +15,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (1,2)-(3,1))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (1,2)-(3,1))
│ │ ├── key:
@@ -45,7 +45,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (5,2)-(6,1))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (5,2)-(6,1))
│ │ ├── key:
@@ -75,7 +75,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (8,2)-(8,11))
- │ ├── flags: symbol_keys
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (8,2)-(8,11))
│ ├── key:
diff --git a/test/prism/snapshots/seattlerb/quoted_symbol_hash_arg.txt b/test/prism/snapshots/seattlerb/quoted_symbol_hash_arg.txt
index 8730eb1911..59bd8f0220 100644
--- a/test/prism/snapshots/seattlerb/quoted_symbol_hash_arg.txt
+++ b/test/prism/snapshots/seattlerb/quoted_symbol_hash_arg.txt
@@ -15,7 +15,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (1,5)-(1,12))
- │ ├── flags: symbol_keys
+ │ ├── 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 98b7943bac..8baf6c4c7e 100644
--- a/test/prism/snapshots/seattlerb/return_call_assocs.txt
+++ b/test/prism/snapshots/seattlerb/return_call_assocs.txt
@@ -12,7 +12,7 @@
│ ├── @ IntegerNode (location: (1,7)-(1,8))
│ │ └── flags: decimal
│ └── @ KeywordHashNode (location: (1,10)-(1,17))
- │ ├── flags: symbol_keys
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (1,10)-(1,17))
│ ├── key:
@@ -35,7 +35,7 @@
│ ├── @ IntegerNode (location: (3,7)-(3,8))
│ │ └── flags: decimal
│ └── @ KeywordHashNode (location: (3,10)-(3,26))
- │ ├── flags: symbol_keys
+ │ ├── flags: static_keys
│ └── elements: (length: 2)
│ ├── @ AssocNode (location: (3,10)-(3,17))
│ │ ├── key:
@@ -79,7 +79,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (5,9)-(5,14))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (5,9)-(5,14))
│ │ ├── key:
@@ -113,7 +113,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (7,9)-(7,12))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (7,9)-(7,12))
│ │ ├── key:
@@ -147,7 +147,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (9,9)-(9,12))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (9,9)-(9,12))
│ │ ├── key:
diff --git a/test/prism/snapshots/seattlerb/yield_call_assocs.txt b/test/prism/snapshots/seattlerb/yield_call_assocs.txt
index 95d64eaaef..82d1765f21 100644
--- a/test/prism/snapshots/seattlerb/yield_call_assocs.txt
+++ b/test/prism/snapshots/seattlerb/yield_call_assocs.txt
@@ -13,7 +13,7 @@
│ │ ├── @ IntegerNode (location: (1,6)-(1,7))
│ │ │ └── flags: decimal
│ │ └── @ KeywordHashNode (location: (1,9)-(1,16))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (1,9)-(1,16))
│ │ ├── key:
@@ -38,7 +38,7 @@
│ │ ├── @ IntegerNode (location: (3,6)-(3,7))
│ │ │ └── flags: decimal
│ │ └── @ KeywordHashNode (location: (3,9)-(3,25))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 2)
│ │ ├── @ AssocNode (location: (3,9)-(3,16))
│ │ │ ├── key:
@@ -84,7 +84,7 @@
│ │ │ ├── flags: ∅
│ │ │ └── arguments: (length: 1)
│ │ │ └── @ KeywordHashNode (location: (5,8)-(5,13))
- │ │ │ ├── flags: symbol_keys
+ │ │ │ ├── flags: static_keys
│ │ │ └── elements: (length: 1)
│ │ │ └── @ AssocNode (location: (5,8)-(5,13))
│ │ │ ├── key:
@@ -120,7 +120,7 @@
│ │ │ ├── flags: ∅
│ │ │ └── arguments: (length: 1)
│ │ │ └── @ KeywordHashNode (location: (7,8)-(7,11))
- │ │ │ ├── flags: symbol_keys
+ │ │ │ ├── flags: static_keys
│ │ │ └── elements: (length: 1)
│ │ │ └── @ AssocNode (location: (7,8)-(7,11))
│ │ │ ├── key:
@@ -156,7 +156,7 @@
│ │ │ ├── flags: ∅
│ │ │ └── arguments: (length: 1)
│ │ │ └── @ KeywordHashNode (location: (9,8)-(9,11))
- │ │ │ ├── flags: symbol_keys
+ │ │ │ ├── flags: static_keys
│ │ │ └── elements: (length: 1)
│ │ │ └── @ AssocNode (location: (9,8)-(9,11))
│ │ │ ├── key:
diff --git a/test/prism/snapshots/unparser/corpus/literal/literal.txt b/test/prism/snapshots/unparser/corpus/literal/literal.txt
index a26b925196..21ae9f670b 100644
--- a/test/prism/snapshots/unparser/corpus/literal/literal.txt
+++ b/test/prism/snapshots/unparser/corpus/literal/literal.txt
@@ -9,7 +9,7 @@
│ │ ├── @ AssocNode (location: (1,2)-(1,21))
│ │ │ ├── key:
│ │ │ │ @ StringNode (location: (1,2)-(1,7))
- │ │ │ │ ├── flags: frozen
+ │ │ │ │ ├── flags: ∅
│ │ │ │ ├── opening_loc: (1,2)-(1,3) = "\""
│ │ │ │ ├── content_loc: (1,3)-(1,6) = "foo"
│ │ │ │ ├── closing_loc: (1,6)-(1,7) = "\""
@@ -39,7 +39,7 @@
│ │ └── @ AssocNode (location: (1,23)-(1,36))
│ │ ├── key:
│ │ │ @ StringNode (location: (1,23)-(1,28))
- │ │ │ ├── flags: frozen
+ │ │ │ ├── flags: ∅
│ │ │ ├── opening_loc: (1,23)-(1,24) = "\""
│ │ │ ├── content_loc: (1,24)-(1,27) = "bar"
│ │ │ ├── closing_loc: (1,27)-(1,28) = "\""
@@ -59,7 +59,7 @@
│ │ ├── @ AssocNode (location: (4,2)-(4,14))
│ │ │ ├── key:
│ │ │ │ @ StringNode (location: (4,2)-(4,7))
- │ │ │ │ ├── flags: frozen
+ │ │ │ │ ├── flags: ∅
│ │ │ │ ├── opening_loc: (4,2)-(4,3) = "\""
│ │ │ │ ├── content_loc: (4,3)-(4,6) = "foo"
│ │ │ │ ├── closing_loc: (4,6)-(4,7) = "\""
@@ -75,7 +75,7 @@
│ │ └── @ AssocNode (location: (4,16)-(4,29))
│ │ ├── key:
│ │ │ @ StringNode (location: (4,16)-(4,21))
- │ │ │ ├── flags: frozen
+ │ │ │ ├── flags: ∅
│ │ │ ├── opening_loc: (4,16)-(4,17) = "\""
│ │ │ ├── content_loc: (4,17)-(4,20) = "bar"
│ │ │ ├── closing_loc: (4,20)-(4,21) = "\""
@@ -184,7 +184,7 @@
│ │ ├── @ AssocNode (location: (10,2)-(10,21))
│ │ │ ├── key:
│ │ │ │ @ StringNode (location: (10,2)-(10,7))
- │ │ │ │ ├── flags: frozen
+ │ │ │ │ ├── flags: ∅
│ │ │ │ ├── opening_loc: (10,2)-(10,3) = "\""
│ │ │ │ ├── content_loc: (10,3)-(10,6) = "foo"
│ │ │ │ ├── closing_loc: (10,6)-(10,7) = "\""
@@ -231,7 +231,7 @@
│ │ ├── @ AssocNode (location: (13,2)-(13,14))
│ │ │ ├── key:
│ │ │ │ @ StringNode (location: (13,2)-(13,7))
- │ │ │ │ ├── flags: frozen
+ │ │ │ │ ├── flags: ∅
│ │ │ │ ├── opening_loc: (13,2)-(13,3) = "\""
│ │ │ │ ├── content_loc: (13,3)-(13,6) = "foo"
│ │ │ │ ├── closing_loc: (13,6)-(13,7) = "\""
diff --git a/test/prism/snapshots/unparser/corpus/literal/send.txt b/test/prism/snapshots/unparser/corpus/literal/send.txt
index edfd0cc6ae..a96937e87e 100644
--- a/test/prism/snapshots/unparser/corpus/literal/send.txt
+++ b/test/prism/snapshots/unparser/corpus/literal/send.txt
@@ -1249,7 +1249,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (63,8)-(63,16))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (63,8)-(63,16))
│ │ ├── key:
@@ -1310,7 +1310,7 @@
│ │ └── @ AssocNode (location: (64,13)-(64,25))
│ │ ├── key:
│ │ │ @ StringNode (location: (64,13)-(64,18))
- │ │ │ ├── flags: frozen
+ │ │ │ ├── flags: ∅
│ │ │ ├── opening_loc: (64,13)-(64,14) = "\""
│ │ │ ├── content_loc: (64,14)-(64,17) = "baz"
│ │ │ ├── closing_loc: (64,17)-(64,18) = "\""
@@ -1569,7 +1569,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (70,4)-(70,8))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (70,4)-(70,8))
│ │ ├── key:
@@ -1615,7 +1615,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (71,6)-(71,10))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (71,6)-(71,10))
│ │ ├── key:
diff --git a/test/prism/snapshots/whitequark/args_args_assocs.txt b/test/prism/snapshots/whitequark/args_args_assocs.txt
index 3d467e39a5..d5c0d7d136 100644
--- a/test/prism/snapshots/whitequark/args_args_assocs.txt
+++ b/test/prism/snapshots/whitequark/args_args_assocs.txt
@@ -25,7 +25,7 @@
│ │ │ ├── closing_loc: ∅
│ │ │ └── block: ∅
│ │ └── @ KeywordHashNode (location: (1,9)-(1,18))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (1,9)-(1,18))
│ │ ├── key:
@@ -63,7 +63,7 @@
│ │ ├── closing_loc: ∅
│ │ └── block: ∅
│ └── @ KeywordHashNode (location: (3,9)-(3,18))
- │ ├── flags: symbol_keys
+ │ ├── 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 7b74a1886c..2aa1644610 100644
--- a/test/prism/snapshots/whitequark/args_args_assocs_comma.txt
+++ b/test/prism/snapshots/whitequark/args_args_assocs_comma.txt
@@ -35,7 +35,7 @@
│ │ ├── closing_loc: ∅
│ │ └── block: ∅
│ └── @ KeywordHashNode (location: (1,9)-(1,18))
- │ ├── flags: symbol_keys
+ │ ├── 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 e4acaca435..bf51dda187 100644
--- a/test/prism/snapshots/whitequark/args_assocs.txt
+++ b/test/prism/snapshots/whitequark/args_assocs.txt
@@ -15,7 +15,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (1,4)-(1,13))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (1,4)-(1,13))
│ │ ├── key:
@@ -43,7 +43,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (3,4)-(3,13))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (3,4)-(3,13))
│ │ ├── key:
@@ -95,7 +95,7 @@
│ │ │ ├── closing_loc: ∅
│ │ │ └── block: ∅
│ │ └── @ KeywordHashNode (location: (5,14)-(5,21))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (5,14)-(5,21))
│ │ ├── key:
@@ -124,7 +124,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (7,5)-(7,14))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (7,5)-(7,14))
│ │ ├── key:
@@ -148,7 +148,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (9,6)-(9,16))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (9,6)-(9,16))
│ │ ├── key:
@@ -172,7 +172,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (11,6)-(11,16))
- │ ├── flags: symbol_keys
+ │ ├── 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 0ced5c7bc6..b98aa39cb7 100644
--- a/test/prism/snapshots/whitequark/args_assocs_comma.txt
+++ b/test/prism/snapshots/whitequark/args_assocs_comma.txt
@@ -25,7 +25,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (1,4)-(1,13))
- │ ├── flags: symbol_keys
+ │ ├── 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 e4acaca435..bf51dda187 100644
--- a/test/prism/snapshots/whitequark/args_assocs_legacy.txt
+++ b/test/prism/snapshots/whitequark/args_assocs_legacy.txt
@@ -15,7 +15,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (1,4)-(1,13))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (1,4)-(1,13))
│ │ ├── key:
@@ -43,7 +43,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (3,4)-(3,13))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (3,4)-(3,13))
│ │ ├── key:
@@ -95,7 +95,7 @@
│ │ │ ├── closing_loc: ∅
│ │ │ └── block: ∅
│ │ └── @ KeywordHashNode (location: (5,14)-(5,21))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (5,14)-(5,21))
│ │ ├── key:
@@ -124,7 +124,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (7,5)-(7,14))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (7,5)-(7,14))
│ │ ├── key:
@@ -148,7 +148,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (9,6)-(9,16))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (9,6)-(9,16))
│ │ ├── key:
@@ -172,7 +172,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (11,6)-(11,16))
- │ ├── flags: symbol_keys
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (11,6)-(11,16))
│ ├── key:
diff --git a/test/prism/snapshots/whitequark/bug_cmdarg.txt b/test/prism/snapshots/whitequark/bug_cmdarg.txt
index 428d061ee4..6779d11735 100644
--- a/test/prism/snapshots/whitequark/bug_cmdarg.txt
+++ b/test/prism/snapshots/whitequark/bug_cmdarg.txt
@@ -15,7 +15,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (1,7)-(1,15))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (1,7)-(1,15))
│ │ ├── key:
@@ -65,7 +65,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (5,2)-(5,26))
- │ ├── flags: symbol_keys
+ │ ├── flags: static_keys
│ └── elements: (length: 1)
│ └── @ AssocNode (location: (5,2)-(5,26))
│ ├── key:
diff --git a/test/prism/snapshots/whitequark/keyword_argument_omission.txt b/test/prism/snapshots/whitequark/keyword_argument_omission.txt
index afcfd87c49..3ff3f9a176 100644
--- a/test/prism/snapshots/whitequark/keyword_argument_omission.txt
+++ b/test/prism/snapshots/whitequark/keyword_argument_omission.txt
@@ -15,7 +15,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (1,4)-(1,10))
- │ ├── flags: symbol_keys
+ │ ├── flags: static_keys
│ └── elements: (length: 2)
│ ├── @ AssocNode (location: (1,4)-(1,6))
│ │ ├── key:
diff --git a/test/prism/snapshots/whitequark/newline_in_hash_argument.txt b/test/prism/snapshots/whitequark/newline_in_hash_argument.txt
index 5f5c1e406c..0e036fbd85 100644
--- a/test/prism/snapshots/whitequark/newline_in_hash_argument.txt
+++ b/test/prism/snapshots/whitequark/newline_in_hash_argument.txt
@@ -93,7 +93,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (10,8)-(11,1))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (10,8)-(11,1))
│ │ ├── key:
@@ -131,7 +131,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (13,8)-(14,1))
- │ ├── flags: symbol_keys
+ │ ├── 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 7289bdf81b..087cc76e1b 100644
--- a/test/prism/snapshots/whitequark/parser_bug_525.txt
+++ b/test/prism/snapshots/whitequark/parser_bug_525.txt
@@ -15,7 +15,7 @@
│ ├── flags: ∅
│ └── arguments: (length: 1)
│ └── @ KeywordHashNode (location: (1,3)-(1,11))
- │ ├── flags: symbol_keys
+ │ ├── 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 7ab13b891e..cd2939f8bb 100644
--- a/test/prism/snapshots/whitequark/ruby_bug_11380.txt
+++ b/test/prism/snapshots/whitequark/ruby_bug_11380.txt
@@ -31,7 +31,7 @@
│ │ ├── closing_loc: ∅
│ │ └── unescaped: "hello"
│ └── @ KeywordHashNode (location: (1,17)-(1,21))
- │ ├── flags: symbol_keys
+ │ ├── 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 27f2838bce..521df7a013 100644
--- a/test/prism/snapshots/whitequark/ruby_bug_12073.txt
+++ b/test/prism/snapshots/whitequark/ruby_bug_12073.txt
@@ -23,7 +23,7 @@
│ │ ├── flags: ∅
│ │ └── arguments: (length: 1)
│ │ └── @ KeywordHashNode (location: (1,9)-(1,13))
- │ │ ├── flags: symbol_keys
+ │ │ ├── flags: static_keys
│ │ └── elements: (length: 1)
│ │ └── @ AssocNode (location: (1,9)-(1,13))
│ │ ├── key: