rubocop-modularization 0.0.1 → 0.0.3

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