dvla-atlas 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. checksums.yaml +7 -0
  2. data/.ruby-version +1 -0
  3. data/Gemfile +3 -0
  4. data/LICENSE +21 -0
  5. data/README.md +153 -0
  6. data/lib/dvla/atlas/artefacts.rb +52 -0
  7. data/lib/dvla/atlas/holder.rb +22 -0
  8. data/lib/dvla/atlas/test_artefactory.rb +13 -0
  9. data/lib/dvla/atlas/version.rb +5 -0
  10. data/lib/dvla/atlas.rb +23 -0
  11. data/sorbet/config +3 -0
  12. data/sorbet/rbi/annotations/activesupport.rbi +128 -0
  13. data/sorbet/rbi/annotations/rainbow.rbi +269 -0
  14. data/sorbet/rbi/gems/activesupport@7.0.3.1.rbi +14 -0
  15. data/sorbet/rbi/gems/ast@2.4.2.rbi +584 -0
  16. data/sorbet/rbi/gems/concurrent-ruby@1.2.0.rbi +8 -0
  17. data/sorbet/rbi/gems/diff-lcs@1.5.0.rbi +1079 -0
  18. data/sorbet/rbi/gems/i18n@1.12.0.rbi +8 -0
  19. data/sorbet/rbi/gems/json@2.6.3.rbi +1541 -0
  20. data/sorbet/rbi/gems/minitest@5.17.0.rbi +8 -0
  21. data/sorbet/rbi/gems/netrc@0.11.0.rbi +158 -0
  22. data/sorbet/rbi/gems/parallel@1.22.1.rbi +277 -0
  23. data/sorbet/rbi/gems/parser@3.2.0.0.rbi +6963 -0
  24. data/sorbet/rbi/gems/pastel@0.8.0.rbi +8 -0
  25. data/sorbet/rbi/gems/rack@3.0.4.1.rbi +5166 -0
  26. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +8 -0
  27. data/sorbet/rbi/gems/rbi@0.0.16.rbi +3008 -0
  28. data/sorbet/rbi/gems/regexp_parser@2.6.2.rbi +8 -0
  29. data/sorbet/rbi/gems/rexml@3.2.5.rbi +8 -0
  30. data/sorbet/rbi/gems/rspec-core@3.12.0.rbi +10783 -0
  31. data/sorbet/rbi/gems/rspec-expectations@3.12.2.rbi +8106 -0
  32. data/sorbet/rbi/gems/rspec-mocks@3.12.3.rbi +5301 -0
  33. data/sorbet/rbi/gems/rspec-support@3.12.0.rbi +1617 -0
  34. data/sorbet/rbi/gems/rspec@3.12.0.rbi +88 -0
  35. data/sorbet/rbi/gems/rubocop-ast@1.24.1.rbi +8 -0
  36. data/sorbet/rbi/gems/rubocop-performance@1.15.2.rbi +8 -0
  37. data/sorbet/rbi/gems/rubocop-rails@2.17.4.rbi +8 -0
  38. data/sorbet/rbi/gems/rubocop@1.44.1.rbi +8 -0
  39. data/sorbet/rbi/gems/ruby-progressbar@1.11.0.rbi +8 -0
  40. data/sorbet/rbi/gems/spoom@1.1.15.rbi +2383 -0
  41. data/sorbet/rbi/gems/tapioca@0.10.5.rbi +3204 -0
  42. data/sorbet/rbi/gems/thor@1.2.1.rbi +3923 -0
  43. data/sorbet/rbi/gems/tty-color@0.6.0.rbi +8 -0
  44. data/sorbet/rbi/gems/tty-config@0.6.0.rbi +8 -0
  45. data/sorbet/rbi/gems/tty-cursor@0.7.1.rbi +8 -0
  46. data/sorbet/rbi/gems/tty-prompt@0.23.1.rbi +8 -0
  47. data/sorbet/rbi/gems/tty-reader@0.9.0.rbi +8 -0
  48. data/sorbet/rbi/gems/tty-screen@0.8.1.rbi +8 -0
  49. data/sorbet/rbi/gems/tzinfo@2.0.6.rbi +8 -0
  50. data/sorbet/rbi/gems/unicode-display_width@2.4.2.rbi +8 -0
  51. data/sorbet/rbi/gems/unparser@0.6.7.rbi +4515 -0
  52. data/sorbet/rbi/gems/webrick@1.7.0.rbi +2555 -0
  53. data/sorbet/rbi/gems/wisper@2.0.1.rbi +8 -0
  54. data/sorbet/rbi/gems/yard-sorbet@0.8.0.rbi +441 -0
  55. data/sorbet/rbi/gems/yard@0.9.28.rbi +17803 -0
  56. data/sorbet/rbi/todo.rbi +7 -0
  57. data/sorbet/tapioca/config.yml +13 -0
  58. data/sorbet/tapioca/require.rb +4 -0
  59. metadata +172 -0
