@@ -60,6 +60,7 @@ def visit
60
60
@document
61
61
end
62
62
end
63
+ # rubocop:disable Development/NoEvalCop This eval takes static inputs at load-time
63
64
64
65
# We don't use `alias` here because it breaks `super`
65
66
def self . make_visit_methods ( ast_node_class )
@@ -116,6 +117,48 @@ def #{node_method}_with_modifications(node, parent)
116
117
RUBY
117
118
end
118
119
120
+ [
121
+ Language ::Nodes ::Argument ,
122
+ Language ::Nodes ::Directive ,
123
+ Language ::Nodes ::DirectiveDefinition ,
124
+ Language ::Nodes ::DirectiveLocation ,
125
+ Language ::Nodes ::Document ,
126
+ Language ::Nodes ::Enum ,
127
+ Language ::Nodes ::EnumTypeDefinition ,
128
+ Language ::Nodes ::EnumTypeExtension ,
129
+ Language ::Nodes ::EnumValueDefinition ,
130
+ Language ::Nodes ::Field ,
131
+ Language ::Nodes ::FieldDefinition ,
132
+ Language ::Nodes ::FragmentDefinition ,
133
+ Language ::Nodes ::FragmentSpread ,
134
+ Language ::Nodes ::InlineFragment ,
135
+ Language ::Nodes ::InputObject ,
136
+ Language ::Nodes ::InputObjectTypeDefinition ,
137
+ Language ::Nodes ::InputObjectTypeExtension ,
138
+ Language ::Nodes ::InputValueDefinition ,
139
+ Language ::Nodes ::InterfaceTypeDefinition ,
140
+ Language ::Nodes ::InterfaceTypeExtension ,
141
+ Language ::Nodes ::ListType ,
142
+ Language ::Nodes ::NonNullType ,
143
+ Language ::Nodes ::NullValue ,
144
+ Language ::Nodes ::ObjectTypeDefinition ,
145
+ Language ::Nodes ::ObjectTypeExtension ,
146
+ Language ::Nodes ::OperationDefinition ,
147
+ Language ::Nodes ::ScalarTypeDefinition ,
148
+ Language ::Nodes ::ScalarTypeExtension ,
149
+ Language ::Nodes ::SchemaDefinition ,
150
+ Language ::Nodes ::SchemaExtension ,
151
+ Language ::Nodes ::TypeName ,
152
+ Language ::Nodes ::UnionTypeDefinition ,
153
+ Language ::Nodes ::UnionTypeExtension ,
154
+ Language ::Nodes ::VariableDefinition ,
155
+ Language ::Nodes ::VariableIdentifier ,
156
+ ] . each do |ast_node_class |
157
+ make_visit_methods ( ast_node_class )
158
+ end
159
+
160
+ # rubocop:enable Development/NoEvalCop
161
+
119
162
def on_document_children ( document_node )
120
163
new_node = document_node
121
164
document_node . children . each do |child_node |
@@ -216,46 +259,6 @@ def on_argument_children(new_node)
216
259
new_node
217
260
end
218
261
219
- [
220
- Language ::Nodes ::Argument ,
221
- Language ::Nodes ::Directive ,
222
- Language ::Nodes ::DirectiveDefinition ,
223
- Language ::Nodes ::DirectiveLocation ,
224
- Language ::Nodes ::Document ,
225
- Language ::Nodes ::Enum ,
226
- Language ::Nodes ::EnumTypeDefinition ,
227
- Language ::Nodes ::EnumTypeExtension ,
228
- Language ::Nodes ::EnumValueDefinition ,
229
- Language ::Nodes ::Field ,
230
- Language ::Nodes ::FieldDefinition ,
231
- Language ::Nodes ::FragmentDefinition ,
232
- Language ::Nodes ::FragmentSpread ,
233
- Language ::Nodes ::InlineFragment ,
234
- Language ::Nodes ::InputObject ,
235
- Language ::Nodes ::InputObjectTypeDefinition ,
236
- Language ::Nodes ::InputObjectTypeExtension ,
237
- Language ::Nodes ::InputValueDefinition ,
238
- Language ::Nodes ::InterfaceTypeDefinition ,
239
- Language ::Nodes ::InterfaceTypeExtension ,
240
- Language ::Nodes ::ListType ,
241
- Language ::Nodes ::NonNullType ,
242
- Language ::Nodes ::NullValue ,
243
- Language ::Nodes ::ObjectTypeDefinition ,
244
- Language ::Nodes ::ObjectTypeExtension ,
245
- Language ::Nodes ::OperationDefinition ,
246
- Language ::Nodes ::ScalarTypeDefinition ,
247
- Language ::Nodes ::ScalarTypeExtension ,
248
- Language ::Nodes ::SchemaDefinition ,
249
- Language ::Nodes ::SchemaExtension ,
250
- Language ::Nodes ::TypeName ,
251
- Language ::Nodes ::UnionTypeDefinition ,
252
- Language ::Nodes ::UnionTypeExtension ,
253
- Language ::Nodes ::VariableDefinition ,
254
- Language ::Nodes ::VariableIdentifier ,
255
- ] . each do |ast_node_class |
256
- make_visit_methods ( ast_node_class )
257
- end
258
-
259
262
private
260
263
261
264
def apply_modifications ( node , parent , new_node_and_new_parent )
0 commit comments