@@ -0,0 +1,4515 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `unparser` gem.
5
+ # Please instead update this file by running `bin/tapioca gem unparser`.
6
+
7
+ # Library namespace
8
+ #
9
+ # source://unparser//lib/unparser/equalizer.rb#3
10
+ module Unparser
11
+ class << self
12
+ # Construct a parser buffer from string
13
+ #
14
+ # @param source [String]
15
+ # @return [Parser::Source::Buffer]
16
+ #
17
+ # source://unparser//lib/unparser.rb#147
18
+ def buffer(source, identification = T.unsafe(nil)); end
19
+
20
+ # Parse string into AST
21
+ #
22
+ # @param source [String]
23
+ # @return [Parser::AST::Node, nil]
24
+ #
25
+ # source://unparser//lib/unparser.rb#105
26
+ def parse(source); end
27
+
28
+ # Parse string into either syntax error or AST
29
+ #
30
+ # @param source [String]
31
+ # @return [Either<Parser::SyntaxError, (Parser::ASTNode, nil)>]
32
+ #
33
+ # source://unparser//lib/unparser.rb#114
34
+ def parse_either(source); end
35
+
36
+ # Parse string into AST, with comments
37
+ #
38
+ # @param source [String]
39
+ # @return [Parser::AST::Node]
40
+ #
41
+ # source://unparser//lib/unparser.rb#125
42
+ def parse_with_comments(source); end
43
+
44
+ # Parser instance that produces AST unparser understands
45
+ #
46
+ # @api private
47
+ # @return [Parser::Base]
48
+ #
49
+ # source://unparser//lib/unparser.rb#134
50
+ def parser; end
51
+
52
+ # Unparse an AST (and, optionally, comments) into a string
53
+ #
54
+ # @api public
55
+ # @param node [Parser::AST::Node, nil]
56
+ # @param comment_array [Array]
57
+ # @raise InvalidNodeError
58
+ # if the node passed is invalid
59
+ # @return [String]
60
+ #
61
+ # source://unparser//lib/unparser.rb#60
62
+ def unparse(node, comment_array = T.unsafe(nil)); end
63
+
64
+ # Unparse capturing errors
65
+ #
66
+ # This is mostly useful for writing testing tools against unparser.
67
+ #
68
+ # @param node [Parser::AST::Node, nil]
69
+ # @return [Either<Exception, String>]
70
+ #
71
+ # source://unparser//lib/unparser.rb#96
72
+ def unparse_either(node); end
73
+
74
+ # Unparse with validation
75
+ #
76
+ # @param node [Parser::AST::Node, nil]
77
+ # @param comment_array [Array]
78
+ # @return [Either<Validation,String>]
79
+ #
80
+ # source://unparser//lib/unparser.rb#78
81
+ def unparse_validate(node, comment_array = T.unsafe(nil)); end
82
+ end
83
+ end
84
+
85
+ # Namespace for AST processing tools
86
+ #
87
+ # source://unparser//lib/unparser/ast.rb#5
88
+ module Unparser::AST
89
+ class << self
90
+ # Return local variables that get assigned in scope
91
+ #
92
+ # @api private
93
+ # @param node [Parser::AST::Node]
94
+ # @return [Set<Symbol>]
95
+ #
96
+ # source://unparser//lib/unparser/ast.rb#57
97
+ def local_variable_assignments(node); end
98
+
99
+ # Return local variables read
100
+ #
101
+ # @api private
102
+ # @param node [Parser::AST::Node]
103
+ # @return [Set<Symbol>]
104
+ #
105
+ # source://unparser//lib/unparser/ast.rb#72
106
+ def local_variable_reads(node); end
107
+
108
+ # Test for local variable inherited scope reset
109
+ #
110
+ # @api private
111
+ # @param node [Parser::AST::Node]
112
+ # @return [Boolean]
113
+ #
114
+ # source://unparser//lib/unparser/ast.rb#33
115
+ def not_close_scope?(node); end
116
+
117
+ # Test for local variable scope reset
118
+ #
119
+ # @api private
120
+ # @param node [Parser::AST::Node]
121
+ # @return [Boolean]
122
+ #
123
+ # source://unparser//lib/unparser/ast.rb#45
124
+ def not_reset_scope?(node); end
125
+ end
126
+ end
127
+
128
+ # Nodes that assign a local variable
129
+ #
130
+ # source://unparser//lib/unparser/ast.rb#14
131
+ Unparser::AST::ASSIGN_NODES = T.let(T.unsafe(nil), Set)
132
+
133
+ # source://unparser//lib/unparser/ast.rb#11
134
+ Unparser::AST::CLOSE_NODES = T.let(T.unsafe(nil), Array)
135
+
136
+ # AST enumerator
137
+ #
138
+ # source://unparser//lib/unparser/ast.rb#80
139
+ class Unparser::AST::Enumerator
140
+ include ::Enumerable
141
+ include ::Unparser::Equalizer::Methods
142
+ include ::Unparser::Adamantium
143
+ include ::Unparser::Adamantium::InstanceMethods
144
+ extend ::Unparser::Adamantium::ModuleMethods
145
+ extend ::Unparser::Adamantium::ClassMethods
146
+
147
+ # Return each node
148
+ #
149
+ # @api private
150
+ # @return [Enumerator<Parser::AST::Node>] if no block given
151
+ # @return [self] otherwise
152
+ #
153
+ # source://unparser//lib/unparser/ast.rb#106
154
+ def each(&block); end
155
+
156
+ # Return nodes selected by type
157
+ #
158
+ # @api private
159
+ # @param type [Symbol]
160
+ # @return [Enumerable<Parser::AST::Node>]
161
+ #
162
+ # source://unparser//lib/unparser/ast.rb#130
163
+ def type(type); end
164
+
165
+ # Return nodes selected by types
166
+ #
167
+ # @api private
168
+ # @param types [Enumerable<Symbol>]
169
+ # @return [Enumerable<Parser::AST::Node>]
170
+ #
171
+ # source://unparser//lib/unparser/ast.rb#118
172
+ def types(types); end
173
+
174
+ class << self
175
+ # Return new instance
176
+ #
177
+ # @api private
178
+ # @param node [Parser::AST::Node]
179
+ # @param controller [#call(node)]
180
+ # @return [Enumerator]
181
+ #
182
+ # source://unparser//lib/unparser/ast.rb#92
183
+ def new(node, controller = T.unsafe(nil)); end
184
+
185
+ private
186
+
187
+ # Return frozne set of objects
188
+ #
189
+ # @api private
190
+ # @param enumerable [Enumerable]
191
+ # @return [Set]
192
+ #
193
+ # source://unparser//lib/unparser/ast.rb#142
194
+ def set(enumerable); end
195
+
196
+ # Return nodes of type
197
+ #
198
+ # @api private
199
+ # @param node [Parser::AST::Node]
200
+ # @param type [Symbol]
201
+ # @return [Enumerable<Parser::AST::Node]] Enumerable<Parser::AST::Node]
202
+ #
203
+ # source://unparser//lib/unparser/ast.rb#156
204
+ def type(node, type); end
205
+ end
206
+ end
207
+
208
+ # source://unparser//lib/unparser/ast.rb#6
209
+ Unparser::AST::FIRST_CHILD = T.let(T.unsafe(nil), Proc)
210
+
211
+ # source://unparser//lib/unparser/ast.rb#10
212
+ Unparser::AST::INHERIT_NODES = T.let(T.unsafe(nil), Array)
213
+
214
+ # Calculated local variable scope for a given node
215
+ #
216
+ # source://unparser//lib/unparser/ast/local_variable_scope.rb#7
217
+ class Unparser::AST::LocalVariableScope
218
+ include ::Unparser::Equalizer::Methods
219
+ include ::Unparser::Adamantium
220
+ include ::Unparser::Adamantium::InstanceMethods
221
+ include ::Enumerable
222
+ extend ::Unparser::Adamantium::ModuleMethods
223
+ extend ::Unparser::Adamantium::ClassMethods
224
+
225
+ # Initialize object
226
+ #
227
+ # @api private
228
+ # @param node [Parser::AST::Node]
229
+ # @return [undefined]
230
+ #
231
+ # source://unparser//lib/unparser/ast/local_variable_scope.rb#18
232
+ def initialize(node); end
233
+
234
+ # Test if local variable was first at given assignment
235
+ #
236
+ # @api private
237
+ # @param node [Parser::AST::Node]
238
+ # @return [Boolean]
239
+ #
240
+ # source://unparser//lib/unparser/ast/local_variable_scope.rb#35
241
+ def first_assignment?(node); end
242
+
243
+ # Test if local variables where first assigned in body and read by conditional
244
+ #
245
+ # @api private
246
+ # @param body [Parser::AST::Node]
247
+ # @param condition [Parser::AST::Node]
248
+ # @return [Boolean]
249
+ #
250
+ # source://unparser//lib/unparser/ast/local_variable_scope.rb#64
251
+ def first_assignment_in?(left, right); end
252
+
253
+ # Test if local variable is defined for given node
254
+ #
255
+ # @api private
256
+ # @param node [Parser::AST::Node]
257
+ # @param name [Symbol]
258
+ # @return [Boolean]
259
+ #
260
+ # source://unparser//lib/unparser/ast/local_variable_scope.rb#51
261
+ def local_variable_defined_for_node?(node, name); end
262
+
263
+ private
264
+
265
+ # source://unparser//lib/unparser/ast/local_variable_scope.rb#76
266
+ def match(needle); end
267
+ end
268
+
269
+ # Local variable scope enumerator
270
+ #
271
+ # source://unparser//lib/unparser/ast/local_variable_scope.rb#85
272
+ class Unparser::AST::LocalVariableScopeEnumerator
273
+ include ::Enumerable
274
+
275
+ # Initialize object
276
+ #
277
+ # @api private
278
+ # @return [undefined]
279
+ #
280
+ # source://unparser//lib/unparser/ast/local_variable_scope.rb#94
281
+ def initialize; end
282
+
283
+ # Enumerate local variable scope scope
284
+ #
285
+ # @api private
286
+ # @return [self] if block given
287
+ # @return [Enumerator<Array<Symbol>>] ]
288
+ # otherwise
289
+ #
290
+ # source://unparser//lib/unparser/ast/local_variable_scope.rb#121
291
+ def each(node, &block); end
292
+
293
+ private
294
+
295
+ # source://unparser//lib/unparser/ast/local_variable_scope.rb#127
296
+ def current; end
297
+
298
+ # source://unparser//lib/unparser/ast/local_variable_scope.rb#156
299
+ def define(name); end
300
+
301
+ # source://unparser//lib/unparser/ast/local_variable_scope.rb#141
302
+ def enter(node); end
303
+
304
+ # source://unparser//lib/unparser/ast/local_variable_scope.rb#152
305
+ def leave(node); end
306
+
307
+ # source://unparser//lib/unparser/ast/local_variable_scope.rb#168
308
+ def pop; end
309
+
310
+ # source://unparser//lib/unparser/ast/local_variable_scope.rb#164
311
+ def push_inherit; end
312
+
313
+ # source://unparser//lib/unparser/ast/local_variable_scope.rb#160
314
+ def push_reset; end
315
+
316
+ # @yield [node, current.dup, before]
317
+ #
318
+ # source://unparser//lib/unparser/ast/local_variable_scope.rb#131
319
+ def visit(node, &block); end
320
+
321
+ class << self
322
+ # Enumerate each node with its local variable scope
323
+ #
324
+ # @api private
325
+ # @param node [Parser::AST::Node]
326
+ # @return [self]
327
+ #
328
+ # source://unparser//lib/unparser/ast/local_variable_scope.rb#106
329
+ def each(node, &block); end
330
+ end
331
+ end
332
+
333
+ # source://unparser//lib/unparser/ast.rb#9
334
+ Unparser::AST::RESET_NODES = T.let(T.unsafe(nil), Array)
335
+
336
+ # source://unparser//lib/unparser/ast.rb#7
337
+ Unparser::AST::TAUTOLOGY = T.let(T.unsafe(nil), Proc)
338
+
339
+ # Controlled AST walker walking the AST in deeth first search with pre order
340
+ #
341
+ # source://unparser//lib/unparser/ast.rb#164
342
+ class Unparser::AST::Walker
343
+ include ::Unparser::Equalizer::Methods
344
+
345
+ # Call walker with node
346
+ #
347
+ # @api private
348
+ # @param node [Parser::AST::Node]
349
+ # @return [undefined]
350
+ #
351
+ # source://unparser//lib/unparser/ast.rb#188
352
+ def call(node); end
353
+
354
+ class << self
355
+ # Call ast walker
356
+ #
357
+ # @api private
358
+ # @param node [Parser::AST::Node]
359
+ # @return [self]
360
+ #
361
+ # source://unparser//lib/unparser/ast.rb#175
362
+ def call(node, controller = T.unsafe(nil), &block); end
363
+ end
364
+ end
365
+
366
+ # Module to allow class and methods to be abstract
367
+ #
368
+ # Original code before vendoring and reduction from: https://github.com/dkubb/abstract_type.
369
+ #
370
+ # source://unparser//lib/unparser/abstract_type.rb#7
371
+ module Unparser::AbstractType
372
+ mixes_in_class_methods ::Unparser::AbstractType::AbstractMethodDeclarations
373
+
374
+ class << self
375
+ private
376
+
377
+ # Define the new method on the abstract type
378
+ #
379
+ # Ensures that the instance cannot be of the abstract type
380
+ # and must be a descendant.
381
+ #
382
+ # @api private
383
+ # @param abstract_class [Class]
384
+ # @return [undefined]
385
+ #
386
+ # source://unparser//lib/unparser/abstract_type.rb#35
387
+ def create_new_method(abstract_class); end
388
+
389
+ # Hook called when module is included
390
+ #
391
+ # @api private
392
+ # @param descendant [Module] the module or class including AbstractType
393
+ # @return [undefined]
394
+ #
395
+ # source://unparser//lib/unparser/abstract_type.rb#17
396
+ def included(descendant); end
397
+ end
398
+ end
399
+
400
+ # source://unparser//lib/unparser/abstract_type.rb#47
401
+ module Unparser::AbstractType::AbstractMethodDeclarations
402
+ # Create abstract instance methods
403
+ #
404
+ # @api public
405
+ # @example
406
+ # class Foo
407
+ # include AbstractType
408
+ #
409
+ # # Create an abstract instance method
410
+ # abstract_method :some_method
411
+ # end
412
+ # @param names [Array<#to_s>]
413
+ # @return [self]
414
+ #
415
+ # source://unparser//lib/unparser/abstract_type.rb#64
416
+ def abstract_method(*names); end
417
+
418
+ # Create abstract singleton methods
419
+ #
420
+ # @api private
421
+ # @example
422
+ # class Foo
423
+ # include AbstractType
424
+ #
425
+ # # Create an abstract instance method
426
+ # abstract_singleton_method :some_method
427
+ # end
428
+ # @param names [Array<#to_s>]
429
+ # @return [self]
430
+ #
431
+ # source://unparser//lib/unparser/abstract_type.rb#84
432
+ def abstract_singleton_method(*names); end
433
+
434
+ private
435
+
436
+ # Create abstract instance method
437
+ #
438
+ # @api private
439
+ # @param name [#to_s] the name of the method to create
440
+ # @return [undefined]
441
+ #
442
+ # source://unparser//lib/unparser/abstract_type.rb#113
443
+ def create_abstract_instance_method(name); end
444
+
445
+ # Create abstract singleton method
446
+ #
447
+ # @api private
448
+ # @param name [#to_s] the name of the method to create
449
+ # @return [undefined]
450
+ #
451
+ # source://unparser//lib/unparser/abstract_type.rb#99
452
+ def create_abstract_singleton_method(name); end
453
+ end
454
+
455
+ # Allows objects to be made immutable
456
+ #
457
+ # Original code before vendoring and reduction from: https://github.com/dkubb/adamantium.
458
+ #
459
+ # source://unparser//lib/unparser/adamantium.rb#7
460
+ module Unparser::Adamantium
461
+ include ::Unparser::Adamantium::InstanceMethods
462
+
463
+ mixes_in_class_methods ::Unparser::Adamantium::ModuleMethods
464
+ mixes_in_class_methods ::Unparser::Adamantium::ClassMethods
465
+
466
+ class << self
467
+ private
468
+
469
+ # ModuleMethods
470
+ #
471
+ # source://unparser//lib/unparser/adamantium.rb#141
472
+ def included(descendant); end
473
+ end
474
+ end
475
+
476
+ # Methods mixed in to adamantium classes
477
+ #
478
+ # source://unparser//lib/unparser/adamantium.rb#70
479
+ module Unparser::Adamantium::ClassMethods
480
+ # Instantiate a new frozen object
481
+ #
482
+ # @api public
483
+ # @return [Object]
484
+ #
485
+ # source://unparser//lib/unparser/adamantium.rb#77
486
+ def new(*_arg0); end
487
+ end
488
+
489
+ # source://unparser//lib/unparser/adamantium.rb#8
490
+ module Unparser::Adamantium::InstanceMethods
491
+ # A noop #dup for immutable objects
492
+ #
493
+ # @api public
494
+ # @return [self]
495
+ #
496
+ # source://unparser//lib/unparser/adamantium.rb#14
497
+ def dup; end
498
+
499
+ # Freeze the object
500
+ #
501
+ # @api public
502
+ # @return [Object]
503
+ #
504
+ # source://unparser//lib/unparser/adamantium.rb#23
505
+ def freeze; end
506
+
507
+ private
508
+
509
+ # source://unparser//lib/unparser/adamantium.rb#30
510
+ def memoized_method_cache; end
511
+ end
512
+
513
+ # Storage for memoized methods
514
+ #
515
+ # source://unparser//lib/unparser/adamantium.rb#37
516
+ class Unparser::Adamantium::Memory
517
+ # Initialize the memory storage for memoized methods
518
+ #
519
+ # @api private
520
+ # @return [undefined]
521
+ #
522
+ # source://unparser//lib/unparser/adamantium.rb#44
523
+ def initialize(values); end
524
+
525
+ # Fetch the value from memory, or evaluate if it does not exist
526
+ #
527
+ # @api public
528
+ # @param name [Symbol]
529
+ # @yieldreturn [Object] the value to memoize
530
+ #
531
+ # source://unparser//lib/unparser/adamantium.rb#58
532
+ def fetch(name); end
533
+ end
534
+
535
+ # Build the memoized method
536
+ #
537
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#6
538
+ class Unparser::Adamantium::MethodBuilder
539
+ # Initialize an object to build a memoized method
540
+ #
541
+ # @api private
542
+ # @param descendant [Module]
543
+ # @param method_name [Symbol]
544
+ # @return [undefined]
545
+ #
546
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#47
547
+ def initialize(descendant, method_name); end
548
+
549
+ # Build a new memoized method
550
+ #
551
+ # @api public
552
+ # @example
553
+ # method_builder.call # => creates new method
554
+ # @return [UnboundMethod]
555
+ #
556
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#63
557
+ def call; end
558
+
559
+ private
560
+
561
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#72
562
+ def assert_arity(arity); end
563
+
564
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#83
565
+ def create_memoized_method; end
566
+
567
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#78
568
+ def remove_original_method; end
569
+
570
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#97
571
+ def set_method_visibility; end
572
+
573
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#101
574
+ def visibility; end
575
+ end
576
+
577
+ # Raised when a block is passed to a memoized method
578
+ #
579
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#25
580
+ class Unparser::Adamantium::MethodBuilder::BlockNotAllowedError < ::ArgumentError
581
+ # Initialize a block not allowed exception
582
+ #
583
+ # @api private
584
+ # @param descendant [Module]
585
+ # @param method [Symbol]
586
+ # @return [BlockNotAllowedError] a new instance of BlockNotAllowedError
587
+ #
588
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#33
589
+ def initialize(descendant, method); end
590
+ end
591
+
592
+ # Raised when the method arity is invalid
593
+ #
594
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#9
595
+ class Unparser::Adamantium::MethodBuilder::InvalidArityError < ::ArgumentError
596
+ # Initialize an invalid arity exception
597
+ #
598
+ # @api private
599
+ # @param descendant [Module]
600
+ # @param method [Symbol]
601
+ # @param arity [Integer]
602
+ # @return [InvalidArityError] a new instance of InvalidArityError
603
+ #
604
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#18
605
+ def initialize(descendant, method, arity); end
606
+ end
607
+
608
+ # Methods mixed in to adamantium modules
609
+ #
610
+ # source://unparser//lib/unparser/adamantium.rb#84
611
+ module Unparser::Adamantium::ModuleMethods
612
+ # Memoize a list of methods
613
+ #
614
+ # @api public
615
+ # @param methods [Array<#to_s>] a list of methods to memoize
616
+ # @return [self]
617
+ #
618
+ # source://unparser//lib/unparser/adamantium.rb#94
619
+ def memoize(*methods); end
620
+
621
+ # Test if method is memoized
622
+ #
623
+ # @param name [Symbol]
624
+ # @return [Bool]
625
+ #
626
+ # source://unparser//lib/unparser/adamantium.rb#104
627
+ def memoized?(method_name); end
628
+
629
+ # Return unmemoized instance method
630
+ #
631
+ # @api public
632
+ # @param name [Symbol]
633
+ # @raise [NameError] raised if the method is unknown
634
+ # @return [UnboundMethod] the memoized method
635
+ #
636
+ # source://unparser//lib/unparser/adamantium.rb#119
637
+ def unmemoized_instance_method(method_name); end
638
+
639
+ private
640
+
641
+ # source://unparser//lib/unparser/adamantium.rb#127
642
+ def memoize_method(method_name); end
643
+
644
+ # source://unparser//lib/unparser/adamantium.rb#135
645
+ def memoized_methods; end
646
+ end
647
+
648
+ # Original code before vendoring and reduction from: https://github.com/mbj/anima.
649
+ #
650
+ # source://unparser//lib/unparser/anima.rb#5
651
+ class Unparser::Anima < ::Module
652
+ include ::Unparser::Equalizer::Methods
653
+ include ::Unparser::Adamantium
654
+ include ::Unparser::Adamantium::InstanceMethods
655
+ extend ::Unparser::Adamantium::ModuleMethods
656
+ extend ::Unparser::Adamantium::ClassMethods
657
+
658
+ # Initialize object
659
+ #
660
+ #
661
+ # @return [undefined]
662
+ #
663
+ # source://unparser//lib/unparser/anima.rb#18
664
+ def initialize(*names); end
665
+
666
+ # Return new anima with attributes added
667
+ #
668
+ # @example
669
+ # anima = Anima.new(:foo)
670
+ # anima.add(:bar) # equals Anima.new(:foo, :bar)
671
+ # @return [Anima]
672
+ #
673
+ # source://unparser//lib/unparser/anima.rb#31
674
+ def add(*names); end
675
+
676
+ # Return attribute names
677
+ #
678
+ # @return [Enumerable<Symbol>]
679
+ #
680
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
681
+ def attribute_names(&block); end
682
+
683
+ # Return names
684
+ #
685
+ # @return [AttributeSet]
686
+ #
687
+ # source://unparser//lib/unparser/anima.rb#11
688
+ def attributes; end
689
+
690
+ # Return attributes hash for instance
691
+ #
692
+ # @param object [Object]
693
+ # @return [Hash]
694
+ #
695
+ # source://unparser//lib/unparser/anima.rb#52
696
+ def attributes_hash(object); end
697
+
698
+ # Initialize instance
699
+ #
700
+ # @param object [Object]
701
+ # @param attribute_hash [Hash]
702
+ # @return [self]
703
+ #
704
+ # source://unparser//lib/unparser/anima.rb#73
705
+ def initialize_instance(object, attribute_hash); end
706
+
707
+ # Return new anima with attributes removed
708
+ #
709
+ # @example
710
+ # anima = Anima.new(:foo, :bar)
711
+ # anima.remove(:bar) # equals Anima.new(:foo)
712
+ # @return [Anima]
713
+ #
714
+ # source://unparser//lib/unparser/anima.rb#43
715
+ def remove(*names); end
716
+
717
+ private
718
+
719
+ # Fail unless keys in +attribute_hash+ matches #attribute_names
720
+ #
721
+ # @param klass [Class] the class being initialized
722
+ # @param attribute_hash [Hash] the attributes to initialize +object+ with
723
+ # @raise [Error]
724
+ # @return [undefined]
725
+ #
726
+ # source://unparser//lib/unparser/anima.rb#164
727
+ def assert_known_attributes(klass, attribute_hash); end
728
+
729
+ # Infect the instance with anima
730
+ #
731
+ # @param scope [Class, Module]
732
+ # @return [undefined]
733
+ #
734
+ # source://unparser//lib/unparser/anima.rb#137
735
+ def included(descendant); end
736
+
737
+ # Return new instance
738
+ #
739
+ # @param attributes [Enumerable<Symbol>]
740
+ # @return [Anima]
741
+ #
742
+ # source://unparser//lib/unparser/anima.rb#180
743
+ def new(attributes); end
744
+ end
745
+
746
+ # An attribute
747
+ #
748
+ # source://unparser//lib/unparser/anima/attribute.rb#6
749
+ class Unparser::Anima::Attribute
750
+ include ::Unparser::Equalizer::Methods
751
+ include ::Unparser::Adamantium
752
+ include ::Unparser::Adamantium::InstanceMethods
753
+ extend ::Unparser::Adamantium::ModuleMethods
754
+ extend ::Unparser::Adamantium::ClassMethods
755
+
756
+ # Initialize attribute
757
+ #
758
+ # @param name [Symbol]
759
+ # @return [Attribute] a new instance of Attribute
760
+ #
761
+ # source://unparser//lib/unparser/anima/attribute.rb#12
762
+ def initialize(name); end
763
+
764
+ # Get attribute value from object
765
+ #
766
+ # @param object [Object]
767
+ # @return [Object]
768
+ #
769
+ # source://unparser//lib/unparser/anima/attribute.rb#42
770
+ def get(object); end
771
+
772
+ # Return instance variable name
773
+ #
774
+ # @return [Symbol]
775
+ #
776
+ # source://unparser//lib/unparser/anima/attribute.rb#25
777
+ def instance_variable_name; end
778
+
779
+ # Load attribute
780
+ #
781
+ # @param object [Object]
782
+ # @param attributes [Hash]
783
+ # @return [self]
784
+ #
785
+ # source://unparser//lib/unparser/anima/attribute.rb#33
786
+ def load(object, attributes); end
787
+
788
+ # Return attribute name
789
+ #
790
+ # @return [Symbol]
791
+ #
792
+ # source://unparser//lib/unparser/anima/attribute.rb#20
793
+ def name; end
794
+
795
+ # Set attribute value in object
796
+ #
797
+ # @param object [Object]
798
+ # @param value [Object]
799
+ # @return [self]
800
+ #
801
+ # source://unparser//lib/unparser/anima/attribute.rb#52
802
+ def set(object, value); end
803
+ end
804
+
805
+ # Abstract base class for anima errors
806
+ #
807
+ # source://unparser//lib/unparser/anima/error.rb#6
808
+ class Unparser::Anima::Error < ::RuntimeError
809
+ # Initialize object
810
+ #
811
+ # @param klass [Class] the class being initialized
812
+ # @param missing [Enumerable<Symbol>]
813
+ # @param unknown [Enumerable<Symbol>]
814
+ # @return [undefined]
815
+ #
816
+ # source://unparser//lib/unparser/anima/error.rb#18
817
+ def initialize(klass, missing, unknown); end
818
+ end
819
+
820
+ # source://unparser//lib/unparser/anima/error.rb#7
821
+ Unparser::Anima::Error::FORMAT = T.let(T.unsafe(nil), String)
822
+
823
+ # Static instance methods for anima infected classes
824
+ #
825
+ # source://unparser//lib/unparser/anima.rb#82
826
+ module Unparser::Anima::InstanceMethods
827
+ # Initialize an anima infected object
828
+ #
829
+ #
830
+ # @param attributes [#to_h] a hash that matches anima defined attributes
831
+ # @return [undefined]
832
+ #
833
+ # source://unparser//lib/unparser/anima.rb#91
834
+ def initialize(attributes); end
835
+
836
+ # Return a hash representation of an anima infected object
837
+ #
838
+ # @api public
839
+ # @example
840
+ # anima.to_h # => { :foo => : bar }
841
+ # @return [Hash]
842
+ #
843
+ # source://unparser//lib/unparser/anima.rb#104
844
+ def to_h; end
845
+
846
+ # Return updated instance
847
+ #
848
+ # @api public
849
+ # @example
850
+ # klass = Class.new do
851
+ # include Anima.new(:foo, :bar)
852
+ # end
853
+ #
854
+ # foo = klass.new(:foo => 1, :bar => 2)
855
+ # updated = foo.with(:foo => 3)
856
+ # updated.foo # => 3
857
+ # updated.bar # => 2
858
+ # @param attributes [Hash]
859
+ # @return [Anima]
860
+ #
861
+ # source://unparser//lib/unparser/anima.rb#125
862
+ def with(attributes); end
863
+ end
864
+
865
+ # Buffer used to emit into
866
+ #
867
+ # source://unparser//lib/unparser/buffer.rb#6
868
+ class Unparser::Buffer
869
+ # Initialize object
870
+ #
871
+ # @api private
872
+ # @return [undefined]
873
+ #
874
+ # source://unparser//lib/unparser/buffer.rb#16
875
+ def initialize; end
876
+
877
+ # Append string
878
+ #
879
+ # @api private
880
+ # @param string [String]
881
+ # @return [self]
882
+ #
883
+ # source://unparser//lib/unparser/buffer.rb#29
884
+ def append(string); end
885
+
886
+ # Append a string without an indentation prefix
887
+ #
888
+ # @api private
889
+ # @param string [String]
890
+ # @return [self]
891
+ #
892
+ # source://unparser//lib/unparser/buffer.rb#45
893
+ def append_without_prefix(string); end
894
+
895
+ # Return content of buffer
896
+ #
897
+ # @api private
898
+ # @return [String]
899
+ #
900
+ # source://unparser//lib/unparser/buffer.rb#104
901
+ def content; end
902
+
903
+ # Test for a fresh line
904
+ #
905
+ # @api private
906
+ # @return [Boolean]
907
+ #
908
+ # source://unparser//lib/unparser/buffer.rb#94
909
+ def fresh_line?; end
910
+
911
+ # Increase indent
912
+ #
913
+ # @api private
914
+ # @return [self]
915
+ #
916
+ # source://unparser//lib/unparser/buffer.rb#55
917
+ def indent; end
918
+
919
+ # Write newline
920
+ #
921
+ # @api private
922
+ # @return [self]
923
+ #
924
+ # source://unparser//lib/unparser/buffer.rb#77
925
+ def nl; end
926
+
927
+ # source://unparser//lib/unparser/buffer.rb#81
928
+ def root_indent; end
929
+
930
+ # Decrease indent
931
+ #
932
+ # @api private
933
+ # @return [self]
934
+ #
935
+ # source://unparser//lib/unparser/buffer.rb#66
936
+ def unindent; end
937
+
938
+ # Write raw fragment to buffer
939
+ #
940
+ # Does not do indentation logic.
941
+ #
942
+ # @param fragment [String]
943
+ # @return [self]
944
+ #
945
+ # source://unparser//lib/unparser/buffer.rb#115
946
+ def write(fragment); end
947
+
948
+ private
949
+
950
+ # source://unparser//lib/unparser/buffer.rb#124
951
+ def prefix; end
952
+ end
953
+
954
+ # source://unparser//lib/unparser/buffer.rb#122
955
+ Unparser::Buffer::INDENT_SPACE = T.let(T.unsafe(nil), String)
956
+
957
+ # source://unparser//lib/unparser/buffer.rb#8
958
+ Unparser::Buffer::NL = T.let(T.unsafe(nil), String)
959
+
960
+ # Unparser specific AST builder defaulting to modern AST format
961
+ #
962
+ # source://unparser//lib/unparser.rb#23
963
+ class Unparser::Builder < ::Parser::Builders::Default
964
+ # @return [Builder] a new instance of Builder
965
+ #
966
+ # source://unparser//lib/unparser.rb#26
967
+ def initialize; end
968
+ end
969
+
970
+ # Unparser CLI implementation
971
+ #
972
+ # source://unparser//lib/unparser/cli.rb#5
973
+ class Unparser::CLI
974
+ # Initialize object
975
+ #
976
+ # @api private
977
+ # @param arguments [Array<String>]
978
+ # @return [undefined]
979
+ #
980
+ # source://unparser//lib/unparser/cli.rb#74
981
+ def initialize(arguments); end
982
+
983
+ # Add options
984
+ #
985
+ #
986
+ # @api private
987
+ # @param builder [OptionParser]
988
+ # @return [undefined]
989
+ #
990
+ # source://unparser//lib/unparser/cli.rb#102
991
+ def add_options(builder); end
992
+
993
+ # Return exit status
994
+ #
995
+ # @api private
996
+ # @return [Integer]
997
+ #
998
+ # source://unparser//lib/unparser/cli.rb#132
999
+ def exit_status; end
1000
+
1001
+ private
1002
+
1003
+ # source://unparser//lib/unparser/cli.rb#155
1004
+ def effective_targets; end
1005
+
1006
+ # source://unparser//lib/unparser/cli.rb#143
1007
+ def process_target(target); end
1008
+
1009
+ # source://unparser//lib/unparser/cli.rb#170
1010
+ def targets(file_name); end
1011
+
1012
+ class << self
1013
+ # Run CLI
1014
+ #
1015
+ # @api private
1016
+ # @param arguments [Array<String>]
1017
+ # @return [Integer] the exit status
1018
+ #
1019
+ # source://unparser//lib/unparser/cli.rb#63
1020
+ def run(*arguments); end
1021
+ end
1022
+ end
1023
+
1024
+ # source://unparser//lib/unparser/cli.rb#8
1025
+ Unparser::CLI::EXIT_FAILURE = T.let(T.unsafe(nil), Integer)
1026
+
1027
+ # source://unparser//lib/unparser/cli.rb#7
1028
+ Unparser::CLI::EXIT_SUCCESS = T.let(T.unsafe(nil), Integer)
1029
+
1030
+ # source://unparser//lib/unparser/cli.rb#10
1031
+ class Unparser::CLI::Target
1032
+ include ::Unparser::AbstractType
1033
+ extend ::Unparser::AbstractType::AbstractMethodDeclarations
1034
+
1035
+ class << self
1036
+ # source://unparser//lib/unparser/abstract_type.rb#36
1037
+ def new(*args, &block); end
1038
+ end
1039
+ end
1040
+
1041
+ # Path target
1042
+ #
1043
+ # source://unparser//lib/unparser/cli.rb#14
1044
+ class Unparser::CLI::Target::Path < ::Unparser::CLI::Target
1045
+ include ::Unparser::Equalizer::Methods
1046
+
1047
+ # Literal for this target
1048
+ #
1049
+ # @return [Validation]
1050
+ #
1051
+ # source://unparser//lib/unparser/cli.rb#27
1052
+ def literal_validation; end
1053
+
1054
+ # Validation for this target
1055
+ #
1056
+ # @return [Validation]
1057
+ #
1058
+ # source://unparser//lib/unparser/cli.rb#20
1059
+ def validation; end
1060
+ end
1061
+
1062
+ # String target
1063
+ #
1064
+ # source://unparser//lib/unparser/cli.rb#33
1065
+ class Unparser::CLI::Target::String
1066
+ include ::Unparser::Equalizer::Methods
1067
+
1068
+ # Literal for this target
1069
+ #
1070
+ # @return [Validation]
1071
+ #
1072
+ # source://unparser//lib/unparser/cli.rb#46
1073
+ def literal_validation; end
1074
+
1075
+ # Validation for this target
1076
+ #
1077
+ # @return [Validation]
1078
+ #
1079
+ # source://unparser//lib/unparser/cli.rb#39
1080
+ def validation; end
1081
+ end
1082
+
1083
+ # Class to colorize strings
1084
+ #
1085
+ # source://unparser//lib/unparser/color.rb#5
1086
+ class Unparser::Color
1087
+ include ::Unparser::Equalizer::Methods
1088
+ include ::Unparser::Adamantium
1089
+ include ::Unparser::Adamantium::InstanceMethods
1090
+ extend ::Unparser::Adamantium::ModuleMethods
1091
+ extend ::Unparser::Adamantium::ClassMethods
1092
+
1093
+ # Format text with color
1094
+ #
1095
+ # @param text [String]
1096
+ # @return [String]
1097
+ #
1098
+ # source://unparser//lib/unparser/color.rb#13
1099
+ def format(text); end
1100
+ end
1101
+
1102
+ # source://unparser//lib/unparser/color.rb#39
1103
+ Unparser::Color::GREEN = T.let(T.unsafe(nil), Unparser::Color)
1104
+
1105
+ # source://unparser//lib/unparser/color.rb#17
1106
+ Unparser::Color::NONE = T.let(T.unsafe(nil), T.untyped)
1107
+
1108
+ # source://unparser//lib/unparser/color.rb#38
1109
+ Unparser::Color::RED = T.let(T.unsafe(nil), Unparser::Color)
1110
+
1111
+ # Holds the comments that remain to be emitted
1112
+ #
1113
+ # source://unparser//lib/unparser/comments.rb#6
1114
+ class Unparser::Comments
1115
+ # Initialize object
1116
+ #
1117
+ # @api private
1118
+ # @param comments [Array]
1119
+ # @return [undefined]
1120
+ #
1121
+ # source://unparser//lib/unparser/comments.rb#30
1122
+ def initialize(comments); end
1123
+
1124
+ # Consume part or all of the node
1125
+ #
1126
+ # @api private
1127
+ # @param node [Parser::AST::Node]
1128
+ # @param source_part [Symbol]
1129
+ # @return [undefined]
1130
+ #
1131
+ # source://unparser//lib/unparser/comments.rb#44
1132
+ def consume(node, source_part = T.unsafe(nil)); end
1133
+
1134
+ # Proxy to singleton
1135
+ #
1136
+ # NOTICE:
1137
+ # Delegating to stateless helpers is a pattern I saw many times in our code.
1138
+ # Maybe we should make another helper module? include SingletonDelegator.new(:source_range) ?
1139
+ #
1140
+ # @api private
1141
+ # @return [undefined]
1142
+ #
1143
+ # source://unparser//lib/unparser/comments.rb#18
1144
+ def source_range(*arguments); end
1145
+
1146
+ # Take all remaining comments
1147
+ #
1148
+ # @api private
1149
+ # @return [Array]
1150
+ #
1151
+ # source://unparser//lib/unparser/comments.rb#68
1152
+ def take_all; end
1153
+
1154
+ # Take comments appear in the source before the specified part of the node
1155
+ #
1156
+ # @api private
1157
+ # @param node [Parser::AST::Node]
1158
+ # @param source_part [Symbol]
1159
+ # @return [Array]
1160
+ #
1161
+ # source://unparser//lib/unparser/comments.rb#81
1162
+ def take_before(node, source_part); end
1163
+
1164
+ # Take end-of-line comments
1165
+ #
1166
+ # @api private
1167
+ # @return [Array]
1168
+ #
1169
+ # source://unparser//lib/unparser/comments.rb#55
1170
+ def take_eol_comments; end
1171
+
1172
+ private
1173
+
1174
+ # source://unparser//lib/unparser/comments.rb#119
1175
+ def take_up_to_line(line); end
1176
+
1177
+ # source://unparser//lib/unparser/comments.rb#114
1178
+ def take_while; end
1179
+
1180
+ # source://unparser//lib/unparser/comments.rb#123
1181
+ def unshift_documents(comments); end
1182
+
1183
+ class << self
1184
+ # Return source location part
1185
+ #
1186
+ # FIXME: This method should not be needed. It does to much inline signalling.
1187
+ #
1188
+ # :reek:ManualDispatch
1189
+ #
1190
+ # @api private
1191
+ # @param node [Parser::AST::Node]
1192
+ # @param part [Symbol]
1193
+ # @return [Parser::Source::Range] if present
1194
+ # @return [nil] otherwise
1195
+ #
1196
+ # source://unparser//lib/unparser/comments.rb#107
1197
+ def source_range(node, part); end
1198
+ end
1199
+ end
1200
+
1201
+ # A mixin to define a composition
1202
+ #
1203
+ # Original code before vendoring and reduction from: https://github.com/mbj/concord.
1204
+ #
1205
+ # source://unparser//lib/unparser/concord.rb#7
1206
+ class Unparser::Concord < ::Module
1207
+ include ::Unparser::Equalizer::Methods
1208
+ include ::Unparser::Adamantium
1209
+ include ::Unparser::Adamantium::InstanceMethods
1210
+ extend ::Unparser::Adamantium::ModuleMethods
1211
+ extend ::Unparser::Adamantium::ClassMethods
1212
+
1213
+ # Initialize object
1214
+ #
1215
+ #
1216
+ # @api private
1217
+ # @return [undefined]
1218
+ #
1219
+ # source://unparser//lib/unparser/concord.rb#30
1220
+ def initialize(*names); end
1221
+
1222
+ # Return names
1223
+ #
1224
+ # @api private
1225
+ # @return [Enumerable<Symbol>]
1226
+ #
1227
+ # source://unparser//lib/unparser/concord.rb#19
1228
+ def names; end
1229
+
1230
+ private
1231
+
1232
+ # Define equalizer
1233
+ #
1234
+ # @api private
1235
+ # @return [undefined]
1236
+ #
1237
+ # source://unparser//lib/unparser/concord.rb#48
1238
+ def define_equalizer; end
1239
+
1240
+ # Define initialize method
1241
+ #
1242
+ # @api private
1243
+ # @return [undefined]
1244
+ #
1245
+ # source://unparser//lib/unparser/concord.rb#72
1246
+ def define_initialize; end
1247
+
1248
+ # Define readers
1249
+ #
1250
+ # @api private
1251
+ # @return [undefined]
1252
+ #
1253
+ # source://unparser//lib/unparser/concord.rb#58
1254
+ def define_readers; end
1255
+
1256
+ # Return instance variable names
1257
+ #
1258
+ # @api private
1259
+ # @return [String]
1260
+ #
1261
+ # source://unparser//lib/unparser/concord.rb#92
1262
+ def instance_variable_names; end
1263
+ end
1264
+
1265
+ # The maximum number of objects the hosting class is composed of
1266
+ #
1267
+ # source://unparser//lib/unparser/concord.rb#11
1268
+ Unparser::Concord::MAX_NR_OF_OBJECTS = T.let(T.unsafe(nil), Integer)
1269
+
1270
+ # Mixin for public attribute readers
1271
+ #
1272
+ # source://unparser//lib/unparser/concord.rb#97
1273
+ class Unparser::Concord::Public < ::Unparser::Concord
1274
+ # Hook called when module is included
1275
+ #
1276
+ # @api private
1277
+ # @param descendant [Class, Module]
1278
+ # @return [undefined]
1279
+ #
1280
+ # source://unparser//lib/unparser/concord.rb#107
1281
+ def included(descendant); end
1282
+ end
1283
+
1284
+ # All unparser constants maybe included in other libraries.
1285
+ #
1286
+ # source://unparser//lib/unparser/constants.rb#5
1287
+ module Unparser::Constants; end
1288
+
1289
+ # All binary operators of the ruby language
1290
+ #
1291
+ # source://unparser//lib/unparser/constants.rb#13
1292
+ Unparser::Constants::BINARY_OPERATORS = T.let(T.unsafe(nil), Set)
1293
+
1294
+ # source://unparser//lib/unparser/constants.rb#63
1295
+ Unparser::Constants::KEYWORDS = T.let(T.unsafe(nil), Set)
1296
+
1297
+ # source://unparser//lib/unparser/constants.rb#45
1298
+ Unparser::Constants::K_ALIAS = T.let(T.unsafe(nil), String)
1299
+
1300
+ # source://unparser//lib/unparser/constants.rb#44
1301
+ Unparser::Constants::K_AND = T.let(T.unsafe(nil), String)
1302
+
1303
+ # source://unparser//lib/unparser/constants.rb#23
1304
+ Unparser::Constants::K_BEGIN = T.let(T.unsafe(nil), String)
1305
+
1306
+ # source://unparser//lib/unparser/constants.rb#37
1307
+ Unparser::Constants::K_BREAK = T.let(T.unsafe(nil), String)
1308
+
1309
+ # source://unparser//lib/unparser/constants.rb#24
1310
+ Unparser::Constants::K_CASE = T.let(T.unsafe(nil), String)
1311
+
1312
+ # source://unparser//lib/unparser/constants.rb#25
1313
+ Unparser::Constants::K_CLASS = T.let(T.unsafe(nil), String)
1314
+
1315
+ # source://unparser//lib/unparser/constants.rb#21
1316
+ Unparser::Constants::K_DEF = T.let(T.unsafe(nil), String)
1317
+
1318
+ # source://unparser//lib/unparser/constants.rb#28
1319
+ Unparser::Constants::K_DEFINE = T.let(T.unsafe(nil), String)
1320
+
1321
+ # source://unparser//lib/unparser/constants.rb#33
1322
+ Unparser::Constants::K_DEFINED = T.let(T.unsafe(nil), String)
1323
+
1324
+ # Keywords
1325
+ #
1326
+ # source://unparser//lib/unparser/constants.rb#20
1327
+ Unparser::Constants::K_DO = T.let(T.unsafe(nil), String)
1328
+
1329
+ # source://unparser//lib/unparser/constants.rb#59
1330
+ Unparser::Constants::K_EEND = T.let(T.unsafe(nil), String)
1331
+
1332
+ # source://unparser//lib/unparser/constants.rb#46
1333
+ Unparser::Constants::K_ELSE = T.let(T.unsafe(nil), String)
1334
+
1335
+ # source://unparser//lib/unparser/constants.rb#47
1336
+ Unparser::Constants::K_ELSIF = T.let(T.unsafe(nil), String)
1337
+
1338
+ # source://unparser//lib/unparser/constants.rb#58
1339
+ Unparser::Constants::K_ENCODING = T.let(T.unsafe(nil), String)
1340
+
1341
+ # source://unparser//lib/unparser/constants.rb#22
1342
+ Unparser::Constants::K_END = T.let(T.unsafe(nil), String)
1343
+
1344
+ # source://unparser//lib/unparser/constants.rb#27
1345
+ Unparser::Constants::K_ENSURE = T.let(T.unsafe(nil), String)
1346
+
1347
+ # source://unparser//lib/unparser/constants.rb#41
1348
+ Unparser::Constants::K_FALSE = T.let(T.unsafe(nil), String)
1349
+
1350
+ # source://unparser//lib/unparser/constants.rb#60
1351
+ Unparser::Constants::K_FILE = T.let(T.unsafe(nil), String)
1352
+
1353
+ # source://unparser//lib/unparser/constants.rb#48
1354
+ Unparser::Constants::K_FOR = T.let(T.unsafe(nil), String)
1355
+
1356
+ # source://unparser//lib/unparser/constants.rb#43
1357
+ Unparser::Constants::K_IF = T.let(T.unsafe(nil), String)
1358
+
1359
+ # source://unparser//lib/unparser/constants.rb#51
1360
+ Unparser::Constants::K_IN = T.let(T.unsafe(nil), String)
1361
+
1362
+ # source://unparser//lib/unparser/constants.rb#29
1363
+ Unparser::Constants::K_MODULE = T.let(T.unsafe(nil), String)
1364
+
1365
+ # source://unparser//lib/unparser/constants.rb#40
1366
+ Unparser::Constants::K_NEXT = T.let(T.unsafe(nil), String)
1367
+
1368
+ # source://unparser//lib/unparser/constants.rb#49
1369
+ Unparser::Constants::K_NIL = T.let(T.unsafe(nil), String)
1370
+
1371
+ # source://unparser//lib/unparser/constants.rb#50
1372
+ Unparser::Constants::K_NOT = T.let(T.unsafe(nil), String)
1373
+
1374
+ # source://unparser//lib/unparser/constants.rb#52
1375
+ Unparser::Constants::K_OR = T.let(T.unsafe(nil), String)
1376
+
1377
+ # source://unparser//lib/unparser/constants.rb#35
1378
+ Unparser::Constants::K_POSTEXE = T.let(T.unsafe(nil), String)
1379
+
1380
+ # source://unparser//lib/unparser/constants.rb#34
1381
+ Unparser::Constants::K_PREEXE = T.let(T.unsafe(nil), String)
1382
+
1383
+ # source://unparser//lib/unparser/constants.rb#39
1384
+ Unparser::Constants::K_REDO = T.let(T.unsafe(nil), String)
1385
+
1386
+ # source://unparser//lib/unparser/constants.rb#30
1387
+ Unparser::Constants::K_RESCUE = T.let(T.unsafe(nil), String)
1388
+
1389
+ # source://unparser//lib/unparser/constants.rb#38
1390
+ Unparser::Constants::K_RETRY = T.let(T.unsafe(nil), String)
1391
+
1392
+ # source://unparser//lib/unparser/constants.rb#31
1393
+ Unparser::Constants::K_RETURN = T.let(T.unsafe(nil), String)
1394
+
1395
+ # source://unparser//lib/unparser/constants.rb#26
1396
+ Unparser::Constants::K_SELF = T.let(T.unsafe(nil), String)
1397
+
1398
+ # source://unparser//lib/unparser/constants.rb#36
1399
+ Unparser::Constants::K_SUPER = T.let(T.unsafe(nil), String)
1400
+
1401
+ # source://unparser//lib/unparser/constants.rb#61
1402
+ Unparser::Constants::K_THEN = T.let(T.unsafe(nil), String)
1403
+
1404
+ # source://unparser//lib/unparser/constants.rb#42
1405
+ Unparser::Constants::K_TRUE = T.let(T.unsafe(nil), String)
1406
+
1407
+ # source://unparser//lib/unparser/constants.rb#32
1408
+ Unparser::Constants::K_UNDEF = T.let(T.unsafe(nil), String)
1409
+
1410
+ # source://unparser//lib/unparser/constants.rb#53
1411
+ Unparser::Constants::K_UNLESS = T.let(T.unsafe(nil), String)
1412
+
1413
+ # source://unparser//lib/unparser/constants.rb#56
1414
+ Unparser::Constants::K_UNTIL = T.let(T.unsafe(nil), String)
1415
+
1416
+ # source://unparser//lib/unparser/constants.rb#54
1417
+ Unparser::Constants::K_WHEN = T.let(T.unsafe(nil), String)
1418
+
1419
+ # source://unparser//lib/unparser/constants.rb#55
1420
+ Unparser::Constants::K_WHILE = T.let(T.unsafe(nil), String)
1421
+
1422
+ # source://unparser//lib/unparser/constants.rb#57
1423
+ Unparser::Constants::K_YIELD = T.let(T.unsafe(nil), String)
1424
+
1425
+ # All unary operators of the ruby language
1426
+ #
1427
+ # source://unparser//lib/unparser/constants.rb#8
1428
+ Unparser::Constants::UNARY_OPERATORS = T.let(T.unsafe(nil), Set)
1429
+
1430
+ # DSL to help defining emitters
1431
+ #
1432
+ # source://unparser//lib/unparser/dsl.rb#5
1433
+ module Unparser::DSL
1434
+ private
1435
+
1436
+ # source://unparser//lib/unparser/dsl.rb#32
1437
+ def children(*names); end
1438
+
1439
+ # source://unparser//lib/unparser/dsl.rb#17
1440
+ def define_child(name, index); end
1441
+
1442
+ # source://unparser//lib/unparser/dsl.rb#24
1443
+ def define_group(name, range); end
1444
+
1445
+ # source://unparser//lib/unparser/dsl.rb#9
1446
+ def define_remaining_children(names); end
1447
+ end
1448
+
1449
+ # Class to create diffs from source code
1450
+ #
1451
+ # source://unparser//lib/unparser/diff.rb#5
1452
+ class Unparser::Diff
1453
+ include ::Unparser::Equalizer::Methods
1454
+ include ::Unparser::Adamantium
1455
+ include ::Unparser::Adamantium::InstanceMethods
1456
+ extend ::Unparser::Adamantium::ModuleMethods
1457
+ extend ::Unparser::Adamantium::ClassMethods
1458
+
1459
+ # Colorized unified source diff between old and new
1460
+ #
1461
+ # @return [String] if there is a diff
1462
+ # @return [nil] otherwise
1463
+ #
1464
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
1465
+ def colorized_diff(&block); end
1466
+
1467
+ # Unified source diff between old and new
1468
+ #
1469
+ # @return [String] if there is exactly one diff
1470
+ # @return [nil] otherwise
1471
+ #
1472
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
1473
+ def diff(&block); end
1474
+
1475
+ private
1476
+
1477
+ # source://unparser//lib/unparser/diff.rb#62
1478
+ def diffs; end
1479
+
1480
+ # source://unparser//lib/unparser/diff.rb#66
1481
+ def hunks; end
1482
+
1483
+ # source://unparser//lib/unparser/diff.rb#81
1484
+ def max_length; end
1485
+
1486
+ # source://unparser//lib/unparser/diff.rb#72
1487
+ def minimized_hunk; end
1488
+
1489
+ class << self
1490
+ # Build new object from source strings
1491
+ #
1492
+ # @param old [String]
1493
+ # @param new [String]
1494
+ # @return [Diff]
1495
+ #
1496
+ # source://unparser//lib/unparser/diff.rb#46
1497
+ def build(old, new); end
1498
+
1499
+ private
1500
+
1501
+ # source://unparser//lib/unparser/diff.rb#85
1502
+ def colorize_line(line); end
1503
+
1504
+ # Break up source into lines
1505
+ #
1506
+ # @param source [String]
1507
+ # @return [Array<String>]
1508
+ #
1509
+ # source://unparser//lib/unparser/diff.rb#55
1510
+ def lines(source); end
1511
+ end
1512
+ end
1513
+
1514
+ # source://unparser//lib/unparser/diff.rb#8
1515
+ Unparser::Diff::ADDITION = T.let(T.unsafe(nil), String)
1516
+
1517
+ # source://unparser//lib/unparser/diff.rb#9
1518
+ Unparser::Diff::DELETION = T.let(T.unsafe(nil), String)
1519
+
1520
+ # source://unparser//lib/unparser/diff.rb#10
1521
+ Unparser::Diff::NEWLINE = T.let(T.unsafe(nil), String)
1522
+
1523
+ # source://unparser//lib/unparser.rb#34
1524
+ Unparser::EMPTY_ARRAY = T.let(T.unsafe(nil), Array)
1525
+
1526
+ # source://unparser//lib/unparser.rb#33
1527
+ Unparser::EMPTY_STRING = T.let(T.unsafe(nil), String)
1528
+
1529
+ # RequireBLock
1530
+ #
1531
+ # source://unparser//lib/unparser/either.rb#21
1532
+ class Unparser::Either
1533
+ include ::Unparser::RequireBlock
1534
+ include ::Unparser::Equalizer::Methods
1535
+ include ::Unparser::Adamantium
1536
+ include ::Unparser::Adamantium::InstanceMethods
1537
+ extend ::Unparser::Adamantium::ModuleMethods
1538
+ extend ::Unparser::Adamantium::ClassMethods
1539
+
1540
+ # Test for left constructor
1541
+ #
1542
+ # @return [Boolean]
1543
+ #
1544
+ # source://unparser//lib/unparser/either.rb#42
1545
+ def left?; end
1546
+
1547
+ # Test for right constructor
1548
+ #
1549
+ # @return [Boolean]
1550
+ #
1551
+ # source://unparser//lib/unparser/either.rb#49
1552
+ def right?; end
1553
+
1554
+ class << self
1555
+ # Execute block and wrap error in left
1556
+ #
1557
+ # @param exception [Class<Exception>]
1558
+ # @return [Either<Exception, Object>]
1559
+ #
1560
+ # source://unparser//lib/unparser/either.rb#33
1561
+ def wrap_error(*exceptions); end
1562
+ end
1563
+ end
1564
+
1565
+ # source://unparser//lib/unparser/either.rb#56
1566
+ class Unparser::Either::Left < ::Unparser::Either
1567
+ # Evaluate applicative block
1568
+ #
1569
+ # @return [Either::Left<Object>]
1570
+ #
1571
+ # source://unparser//lib/unparser/either.rb#64
1572
+ def bind(&block); end
1573
+
1574
+ # Evaluate left side of branch
1575
+ #
1576
+ # @param left [#call]
1577
+ # @param _right [#call]
1578
+ #
1579
+ # source://unparser//lib/unparser/either.rb#98
1580
+ def either(left, _right); end
1581
+
1582
+ # Evaluate functor block
1583
+ #
1584
+ # @return [Either::Left<Object>]
1585
+ #
1586
+ # source://unparser//lib/unparser/either.rb#57
1587
+ def fmap(&block); end
1588
+
1589
+ # Unwrap value from left
1590
+ #
1591
+ # @return [Object]
1592
+ #
1593
+ # source://unparser//lib/unparser/either.rb#71
1594
+ def from_left; end
1595
+
1596
+ # Unwrap value from right
1597
+ #
1598
+ # @return [Object]
1599
+ #
1600
+ # source://unparser//lib/unparser/either.rb#79
1601
+ def from_right; end
1602
+
1603
+ # Map over left value
1604
+ #
1605
+ # @return [Either::Right<Object>]
1606
+ #
1607
+ # source://unparser//lib/unparser/either.rb#90
1608
+ def lmap; end
1609
+ end
1610
+
1611
+ # Left
1612
+ #
1613
+ # source://unparser//lib/unparser/either.rb#106
1614
+ class Unparser::Either::Right < ::Unparser::Either
1615
+ # Evaluate applicative block
1616
+ #
1617
+ # @return [Either<Object>]
1618
+ # @yield [value]
1619
+ #
1620
+ # source://unparser//lib/unparser/either.rb#114
1621
+ def bind; end
1622
+
1623
+ # Evaluate right side of branch
1624
+ #
1625
+ # @param _left [#call]
1626
+ # @param right [#call]
1627
+ #
1628
+ # source://unparser//lib/unparser/either.rb#148
1629
+ def either(_left, right); end
1630
+
1631
+ # Evaluate functor block
1632
+ #
1633
+ # @return [Either::Right<Object>]
1634
+ #
1635
+ # source://unparser//lib/unparser/either.rb#107
1636
+ def fmap; end
1637
+
1638
+ # Unwrap value from left
1639
+ #
1640
+ # @return [Object]
1641
+ #
1642
+ # source://unparser//lib/unparser/either.rb#122
1643
+ def from_left; end
1644
+
1645
+ # Unwrap value from right
1646
+ #
1647
+ # @return [Object]
1648
+ #
1649
+ # source://unparser//lib/unparser/either.rb#133
1650
+ def from_right; end
1651
+
1652
+ # Map over left value
1653
+ #
1654
+ # @return [Either::Right<Object>]
1655
+ #
1656
+ # source://unparser//lib/unparser/either.rb#140
1657
+ def lmap(&block); end
1658
+ end
1659
+
1660
+ # Emitter base class
1661
+ #
1662
+ # source://unparser//lib/unparser/emitter.rb#7
1663
+ class Unparser::Emitter
1664
+ include ::Unparser::NodeHelpers
1665
+ include ::Unparser::Generation
1666
+ include ::Unparser::Constants
1667
+ include ::Unparser::AbstractType
1668
+ include ::Unparser::Adamantium
1669
+ include ::Unparser::Adamantium::InstanceMethods
1670
+ include ::Unparser::Anima::InstanceMethods
1671
+ include ::Unparser::Equalizer::Methods
1672
+ extend ::Unparser::AbstractType::AbstractMethodDeclarations
1673
+ extend ::Unparser::Adamantium::ModuleMethods
1674
+ extend ::Unparser::Adamantium::ClassMethods
1675
+ extend ::Unparser::DSL
1676
+
1677
+ # source://unparser//lib/unparser/anima.rb#146
1678
+ def buffer; end
1679
+
1680
+ # source://unparser//lib/unparser/anima.rb#146
1681
+ def comments; end
1682
+
1683
+ # Dispatch node write as statement
1684
+ #
1685
+ # @api private
1686
+ # @return [undefined]
1687
+ #
1688
+ # source://unparser//lib/unparser/abstract_type.rb#114
1689
+ def dispatch(*_arg0); end
1690
+
1691
+ # source://unparser//lib/unparser/emitter.rb#59
1692
+ def emit_mlhs; end
1693
+
1694
+ # source://unparser//lib/unparser/anima.rb#146
1695
+ def local_variable_scope; end
1696
+
1697
+ # source://unparser//lib/unparser/anima.rb#146
1698
+ def node; end
1699
+
1700
+ # LocalVariableRoot
1701
+ #
1702
+ # source://unparser//lib/unparser/emitter.rb#38
1703
+ def node_type; end
1704
+
1705
+ class << self
1706
+ # source://unparser//lib/unparser/anima.rb#140
1707
+ def anima; end
1708
+
1709
+ # Return emitter
1710
+ #
1711
+ #
1712
+ # @api private
1713
+ # @return [Emitter]
1714
+ #
1715
+ # source://unparser//lib/unparser/emitter.rb#70
1716
+ def emitter(buffer:, comments:, node:, local_variable_scope:); end
1717
+
1718
+ # source://unparser//lib/unparser/abstract_type.rb#36
1719
+ def new(*args, &block); end
1720
+
1721
+ private
1722
+
1723
+ # Register emitter for type
1724
+ #
1725
+ # @api private
1726
+ # @param types [Symbol]
1727
+ # @return [undefined]
1728
+ #
1729
+ # source://unparser//lib/unparser/emitter.rb#50
1730
+ def handle(*types); end
1731
+ end
1732
+ end
1733
+
1734
+ # Emitter for alias nodes
1735
+ #
1736
+ # source://unparser//lib/unparser/emitter/alias.rb#6
1737
+ class Unparser::Emitter::Alias < ::Unparser::Emitter
1738
+ private
1739
+
1740
+ # source://unparser//lib/unparser/emitter/alias.rb#14
1741
+ def dispatch; end
1742
+
1743
+ # source://unparser//lib/unparser/dsl.rb#11
1744
+ def remaining_children; end
1745
+
1746
+ # source://unparser//lib/unparser/dsl.rb#18
1747
+ def source; end
1748
+
1749
+ # source://unparser//lib/unparser/dsl.rb#18
1750
+ def target; end
1751
+ end
1752
+
1753
+ # Arguments emitter
1754
+ #
1755
+ # source://unparser//lib/unparser/emitter/args.rb#6
1756
+ class Unparser::Emitter::Args < ::Unparser::Emitter
1757
+ # source://unparser//lib/unparser/emitter/args.rb#7
1758
+ def emit_block_arguments; end
1759
+
1760
+ # source://unparser//lib/unparser/emitter/args.rb#15
1761
+ def emit_def_arguments; end
1762
+
1763
+ # source://unparser//lib/unparser/emitter/args.rb#19
1764
+ def emit_lambda_arguments; end
1765
+
1766
+ private
1767
+
1768
+ # source://unparser//lib/unparser/emitter/args.rb#26
1769
+ def emit_shadowargs; end
1770
+
1771
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
1772
+ def normal_arguments(&block); end
1773
+
1774
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
1775
+ def shadowargs(&block); end
1776
+ end
1777
+
1778
+ # Argument emitter
1779
+ #
1780
+ # source://unparser//lib/unparser/emitter/argument.rb#84
1781
+ class Unparser::Emitter::Argument < ::Unparser::Emitter
1782
+ private
1783
+
1784
+ # source://unparser//lib/unparser/emitter/argument.rb#91
1785
+ def dispatch; end
1786
+
1787
+ # source://unparser//lib/unparser/dsl.rb#18
1788
+ def name; end
1789
+
1790
+ # source://unparser//lib/unparser/dsl.rb#11
1791
+ def remaining_children; end
1792
+ end
1793
+
1794
+ # Array literal emitter
1795
+ #
1796
+ # source://unparser//lib/unparser/emitter/array.rb#6
1797
+ class Unparser::Emitter::Array < ::Unparser::Emitter
1798
+ # source://unparser//lib/unparser/emitter/array.rb#9
1799
+ def emit_heredoc_reminders; end
1800
+
1801
+ private
1802
+
1803
+ # source://unparser//lib/unparser/emitter/array.rb#15
1804
+ def dispatch; end
1805
+
1806
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
1807
+ def emitters(&block); end
1808
+ end
1809
+
1810
+ # Emitter for array patterns
1811
+ #
1812
+ # source://unparser//lib/unparser/emitter/array_pattern.rb#6
1813
+ class Unparser::Emitter::ArrayPattern < ::Unparser::Emitter
1814
+ private
1815
+
1816
+ # source://unparser//lib/unparser/emitter/array_pattern.rb#13
1817
+ def dispatch; end
1818
+
1819
+ # source://unparser//lib/unparser/emitter/array_pattern.rb#20
1820
+ def emit_member(node); end
1821
+ end
1822
+
1823
+ # Base class for assignment emitters
1824
+ #
1825
+ # source://unparser//lib/unparser/emitter/assignment.rb#7
1826
+ class Unparser::Emitter::Assignment < ::Unparser::Emitter
1827
+ # source://unparser//lib/unparser/emitter/assignment.rb#14
1828
+ def emit_heredoc_reminders; end
1829
+
1830
+ # source://unparser//lib/unparser/abstract_type.rb#114
1831
+ def emit_left(*_arg0); end
1832
+
1833
+ # source://unparser//lib/unparser/emitter/assignment.rb#10
1834
+ def symbol_name; end
1835
+
1836
+ private
1837
+
1838
+ # source://unparser//lib/unparser/emitter/assignment.rb#22
1839
+ def dispatch; end
1840
+
1841
+ # source://unparser//lib/unparser/emitter/assignment.rb#27
1842
+ def emit_right; end
1843
+ end
1844
+
1845
+ # source://unparser//lib/unparser/emitter/assignment.rb#8
1846
+ Unparser::Emitter::Assignment::BINARY_OPERATOR = T.let(T.unsafe(nil), Array)
1847
+
1848
+ # Constant assignment emitter
1849
+ #
1850
+ # source://unparser//lib/unparser/emitter/assignment.rb#57
1851
+ class Unparser::Emitter::Assignment::Constant < ::Unparser::Emitter::Assignment
1852
+ private
1853
+
1854
+ # source://unparser//lib/unparser/dsl.rb#18
1855
+ def base; end
1856
+
1857
+ # source://unparser//lib/unparser/emitter/assignment.rb#65
1858
+ def emit_left; end
1859
+
1860
+ # source://unparser//lib/unparser/dsl.rb#18
1861
+ def name; end
1862
+
1863
+ # source://unparser//lib/unparser/dsl.rb#11
1864
+ def remaining_children; end
1865
+
1866
+ # source://unparser//lib/unparser/dsl.rb#18
1867
+ def right; end
1868
+ end
1869
+
1870
+ # Variable assignment emitter
1871
+ #
1872
+ # source://unparser//lib/unparser/emitter/assignment.rb#42
1873
+ class Unparser::Emitter::Assignment::Variable < ::Unparser::Emitter::Assignment
1874
+ private
1875
+
1876
+ # source://unparser//lib/unparser/emitter/assignment.rb#50
1877
+ def emit_left; end
1878
+
1879
+ # source://unparser//lib/unparser/dsl.rb#18
1880
+ def name; end
1881
+
1882
+ # source://unparser//lib/unparser/dsl.rb#11
1883
+ def remaining_children; end
1884
+
1885
+ # source://unparser//lib/unparser/dsl.rb#18
1886
+ def right; end
1887
+ end
1888
+
1889
+ # Emitter for begin nodes
1890
+ #
1891
+ # source://unparser//lib/unparser/emitter/begin.rb#7
1892
+ class Unparser::Emitter::Begin < ::Unparser::Emitter
1893
+ # source://unparser//lib/unparser/emitter/begin.rb#11
1894
+ def emit_heredoc_reminders; end
1895
+
1896
+ private
1897
+
1898
+ # source://unparser//lib/unparser/dsl.rb#18
1899
+ def body; end
1900
+
1901
+ # source://unparser//lib/unparser/emitter/begin.rb#19
1902
+ def dispatch; end
1903
+
1904
+ # source://unparser//lib/unparser/dsl.rb#11
1905
+ def remaining_children; end
1906
+ end
1907
+
1908
+ # Non send binary operator / keyword emitter
1909
+ #
1910
+ # source://unparser//lib/unparser/emitter/binary.rb#6
1911
+ class Unparser::Emitter::Binary < ::Unparser::Emitter
1912
+ private
1913
+
1914
+ # source://unparser//lib/unparser/emitter/binary.rb#11
1915
+ def dispatch; end
1916
+
1917
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
1918
+ def writer(&block); end
1919
+ end
1920
+
1921
+ # Base class for and and or op-assign
1922
+ #
1923
+ # source://unparser//lib/unparser/emitter/op_assign.rb#7
1924
+ class Unparser::Emitter::BinaryAssign < ::Unparser::Emitter
1925
+ # source://unparser//lib/unparser/emitter/op_assign.rb#17
1926
+ def emit_heredoc_reminders; end
1927
+
1928
+ private
1929
+
1930
+ # source://unparser//lib/unparser/emitter/op_assign.rb#24
1931
+ def dispatch; end
1932
+
1933
+ # source://unparser//lib/unparser/dsl.rb#18
1934
+ def expression; end
1935
+
1936
+ # source://unparser//lib/unparser/dsl.rb#11
1937
+ def remaining_children; end
1938
+
1939
+ # source://unparser//lib/unparser/dsl.rb#18
1940
+ def target; end
1941
+ end
1942
+
1943
+ # source://unparser//lib/unparser/emitter/op_assign.rb#10
1944
+ Unparser::Emitter::BinaryAssign::MAP = T.let(T.unsafe(nil), Hash)
1945
+
1946
+ # Block emitter
1947
+ #
1948
+ # source://unparser//lib/unparser/emitter/block.rb#7
1949
+ class Unparser::Emitter::Block < ::Unparser::Emitter
1950
+ private
1951
+
1952
+ # source://unparser//lib/unparser/dsl.rb#18
1953
+ def arguments; end
1954
+
1955
+ # source://unparser//lib/unparser/dsl.rb#18
1956
+ def body; end
1957
+
1958
+ # source://unparser//lib/unparser/emitter/block.rb#14
1959
+ def dispatch; end
1960
+
1961
+ # source://unparser//lib/unparser/emitter/block.rb#75
1962
+ def emit_block_arguments; end
1963
+
1964
+ # source://unparser//lib/unparser/emitter/block.rb#67
1965
+ def emit_lambda_arguments; end
1966
+
1967
+ # source://unparser//lib/unparser/emitter/block.rb#61
1968
+ def emit_send_target; end
1969
+
1970
+ # source://unparser//lib/unparser/emitter/block.rb#49
1971
+ def emit_target; end
1972
+
1973
+ # @return [Boolean]
1974
+ #
1975
+ # source://unparser//lib/unparser/emitter/block.rb#24
1976
+ def need_do?; end
1977
+
1978
+ # @return [Boolean]
1979
+ #
1980
+ # source://unparser//lib/unparser/emitter/block.rb#71
1981
+ def numblock?; end
1982
+
1983
+ # source://unparser//lib/unparser/dsl.rb#11
1984
+ def remaining_children; end
1985
+
1986
+ # source://unparser//lib/unparser/dsl.rb#18
1987
+ def target; end
1988
+
1989
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
1990
+ def target_writer(&block); end
1991
+
1992
+ # source://unparser//lib/unparser/emitter/block.rb#36
1993
+ def write_close; end
1994
+
1995
+ # source://unparser//lib/unparser/emitter/block.rb#28
1996
+ def write_open; end
1997
+ end
1998
+
1999
+ # Block pass node emitter
2000
+ #
2001
+ # source://unparser//lib/unparser/emitter/argument.rb#123
2002
+ class Unparser::Emitter::BlockPass < ::Unparser::Emitter
2003
+ private
2004
+
2005
+ # source://unparser//lib/unparser/emitter/argument.rb#130
2006
+ def dispatch; end
2007
+
2008
+ # source://unparser//lib/unparser/dsl.rb#18
2009
+ def name; end
2010
+
2011
+ # source://unparser//lib/unparser/dsl.rb#11
2012
+ def remaining_children; end
2013
+ end
2014
+
2015
+ # Emitter for toplevel constant reference nodes
2016
+ #
2017
+ # source://unparser//lib/unparser/emitter/cbase.rb#6
2018
+ class Unparser::Emitter::CBase < ::Unparser::Emitter
2019
+ private
2020
+
2021
+ # Perform dispatch
2022
+ #
2023
+ # @api private
2024
+ # @return [undefined]
2025
+ #
2026
+ # source://unparser//lib/unparser/emitter/cbase.rb#17
2027
+ def dispatch; end
2028
+ end
2029
+
2030
+ # Emitter for case nodes
2031
+ #
2032
+ # source://unparser//lib/unparser/emitter/case.rb#6
2033
+ class Unparser::Emitter::Case < ::Unparser::Emitter
2034
+ private
2035
+
2036
+ # source://unparser//lib/unparser/dsl.rb#18
2037
+ def condition; end
2038
+
2039
+ # source://unparser//lib/unparser/emitter/case.rb#14
2040
+ def dispatch; end
2041
+
2042
+ # source://unparser//lib/unparser/emitter/case.rb#35
2043
+ def emit_condition; end
2044
+
2045
+ # source://unparser//lib/unparser/emitter/case.rb#22
2046
+ def emit_else; end
2047
+
2048
+ # source://unparser//lib/unparser/emitter/case.rb#30
2049
+ def emit_whens; end
2050
+
2051
+ # source://unparser//lib/unparser/dsl.rb#11
2052
+ def remaining_children; end
2053
+
2054
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
2055
+ def whens(&block); end
2056
+ end
2057
+
2058
+ # Emitter for case guards
2059
+ #
2060
+ # source://unparser//lib/unparser/emitter/case_guard.rb#6
2061
+ class Unparser::Emitter::CaseGuard < ::Unparser::Emitter
2062
+ private
2063
+
2064
+ # source://unparser//lib/unparser/dsl.rb#18
2065
+ def condition; end
2066
+
2067
+ # source://unparser//lib/unparser/emitter/case_guard.rb#19
2068
+ def dispatch; end
2069
+
2070
+ # source://unparser//lib/unparser/dsl.rb#11
2071
+ def remaining_children; end
2072
+ end
2073
+
2074
+ # source://unparser//lib/unparser/emitter/case_guard.rb#10
2075
+ Unparser::Emitter::CaseGuard::MAP = T.let(T.unsafe(nil), Hash)
2076
+
2077
+ # Emitter for case matches
2078
+ #
2079
+ # source://unparser//lib/unparser/emitter/case_match.rb#6
2080
+ class Unparser::Emitter::CaseMatch < ::Unparser::Emitter
2081
+ private
2082
+
2083
+ # source://unparser//lib/unparser/emitter/case_match.rb#20
2084
+ def dispatch; end
2085
+
2086
+ # source://unparser//lib/unparser/emitter/case_match.rb#16
2087
+ def else_branch; end
2088
+
2089
+ # source://unparser//lib/unparser/emitter/case_match.rb#30
2090
+ def emit_else_branch; end
2091
+
2092
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
2093
+ def patterns(&block); end
2094
+
2095
+ # source://unparser//lib/unparser/dsl.rb#11
2096
+ def remaining_children; end
2097
+
2098
+ # source://unparser//lib/unparser/dsl.rb#18
2099
+ def target; end
2100
+ end
2101
+
2102
+ # Emitter for class nodes
2103
+ #
2104
+ # source://unparser//lib/unparser/emitter/class.rb#6
2105
+ class Unparser::Emitter::Class < ::Unparser::Emitter
2106
+ include ::Unparser::Emitter::LocalVariableRoot
2107
+
2108
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
2109
+ def local_variable_scope(&block); end
2110
+
2111
+ private
2112
+
2113
+ # source://unparser//lib/unparser/dsl.rb#18
2114
+ def body; end
2115
+
2116
+ # source://unparser//lib/unparser/emitter/class.rb#15
2117
+ def dispatch; end
2118
+
2119
+ # source://unparser//lib/unparser/emitter/class.rb#23
2120
+ def emit_superclass; end
2121
+
2122
+ # source://unparser//lib/unparser/dsl.rb#18
2123
+ def name; end
2124
+
2125
+ # source://unparser//lib/unparser/dsl.rb#11
2126
+ def remaining_children; end
2127
+
2128
+ # source://unparser//lib/unparser/dsl.rb#18
2129
+ def superclass; end
2130
+ end
2131
+
2132
+ # Emitter for constant access
2133
+ #
2134
+ # source://unparser//lib/unparser/emitter/variable.rb#21
2135
+ class Unparser::Emitter::Const < ::Unparser::Emitter
2136
+ private
2137
+
2138
+ # source://unparser//lib/unparser/emitter/variable.rb#28
2139
+ def dispatch; end
2140
+
2141
+ # source://unparser//lib/unparser/emitter/variable.rb#33
2142
+ def emit_scope; end
2143
+
2144
+ # source://unparser//lib/unparser/dsl.rb#18
2145
+ def name; end
2146
+
2147
+ # source://unparser//lib/unparser/dsl.rb#11
2148
+ def remaining_children; end
2149
+
2150
+ # source://unparser//lib/unparser/dsl.rb#18
2151
+ def scope; end
2152
+ end
2153
+
2154
+ # Emitter for const pattern node
2155
+ #
2156
+ # source://unparser//lib/unparser/emitter/const_pattern.rb#6
2157
+ class Unparser::Emitter::ConstPattern < ::Unparser::Emitter
2158
+ private
2159
+
2160
+ # source://unparser//lib/unparser/dsl.rb#18
2161
+ def const; end
2162
+
2163
+ # source://unparser//lib/unparser/emitter/const_pattern.rb#14
2164
+ def dispatch; end
2165
+
2166
+ # source://unparser//lib/unparser/dsl.rb#18
2167
+ def pattern; end
2168
+
2169
+ # source://unparser//lib/unparser/dsl.rb#11
2170
+ def remaining_children; end
2171
+ end
2172
+
2173
+ # Dynamic string emitter
2174
+ #
2175
+ # source://unparser//lib/unparser/emitter/dstr.rb#6
2176
+ class Unparser::Emitter::DStr < ::Unparser::Emitter
2177
+ # source://unparser//lib/unparser/emitter/dstr.rb#10
2178
+ def emit_heredoc_reminders; end
2179
+
2180
+ private
2181
+
2182
+ # source://unparser//lib/unparser/emitter/dstr.rb#16
2183
+ def dispatch; end
2184
+ end
2185
+
2186
+ # Dynamic symbol literal emitter
2187
+ #
2188
+ # source://unparser//lib/unparser/emitter/dsym.rb#6
2189
+ class Unparser::Emitter::DSym < ::Unparser::Emitter
2190
+ private
2191
+
2192
+ # source://unparser//lib/unparser/emitter/dsym.rb#11
2193
+ def dispatch; end
2194
+
2195
+ # source://unparser//lib/unparser/emitter/dsym.rb#34
2196
+ def emit_begin_child(component); end
2197
+
2198
+ # source://unparser//lib/unparser/emitter/dsym.rb#24
2199
+ def emit_str_child(value); end
2200
+ end
2201
+
2202
+ # Emitter for def node
2203
+ #
2204
+ # source://unparser//lib/unparser/emitter/def.rb#6
2205
+ class Unparser::Emitter::Def < ::Unparser::Emitter
2206
+ include ::Unparser::Emitter::LocalVariableRoot
2207
+
2208
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
2209
+ def local_variable_scope(&block); end
2210
+
2211
+ private
2212
+
2213
+ # source://unparser//lib/unparser/abstract_type.rb#114
2214
+ def body(*_arg0); end
2215
+
2216
+ # source://unparser//lib/unparser/emitter/def.rb#17
2217
+ def dispatch; end
2218
+
2219
+ # source://unparser//lib/unparser/emitter/def.rb#25
2220
+ def emit_arguments; end
2221
+
2222
+ # source://unparser//lib/unparser/abstract_type.rb#114
2223
+ def emit_name(*_arg0); end
2224
+ end
2225
+
2226
+ # Instance def emitter
2227
+ #
2228
+ # source://unparser//lib/unparser/emitter/def.rb#34
2229
+ class Unparser::Emitter::Def::Instance < ::Unparser::Emitter::Def
2230
+ private
2231
+
2232
+ # source://unparser//lib/unparser/dsl.rb#18
2233
+ def arguments; end
2234
+
2235
+ # source://unparser//lib/unparser/dsl.rb#18
2236
+ def body; end
2237
+
2238
+ # source://unparser//lib/unparser/emitter/def.rb#41
2239
+ def emit_name; end
2240
+
2241
+ # source://unparser//lib/unparser/dsl.rb#18
2242
+ def name; end
2243
+
2244
+ # source://unparser//lib/unparser/dsl.rb#11
2245
+ def remaining_children; end
2246
+ end
2247
+
2248
+ # Emitter for defines on singleton
2249
+ #
2250
+ # source://unparser//lib/unparser/emitter/def.rb#48
2251
+ class Unparser::Emitter::Def::Singleton < ::Unparser::Emitter::Def
2252
+ private
2253
+
2254
+ # source://unparser//lib/unparser/dsl.rb#18
2255
+ def arguments; end
2256
+
2257
+ # source://unparser//lib/unparser/dsl.rb#18
2258
+ def body; end
2259
+
2260
+ # source://unparser//lib/unparser/emitter/def.rb#56
2261
+ def emit_name; end
2262
+
2263
+ # source://unparser//lib/unparser/dsl.rb#18
2264
+ def name; end
2265
+
2266
+ # source://unparser//lib/unparser/dsl.rb#11
2267
+ def remaining_children; end
2268
+
2269
+ # source://unparser//lib/unparser/dsl.rb#18
2270
+ def subject; end
2271
+
2272
+ # @return [Boolean]
2273
+ #
2274
+ # source://unparser//lib/unparser/emitter/def.rb#63
2275
+ def subject_without_parens?; end
2276
+ end
2277
+
2278
+ # Emitter for defined? nodes
2279
+ #
2280
+ # source://unparser//lib/unparser/emitter/defined.rb#6
2281
+ class Unparser::Emitter::Defined < ::Unparser::Emitter
2282
+ private
2283
+
2284
+ # source://unparser//lib/unparser/emitter/defined.rb#13
2285
+ def dispatch; end
2286
+
2287
+ # source://unparser//lib/unparser/dsl.rb#11
2288
+ def remaining_children; end
2289
+
2290
+ # source://unparser//lib/unparser/dsl.rb#18
2291
+ def subject; end
2292
+ end
2293
+
2294
+ # Emitter for in pattern nodes
2295
+ #
2296
+ # source://unparser//lib/unparser/emitter/find_pattern.rb#6
2297
+ class Unparser::Emitter::FindPattern < ::Unparser::Emitter
2298
+ private
2299
+
2300
+ # source://unparser//lib/unparser/emitter/find_pattern.rb#11
2301
+ def dispatch; end
2302
+ end
2303
+
2304
+ # Emitter for flip flops
2305
+ #
2306
+ # source://unparser//lib/unparser/emitter/flipflop.rb#6
2307
+ class Unparser::Emitter::FlipFlop < ::Unparser::Emitter
2308
+ # source://unparser//lib/unparser/emitter/flipflop.rb#17
2309
+ def symbol_name; end
2310
+
2311
+ private
2312
+
2313
+ # source://unparser//lib/unparser/emitter/flipflop.rb#27
2314
+ def dispatch; end
2315
+
2316
+ # source://unparser//lib/unparser/dsl.rb#18
2317
+ def left; end
2318
+
2319
+ # source://unparser//lib/unparser/dsl.rb#11
2320
+ def remaining_children; end
2321
+
2322
+ # source://unparser//lib/unparser/dsl.rb#18
2323
+ def right; end
2324
+ end
2325
+
2326
+ # source://unparser//lib/unparser/emitter/flipflop.rb#7
2327
+ Unparser::Emitter::FlipFlop::MAP = T.let(T.unsafe(nil), Hash)
2328
+
2329
+ # source://unparser//lib/unparser/emitter/flipflop.rb#12
2330
+ Unparser::Emitter::FlipFlop::SYMBOLS = T.let(T.unsafe(nil), Hash)
2331
+
2332
+ # Emiter for float literals
2333
+ #
2334
+ # source://unparser//lib/unparser/emitter/float.rb#6
2335
+ class Unparser::Emitter::Float < ::Unparser::Emitter
2336
+ private
2337
+
2338
+ # source://unparser//lib/unparser/emitter/float.rb#16
2339
+ def dispatch; end
2340
+
2341
+ # source://unparser//lib/unparser/dsl.rb#11
2342
+ def remaining_children; end
2343
+
2344
+ # source://unparser//lib/unparser/dsl.rb#18
2345
+ def value; end
2346
+ end
2347
+
2348
+ # source://unparser//lib/unparser/emitter/float.rb#11
2349
+ Unparser::Emitter::Float::INFINITY = T.let(T.unsafe(nil), Float)
2350
+
2351
+ # source://unparser//lib/unparser/emitter/float.rb#12
2352
+ Unparser::Emitter::Float::NEG_INFINITY = T.let(T.unsafe(nil), Float)
2353
+
2354
+ # Emitter control flow modifiers
2355
+ #
2356
+ # source://unparser//lib/unparser/emitter/flow_modifier.rb#6
2357
+ class Unparser::Emitter::FlowModifier < ::Unparser::Emitter
2358
+ # source://unparser//lib/unparser/emitter/flow_modifier.rb#17
2359
+ def emit_heredoc_reminders; end
2360
+
2361
+ private
2362
+
2363
+ # source://unparser//lib/unparser/emitter/flow_modifier.rb#25
2364
+ def dispatch; end
2365
+
2366
+ # source://unparser//lib/unparser/emitter/flow_modifier.rb#36
2367
+ def emit_arguments; end
2368
+ end
2369
+
2370
+ # source://unparser//lib/unparser/emitter/flow_modifier.rb#7
2371
+ Unparser::Emitter::FlowModifier::MAP = T.let(T.unsafe(nil), Hash)
2372
+
2373
+ # Emitter for for nodes
2374
+ #
2375
+ # source://unparser//lib/unparser/emitter/for.rb#6
2376
+ class Unparser::Emitter::For < ::Unparser::Emitter
2377
+ private
2378
+
2379
+ # source://unparser//lib/unparser/dsl.rb#18
2380
+ def assignment; end
2381
+
2382
+ # source://unparser//lib/unparser/dsl.rb#18
2383
+ def body; end
2384
+
2385
+ # source://unparser//lib/unparser/dsl.rb#18
2386
+ def condition; end
2387
+
2388
+ # source://unparser//lib/unparser/emitter/for.rb#13
2389
+ def dispatch; end
2390
+
2391
+ # source://unparser//lib/unparser/emitter/for.rb#20
2392
+ def emit_condition; end
2393
+
2394
+ # source://unparser//lib/unparser/dsl.rb#11
2395
+ def remaining_children; end
2396
+ end
2397
+
2398
+ # Emitter for forwarding arguments
2399
+ #
2400
+ # source://unparser//lib/unparser/emitter/argument.rb#6
2401
+ class Unparser::Emitter::ForwardArg < ::Unparser::Emitter
2402
+ private
2403
+
2404
+ # source://unparser//lib/unparser/emitter/argument.rb#20
2405
+ def dispatch; end
2406
+
2407
+ # source://unparser//lib/unparser/dsl.rb#18
2408
+ def name; end
2409
+
2410
+ # source://unparser//lib/unparser/dsl.rb#11
2411
+ def remaining_children; end
2412
+ end
2413
+
2414
+ # source://unparser//lib/unparser/emitter/argument.rb#7
2415
+ Unparser::Emitter::ForwardArg::MAP = T.let(T.unsafe(nil), Hash)
2416
+
2417
+ # Emitter for Hash literals
2418
+ #
2419
+ # source://unparser//lib/unparser/emitter/hash.rb#6
2420
+ class Unparser::Emitter::Hash < ::Unparser::Emitter
2421
+ # source://unparser//lib/unparser/emitter/hash.rb#9
2422
+ def emit_heredoc_reminders; end
2423
+
2424
+ private
2425
+
2426
+ # source://unparser//lib/unparser/emitter/hash.rb#15
2427
+ def dispatch; end
2428
+
2429
+ # source://unparser//lib/unparser/emitter/hash.rb#31
2430
+ def emit_hash_body; end
2431
+
2432
+ # source://unparser//lib/unparser/emitter/hash.rb#27
2433
+ def emit_heredoc_reminder_member(node); end
2434
+ end
2435
+
2436
+ # Emitter for hash patterns
2437
+ #
2438
+ # source://unparser//lib/unparser/emitter/hash_pattern.rb#6
2439
+ class Unparser::Emitter::HashPattern < ::Unparser::Emitter
2440
+ # source://unparser//lib/unparser/emitter/hash_pattern.rb#10
2441
+ def emit_const_pattern; end
2442
+
2443
+ private
2444
+
2445
+ # source://unparser//lib/unparser/emitter/hash_pattern.rb#18
2446
+ def dispatch; end
2447
+
2448
+ # source://unparser//lib/unparser/emitter/hash_pattern.rb#24
2449
+ def emit_hash_body; end
2450
+
2451
+ # source://unparser//lib/unparser/emitter/hash_pattern.rb#41
2452
+ def emit_match_var(node); end
2453
+
2454
+ # source://unparser//lib/unparser/emitter/hash_pattern.rb#28
2455
+ def emit_member(node); end
2456
+
2457
+ # source://unparser//lib/unparser/emitter/hash_pattern.rb#46
2458
+ def emit_pair(node); end
2459
+
2460
+ # source://unparser//lib/unparser/emitter/hash_pattern.rb#62
2461
+ def write_symbol_body(symbol); end
2462
+ end
2463
+
2464
+ # Base class for pre and postexe emitters
2465
+ #
2466
+ # source://unparser//lib/unparser/emitter/hookexe.rb#6
2467
+ class Unparser::Emitter::Hookexe < ::Unparser::Emitter
2468
+ private
2469
+
2470
+ # source://unparser//lib/unparser/dsl.rb#18
2471
+ def body; end
2472
+
2473
+ # source://unparser//lib/unparser/emitter/hookexe.rb#19
2474
+ def dispatch; end
2475
+
2476
+ # source://unparser//lib/unparser/dsl.rb#11
2477
+ def remaining_children; end
2478
+ end
2479
+
2480
+ # source://unparser//lib/unparser/emitter/hookexe.rb#8
2481
+ Unparser::Emitter::Hookexe::MAP = T.let(T.unsafe(nil), Hash)
2482
+
2483
+ # Emitter if nodes
2484
+ #
2485
+ # source://unparser//lib/unparser/emitter/if.rb#6
2486
+ class Unparser::Emitter::If < ::Unparser::Emitter
2487
+ # source://unparser//lib/unparser/emitter/if.rb#11
2488
+ def emit_ternary; end
2489
+
2490
+ private
2491
+
2492
+ # source://unparser//lib/unparser/dsl.rb#18
2493
+ def condition; end
2494
+
2495
+ # source://unparser//lib/unparser/emitter/if.rb#21
2496
+ def dispatch; end
2497
+
2498
+ # source://unparser//lib/unparser/dsl.rb#18
2499
+ def else_branch; end
2500
+
2501
+ # source://unparser//lib/unparser/emitter/if.rb#59
2502
+ def emit_condition; end
2503
+
2504
+ # source://unparser//lib/unparser/emitter/if.rb#71
2505
+ def emit_else_branch; end
2506
+
2507
+ # source://unparser//lib/unparser/emitter/if.rb#63
2508
+ def emit_if_branch; end
2509
+
2510
+ # source://unparser//lib/unparser/emitter/if.rb#43
2511
+ def emit_normal; end
2512
+
2513
+ # source://unparser//lib/unparser/emitter/if.rb#37
2514
+ def emit_postcondition; end
2515
+
2516
+ # source://unparser//lib/unparser/dsl.rb#18
2517
+ def if_branch; end
2518
+
2519
+ # source://unparser//lib/unparser/emitter/if.rb#55
2520
+ def keyword; end
2521
+
2522
+ # @return [Boolean]
2523
+ #
2524
+ # source://unparser//lib/unparser/emitter/if.rb#29
2525
+ def postcondition?; end
2526
+
2527
+ # source://unparser//lib/unparser/dsl.rb#11
2528
+ def remaining_children; end
2529
+
2530
+ # @return [Boolean]
2531
+ #
2532
+ # source://unparser//lib/unparser/emitter/if.rb#51
2533
+ def unless?; end
2534
+ end
2535
+
2536
+ # Emitter for in pattern nodes
2537
+ #
2538
+ # source://unparser//lib/unparser/emitter/in_match.rb#6
2539
+ class Unparser::Emitter::InMatch < ::Unparser::Emitter
2540
+ private
2541
+
2542
+ # source://unparser//lib/unparser/emitter/in_match.rb#14
2543
+ def dispatch; end
2544
+
2545
+ # source://unparser//lib/unparser/dsl.rb#18
2546
+ def pattern; end
2547
+
2548
+ # source://unparser//lib/unparser/dsl.rb#11
2549
+ def remaining_children; end
2550
+
2551
+ # source://unparser//lib/unparser/dsl.rb#18
2552
+ def target; end
2553
+ end
2554
+
2555
+ # Emitter for in pattern nodes
2556
+ #
2557
+ # source://unparser//lib/unparser/emitter/in_pattern.rb#6
2558
+ class Unparser::Emitter::InPattern < ::Unparser::Emitter
2559
+ private
2560
+
2561
+ # source://unparser//lib/unparser/dsl.rb#18
2562
+ def branch; end
2563
+
2564
+ # source://unparser//lib/unparser/emitter/in_pattern.rb#14
2565
+ def dispatch; end
2566
+
2567
+ # source://unparser//lib/unparser/dsl.rb#18
2568
+ def else_branch; end
2569
+
2570
+ # source://unparser//lib/unparser/dsl.rb#11
2571
+ def remaining_children; end
2572
+
2573
+ # source://unparser//lib/unparser/dsl.rb#18
2574
+ def target; end
2575
+
2576
+ # source://unparser//lib/unparser/dsl.rb#18
2577
+ def unless_guard; end
2578
+ end
2579
+
2580
+ # Emitter for send to index references
2581
+ #
2582
+ # source://unparser//lib/unparser/emitter/index.rb#6
2583
+ class Unparser::Emitter::Index < ::Unparser::Emitter
2584
+ private
2585
+
2586
+ # source://unparser//lib/unparser/emitter/index.rb#10
2587
+ def dispatch; end
2588
+
2589
+ # source://unparser//lib/unparser/emitter/index.rb#15
2590
+ def emit_receiver; end
2591
+ end
2592
+
2593
+ # Emitter for assign to index nodes
2594
+ #
2595
+ # source://unparser//lib/unparser/emitter/index.rb#34
2596
+ class Unparser::Emitter::Index::Assign < ::Unparser::Emitter::Index
2597
+ # source://unparser//lib/unparser/emitter/index.rb#47
2598
+ def dispatch; end
2599
+
2600
+ # source://unparser//lib/unparser/emitter/index.rb#43
2601
+ def emit_heredoc_reminders; end
2602
+
2603
+ # source://unparser//lib/unparser/emitter/index.rb#54
2604
+ def emit_mlhs; end
2605
+
2606
+ private
2607
+
2608
+ # source://unparser//lib/unparser/emitter/index.rb#61
2609
+ def emit_operation(indices); end
2610
+ end
2611
+
2612
+ # source://unparser//lib/unparser/emitter/index.rb#39
2613
+ Unparser::Emitter::Index::Assign::NO_VALUE_PARENT = T.let(T.unsafe(nil), Set)
2614
+
2615
+ # source://unparser//lib/unparser/emitter/index.rb#38
2616
+ Unparser::Emitter::Index::Assign::VALUE_RANGE = T.let(T.unsafe(nil), Range)
2617
+
2618
+ # source://unparser//lib/unparser/emitter/index.rb#19
2619
+ class Unparser::Emitter::Index::Reference < ::Unparser::Emitter::Index
2620
+ private
2621
+
2622
+ # source://unparser//lib/unparser/emitter/index.rb#26
2623
+ def emit_operation; end
2624
+
2625
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
2626
+ def indices(&block); end
2627
+ end
2628
+
2629
+ # Emitter for explicit begins
2630
+ #
2631
+ # source://unparser//lib/unparser/emitter/kwbegin.rb#6
2632
+ class Unparser::Emitter::KWBegin < ::Unparser::Emitter
2633
+ private
2634
+
2635
+ # source://unparser//lib/unparser/emitter/kwbegin.rb#11
2636
+ def dispatch; end
2637
+
2638
+ # source://unparser//lib/unparser/emitter/kwbegin.rb#25
2639
+ def emit_multiple_body; end
2640
+ end
2641
+
2642
+ # Optional keyword argument emitter
2643
+ #
2644
+ # source://unparser//lib/unparser/emitter/argument.rb#41
2645
+ class Unparser::Emitter::KeywordOptional < ::Unparser::Emitter
2646
+ private
2647
+
2648
+ # source://unparser//lib/unparser/emitter/argument.rb#48
2649
+ def dispatch; end
2650
+
2651
+ # source://unparser//lib/unparser/dsl.rb#18
2652
+ def name; end
2653
+
2654
+ # source://unparser//lib/unparser/dsl.rb#11
2655
+ def remaining_children; end
2656
+
2657
+ # source://unparser//lib/unparser/dsl.rb#18
2658
+ def value; end
2659
+ end
2660
+
2661
+ # Emitter for splats
2662
+ #
2663
+ # source://unparser//lib/unparser/emitter/splat.rb#6
2664
+ class Unparser::Emitter::KwSplat < ::Unparser::Emitter
2665
+ private
2666
+
2667
+ # source://unparser//lib/unparser/emitter/splat.rb#13
2668
+ def dispatch; end
2669
+
2670
+ # source://unparser//lib/unparser/dsl.rb#11
2671
+ def remaining_children; end
2672
+
2673
+ # source://unparser//lib/unparser/dsl.rb#18
2674
+ def subject; end
2675
+ end
2676
+
2677
+ # Keyword argument emitter
2678
+ #
2679
+ # source://unparser//lib/unparser/emitter/argument.rb#56
2680
+ class Unparser::Emitter::Kwarg < ::Unparser::Emitter
2681
+ private
2682
+
2683
+ # source://unparser//lib/unparser/emitter/argument.rb#63
2684
+ def dispatch; end
2685
+
2686
+ # source://unparser//lib/unparser/dsl.rb#18
2687
+ def name; end
2688
+
2689
+ # source://unparser//lib/unparser/dsl.rb#11
2690
+ def remaining_children; end
2691
+ end
2692
+
2693
+ # source://unparser//lib/unparser/emitter/kwargs.rb#5
2694
+ class Unparser::Emitter::Kwargs < ::Unparser::Emitter
2695
+ # source://unparser//lib/unparser/emitter/kwargs.rb#8
2696
+ def dispatch; end
2697
+ end
2698
+
2699
+ # Emitter for lambda nodes
2700
+ #
2701
+ # source://unparser//lib/unparser/emitter/lambda.rb#6
2702
+ class Unparser::Emitter::Lambda < ::Unparser::Emitter
2703
+ private
2704
+
2705
+ # source://unparser//lib/unparser/emitter/lambda.rb#11
2706
+ def dispatch; end
2707
+ end
2708
+
2709
+ # source://unparser//lib/unparser/emitter.rb#20
2710
+ module Unparser::Emitter::LocalVariableRoot
2711
+ # Return local variable root
2712
+ #
2713
+ # @api private
2714
+ # @return [Parser::AST::Node]
2715
+ #
2716
+ # source://unparser//lib/unparser/emitter.rb#27
2717
+ def local_variable_scope; end
2718
+
2719
+ class << self
2720
+ # @private
2721
+ #
2722
+ # source://unparser//lib/unparser/emitter.rb#31
2723
+ def included(descendant); end
2724
+ end
2725
+ end
2726
+
2727
+ # Emitter for multiple assignment nodes
2728
+ #
2729
+ # source://unparser//lib/unparser/emitter/masgn.rb#6
2730
+ class Unparser::Emitter::MASGN < ::Unparser::Emitter
2731
+ private
2732
+
2733
+ # source://unparser//lib/unparser/emitter/masgn.rb#13
2734
+ def dispatch; end
2735
+
2736
+ # source://unparser//lib/unparser/dsl.rb#11
2737
+ def remaining_children; end
2738
+
2739
+ # source://unparser//lib/unparser/dsl.rb#18
2740
+ def source; end
2741
+
2742
+ # source://unparser//lib/unparser/dsl.rb#18
2743
+ def target; end
2744
+ end
2745
+
2746
+ # Emitter for multiple assignment left hand side
2747
+ #
2748
+ # source://unparser//lib/unparser/emitter/mlhs.rb#6
2749
+ class Unparser::Emitter::MLHS < ::Unparser::Emitter
2750
+ private
2751
+
2752
+ # source://unparser//lib/unparser/emitter/mlhs.rb#15
2753
+ def dispatch; end
2754
+
2755
+ # source://unparser//lib/unparser/emitter/mlhs.rb#31
2756
+ def emit_many; end
2757
+
2758
+ # source://unparser//lib/unparser/emitter/mlhs.rb#23
2759
+ def emit_one_child_mlhs; end
2760
+ end
2761
+
2762
+ # source://unparser//lib/unparser/emitter/mlhs.rb#9
2763
+ Unparser::Emitter::MLHS::NO_COMMA = T.let(T.unsafe(nil), Array)
2764
+
2765
+ # Base class for special match node emitters
2766
+ #
2767
+ # source://unparser//lib/unparser/emitter/match.rb#8
2768
+ class Unparser::Emitter::Match < ::Unparser::Emitter; end
2769
+
2770
+ # Emitter for match current line
2771
+ #
2772
+ # source://unparser//lib/unparser/emitter/match.rb#25
2773
+ class Unparser::Emitter::Match::CurrentLine < ::Unparser::Emitter::Match
2774
+ private
2775
+
2776
+ # source://unparser//lib/unparser/emitter/match.rb#32
2777
+ def dispatch; end
2778
+
2779
+ # source://unparser//lib/unparser/dsl.rb#18
2780
+ def regexp; end
2781
+
2782
+ # source://unparser//lib/unparser/dsl.rb#11
2783
+ def remaining_children; end
2784
+ end
2785
+
2786
+ # Emitter for match with local variable assignment
2787
+ #
2788
+ # source://unparser//lib/unparser/emitter/match.rb#9
2789
+ class Unparser::Emitter::Match::Lvasgn < ::Unparser::Emitter::Match
2790
+ private
2791
+
2792
+ # source://unparser//lib/unparser/emitter/match.rb#16
2793
+ def dispatch; end
2794
+
2795
+ # source://unparser//lib/unparser/dsl.rb#18
2796
+ def lvasgn; end
2797
+
2798
+ # source://unparser//lib/unparser/dsl.rb#18
2799
+ def regexp; end
2800
+
2801
+ # source://unparser//lib/unparser/dsl.rb#11
2802
+ def remaining_children; end
2803
+ end
2804
+
2805
+ # Emitter for in pattern nodes
2806
+ #
2807
+ # source://unparser//lib/unparser/emitter/match_alt.rb#6
2808
+ class Unparser::Emitter::MatchAlt < ::Unparser::Emitter
2809
+ private
2810
+
2811
+ # source://unparser//lib/unparser/emitter/match_alt.rb#14
2812
+ def dispatch; end
2813
+
2814
+ # source://unparser//lib/unparser/dsl.rb#18
2815
+ def left; end
2816
+
2817
+ # source://unparser//lib/unparser/dsl.rb#11
2818
+ def remaining_children; end
2819
+
2820
+ # source://unparser//lib/unparser/dsl.rb#18
2821
+ def right; end
2822
+ end
2823
+
2824
+ # Emitter for in pattern nodes
2825
+ #
2826
+ # source://unparser//lib/unparser/emitter/match_as.rb#6
2827
+ class Unparser::Emitter::MatchAs < ::Unparser::Emitter
2828
+ private
2829
+
2830
+ # source://unparser//lib/unparser/emitter/match_as.rb#14
2831
+ def dispatch; end
2832
+
2833
+ # source://unparser//lib/unparser/dsl.rb#18
2834
+ def left; end
2835
+
2836
+ # source://unparser//lib/unparser/dsl.rb#11
2837
+ def remaining_children; end
2838
+
2839
+ # source://unparser//lib/unparser/dsl.rb#18
2840
+ def right; end
2841
+ end
2842
+
2843
+ # Emitter for in pattern nodes
2844
+ #
2845
+ # source://unparser//lib/unparser/emitter/match_pattern.rb#6
2846
+ class Unparser::Emitter::MatchPattern < ::Unparser::Emitter
2847
+ private
2848
+
2849
+ # source://unparser//lib/unparser/emitter/match_pattern.rb#23
2850
+ def dispatch; end
2851
+
2852
+ # source://unparser//lib/unparser/dsl.rb#18
2853
+ def pattern; end
2854
+
2855
+ # source://unparser//lib/unparser/dsl.rb#11
2856
+ def remaining_children; end
2857
+
2858
+ # source://unparser//lib/unparser/dsl.rb#18
2859
+ def target; end
2860
+ end
2861
+
2862
+ # Modern ast format emits `match_pattern`
2863
+ # node on single line pre 3.0, but 3.0+ uses `match_pattern_p`
2864
+ #
2865
+ # source://unparser//lib/unparser/emitter/match_pattern.rb#14
2866
+ Unparser::Emitter::MatchPattern::SYMBOL = T.let(T.unsafe(nil), String)
2867
+
2868
+ # source://unparser//lib/unparser/emitter/match_pattern_p.rb#5
2869
+ class Unparser::Emitter::MatchPatternP < ::Unparser::Emitter
2870
+ private
2871
+
2872
+ # source://unparser//lib/unparser/emitter/match_pattern_p.rb#13
2873
+ def dispatch; end
2874
+
2875
+ # source://unparser//lib/unparser/dsl.rb#18
2876
+ def pattern; end
2877
+
2878
+ # source://unparser//lib/unparser/dsl.rb#11
2879
+ def remaining_children; end
2880
+
2881
+ # source://unparser//lib/unparser/dsl.rb#18
2882
+ def target; end
2883
+ end
2884
+
2885
+ # Emiter for match rest nodes
2886
+ #
2887
+ # source://unparser//lib/unparser/emitter/match_rest.rb#6
2888
+ class Unparser::Emitter::MatchRest < ::Unparser::Emitter
2889
+ # source://unparser//lib/unparser/emitter/match_rest.rb#11
2890
+ def dispatch; end
2891
+
2892
+ # source://unparser//lib/unparser/emitter/match_rest.rb#16
2893
+ def emit_array_pattern; end
2894
+
2895
+ # source://unparser//lib/unparser/emitter/match_rest.rb#21
2896
+ def emit_hash_pattern; end
2897
+
2898
+ private
2899
+
2900
+ # source://unparser//lib/unparser/emitter/match_rest.rb#28
2901
+ def emit_match_var; end
2902
+
2903
+ # source://unparser//lib/unparser/dsl.rb#18
2904
+ def match_var; end
2905
+
2906
+ # source://unparser//lib/unparser/dsl.rb#11
2907
+ def remaining_children; end
2908
+ end
2909
+
2910
+ # Emitter for in pattern nodes
2911
+ #
2912
+ # source://unparser//lib/unparser/emitter/match_var.rb#6
2913
+ class Unparser::Emitter::MatchVar < ::Unparser::Emitter
2914
+ private
2915
+
2916
+ # source://unparser//lib/unparser/emitter/match_var.rb#14
2917
+ def dispatch; end
2918
+
2919
+ # source://unparser//lib/unparser/dsl.rb#18
2920
+ def name; end
2921
+
2922
+ # source://unparser//lib/unparser/dsl.rb#11
2923
+ def remaining_children; end
2924
+ end
2925
+
2926
+ # Emitter for module nodes
2927
+ #
2928
+ # source://unparser//lib/unparser/emitter/module.rb#6
2929
+ class Unparser::Emitter::Module < ::Unparser::Emitter
2930
+ include ::Unparser::Emitter::LocalVariableRoot
2931
+
2932
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
2933
+ def local_variable_scope(&block); end
2934
+
2935
+ private
2936
+
2937
+ # source://unparser//lib/unparser/dsl.rb#18
2938
+ def body; end
2939
+
2940
+ # source://unparser//lib/unparser/emitter/module.rb#15
2941
+ def dispatch; end
2942
+
2943
+ # source://unparser//lib/unparser/dsl.rb#18
2944
+ def name; end
2945
+
2946
+ # source://unparser//lib/unparser/dsl.rb#11
2947
+ def remaining_children; end
2948
+ end
2949
+
2950
+ # source://unparser//lib/unparser/emitter.rb#18
2951
+ Unparser::Emitter::NO_INDENT = T.let(T.unsafe(nil), Array)
2952
+
2953
+ # Emitter for nth_ref nodes (regexp captures)
2954
+ #
2955
+ # source://unparser//lib/unparser/emitter/variable.rb#42
2956
+ class Unparser::Emitter::NthRef < ::Unparser::Emitter
2957
+ private
2958
+
2959
+ # source://unparser//lib/unparser/emitter/variable.rb#50
2960
+ def dispatch; end
2961
+
2962
+ # source://unparser//lib/unparser/dsl.rb#18
2963
+ def name; end
2964
+
2965
+ # source://unparser//lib/unparser/dsl.rb#11
2966
+ def remaining_children; end
2967
+ end
2968
+
2969
+ # source://unparser//lib/unparser/emitter/variable.rb#43
2970
+ Unparser::Emitter::NthRef::PREFIX = T.let(T.unsafe(nil), String)
2971
+
2972
+ # Emitter for op assign
2973
+ #
2974
+ # source://unparser//lib/unparser/emitter/op_assign.rb#33
2975
+ class Unparser::Emitter::OpAssign < ::Unparser::Emitter
2976
+ private
2977
+
2978
+ # source://unparser//lib/unparser/emitter/op_assign.rb#40
2979
+ def dispatch; end
2980
+
2981
+ # source://unparser//lib/unparser/emitter/op_assign.rb#46
2982
+ def emit_operator; end
2983
+
2984
+ # source://unparser//lib/unparser/dsl.rb#18
2985
+ def operator; end
2986
+
2987
+ # source://unparser//lib/unparser/dsl.rb#11
2988
+ def remaining_children; end
2989
+
2990
+ # source://unparser//lib/unparser/dsl.rb#18
2991
+ def target; end
2992
+
2993
+ # source://unparser//lib/unparser/dsl.rb#18
2994
+ def value; end
2995
+ end
2996
+
2997
+ # Optional argument emitter
2998
+ #
2999
+ # source://unparser//lib/unparser/emitter/argument.rb#27
3000
+ class Unparser::Emitter::Optarg < ::Unparser::Emitter
3001
+ private
3002
+
3003
+ # source://unparser//lib/unparser/emitter/argument.rb#34
3004
+ def dispatch; end
3005
+
3006
+ # source://unparser//lib/unparser/dsl.rb#18
3007
+ def name; end
3008
+
3009
+ # source://unparser//lib/unparser/dsl.rb#11
3010
+ def remaining_children; end
3011
+
3012
+ # source://unparser//lib/unparser/dsl.rb#18
3013
+ def value; end
3014
+ end
3015
+
3016
+ # Emitter for key value pairs in hash literals or kwargs
3017
+ #
3018
+ # source://unparser//lib/unparser/emitter/pair.rb#6
3019
+ class Unparser::Emitter::Pair < ::Unparser::Emitter
3020
+ private
3021
+
3022
+ # @return [Boolean]
3023
+ #
3024
+ # source://unparser//lib/unparser/emitter/pair.rb#28
3025
+ def colon?(key); end
3026
+
3027
+ # source://unparser//lib/unparser/emitter/pair.rb#17
3028
+ def dispatch; end
3029
+
3030
+ # source://unparser//lib/unparser/dsl.rb#18
3031
+ def key; end
3032
+
3033
+ # source://unparser//lib/unparser/dsl.rb#11
3034
+ def remaining_children; end
3035
+
3036
+ # source://unparser//lib/unparser/dsl.rb#18
3037
+ def value; end
3038
+ end
3039
+
3040
+ # source://unparser//lib/unparser/emitter/pair.rb#7
3041
+ Unparser::Emitter::Pair::BAREWORD = T.let(T.unsafe(nil), Regexp)
3042
+
3043
+ # Emitter for pin nodes
3044
+ #
3045
+ # source://unparser//lib/unparser/emitter/pin.rb#6
3046
+ class Unparser::Emitter::Pin < ::Unparser::Emitter
3047
+ private
3048
+
3049
+ # source://unparser//lib/unparser/emitter/pin.rb#13
3050
+ def dispatch; end
3051
+
3052
+ # source://unparser//lib/unparser/dsl.rb#11
3053
+ def remaining_children; end
3054
+
3055
+ # source://unparser//lib/unparser/dsl.rb#18
3056
+ def target; end
3057
+ end
3058
+
3059
+ # Emitter for postconditions
3060
+ #
3061
+ # source://unparser//lib/unparser/emitter/repetition.rb#7
3062
+ class Unparser::Emitter::Post < ::Unparser::Emitter
3063
+ private
3064
+
3065
+ # source://unparser//lib/unparser/dsl.rb#18
3066
+ def body; end
3067
+
3068
+ # source://unparser//lib/unparser/dsl.rb#18
3069
+ def condition; end
3070
+
3071
+ # source://unparser//lib/unparser/emitter/repetition.rb#19
3072
+ def dispatch; end
3073
+
3074
+ # source://unparser//lib/unparser/dsl.rb#11
3075
+ def remaining_children; end
3076
+ end
3077
+
3078
+ # source://unparser//lib/unparser/emitter/repetition.rb#10
3079
+ Unparser::Emitter::Post::MAP = T.let(T.unsafe(nil), Hash)
3080
+
3081
+ # Base class for primitive emitters
3082
+ #
3083
+ # source://unparser//lib/unparser/emitter/primitive.rb#6
3084
+ class Unparser::Emitter::Primitive < ::Unparser::Emitter
3085
+ private
3086
+
3087
+ # source://unparser//lib/unparser/dsl.rb#11
3088
+ def remaining_children; end
3089
+
3090
+ # source://unparser//lib/unparser/dsl.rb#18
3091
+ def value; end
3092
+ end
3093
+
3094
+ # Emitter for complex literals
3095
+ #
3096
+ # source://unparser//lib/unparser/emitter/primitive.rb#24
3097
+ class Unparser::Emitter::Primitive::Complex < ::Unparser::Emitter::Primitive
3098
+ private
3099
+
3100
+ # source://unparser//lib/unparser/emitter/primitive.rb#39
3101
+ def dispatch; end
3102
+
3103
+ # source://unparser//lib/unparser/emitter/primitive.rb#44
3104
+ def emit_imaginary; end
3105
+
3106
+ # source://unparser//lib/unparser/emitter/primitive.rb#48
3107
+ def imaginary_node; end
3108
+ end
3109
+
3110
+ # source://unparser//lib/unparser/emitter/primitive.rb#30
3111
+ Unparser::Emitter::Primitive::Complex::MAP = T.let(T.unsafe(nil), Hash)
3112
+
3113
+ # source://unparser//lib/unparser/emitter/primitive.rb#28
3114
+ Unparser::Emitter::Primitive::Complex::RATIONAL_FORMAT = T.let(T.unsafe(nil), String)
3115
+
3116
+ # Emitter for primitives based on Object#inspect
3117
+ #
3118
+ # source://unparser//lib/unparser/emitter/primitive.rb#11
3119
+ class Unparser::Emitter::Primitive::Inspect < ::Unparser::Emitter::Primitive
3120
+ private
3121
+
3122
+ # source://unparser//lib/unparser/emitter/primitive.rb#17
3123
+ def dispatch; end
3124
+ end
3125
+
3126
+ # Emiter for numeric literals
3127
+ #
3128
+ # source://unparser//lib/unparser/emitter/primitive.rb#80
3129
+ class Unparser::Emitter::Primitive::Numeric < ::Unparser::Emitter::Primitive
3130
+ private
3131
+
3132
+ # source://unparser//lib/unparser/emitter/primitive.rb#86
3133
+ def dispatch; end
3134
+ end
3135
+
3136
+ # Emitter for rational literals
3137
+ #
3138
+ # source://unparser//lib/unparser/emitter/primitive.rb#56
3139
+ class Unparser::Emitter::Primitive::Rational < ::Unparser::Emitter::Primitive
3140
+ private
3141
+
3142
+ # source://unparser//lib/unparser/emitter/primitive.rb#65
3143
+ def dispatch; end
3144
+
3145
+ # source://unparser//lib/unparser/emitter/primitive.rb#73
3146
+ def write_rational(value); end
3147
+ end
3148
+
3149
+ # source://unparser//lib/unparser/emitter/primitive.rb#60
3150
+ Unparser::Emitter::Primitive::Rational::RATIONAL_FORMAT = T.let(T.unsafe(nil), String)
3151
+
3152
+ # Progarg emitter
3153
+ #
3154
+ # source://unparser//lib/unparser/emitter/argument.rb#98
3155
+ class Unparser::Emitter::Procarg < ::Unparser::Emitter
3156
+ private
3157
+
3158
+ # source://unparser//lib/unparser/emitter/argument.rb#105
3159
+ def dispatch; end
3160
+
3161
+ # @return [Boolean]
3162
+ #
3163
+ # source://unparser//lib/unparser/emitter/argument.rb#115
3164
+ def needs_parens?; end
3165
+ end
3166
+
3167
+ # source://unparser//lib/unparser/emitter/argument.rb#101
3168
+ Unparser::Emitter::Procarg::PARENS = T.let(T.unsafe(nil), Array)
3169
+
3170
+ # Registry for node emitters
3171
+ #
3172
+ # source://unparser//lib/unparser/emitter.rb#16
3173
+ Unparser::Emitter::REGISTRY = T.let(T.unsafe(nil), Hash)
3174
+
3175
+ # Range emitters
3176
+ #
3177
+ # source://unparser//lib/unparser/emitter/range.rb#6
3178
+ class Unparser::Emitter::Range < ::Unparser::Emitter
3179
+ # source://unparser//lib/unparser/emitter/range.rb#17
3180
+ def symbol_name; end
3181
+
3182
+ private
3183
+
3184
+ # source://unparser//lib/unparser/dsl.rb#18
3185
+ def begin_node; end
3186
+
3187
+ # source://unparser//lib/unparser/emitter/range.rb#27
3188
+ def dispatch; end
3189
+
3190
+ # source://unparser//lib/unparser/dsl.rb#18
3191
+ def end_node; end
3192
+
3193
+ # source://unparser//lib/unparser/dsl.rb#11
3194
+ def remaining_children; end
3195
+ end
3196
+
3197
+ # source://unparser//lib/unparser/emitter/range.rb#12
3198
+ Unparser::Emitter::Range::SYMBOLS = T.let(T.unsafe(nil), Hash)
3199
+
3200
+ # source://unparser//lib/unparser/emitter/range.rb#7
3201
+ Unparser::Emitter::Range::TOKENS = T.let(T.unsafe(nil), Hash)
3202
+
3203
+ # Emitter for regexp literals
3204
+ #
3205
+ # source://unparser//lib/unparser/emitter/regexp.rb#6
3206
+ class Unparser::Emitter::Regexp < ::Unparser::Emitter
3207
+ private
3208
+
3209
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
3210
+ def body(&block); end
3211
+
3212
+ # source://unparser//lib/unparser/emitter/regexp.rb#13
3213
+ def dispatch; end
3214
+
3215
+ # source://unparser//lib/unparser/emitter/regexp.rb#24
3216
+ def emit_body(node); end
3217
+
3218
+ # source://unparser//lib/unparser/emitter/regexp.rb#20
3219
+ def emit_options; end
3220
+ end
3221
+
3222
+ # Emitter for while and until nodes
3223
+ #
3224
+ # source://unparser//lib/unparser/emitter/repetition.rb#27
3225
+ class Unparser::Emitter::Repetition < ::Unparser::Emitter
3226
+ private
3227
+
3228
+ # source://unparser//lib/unparser/dsl.rb#18
3229
+ def body; end
3230
+
3231
+ # source://unparser//lib/unparser/dsl.rb#18
3232
+ def condition; end
3233
+
3234
+ # source://unparser//lib/unparser/emitter/repetition.rb#39
3235
+ def dispatch; end
3236
+
3237
+ # source://unparser//lib/unparser/emitter/repetition.rb#51
3238
+ def emit_keyword; end
3239
+
3240
+ # source://unparser//lib/unparser/emitter/repetition.rb#55
3241
+ def emit_normal; end
3242
+
3243
+ # source://unparser//lib/unparser/emitter/repetition.rb#66
3244
+ def emit_postcontrol; end
3245
+
3246
+ # @return [Boolean]
3247
+ #
3248
+ # source://unparser//lib/unparser/emitter/repetition.rb#47
3249
+ def postcontrol?; end
3250
+
3251
+ # source://unparser//lib/unparser/dsl.rb#11
3252
+ def remaining_children; end
3253
+ end
3254
+
3255
+ # source://unparser//lib/unparser/emitter/repetition.rb#28
3256
+ Unparser::Emitter::Repetition::MAP = T.let(T.unsafe(nil), Hash)
3257
+
3258
+ # Emitter for rescue nodes
3259
+ #
3260
+ # source://unparser//lib/unparser/emitter/rescue.rb#6
3261
+ class Unparser::Emitter::Rescue < ::Unparser::Emitter
3262
+ private
3263
+
3264
+ # source://unparser//lib/unparser/emitter/rescue.rb#11
3265
+ def dispatch; end
3266
+ end
3267
+
3268
+ # Rest argument emitter
3269
+ #
3270
+ # source://unparser//lib/unparser/emitter/argument.rb#70
3271
+ class Unparser::Emitter::Restarg < ::Unparser::Emitter
3272
+ private
3273
+
3274
+ # source://unparser//lib/unparser/emitter/argument.rb#77
3275
+ def dispatch; end
3276
+
3277
+ # source://unparser//lib/unparser/dsl.rb#18
3278
+ def name; end
3279
+
3280
+ # source://unparser//lib/unparser/dsl.rb#11
3281
+ def remaining_children; end
3282
+ end
3283
+
3284
+ # Root emitter a special case
3285
+ #
3286
+ # source://unparser//lib/unparser/emitter/root.rb#6
3287
+ class Unparser::Emitter::Root < ::Unparser::Emitter
3288
+ include ::Unparser::Emitter::LocalVariableRoot
3289
+
3290
+ # source://unparser//lib/unparser/emitter/root.rb#14
3291
+ def dispatch; end
3292
+
3293
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
3294
+ def local_variable_scope(&block); end
3295
+ end
3296
+
3297
+ # source://unparser//lib/unparser/emitter/root.rb#10
3298
+ Unparser::Emitter::Root::END_NL = T.let(T.unsafe(nil), Array)
3299
+
3300
+ # Emitter for sclass nodes
3301
+ #
3302
+ # source://unparser//lib/unparser/emitter/class.rb#33
3303
+ class Unparser::Emitter::SClass < ::Unparser::Emitter
3304
+ private
3305
+
3306
+ # source://unparser//lib/unparser/dsl.rb#18
3307
+ def body; end
3308
+
3309
+ # source://unparser//lib/unparser/emitter/class.rb#40
3310
+ def dispatch; end
3311
+
3312
+ # source://unparser//lib/unparser/dsl.rb#18
3313
+ def object; end
3314
+
3315
+ # source://unparser//lib/unparser/dsl.rb#11
3316
+ def remaining_children; end
3317
+ end
3318
+
3319
+ # Emitter for send
3320
+ #
3321
+ # source://unparser//lib/unparser/emitter/send.rb#6
3322
+ class Unparser::Emitter::Send < ::Unparser::Emitter
3323
+ # source://unparser//lib/unparser/emitter/send.rb#13
3324
+ def emit_heredoc_reminders; end
3325
+
3326
+ # source://unparser//lib/unparser/emitter/send.rb#9
3327
+ def emit_mlhs; end
3328
+
3329
+ private
3330
+
3331
+ # source://unparser//lib/unparser/emitter/send.rb#19
3332
+ def dispatch; end
3333
+
3334
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
3335
+ def writer(&block); end
3336
+ end
3337
+
3338
+ # Emitter for simple nodes that generate a single token
3339
+ #
3340
+ # source://unparser//lib/unparser/emitter/simple.rb#6
3341
+ class Unparser::Emitter::Simple < ::Unparser::Emitter
3342
+ private
3343
+
3344
+ # source://unparser//lib/unparser/emitter/simple.rb#28
3345
+ def dispatch; end
3346
+ end
3347
+
3348
+ # source://unparser//lib/unparser/emitter/simple.rb#7
3349
+ Unparser::Emitter::Simple::MAP = T.let(T.unsafe(nil), Hash)
3350
+
3351
+ # Emitter for splats
3352
+ #
3353
+ # source://unparser//lib/unparser/emitter/splat.rb#20
3354
+ class Unparser::Emitter::Splat < ::Unparser::Emitter
3355
+ # source://unparser//lib/unparser/emitter/splat.rb#25
3356
+ def emit_mlhs; end
3357
+
3358
+ private
3359
+
3360
+ # source://unparser//lib/unparser/emitter/splat.rb#32
3361
+ def dispatch; end
3362
+
3363
+ # source://unparser//lib/unparser/dsl.rb#11
3364
+ def remaining_children; end
3365
+
3366
+ # source://unparser//lib/unparser/dsl.rb#18
3367
+ def subject; end
3368
+
3369
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
3370
+ def subject_emitter(&block); end
3371
+ end
3372
+
3373
+ # Emitter for super nodes
3374
+ #
3375
+ # source://unparser//lib/unparser/emitter/super.rb#7
3376
+ class Unparser::Emitter::Super < ::Unparser::Emitter
3377
+ private
3378
+
3379
+ # source://unparser//lib/unparser/emitter/super.rb#12
3380
+ def dispatch; end
3381
+ end
3382
+
3383
+ # Emitter for undef nodes
3384
+ #
3385
+ # source://unparser//lib/unparser/emitter/undef.rb#6
3386
+ class Unparser::Emitter::Undef < ::Unparser::Emitter
3387
+ private
3388
+
3389
+ # source://unparser//lib/unparser/emitter/undef.rb#11
3390
+ def dispatch; end
3391
+ end
3392
+
3393
+ # Emitter for various variable accesses
3394
+ #
3395
+ # source://unparser//lib/unparser/emitter/variable.rb#7
3396
+ class Unparser::Emitter::Variable < ::Unparser::Emitter
3397
+ private
3398
+
3399
+ # source://unparser//lib/unparser/emitter/variable.rb#14
3400
+ def dispatch; end
3401
+
3402
+ # source://unparser//lib/unparser/dsl.rb#18
3403
+ def name; end
3404
+
3405
+ # source://unparser//lib/unparser/dsl.rb#11
3406
+ def remaining_children; end
3407
+ end
3408
+
3409
+ # Emitter for when nodes
3410
+ #
3411
+ # source://unparser//lib/unparser/emitter/case.rb#44
3412
+ class Unparser::Emitter::When < ::Unparser::Emitter
3413
+ private
3414
+
3415
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
3416
+ def captures(&block); end
3417
+
3418
+ # source://unparser//lib/unparser/emitter/case.rb#51
3419
+ def dispatch; end
3420
+
3421
+ # source://unparser//lib/unparser/emitter/case.rb#57
3422
+ def emit_captures; end
3423
+ end
3424
+
3425
+ # Dynamic execute string literal emitter
3426
+ #
3427
+ # source://unparser//lib/unparser/emitter/xstr.rb#6
3428
+ class Unparser::Emitter::XStr < ::Unparser::Emitter
3429
+ private
3430
+
3431
+ # source://unparser//lib/unparser/emitter/xstr.rb#12
3432
+ def dispatch; end
3433
+
3434
+ # source://unparser//lib/unparser/emitter/xstr.rb#65
3435
+ def emit_begin(component); end
3436
+
3437
+ # source://unparser//lib/unparser/emitter/xstr.rb#24
3438
+ def emit_heredoc; end
3439
+
3440
+ # source://unparser//lib/unparser/emitter/xstr.rb#51
3441
+ def emit_string(value); end
3442
+
3443
+ # source://unparser//lib/unparser/emitter/xstr.rb#39
3444
+ def emit_xstr; end
3445
+
3446
+ # source://unparser//lib/unparser/emitter/xstr.rb#55
3447
+ def escape_xstr(input); end
3448
+
3449
+ # @return [Boolean]
3450
+ #
3451
+ # source://unparser//lib/unparser/emitter/xstr.rb#20
3452
+ def heredoc?; end
3453
+ end
3454
+
3455
+ # Emitter for yield node
3456
+ #
3457
+ # source://unparser//lib/unparser/emitter/yield.rb#7
3458
+ class Unparser::Emitter::Yield < ::Unparser::Emitter
3459
+ private
3460
+
3461
+ # source://unparser//lib/unparser/emitter/yield.rb#12
3462
+ def dispatch; end
3463
+ end
3464
+
3465
+ # Define equality, equivalence and inspection methods
3466
+ #
3467
+ # Original code before vendoring and reduction from: https://github.com/dkubb/equalizer.
3468
+ #
3469
+ # source://unparser//lib/unparser/equalizer.rb#19
3470
+ class Unparser::Equalizer < ::Module
3471
+ # Initialize an Equalizer with the given keys
3472
+ #
3473
+ # Will use the keys with which it is initialized to define #cmp?,
3474
+ # #hash, and #inspect
3475
+ #
3476
+ #
3477
+ # @api private
3478
+ # @param keys [Array<Symbol>]
3479
+ # @return [undefined]
3480
+ #
3481
+ # source://unparser//lib/unparser/equalizer.rb#20
3482
+ def initialize(*keys); end
3483
+
3484
+ private
3485
+
3486
+ # source://unparser//lib/unparser/equalizer.rb#39
3487
+ def define_cmp_method; end
3488
+
3489
+ # source://unparser//lib/unparser/equalizer.rb#49
3490
+ def define_hash_method; end
3491
+
3492
+ # source://unparser//lib/unparser/equalizer.rb#56
3493
+ def define_inspect_method; end
3494
+
3495
+ # source://unparser//lib/unparser/equalizer.rb#33
3496
+ def define_methods; end
3497
+
3498
+ # source://unparser//lib/unparser/equalizer.rb#29
3499
+ def included(descendant); end
3500
+ end
3501
+
3502
+ # The comparison methods
3503
+ #
3504
+ # source://unparser//lib/unparser/equalizer.rb#66
3505
+ module Unparser::Equalizer::Methods
3506
+ # Compare the object with other object for equivalency
3507
+ #
3508
+ # @api public
3509
+ # @example
3510
+ # object == other # => true or false
3511
+ # @param other [Object] the other object to compare with
3512
+ # @return [Boolean]
3513
+ #
3514
+ # source://unparser//lib/unparser/equalizer.rb#93
3515
+ def ==(other); end
3516
+
3517
+ # Compare the object with other object for equality
3518
+ #
3519
+ # @api public
3520
+ # @example
3521
+ # object.eql?(other) # => true or false
3522
+ # @param other [Object] the other object to compare with
3523
+ # @return [Boolean]
3524
+ #
3525
+ # source://unparser//lib/unparser/equalizer.rb#78
3526
+ def eql?(other); end
3527
+ end
3528
+
3529
+ # source://unparser//lib/unparser/generation.rb#5
3530
+ module Unparser::Generation
3531
+ # source://unparser//lib/unparser/generation.rb#10
3532
+ def emit_heredoc_reminders; end
3533
+
3534
+ # source://unparser//lib/unparser/generation.rb#12
3535
+ def symbol_name; end
3536
+
3537
+ # source://unparser//lib/unparser/generation.rb#14
3538
+ def write_to_buffer; end
3539
+
3540
+ private
3541
+
3542
+ # source://unparser//lib/unparser/generation.rb#247
3543
+ def children; end
3544
+
3545
+ # source://unparser//lib/unparser/generation.rb#239
3546
+ def conditional_parentheses(flag, &block); end
3547
+
3548
+ # source://unparser//lib/unparser/generation.rb#21
3549
+ def delimited(nodes, delimiter = T.unsafe(nil), &block); end
3550
+
3551
+ # source://unparser//lib/unparser/generation.rb#123
3552
+ def emit_body(node, indent: T.unsafe(nil)); end
3553
+
3554
+ # source://unparser//lib/unparser/generation.rb#196
3555
+ def emit_body_ensure_rescue(node); end
3556
+
3557
+ # source://unparser//lib/unparser/generation.rb#145
3558
+ def emit_body_inner(node); end
3559
+
3560
+ # source://unparser//lib/unparser/generation.rb#158
3561
+ def emit_body_member(node); end
3562
+
3563
+ # source://unparser//lib/unparser/generation.rb#180
3564
+ def emit_body_rescue(node); end
3565
+
3566
+ # source://unparser//lib/unparser/generation.rb#77
3567
+ def emit_comments(comments); end
3568
+
3569
+ # source://unparser//lib/unparser/generation.rb#69
3570
+ def emit_comments_before(source_part = T.unsafe(nil)); end
3571
+
3572
+ # source://unparser//lib/unparser/generation.rb#166
3573
+ def emit_ensure(node); end
3574
+
3575
+ # source://unparser//lib/unparser/generation.rb#60
3576
+ def emit_eof_comments; end
3577
+
3578
+ # source://unparser//lib/unparser/generation.rb#54
3579
+ def emit_eol_comments; end
3580
+
3581
+ # source://unparser//lib/unparser/generation.rb#27
3582
+ def emit_join(nodes, emit_node, emit_delimiter); end
3583
+
3584
+ # source://unparser//lib/unparser/generation.rb#115
3585
+ def emit_optional_body(node, indent: T.unsafe(nil)); end
3586
+
3587
+ # source://unparser//lib/unparser/generation.rb#188
3588
+ def emit_optional_body_ensure_rescue(node); end
3589
+
3590
+ # source://unparser//lib/unparser/generation.rb#206
3591
+ def emit_rescue_postcontrol(node); end
3592
+
3593
+ # source://unparser//lib/unparser/generation.rb#212
3594
+ def emit_rescue_regular(node); end
3595
+
3596
+ # source://unparser//lib/unparser/generation.rb#220
3597
+ def emitter(node); end
3598
+
3599
+ # source://unparser//lib/unparser/generation.rb#235
3600
+ def first_child; end
3601
+
3602
+ # source://unparser//lib/unparser/generation.rb#106
3603
+ def indented; end
3604
+
3605
+ # source://unparser//lib/unparser/generation.rb#93
3606
+ def k_end; end
3607
+
3608
+ # source://unparser//lib/unparser/generation.rb#39
3609
+ def nl; end
3610
+
3611
+ # source://unparser//lib/unparser/generation.rb#100
3612
+ def parentheses(open = T.unsafe(nil), close = T.unsafe(nil)); end
3613
+
3614
+ # source://unparser//lib/unparser/generation.rb#224
3615
+ def visit(node); end
3616
+
3617
+ # source://unparser//lib/unparser/generation.rb#228
3618
+ def visit_deep(node); end
3619
+
3620
+ # source://unparser//lib/unparser/generation.rb#44
3621
+ def with_comments; end
3622
+
3623
+ # source://unparser//lib/unparser/generation.rb#89
3624
+ def write(*strings); end
3625
+
3626
+ # source://unparser//lib/unparser/generation.rb#216
3627
+ def writer_with(klass, node); end
3628
+
3629
+ # source://unparser//lib/unparser/generation.rb#50
3630
+ def ws; end
3631
+ end
3632
+
3633
+ # source://unparser//lib/unparser/generation.rb#6
3634
+ Unparser::Generation::EXTRA_NL = T.let(T.unsafe(nil), Array)
3635
+
3636
+ # Error raised when unparser encounters an invalid AST
3637
+ #
3638
+ # source://unparser//lib/unparser.rb#39
3639
+ class Unparser::InvalidNodeError < ::RuntimeError
3640
+ # @return [InvalidNodeError] a new instance of InvalidNodeError
3641
+ #
3642
+ # source://unparser//lib/unparser.rb#42
3643
+ def initialize(message, node); end
3644
+
3645
+ # Returns the value of attribute node.
3646
+ #
3647
+ # source://unparser//lib/unparser.rb#40
3648
+ def node; end
3649
+ end
3650
+
3651
+ # source://unparser//lib/unparser/node_details.rb#4
3652
+ module Unparser::NodeDetails
3653
+ include ::Unparser::NodeHelpers
3654
+ include ::Unparser::Constants
3655
+
3656
+ private
3657
+
3658
+ # source://unparser//lib/unparser/node_details.rb#17
3659
+ def children; end
3660
+
3661
+ class << self
3662
+ # @private
3663
+ #
3664
+ # source://unparser//lib/unparser/node_details.rb#7
3665
+ def included(descendant); end
3666
+ end
3667
+ end
3668
+
3669
+ # source://unparser//lib/unparser/node_details/send.rb#5
3670
+ class Unparser::NodeDetails::Send
3671
+ include ::Unparser::NodeHelpers
3672
+ include ::Unparser::Constants
3673
+ include ::Unparser::NodeDetails
3674
+ include ::Unparser::Equalizer::Methods
3675
+ include ::Unparser::Adamantium
3676
+ include ::Unparser::Adamantium::InstanceMethods
3677
+ extend ::Unparser::Adamantium::ModuleMethods
3678
+ extend ::Unparser::Adamantium::ClassMethods
3679
+ extend ::Unparser::DSL
3680
+
3681
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
3682
+ def arguments(&block); end
3683
+
3684
+ # @return [Boolean]
3685
+ #
3686
+ # source://unparser//lib/unparser/node_details/send.rb#36
3687
+ def arguments?; end
3688
+
3689
+ # @return [Boolean]
3690
+ #
3691
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
3692
+ def assignment?(&block); end
3693
+
3694
+ # @return [Boolean]
3695
+ #
3696
+ # source://unparser//lib/unparser/node_details/send.rb#32
3697
+ def assignment_operator?; end
3698
+
3699
+ # @return [Boolean]
3700
+ #
3701
+ # source://unparser//lib/unparser/node_details/send.rb#21
3702
+ def binary_syntax_allowed?; end
3703
+
3704
+ # source://unparser//lib/unparser/node_details/send.rb#40
3705
+ def non_assignment_selector; end
3706
+
3707
+ # source://unparser//lib/unparser/dsl.rb#18
3708
+ def receiver; end
3709
+
3710
+ # source://unparser//lib/unparser/dsl.rb#18
3711
+ def selector; end
3712
+
3713
+ # @return [Boolean]
3714
+ #
3715
+ # source://unparser//lib/unparser/node_details/send.rb#17
3716
+ def selector_binary_operator?; end
3717
+
3718
+ # @return [Boolean]
3719
+ #
3720
+ # source://unparser//lib/unparser/node_details/send.rb#28
3721
+ def selector_unary_operator?; end
3722
+
3723
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
3724
+ def string_selector(&block); end
3725
+
3726
+ private
3727
+
3728
+ # source://unparser//lib/unparser/dsl.rb#11
3729
+ def remaining_children; end
3730
+ end
3731
+
3732
+ # source://unparser//lib/unparser/node_details/send.rb#8
3733
+ Unparser::NodeDetails::Send::ASSIGN_SUFFIX = T.let(T.unsafe(nil), String)
3734
+
3735
+ # source://unparser//lib/unparser/node_details/send.rb#9
3736
+ Unparser::NodeDetails::Send::NON_ASSIGN_RANGE = T.let(T.unsafe(nil), Range)
3737
+
3738
+ # source://unparser//lib/unparser/node_helpers.rb#4
3739
+ module Unparser::NodeHelpers
3740
+ # Helper for building nodes
3741
+ #
3742
+ # @api private
3743
+ # @param type [Symbol]
3744
+ # @param children [Array]
3745
+ # @return [Parser::AST::Node]
3746
+ #
3747
+ # source://unparser//lib/unparser/node_helpers.rb#26
3748
+ def n(type, children = T.unsafe(nil)); end
3749
+
3750
+ # @return [Boolean]
3751
+ #
3752
+ # source://unparser//lib/unparser/node_helpers.rb#30
3753
+ def n?(type, node); end
3754
+
3755
+ # Helper for building nodes
3756
+ #
3757
+ # @api private
3758
+ # @param type [Symbol]
3759
+ # @param children [Parser::AST::Node]
3760
+ # @return [Parser::AST::Node]
3761
+ #
3762
+ # source://unparser//lib/unparser/node_helpers.rb#14
3763
+ def s(type, *children); end
3764
+
3765
+ # source://unparser//lib/unparser/node_helpers.rb#71
3766
+ def unwrap_single_begin(node); end
3767
+
3768
+ private
3769
+
3770
+ # source://unparser//lib/unparser/node_helpers.rb#65
3771
+ def n_arg?(node); end
3772
+
3773
+ # source://unparser//lib/unparser/node_helpers.rb#65
3774
+ def n_args?(node); end
3775
+
3776
+ # source://unparser//lib/unparser/node_helpers.rb#65
3777
+ def n_array?(node); end
3778
+
3779
+ # source://unparser//lib/unparser/node_helpers.rb#65
3780
+ def n_array_pattern?(node); end
3781
+
3782
+ # source://unparser//lib/unparser/node_helpers.rb#65
3783
+ def n_begin?(node); end
3784
+
3785
+ # source://unparser//lib/unparser/node_helpers.rb#65
3786
+ def n_block?(node); end
3787
+
3788
+ # source://unparser//lib/unparser/node_helpers.rb#65
3789
+ def n_cbase?(node); end
3790
+
3791
+ # source://unparser//lib/unparser/node_helpers.rb#65
3792
+ def n_const?(node); end
3793
+
3794
+ # source://unparser//lib/unparser/node_helpers.rb#65
3795
+ def n_dstr?(node); end
3796
+
3797
+ # source://unparser//lib/unparser/node_helpers.rb#65
3798
+ def n_empty_else?(node); end
3799
+
3800
+ # source://unparser//lib/unparser/node_helpers.rb#65
3801
+ def n_ensure?(node); end
3802
+
3803
+ # source://unparser//lib/unparser/node_helpers.rb#65
3804
+ def n_hash?(node); end
3805
+
3806
+ # source://unparser//lib/unparser/node_helpers.rb#65
3807
+ def n_hash_pattern?(node); end
3808
+
3809
+ # source://unparser//lib/unparser/node_helpers.rb#65
3810
+ def n_if?(node); end
3811
+
3812
+ # source://unparser//lib/unparser/node_helpers.rb#65
3813
+ def n_in_pattern?(node); end
3814
+
3815
+ # source://unparser//lib/unparser/node_helpers.rb#65
3816
+ def n_int?(node); end
3817
+
3818
+ # source://unparser//lib/unparser/node_helpers.rb#65
3819
+ def n_kwarg?(node); end
3820
+
3821
+ # source://unparser//lib/unparser/node_helpers.rb#65
3822
+ def n_kwargs?(node); end
3823
+
3824
+ # source://unparser//lib/unparser/node_helpers.rb#65
3825
+ def n_kwsplat?(node); end
3826
+
3827
+ # source://unparser//lib/unparser/node_helpers.rb#65
3828
+ def n_lambda?(node); end
3829
+
3830
+ # source://unparser//lib/unparser/node_helpers.rb#65
3831
+ def n_match_rest?(node); end
3832
+
3833
+ # source://unparser//lib/unparser/node_helpers.rb#65
3834
+ def n_pair?(node); end
3835
+
3836
+ # source://unparser//lib/unparser/node_helpers.rb#65
3837
+ def n_rescue?(node); end
3838
+
3839
+ # source://unparser//lib/unparser/node_helpers.rb#65
3840
+ def n_send?(node); end
3841
+
3842
+ # source://unparser//lib/unparser/node_helpers.rb#65
3843
+ def n_shadowarg?(node); end
3844
+
3845
+ # source://unparser//lib/unparser/node_helpers.rb#65
3846
+ def n_splat?(node); end
3847
+
3848
+ # source://unparser//lib/unparser/node_helpers.rb#65
3849
+ def n_str?(node); end
3850
+
3851
+ # source://unparser//lib/unparser/node_helpers.rb#65
3852
+ def n_sym?(node); end
3853
+ end
3854
+
3855
+ # source://unparser//lib/unparser/either.rb#4
3856
+ module Unparser::RequireBlock
3857
+ private
3858
+
3859
+ # Raise error unless block is provided
3860
+ #
3861
+ # @raise [MissingBlockError] if no block is given
3862
+ # @return [self]
3863
+ #
3864
+ # source://unparser//lib/unparser/either.rb#14
3865
+ def require_block; end
3866
+ end
3867
+
3868
+ # source://unparser//lib/unparser/emitter.rb#4
3869
+ class Unparser::UnknownNodeError < ::ArgumentError; end
3870
+
3871
+ # Validation of unparser results
3872
+ #
3873
+ # source://unparser//lib/unparser/validation.rb#5
3874
+ class Unparser::Validation
3875
+ include ::Unparser::Anima::InstanceMethods
3876
+ include ::Unparser::Equalizer::Methods
3877
+ include ::Unparser::Adamantium
3878
+ include ::Unparser::Adamantium::InstanceMethods
3879
+ extend ::Unparser::Adamantium::ModuleMethods
3880
+ extend ::Unparser::Adamantium::ClassMethods
3881
+
3882
+ # source://unparser//lib/unparser/anima.rb#146
3883
+ def generated_node; end
3884
+
3885
+ # source://unparser//lib/unparser/anima.rb#146
3886
+ def generated_source; end
3887
+
3888
+ # source://unparser//lib/unparser/anima.rb#146
3889
+ def identification; end
3890
+
3891
+ # source://unparser//lib/unparser/anima.rb#146
3892
+ def original_node; end
3893
+
3894
+ # source://unparser//lib/unparser/anima.rb#146
3895
+ def original_source; end
3896
+
3897
+ # Return error report
3898
+ #
3899
+ # @api private
3900
+ # @return [String]
3901
+ #
3902
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
3903
+ def report(&block); end
3904
+
3905
+ # Test if source could be unparsed successfully
3906
+ #
3907
+ # @api private
3908
+ # @return [Boolean]
3909
+ #
3910
+ # source://unparser//lib/unparser/validation.rb#20
3911
+ def success?; end
3912
+
3913
+ private
3914
+
3915
+ # source://unparser//lib/unparser/validation.rb#106
3916
+ def make_report(label, attribute_name); end
3917
+
3918
+ # source://unparser//lib/unparser/validation.rb#118
3919
+ def node_diff_report; end
3920
+
3921
+ # source://unparser//lib/unparser/validation.rb#110
3922
+ def report_exception(exception); end
3923
+
3924
+ class << self
3925
+ # source://unparser//lib/unparser/anima.rb#140
3926
+ def anima; end
3927
+
3928
+ # Create validator from node
3929
+ #
3930
+ # @param original_node [Parser::AST::Node]
3931
+ # @return [Validator]
3932
+ #
3933
+ # source://unparser//lib/unparser/validation.rb#79
3934
+ def from_node(original_node); end
3935
+
3936
+ # Create validator from file
3937
+ #
3938
+ # @param path [Pathname]
3939
+ # @return [Validator]
3940
+ #
3941
+ # source://unparser//lib/unparser/validation.rb#100
3942
+ def from_path(path); end
3943
+
3944
+ # Create validator from string
3945
+ #
3946
+ # @param original_source [String]
3947
+ # @return [Validator]
3948
+ #
3949
+ # source://unparser//lib/unparser/validation.rb#53
3950
+ def from_string(original_source); end
3951
+
3952
+ private
3953
+
3954
+ # source://unparser//lib/unparser/validation.rb#133
3955
+ def const_unit(_value); end
3956
+ end
3957
+ end
3958
+
3959
+ # source://unparser//lib/unparser/validation.rb#136
3960
+ class Unparser::Validation::Literal < ::Unparser::Validation
3961
+ # source://unparser//lib/unparser/validation.rb#141
3962
+ def report; end
3963
+
3964
+ # @return [Boolean]
3965
+ #
3966
+ # source://unparser//lib/unparser/validation.rb#137
3967
+ def success?; end
3968
+
3969
+ private
3970
+
3971
+ # source://unparser//lib/unparser/validation.rb#156
3972
+ def source_diff_report; end
3973
+ end
3974
+
3975
+ # source://unparser//lib/unparser/writer.rb#4
3976
+ module Unparser::Writer
3977
+ include ::Unparser::NodeHelpers
3978
+ include ::Unparser::Generation
3979
+ include ::Unparser::Anima::InstanceMethods
3980
+ include ::Unparser::Equalizer::Methods
3981
+
3982
+ mixes_in_class_methods ::Unparser::DSL
3983
+
3984
+ class << self
3985
+ # @private
3986
+ #
3987
+ # source://unparser//lib/unparser/writer.rb#7
3988
+ def included(descendant); end
3989
+ end
3990
+ end
3991
+
3992
+ # source://unparser//lib/unparser/writer/binary.rb#5
3993
+ class Unparser::Writer::Binary
3994
+ include ::Unparser::Adamantium
3995
+ include ::Unparser::Adamantium::InstanceMethods
3996
+ include ::Unparser::NodeHelpers
3997
+ include ::Unparser::Generation
3998
+ include ::Unparser::Writer
3999
+ include ::Unparser::Anima::InstanceMethods
4000
+ include ::Unparser::Equalizer::Methods
4001
+ extend ::Unparser::Adamantium::ModuleMethods
4002
+ extend ::Unparser::Adamantium::ClassMethods
4003
+ extend ::Unparser::DSL
4004
+
4005
+ # source://unparser//lib/unparser/anima.rb#146
4006
+ def buffer; end
4007
+
4008
+ # source://unparser//lib/unparser/anima.rb#146
4009
+ def comments; end
4010
+
4011
+ # source://unparser//lib/unparser/writer/binary.rb#54
4012
+ def dispatch; end
4013
+
4014
+ # source://unparser//lib/unparser/writer/binary.rb#46
4015
+ def emit_operator; end
4016
+
4017
+ # source://unparser//lib/unparser/anima.rb#146
4018
+ def local_variable_scope; end
4019
+
4020
+ # source://unparser//lib/unparser/anima.rb#146
4021
+ def node; end
4022
+
4023
+ # source://unparser//lib/unparser/writer/binary.rb#50
4024
+ def symbol_name; end
4025
+
4026
+ private
4027
+
4028
+ # source://unparser//lib/unparser/writer/binary.rb#62
4029
+ def effective_symbol; end
4030
+
4031
+ # source://unparser//lib/unparser/writer/binary.rb#74
4032
+ def emit_with(map); end
4033
+
4034
+ # source://unparser//lib/unparser/writer/binary.rb#80
4035
+ def keyword_symbol; end
4036
+
4037
+ # source://unparser//lib/unparser/dsl.rb#18
4038
+ def left; end
4039
+
4040
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
4041
+ def left_emitter(&block); end
4042
+
4043
+ # source://unparser//lib/unparser/writer/binary.rb#84
4044
+ def operator_symbol; end
4045
+
4046
+ # source://unparser//lib/unparser/dsl.rb#11
4047
+ def remaining_children; end
4048
+
4049
+ # source://unparser//lib/unparser/dsl.rb#18
4050
+ def right; end
4051
+
4052
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
4053
+ def right_emitter(&block); end
4054
+
4055
+ class << self
4056
+ # source://unparser//lib/unparser/anima.rb#140
4057
+ def anima; end
4058
+ end
4059
+ end
4060
+
4061
+ # source://unparser//lib/unparser/writer/binary.rb#22
4062
+ Unparser::Writer::Binary::KEYWORD_SYMBOLS = T.let(T.unsafe(nil), Hash)
4063
+
4064
+ # source://unparser//lib/unparser/writer/binary.rb#16
4065
+ Unparser::Writer::Binary::KEYWORD_TOKENS = T.let(T.unsafe(nil), Hash)
4066
+
4067
+ # source://unparser//lib/unparser/writer/binary.rb#34
4068
+ Unparser::Writer::Binary::MAP = T.let(T.unsafe(nil), Hash)
4069
+
4070
+ # source://unparser//lib/unparser/writer/binary.rb#42
4071
+ Unparser::Writer::Binary::NEED_KEYWORD = T.let(T.unsafe(nil), Array)
4072
+
4073
+ # source://unparser//lib/unparser/writer/binary.rb#28
4074
+ Unparser::Writer::Binary::OPERATOR_SYMBOLS = T.let(T.unsafe(nil), Hash)
4075
+
4076
+ # source://unparser//lib/unparser/writer/binary.rb#10
4077
+ Unparser::Writer::Binary::OPERATOR_TOKENS = T.let(T.unsafe(nil), Hash)
4078
+
4079
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#5
4080
+ class Unparser::Writer::DynamicString
4081
+ include ::Unparser::Adamantium
4082
+ include ::Unparser::Adamantium::InstanceMethods
4083
+ include ::Unparser::NodeHelpers
4084
+ include ::Unparser::Generation
4085
+ include ::Unparser::Writer
4086
+ include ::Unparser::Anima::InstanceMethods
4087
+ include ::Unparser::Equalizer::Methods
4088
+ extend ::Unparser::Adamantium::ModuleMethods
4089
+ extend ::Unparser::Adamantium::ClassMethods
4090
+ extend ::Unparser::DSL
4091
+
4092
+ # source://unparser//lib/unparser/anima.rb#146
4093
+ def buffer; end
4094
+
4095
+ # source://unparser//lib/unparser/anima.rb#146
4096
+ def comments; end
4097
+
4098
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#32
4099
+ def dispatch; end
4100
+
4101
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#25
4102
+ def emit_heredoc_reminder; end
4103
+
4104
+ # source://unparser//lib/unparser/anima.rb#146
4105
+ def local_variable_scope; end
4106
+
4107
+ # source://unparser//lib/unparser/anima.rb#146
4108
+ def node; end
4109
+
4110
+ private
4111
+
4112
+ # @return [Boolean]
4113
+ #
4114
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#159
4115
+ def breakpoint?(child, current); end
4116
+
4117
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#63
4118
+ def classify(node); end
4119
+
4120
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#71
4121
+ def classify_str(node); end
4122
+
4123
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#193
4124
+ def emit_body(children); end
4125
+
4126
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#149
4127
+ def emit_dstr; end
4128
+
4129
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#132
4130
+ def emit_dynamic(child); end
4131
+
4132
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#145
4133
+ def emit_dynamic_component(node); end
4134
+
4135
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#54
4136
+ def emit_heredoc_body; end
4137
+
4138
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#59
4139
+ def emit_heredoc_footer; end
4140
+
4141
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#50
4142
+ def emit_heredoc_header; end
4143
+
4144
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#116
4145
+ def emit_normal_heredoc_body; end
4146
+
4147
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#185
4148
+ def emit_segment(children, index); end
4149
+
4150
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#128
4151
+ def escape_dynamic(string); end
4152
+
4153
+ # @return [Boolean]
4154
+ #
4155
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#46
4156
+ def heredoc?; end
4157
+
4158
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#42
4159
+ def heredoc_header; end
4160
+
4161
+ # @return [Boolean]
4162
+ #
4163
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#95
4164
+ def heredoc_pattern?; end
4165
+
4166
+ # @return [Boolean]
4167
+ #
4168
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#105
4169
+ def heredoc_pattern_2?; end
4170
+
4171
+ # @return [Boolean]
4172
+ #
4173
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#99
4174
+ def heredoc_pattern_3?; end
4175
+
4176
+ # @return [Boolean]
4177
+ #
4178
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#111
4179
+ def nl_last_child?; end
4180
+
4181
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#169
4182
+ def segments; end
4183
+
4184
+ # @return [Boolean]
4185
+ #
4186
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#87
4187
+ def str_empty?(node); end
4188
+
4189
+ # @return [Boolean]
4190
+ #
4191
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#83
4192
+ def str_nl?(node); end
4193
+
4194
+ # @return [Boolean]
4195
+ #
4196
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#91
4197
+ def str_ws?(node); end
4198
+
4199
+ class << self
4200
+ # source://unparser//lib/unparser/anima.rb#140
4201
+ def anima; end
4202
+ end
4203
+ end
4204
+
4205
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#21
4206
+ Unparser::Writer::DynamicString::FLAT_INTERPOLATION = T.let(T.unsafe(nil), Set)
4207
+
4208
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#8
4209
+ Unparser::Writer::DynamicString::PATTERNS_2 = T.let(T.unsafe(nil), Array)
4210
+
4211
+ # source://unparser//lib/unparser/writer/dynamic_string.rb#14
4212
+ Unparser::Writer::DynamicString::PATTERNS_3 = T.let(T.unsafe(nil), Array)
4213
+
4214
+ # Writer for rescue bodies
4215
+ #
4216
+ # source://unparser//lib/unparser/writer/resbody.rb#6
4217
+ class Unparser::Writer::Resbody
4218
+ include ::Unparser::NodeHelpers
4219
+ include ::Unparser::Generation
4220
+ include ::Unparser::Writer
4221
+ include ::Unparser::Anima::InstanceMethods
4222
+ include ::Unparser::Equalizer::Methods
4223
+ extend ::Unparser::DSL
4224
+
4225
+ # source://unparser//lib/unparser/anima.rb#146
4226
+ def buffer; end
4227
+
4228
+ # source://unparser//lib/unparser/anima.rb#146
4229
+ def comments; end
4230
+
4231
+ # source://unparser//lib/unparser/writer/resbody.rb#11
4232
+ def emit_postcontrol; end
4233
+
4234
+ # source://unparser//lib/unparser/writer/resbody.rb#16
4235
+ def emit_regular; end
4236
+
4237
+ # source://unparser//lib/unparser/anima.rb#146
4238
+ def local_variable_scope; end
4239
+
4240
+ # source://unparser//lib/unparser/anima.rb#146
4241
+ def node; end
4242
+
4243
+ private
4244
+
4245
+ # source://unparser//lib/unparser/dsl.rb#18
4246
+ def assignment; end
4247
+
4248
+ # source://unparser//lib/unparser/dsl.rb#18
4249
+ def body; end
4250
+
4251
+ # source://unparser//lib/unparser/writer/resbody.rb#32
4252
+ def emit_assignment; end
4253
+
4254
+ # source://unparser//lib/unparser/writer/resbody.rb#25
4255
+ def emit_exception; end
4256
+
4257
+ # source://unparser//lib/unparser/dsl.rb#18
4258
+ def exception; end
4259
+
4260
+ # source://unparser//lib/unparser/dsl.rb#11
4261
+ def remaining_children; end
4262
+
4263
+ class << self
4264
+ # source://unparser//lib/unparser/anima.rb#140
4265
+ def anima; end
4266
+ end
4267
+ end
4268
+
4269
+ # source://unparser//lib/unparser/writer/rescue.rb#5
4270
+ class Unparser::Writer::Rescue
4271
+ include ::Unparser::Adamantium
4272
+ include ::Unparser::Adamantium::InstanceMethods
4273
+ include ::Unparser::NodeHelpers
4274
+ include ::Unparser::Generation
4275
+ include ::Unparser::Writer
4276
+ include ::Unparser::Anima::InstanceMethods
4277
+ include ::Unparser::Equalizer::Methods
4278
+ extend ::Unparser::Adamantium::ModuleMethods
4279
+ extend ::Unparser::Adamantium::ClassMethods
4280
+ extend ::Unparser::DSL
4281
+
4282
+ # source://unparser//lib/unparser/anima.rb#146
4283
+ def buffer; end
4284
+
4285
+ # source://unparser//lib/unparser/anima.rb#146
4286
+ def comments; end
4287
+
4288
+ # source://unparser//lib/unparser/writer/rescue.rb#23
4289
+ def emit_heredoc_reminders; end
4290
+
4291
+ # source://unparser//lib/unparser/writer/rescue.rb#27
4292
+ def emit_postcontrol; end
4293
+
4294
+ # source://unparser//lib/unparser/writer/rescue.rb#12
4295
+ def emit_regular; end
4296
+
4297
+ # source://unparser//lib/unparser/anima.rb#146
4298
+ def local_variable_scope; end
4299
+
4300
+ # source://unparser//lib/unparser/anima.rb#146
4301
+ def node; end
4302
+
4303
+ private
4304
+
4305
+ # source://unparser//lib/unparser/dsl.rb#18
4306
+ def body; end
4307
+
4308
+ # source://unparser//lib/unparser/writer/rescue.rb#34
4309
+ def else_node; end
4310
+
4311
+ # source://unparser//lib/unparser/writer/rescue.rb#38
4312
+ def emit_rescue_body(node); end
4313
+
4314
+ # source://unparser//lib/unparser/dsl.rb#11
4315
+ def remaining_children; end
4316
+
4317
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
4318
+ def rescue_bodies(&block); end
4319
+
4320
+ # source://unparser//lib/unparser/dsl.rb#18
4321
+ def rescue_body; end
4322
+
4323
+ class << self
4324
+ # source://unparser//lib/unparser/anima.rb#140
4325
+ def anima; end
4326
+ end
4327
+ end
4328
+
4329
+ # Writer for send
4330
+ #
4331
+ # source://unparser//lib/unparser/writer/send.rb#6
4332
+ class Unparser::Writer::Send
4333
+ include ::Unparser::NodeHelpers
4334
+ include ::Unparser::Generation
4335
+ include ::Unparser::Constants
4336
+ include ::Unparser::Adamantium
4337
+ include ::Unparser::Adamantium::InstanceMethods
4338
+ include ::Unparser::Writer
4339
+ include ::Unparser::Anima::InstanceMethods
4340
+ include ::Unparser::Equalizer::Methods
4341
+ extend ::Unparser::Adamantium::ModuleMethods
4342
+ extend ::Unparser::Adamantium::ClassMethods
4343
+ extend ::Unparser::DSL
4344
+
4345
+ # source://unparser//lib/unparser/anima.rb#146
4346
+ def buffer; end
4347
+
4348
+ # source://unparser//lib/unparser/anima.rb#146
4349
+ def comments; end
4350
+
4351
+ # source://unparser//lib/unparser/writer/send.rb#21
4352
+ def dispatch; end
4353
+
4354
+ # source://unparser//lib/unparser/writer/send.rb#33
4355
+ def emit_heredoc_reminders; end
4356
+
4357
+ # source://unparser//lib/unparser/writer/send.rb#25
4358
+ def emit_mlhs; end
4359
+
4360
+ # source://unparser//lib/unparser/writer/send.rb#29
4361
+ def emit_selector; end
4362
+
4363
+ # source://unparser//lib/unparser/anima.rb#146
4364
+ def local_variable_scope; end
4365
+
4366
+ # source://unparser//lib/unparser/anima.rb#146
4367
+ def node; end
4368
+
4369
+ private
4370
+
4371
+ # source://unparser//lib/unparser/writer/send.rb#73
4372
+ def arguments; end
4373
+
4374
+ # @return [Boolean]
4375
+ #
4376
+ # source://unparser//lib/unparser/writer/send.rb#85
4377
+ def avoid_clash?; end
4378
+
4379
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
4380
+ def details(&block); end
4381
+
4382
+ # source://unparser//lib/unparser/adamantium/method_builder.rb#87
4383
+ def effective_writer(&block); end
4384
+
4385
+ # source://unparser//lib/unparser/writer/send.rb#45
4386
+ def effective_writer_class; end
4387
+
4388
+ # source://unparser//lib/unparser/writer/send.rb#65
4389
+ def emit_arguments; end
4390
+
4391
+ # source://unparser//lib/unparser/writer/send.rb#81
4392
+ def emit_heredoc_reminder(argument); end
4393
+
4394
+ # source://unparser//lib/unparser/writer/send.rb#77
4395
+ def emit_normal_arguments; end
4396
+
4397
+ # source://unparser//lib/unparser/writer/send.rb#61
4398
+ def emit_operator; end
4399
+
4400
+ # source://unparser//lib/unparser/writer/send.rb#106
4401
+ def emit_send_regular(node); end
4402
+
4403
+ # @return [Boolean]
4404
+ #
4405
+ # source://unparser//lib/unparser/writer/send.rb#89
4406
+ def local_variable_clash?; end
4407
+
4408
+ # @return [Boolean]
4409
+ #
4410
+ # source://unparser//lib/unparser/writer/send.rb#93
4411
+ def parses_as_constant?; end
4412
+
4413
+ # source://unparser//lib/unparser/dsl.rb#18
4414
+ def receiver; end
4415
+
4416
+ # source://unparser//lib/unparser/dsl.rb#11
4417
+ def remaining_children; end
4418
+
4419
+ # source://unparser//lib/unparser/dsl.rb#18
4420
+ def selector; end
4421
+
4422
+ # @return [Boolean]
4423
+ #
4424
+ # source://unparser//lib/unparser/writer/send.rb#57
4425
+ def write_as_attribute_assignment?; end
4426
+
4427
+ class << self
4428
+ # source://unparser//lib/unparser/anima.rb#140
4429
+ def anima; end
4430
+ end
4431
+ end
4432
+
4433
+ # Writer for send as attribute assignment
4434
+ #
4435
+ # source://unparser//lib/unparser/writer/send/attribute_assignment.rb#7
4436
+ class Unparser::Writer::Send::AttributeAssignment < ::Unparser::Writer::Send
4437
+ # source://unparser//lib/unparser/writer/send/attribute_assignment.rb#10
4438
+ def dispatch; end
4439
+
4440
+ # source://unparser//lib/unparser/writer/send/attribute_assignment.rb#22
4441
+ def emit_send_mlhs; end
4442
+
4443
+ private
4444
+
4445
+ # source://unparser//lib/unparser/writer/send/attribute_assignment.rb#34
4446
+ def emit_attribute; end
4447
+
4448
+ # source://unparser//lib/unparser/writer/send/attribute_assignment.rb#29
4449
+ def emit_receiver; end
4450
+
4451
+ # source://unparser//lib/unparser/dsl.rb#18
4452
+ def first_argument; end
4453
+
4454
+ # source://unparser//lib/unparser/dsl.rb#18
4455
+ def receiver; end
4456
+
4457
+ # source://unparser//lib/unparser/dsl.rb#11
4458
+ def remaining_children; end
4459
+
4460
+ # source://unparser//lib/unparser/dsl.rb#18
4461
+ def selector; end
4462
+ end
4463
+
4464
+ # Writer for binary sends
4465
+ #
4466
+ # source://unparser//lib/unparser/writer/send/binary.rb#7
4467
+ class Unparser::Writer::Send::Binary < ::Unparser::Writer::Send
4468
+ # source://unparser//lib/unparser/writer/send/binary.rb#8
4469
+ def dispatch; end
4470
+
4471
+ private
4472
+
4473
+ # source://unparser//lib/unparser/writer/send/binary.rb#16
4474
+ def emit_operator; end
4475
+
4476
+ # source://unparser//lib/unparser/writer/send/binary.rb#20
4477
+ def emit_right; end
4478
+ end
4479
+
4480
+ # source://unparser//lib/unparser/writer/send.rb#9
4481
+ Unparser::Writer::Send::INDEX_ASSIGN = T.let(T.unsafe(nil), Symbol)
4482
+
4483
+ # source://unparser//lib/unparser/writer/send.rb#10
4484
+ Unparser::Writer::Send::INDEX_REFERENCE = T.let(T.unsafe(nil), Symbol)
4485
+
4486
+ # source://unparser//lib/unparser/writer/send.rb#12
4487
+ Unparser::Writer::Send::OPERATORS = T.let(T.unsafe(nil), Hash)
4488
+
4489
+ # Writer for "regular" receiver.selector(arguments...) case
4490
+ #
4491
+ # source://unparser//lib/unparser/writer/send/regular.rb#7
4492
+ class Unparser::Writer::Send::Regular < ::Unparser::Writer::Send
4493
+ # source://unparser//lib/unparser/writer/send/regular.rb#8
4494
+ def dispatch; end
4495
+
4496
+ # source://unparser//lib/unparser/writer/send/regular.rb#18
4497
+ def emit_arguments_without_heredoc_body; end
4498
+
4499
+ # source://unparser//lib/unparser/writer/send/regular.rb#22
4500
+ def emit_receiver; end
4501
+
4502
+ # source://unparser//lib/unparser/writer/send/regular.rb#14
4503
+ def emit_send_mlhs; end
4504
+ end
4505
+
4506
+ # Writer for unary sends
4507
+ #
4508
+ # source://unparser//lib/unparser/writer/send/unary.rb#7
4509
+ class Unparser::Writer::Send::Unary < ::Unparser::Writer::Send
4510
+ # source://unparser//lib/unparser/writer/send/unary.rb#15
4511
+ def dispatch; end
4512
+ end
4513
+
4514
+ # source://unparser//lib/unparser/writer/send/unary.rb#8
4515
+ Unparser::Writer::Send::Unary::MAP = T.let(T.unsafe(nil), Hash)