lunchmoney 1.4.0 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. checksums.yaml +4 -4
  2. data/.github/dependabot.yml +7 -0
  3. data/.github/workflows/build_and_publish_yard_docs.yml +4 -4
  4. data/.github/workflows/ci.yml +9 -10
  5. data/.github/workflows/rbi-updater.yml +1 -1
  6. data/.github/workflows/release_pipeline.yml +1 -1
  7. data/.rubocop.yml +1 -1
  8. data/.ruby-version +1 -1
  9. data/.simplecov +1 -0
  10. data/.toys/.toys.rb +8 -0
  11. data/Gemfile +3 -3
  12. data/Gemfile.lock +102 -78
  13. data/README.md +0 -2
  14. data/SECURITY.md +151 -0
  15. data/bin/check_vcr_version +94 -0
  16. data/lib/lunchmoney/api.rb +26 -38
  17. data/lib/lunchmoney/calls/assets.rb +10 -13
  18. data/lib/lunchmoney/calls/base.rb +59 -7
  19. data/lib/lunchmoney/calls/budgets.rb +22 -25
  20. data/lib/lunchmoney/calls/categories.rb +28 -38
  21. data/lib/lunchmoney/calls/crypto.rb +7 -9
  22. data/lib/lunchmoney/calls/plaid_accounts.rb +7 -9
  23. data/lib/lunchmoney/calls/recurring_expenses.rb +4 -5
  24. data/lib/lunchmoney/calls/tags.rb +3 -4
  25. data/lib/lunchmoney/calls/transactions.rb +28 -37
  26. data/lib/lunchmoney/calls/users.rb +3 -4
  27. data/lib/lunchmoney/configuration.rb +20 -0
  28. data/lib/lunchmoney/deprecate.rb +35 -0
  29. data/lib/lunchmoney/objects/asset.rb +6 -1
  30. data/lib/lunchmoney/objects/object.rb +4 -9
  31. data/lib/lunchmoney/objects/plaid_account.rb +6 -1
  32. data/lib/lunchmoney/validators.rb +8 -6
  33. data/lib/lunchmoney/version.rb +1 -1
  34. data/lib/lunchmoney.rb +3 -3
  35. data/lunchmoney.gemspec +1 -1
  36. data/sorbet/rbi/annotations/activesupport.rbi +40 -0
  37. data/sorbet/rbi/dsl/active_support/callbacks.rbi +0 -2
  38. data/sorbet/rbi/gems/{activesupport@7.2.1.rbi → activesupport@8.0.2.1.rbi} +1431 -1028
  39. data/sorbet/rbi/gems/{ast@2.4.2.rbi → ast@2.4.3.rbi} +4 -3
  40. data/sorbet/rbi/gems/{base64@0.2.0.rbi → base64@0.3.0.rbi} +76 -39
  41. data/sorbet/rbi/gems/benchmark@0.4.1.rbi +619 -0
  42. data/sorbet/rbi/gems/bigdecimal@3.2.2.rbi +275 -0
  43. data/sorbet/rbi/gems/{concurrent-ruby@1.3.4.rbi → concurrent-ruby@1.3.5.rbi} +44 -32
  44. data/sorbet/rbi/gems/{connection_pool@2.4.1.rbi → connection_pool@2.5.3.rbi} +1 -0
  45. data/sorbet/rbi/gems/{dotenv@3.1.2.rbi → dotenv@3.1.8.rbi} +21 -29
  46. data/sorbet/rbi/gems/{drb@2.2.1.rbi → drb@2.2.3.rbi} +503 -188
  47. data/sorbet/rbi/gems/{erubi@1.13.0.rbi → erubi@1.13.1.rbi} +14 -9
  48. data/sorbet/rbi/gems/{faraday-net_http@3.1.1.rbi → faraday-net_http@3.4.1.rbi} +34 -34
  49. data/sorbet/rbi/gems/{faraday@2.10.1.rbi → faraday@2.13.4.rbi} +507 -171
  50. data/sorbet/rbi/gems/{hashdiff@1.1.1.rbi → hashdiff@1.2.0.rbi} +5 -3
  51. data/sorbet/rbi/gems/{i18n@1.14.5.rbi → i18n@1.14.7.rbi} +80 -80
  52. data/sorbet/rbi/gems/{json@2.7.2.rbi → json@2.13.2.rbi} +988 -226
  53. data/sorbet/rbi/gems/{kramdown@2.4.0.rbi → kramdown@2.5.1.rbi} +316 -234
  54. data/sorbet/rbi/gems/language_server-protocol@3.17.0.5.rbi +9 -0
  55. data/sorbet/rbi/gems/lint_roller@1.1.0.rbi +240 -0
  56. data/sorbet/rbi/gems/{logger@1.6.0.rbi → logger@1.7.0.rbi} +136 -76
  57. data/sorbet/rbi/gems/{minitest@5.25.1.rbi → minitest@5.25.5.rbi} +227 -220
  58. data/sorbet/rbi/gems/{mocha@2.4.5.rbi → mocha@2.7.1.rbi} +154 -118
  59. data/sorbet/rbi/gems/{net-http@0.4.1.rbi → net-http@0.6.0.rbi} +360 -181
  60. data/sorbet/rbi/gems/{parser@3.3.4.2.rbi → parser@3.3.9.0.rbi} +326 -308
  61. data/sorbet/rbi/gems/{prism@0.30.0.rbi → prism@1.4.0.rbi} +12440 -9920
  62. data/sorbet/rbi/gems/{rack@3.1.7.rbi → rack@3.2.1.rbi} +752 -579
  63. data/sorbet/rbi/gems/{rake@13.2.1.rbi → rake@13.3.0.rbi} +238 -227
  64. data/sorbet/rbi/gems/rbi@0.3.6.rbi +5162 -0
  65. data/sorbet/rbi/gems/rbs@4.0.0.dev.4.rbi +7895 -0
  66. data/sorbet/rbi/gems/{regexp_parser@2.9.2.rbi → regexp_parser@2.11.2.rbi} +1124 -1013
  67. data/sorbet/rbi/gems/require-hooks@0.2.2.rbi +110 -0
  68. data/sorbet/rbi/gems/{rexml@3.3.6.rbi → rexml@3.4.2.rbi} +755 -318
  69. data/sorbet/rbi/gems/{rubocop-ast@1.32.1.rbi → rubocop-ast@1.46.0.rbi} +1287 -899
  70. data/sorbet/rbi/gems/{rubocop-minitest@0.35.1.rbi → rubocop-minitest@0.38.2.rbi} +133 -97
  71. data/sorbet/rbi/gems/{rubocop-rails@2.26.0.rbi → rubocop-rails@2.33.3.rbi} +9874 -6597
  72. data/sorbet/rbi/gems/{rubocop-shopify@2.15.1.rbi → rubocop-shopify@2.17.1.rbi} +1 -0
  73. data/sorbet/rbi/gems/{rubocop-sorbet@0.8.5.rbi → rubocop-sorbet@0.10.5.rbi} +804 -83
  74. data/sorbet/rbi/gems/{rubocop@1.65.1.rbi → rubocop@1.80.1.rbi} +10688 -5103
  75. data/sorbet/rbi/gems/{securerandom@0.3.1.rbi → securerandom@0.4.1.rbi} +7 -5
  76. data/sorbet/rbi/gems/{spoom@1.4.2.rbi → spoom@1.7.6.rbi} +1939 -1039
  77. data/sorbet/rbi/gems/{tapioca@0.16.1.rbi → tapioca@0.17.7.rbi} +765 -821
  78. data/sorbet/rbi/gems/{thor@1.3.1.rbi → thor@1.4.0.rbi} +139 -91
  79. data/sorbet/rbi/gems/unicode-display_width@3.1.5.rbi +132 -0
  80. data/sorbet/rbi/gems/unicode-emoji@4.0.4.rbi +251 -0
  81. data/sorbet/rbi/gems/{uri@0.13.0.rbi → uri@1.0.3.rbi} +278 -256
  82. data/sorbet/rbi/gems/{vcr@6.3.1.rbi → vcr@6.3.1-ce35c236fe48899f02ddf780973b44cdb756c0ee.rbi} +140 -123
  83. data/sorbet/rbi/gems/{webmock@3.23.1.rbi → webmock@3.25.1.rbi} +101 -78
  84. data/sorbet/rbi/gems/{yard@0.9.36.rbi → yard@0.9.37.rbi} +394 -235
  85. metadata +55 -53
  86. data/sorbet/rbi/gems/bigdecimal@3.1.8.rbi +0 -78
  87. data/sorbet/rbi/gems/language_server-protocol@3.17.0.3.rbi +0 -14237
  88. data/sorbet/rbi/gems/rbi@0.1.14.rbi +0 -3305
  89. data/sorbet/rbi/gems/strscan@3.1.0.rbi +0 -9
  90. data/sorbet/rbi/gems/unicode-display_width@2.5.0.rbi +0 -65
  91. /data/sorbet/rbi/gems/{parallel@1.26.3.rbi → parallel@1.27.0.rbi} +0 -0
@@ -192,7 +192,7 @@ class RuboCop::AST::ArrayNode < ::RuboCop::AST::Node
192
192
  #
193
193
  # @return [Array<Node>] an array of value nodes
194
194
  #
195
- # source://ast/2.4.2/lib/ast/node.rb#56
195
+ # source://rubocop-ast//lib/rubocop/ast/node/array_node.rb#18
196
196
  def values; end
197
197
  end
198
198
 
@@ -209,19 +209,33 @@ class RuboCop::AST::AsgnNode < ::RuboCop::AST::Node
209
209
  #
210
210
  # @return [Node] the expression being assigned.
211
211
  #
212
- # source://rubocop-ast//lib/rubocop/ast/node/asgn_node.rb#19
212
+ # source://rubocop-ast//lib/rubocop/ast/node/asgn_node.rb#20
213
213
  def expression; end
214
214
 
215
+ # The name of the variable being assigned as a symbol.
216
+ #
217
+ # @return [Symbol] the name of the variable being assigned
218
+ #
219
+ # source://rubocop-ast//lib/rubocop/ast/node/asgn_node.rb#15
220
+ def lhs; end
221
+
215
222
  # The name of the variable being assigned as a symbol.
216
223
  #
217
224
  # @return [Symbol] the name of the variable being assigned
218
225
  #
219
226
  # source://rubocop-ast//lib/rubocop/ast/node/asgn_node.rb#12
220
227
  def name; end
228
+
229
+ # The expression being assigned to the variable.
230
+ #
231
+ # @return [Node] the expression being assigned.
232
+ #
233
+ # source://rubocop-ast//lib/rubocop/ast/node/asgn_node.rb#23
234
+ def rhs; end
221
235
  end
222
236
 
223
237
  # Common functionality for primitive literal nodes: `sym`, `str`,
224
- # `int`, `float`, `rational`...
238
+ # `int`, `float`, `rational`, `complex`...
225
239
  #
226
240
  # source://rubocop-ast//lib/rubocop/ast/node/mixin/basic_literal_node.rb#7
227
241
  module RuboCop::AST::BasicLiteralNode
@@ -280,7 +294,7 @@ class RuboCop::AST::BlockNode < ::RuboCop::AST::Node
280
294
  #
281
295
  # @return [Array<Node>]
282
296
  #
283
- # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#60
297
+ # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#62
284
298
  def argument_list; end
285
299
 
286
300
  # The arguments of this block.
@@ -290,42 +304,42 @@ class RuboCop::AST::BlockNode < ::RuboCop::AST::Node
290
304
  #
291
305
  # @return [Array<Node>]
292
306
  #
293
- # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#48
307
+ # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#50
294
308
  def arguments; end
295
309
 
296
310
  # Checks whether this block takes any arguments.
297
311
  #
298
312
  # @return [Boolean] whether this `block` node takes any arguments
299
313
  #
300
- # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#85
314
+ # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#89
301
315
  def arguments?; end
302
316
 
303
317
  # The body of this block.
304
318
  #
305
319
  # @return [Node, nil] the body of the `block` node or `nil`
306
320
  #
307
- # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#71
321
+ # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#75
308
322
  def body; end
309
323
 
310
324
  # Checks whether the `block` literal is delimited by curly braces.
311
325
  #
312
326
  # @return [Boolean] whether the `block` literal is enclosed in braces
313
327
  #
314
- # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#92
328
+ # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#96
315
329
  def braces?; end
316
330
 
317
331
  # The closing delimiter for this `block` literal.
318
332
  #
319
333
  # @return [String] the closing delimiter for the `block` literal
320
334
  #
321
- # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#120
335
+ # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#124
322
336
  def closing_delimiter; end
323
337
 
324
338
  # The delimiters for this `block` literal.
325
339
  #
326
340
  # @return [Array<String>] the delimiters for the `block` literal
327
341
  #
328
- # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#106
342
+ # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#110
329
343
  def delimiters; end
330
344
 
331
345
  # A shorthand for getting the first argument of this block.
@@ -334,21 +348,21 @@ class RuboCop::AST::BlockNode < ::RuboCop::AST::Node
334
348
  # @return [Node, nil] the first argument of this block,
335
349
  # or `nil` if there are no arguments
336
350
  #
337
- # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#29
351
+ # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#31
338
352
  def first_argument; end
339
353
 
340
354
  # Checks whether the `block` literal is delimited by `do`-`end` keywords.
341
355
  #
342
356
  # @return [Boolean] whether the `block` literal is enclosed in `do`-`end`
343
357
  #
344
- # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#99
358
+ # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#103
345
359
  def keywords?; end
346
360
 
347
361
  # Checks whether this `block` literal belongs to a lambda.
348
362
  #
349
363
  # @return [Boolean] whether the `block` literal belongs to a lambda
350
364
  #
351
- # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#143
365
+ # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#147
352
366
  def lambda?; end
353
367
 
354
368
  # A shorthand for getting the last argument of this block.
@@ -357,14 +371,14 @@ class RuboCop::AST::BlockNode < ::RuboCop::AST::Node
357
371
  # @return [Node, nil] the last argument of this block,
358
372
  # or `nil` if there are no arguments
359
373
  #
360
- # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#38
374
+ # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#40
361
375
  def last_argument; end
362
376
 
363
377
  # The name of the dispatched method as a symbol.
364
378
  #
365
379
  # @return [Symbol] the name of the dispatched method
366
380
  #
367
- # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#78
381
+ # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#82
368
382
  def method_name; end
369
383
 
370
384
  # Checks whether this is a multiline block. This is overridden here
@@ -372,21 +386,21 @@ class RuboCop::AST::BlockNode < ::RuboCop::AST::Node
372
386
  #
373
387
  # @return [Boolean] whether the `block` literal is on a several lines
374
388
  #
375
- # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#136
389
+ # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#140
376
390
  def multiline?; end
377
391
 
378
392
  # The opening delimiter for this `block` literal.
379
393
  #
380
394
  # @return [String] the opening delimiter for the `block` literal
381
395
  #
382
- # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#113
396
+ # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#117
383
397
  def opening_delimiter; end
384
398
 
385
399
  # The `send` node associated with this block.
386
400
  #
387
401
  # @return [SendNode] the `send` node associated with the `block` node
388
402
  #
389
- # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#20
403
+ # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#22
390
404
  def send_node; end
391
405
 
392
406
  # Checks whether this is a single line block. This is overridden here
@@ -394,25 +408,26 @@ class RuboCop::AST::BlockNode < ::RuboCop::AST::Node
394
408
  #
395
409
  # @return [Boolean] whether the `block` literal is on a single line
396
410
  #
397
- # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#128
411
+ # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#132
398
412
  def single_line?; end
399
413
 
400
414
  # Checks whether this node body is a void context.
401
415
  #
402
416
  # @return [Boolean] whether the `block` node body is a void context
403
417
  #
404
- # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#150
418
+ # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#154
405
419
  def void_context?; end
406
420
 
407
421
  private
408
422
 
409
- # Numbered arguments of this `numblock`.
410
- #
411
- # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#157
423
+ # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#160
412
424
  def numbered_arguments; end
413
425
  end
414
426
 
415
427
  # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#14
428
+ RuboCop::AST::BlockNode::IT_BLOCK_ARGUMENT = T.let(T.unsafe(nil), Array)
429
+
430
+ # source://rubocop-ast//lib/rubocop/ast/node/block_node.rb#16
416
431
  RuboCop::AST::BlockNode::VOID_CONTEXT_METHODS = T.let(T.unsafe(nil), Array)
417
432
 
418
433
  # A node extension for `break` nodes. This will be used in place of a
@@ -437,31 +452,61 @@ end
437
452
  # parser = Parser::Ruby25.new(builder)
438
453
  # root_node = parser.parse(buffer)
439
454
  #
440
- # source://rubocop-ast//lib/rubocop/ast/builder.rb#16
455
+ # source://rubocop-ast//lib/rubocop/ast/builder.rb#129
441
456
  class RuboCop::AST::Builder < ::Parser::Builders::Default
457
+ include ::RuboCop::AST::BuilderExtensions
458
+ end
459
+
460
+ # Common functionality between the parser and prism builder
461
+ #
462
+ # @api private
463
+ #
464
+ # source://rubocop-ast//lib/rubocop/ast/builder.rb#7
465
+ module RuboCop::AST::BuilderExtensions
442
466
  # Generates {Node} from the given information.
443
467
  #
468
+ # @api private
444
469
  # @return [Node] the generated node
445
470
  #
446
- # source://rubocop-ast//lib/rubocop/ast/builder.rb#99
471
+ # source://rubocop-ast//lib/rubocop/ast/builder.rb#101
447
472
  def n(type, children, source_map); end
448
473
 
449
- # TODO: Figure out what to do about literal encoding handling...
474
+ # Overwrite the base method to allow strings with invalid encoding
450
475
  # More details here https://github.com/whitequark/parser/issues/283
451
476
  #
452
- # source://rubocop-ast//lib/rubocop/ast/builder.rb#105
477
+ # @api private
478
+ #
479
+ # source://rubocop-ast//lib/rubocop/ast/builder.rb#107
453
480
  def string_value(token); end
454
481
 
455
482
  private
456
483
 
457
- # source://rubocop-ast//lib/rubocop/ast/builder.rb#111
484
+ # @api private
485
+ #
486
+ # source://rubocop-ast//lib/rubocop/ast/builder.rb#113
458
487
  def node_klass(type); end
488
+
489
+ class << self
490
+ # @api private
491
+ # @private
492
+ #
493
+ # source://rubocop-ast//lib/rubocop/ast/builder.rb#8
494
+ def included(base); end
495
+ end
459
496
  end
460
497
 
461
498
  # @api private
462
499
  #
463
- # source://rubocop-ast//lib/rubocop/ast/builder.rb#21
464
- RuboCop::AST::Builder::NODE_MAP = T.let(T.unsafe(nil), Hash)
500
+ # source://rubocop-ast//lib/rubocop/ast/builder.rb#14
501
+ RuboCop::AST::BuilderExtensions::NODE_MAP = T.let(T.unsafe(nil), Hash)
502
+
503
+ # A parser builder, based on the one provided by prism,
504
+ # which is capable of emitting AST for more recent Rubies.
505
+ #
506
+ # source://rubocop-ast//lib/rubocop/ast/builder_prism.rb#7
507
+ class RuboCop::AST::BuilderPrism < ::Prism::Translation::Parser::Builder
508
+ include ::RuboCop::AST::BuilderExtensions
509
+ end
465
510
 
466
511
  # A node extension for `case_match` nodes. This will be used in place of
467
512
  # a plain node when the builder constructs the AST, making its methods
@@ -574,26 +619,27 @@ end
574
619
  #
575
620
  # source://rubocop-ast//lib/rubocop/ast/node/casgn_node.rb#8
576
621
  class RuboCop::AST::CasgnNode < ::RuboCop::AST::Node
622
+ include ::RuboCop::AST::ConstantNode
623
+
577
624
  # The expression being assigned to the variable.
578
625
  #
579
626
  # @return [Node] the expression being assigned.
580
627
  #
581
- # source://rubocop-ast//lib/rubocop/ast/node/casgn_node.rb#26
628
+ # source://rubocop-ast//lib/rubocop/ast/node/casgn_node.rb#17
582
629
  def expression; end
583
630
 
584
- # The name of the variable being assigned as a symbol.
585
- #
586
- # @return [Symbol] the name of the variable being assigned
587
- #
588
- # source://rubocop-ast//lib/rubocop/ast/node/casgn_node.rb#19
631
+ # source://rubocop-ast//lib/rubocop/ast/node/casgn_node.rb#12
632
+ def lhs; end
633
+
634
+ # source://rubocop-ast//lib/rubocop/ast/node/casgn_node.rb#11
589
635
  def name; end
590
636
 
591
- # The namespace of the constant being assigned.
637
+ # The expression being assigned to the variable.
592
638
  #
593
- # @return [Node, nil] the node associated with the scope (e.g. cbase, const, ...)
639
+ # @return [Node] the expression being assigned.
594
640
  #
595
- # source://rubocop-ast//lib/rubocop/ast/node/casgn_node.rb#12
596
- def namespace; end
641
+ # source://rubocop-ast//lib/rubocop/ast/node/casgn_node.rb#20
642
+ def rhs; end
597
643
  end
598
644
 
599
645
  # A node extension for `class` nodes. This will be used in place of a plain
@@ -628,417 +674,430 @@ end
628
674
  #
629
675
  # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#6
630
676
  module RuboCop::AST::CollectionNode
631
- extend ::Forwardable
677
+ extend ::RuboCop::SimpleForwardable
678
+
679
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
680
+ def &(*_arg0, **_arg1, &_arg2); end
632
681
 
633
- # source://forwardable/1.3.3/forwardable.rb#231
634
- def &(*args, **_arg1, &block); end
682
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
683
+ def *(*_arg0, **_arg1, &_arg2); end
635
684
 
636
- # source://forwardable/1.3.3/forwardable.rb#231
637
- def *(*args, **_arg1, &block); end
685
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
686
+ def +(*_arg0, **_arg1, &_arg2); end
638
687
 
639
- # source://forwardable/1.3.3/forwardable.rb#231
640
- def +(*args, **_arg1, &block); end
688
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
689
+ def -(*_arg0, **_arg1, &_arg2); end
641
690
 
642
- # source://forwardable/1.3.3/forwardable.rb#231
643
- def -(*args, **_arg1, &block); end
691
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
692
+ def <<(*_arg0, **_arg1, &_arg2); end
644
693
 
645
- # source://forwardable/1.3.3/forwardable.rb#231
646
- def <<(*args, **_arg1, &block); end
694
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
695
+ def [](*_arg0, **_arg1, &_arg2); end
647
696
 
648
- # source://forwardable/1.3.3/forwardable.rb#231
649
- def [](*args, **_arg1, &block); end
697
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
698
+ def []=(*_arg0, **_arg1, &_arg2); end
650
699
 
651
- # source://forwardable/1.3.3/forwardable.rb#231
652
- def []=(*args, **_arg1, &block); end
700
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
701
+ def all?(*_arg0, **_arg1, &_arg2); end
653
702
 
654
- # source://forwardable/1.3.3/forwardable.rb#231
655
- def all?(*args, **_arg1, &block); end
703
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
704
+ def any?(*_arg0, **_arg1, &_arg2); end
656
705
 
657
- # source://forwardable/1.3.3/forwardable.rb#231
658
- def any?(*args, **_arg1, &block); end
706
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
707
+ def append(*_arg0, **_arg1, &_arg2); end
659
708
 
660
- # source://forwardable/1.3.3/forwardable.rb#231
661
- def append(*args, **_arg1, &block); end
709
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
710
+ def assoc(*_arg0, **_arg1, &_arg2); end
662
711
 
663
- # source://forwardable/1.3.3/forwardable.rb#231
664
- def assoc(*args, **_arg1, &block); end
712
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
713
+ def at(*_arg0, **_arg1, &_arg2); end
665
714
 
666
- # source://forwardable/1.3.3/forwardable.rb#231
667
- def at(*args, **_arg1, &block); end
715
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
716
+ def bsearch(*_arg0, **_arg1, &_arg2); end
668
717
 
669
- # source://forwardable/1.3.3/forwardable.rb#231
670
- def bsearch(*args, **_arg1, &block); end
718
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
719
+ def bsearch_index(*_arg0, **_arg1, &_arg2); end
671
720
 
672
- # source://forwardable/1.3.3/forwardable.rb#231
673
- def bsearch_index(*args, **_arg1, &block); end
721
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
722
+ def chain(*_arg0, **_arg1, &_arg2); end
674
723
 
675
- # source://forwardable/1.3.3/forwardable.rb#231
676
- def chain(*args, **_arg1, &block); end
724
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
725
+ def chunk(*_arg0, **_arg1, &_arg2); end
677
726
 
678
- # source://forwardable/1.3.3/forwardable.rb#231
679
- def chunk(*args, **_arg1, &block); end
727
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
728
+ def chunk_while(*_arg0, **_arg1, &_arg2); end
680
729
 
681
- # source://forwardable/1.3.3/forwardable.rb#231
682
- def chunk_while(*args, **_arg1, &block); end
730
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
731
+ def clear(*_arg0, **_arg1, &_arg2); end
683
732
 
684
- # source://forwardable/1.3.3/forwardable.rb#231
685
- def clear(*args, **_arg1, &block); end
733
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
734
+ def collect(*_arg0, **_arg1, &_arg2); end
686
735
 
687
- # source://forwardable/1.3.3/forwardable.rb#231
688
- def collect(*args, **_arg1, &block); end
736
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
737
+ def collect!(*_arg0, **_arg1, &_arg2); end
689
738
 
690
- # source://forwardable/1.3.3/forwardable.rb#231
691
- def collect!(*args, **_arg1, &block); end
739
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
740
+ def collect_concat(*_arg0, **_arg1, &_arg2); end
692
741
 
693
- # source://forwardable/1.3.3/forwardable.rb#231
694
- def collect_concat(*args, **_arg1, &block); end
742
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
743
+ def combination(*_arg0, **_arg1, &_arg2); end
695
744
 
696
- # source://forwardable/1.3.3/forwardable.rb#231
697
- def combination(*args, **_arg1, &block); end
745
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
746
+ def compact(*_arg0, **_arg1, &_arg2); end
698
747
 
699
- # source://forwardable/1.3.3/forwardable.rb#231
700
- def compact(*args, **_arg1, &block); end
748
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
749
+ def compact!(*_arg0, **_arg1, &_arg2); end
701
750
 
702
- # source://forwardable/1.3.3/forwardable.rb#231
703
- def compact!(*args, **_arg1, &block); end
751
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
752
+ def concat(*_arg0, **_arg1, &_arg2); end
704
753
 
705
- # source://forwardable/1.3.3/forwardable.rb#231
706
- def concat(*args, **_arg1, &block); end
754
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
755
+ def count(*_arg0, **_arg1, &_arg2); end
707
756
 
708
- # source://forwardable/1.3.3/forwardable.rb#231
709
- def count(*args, **_arg1, &block); end
757
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
758
+ def cycle(*_arg0, **_arg1, &_arg2); end
710
759
 
711
- # source://forwardable/1.3.3/forwardable.rb#231
712
- def cycle(*args, **_arg1, &block); end
760
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
761
+ def deconstruct(*_arg0, **_arg1, &_arg2); end
713
762
 
714
- # source://forwardable/1.3.3/forwardable.rb#231
715
- def deconstruct(*args, **_arg1, &block); end
763
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
764
+ def delete(*_arg0, **_arg1, &_arg2); end
716
765
 
717
- # source://forwardable/1.3.3/forwardable.rb#231
718
- def delete(*args, **_arg1, &block); end
766
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
767
+ def delete_at(*_arg0, **_arg1, &_arg2); end
719
768
 
720
- # source://forwardable/1.3.3/forwardable.rb#231
721
- def delete_at(*args, **_arg1, &block); end
769
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
770
+ def delete_if(*_arg0, **_arg1, &_arg2); end
722
771
 
723
- # source://forwardable/1.3.3/forwardable.rb#231
724
- def delete_if(*args, **_arg1, &block); end
772
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
773
+ def detect(*_arg0, **_arg1, &_arg2); end
725
774
 
726
- # source://forwardable/1.3.3/forwardable.rb#231
727
- def detect(*args, **_arg1, &block); end
775
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
776
+ def difference(*_arg0, **_arg1, &_arg2); end
728
777
 
729
- # source://forwardable/1.3.3/forwardable.rb#231
730
- def difference(*args, **_arg1, &block); end
778
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
779
+ def dig(*_arg0, **_arg1, &_arg2); end
731
780
 
732
- # source://forwardable/1.3.3/forwardable.rb#231
733
- def dig(*args, **_arg1, &block); end
781
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
782
+ def drop(*_arg0, **_arg1, &_arg2); end
734
783
 
735
- # source://forwardable/1.3.3/forwardable.rb#231
736
- def drop(*args, **_arg1, &block); end
784
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
785
+ def drop_while(*_arg0, **_arg1, &_arg2); end
737
786
 
738
- # source://forwardable/1.3.3/forwardable.rb#231
739
- def drop_while(*args, **_arg1, &block); end
787
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
788
+ def each(*_arg0, **_arg1, &_arg2); end
740
789
 
741
- # source://forwardable/1.3.3/forwardable.rb#231
742
- def each(*args, **_arg1, &block); end
790
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
791
+ def each_cons(*_arg0, **_arg1, &_arg2); end
743
792
 
744
- # source://forwardable/1.3.3/forwardable.rb#231
745
- def each_cons(*args, **_arg1, &block); end
793
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
794
+ def each_entry(*_arg0, **_arg1, &_arg2); end
746
795
 
747
- # source://forwardable/1.3.3/forwardable.rb#231
748
- def each_entry(*args, **_arg1, &block); end
796
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
797
+ def each_index(*_arg0, **_arg1, &_arg2); end
749
798
 
750
- # source://forwardable/1.3.3/forwardable.rb#231
751
- def each_index(*args, **_arg1, &block); end
799
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
800
+ def each_slice(*_arg0, **_arg1, &_arg2); end
752
801
 
753
- # source://forwardable/1.3.3/forwardable.rb#231
754
- def each_slice(*args, **_arg1, &block); end
802
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
803
+ def each_with_index(*_arg0, **_arg1, &_arg2); end
755
804
 
756
- # source://forwardable/1.3.3/forwardable.rb#231
757
- def each_with_index(*args, **_arg1, &block); end
805
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
806
+ def each_with_object(*_arg0, **_arg1, &_arg2); end
758
807
 
759
- # source://forwardable/1.3.3/forwardable.rb#231
760
- def each_with_object(*args, **_arg1, &block); end
808
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
809
+ def empty?(*_arg0, **_arg1, &_arg2); end
761
810
 
762
- # source://forwardable/1.3.3/forwardable.rb#231
763
- def empty?(*args, **_arg1, &block); end
811
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
812
+ def entries(*_arg0, **_arg1, &_arg2); end
764
813
 
765
- # source://forwardable/1.3.3/forwardable.rb#231
766
- def entries(*args, **_arg1, &block); end
814
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
815
+ def fetch(*_arg0, **_arg1, &_arg2); end
767
816
 
768
- # source://forwardable/1.3.3/forwardable.rb#231
769
- def fetch(*args, **_arg1, &block); end
817
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
818
+ def fetch_values(*_arg0, **_arg1, &_arg2); end
770
819
 
771
- # source://forwardable/1.3.3/forwardable.rb#231
772
- def fill(*args, **_arg1, &block); end
820
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
821
+ def fill(*_arg0, **_arg1, &_arg2); end
773
822
 
774
- # source://forwardable/1.3.3/forwardable.rb#231
775
- def filter(*args, **_arg1, &block); end
823
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
824
+ def filter(*_arg0, **_arg1, &_arg2); end
776
825
 
777
- # source://forwardable/1.3.3/forwardable.rb#231
778
- def filter!(*args, **_arg1, &block); end
826
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
827
+ def filter!(*_arg0, **_arg1, &_arg2); end
779
828
 
780
- # source://forwardable/1.3.3/forwardable.rb#231
781
- def filter_map(*args, **_arg1, &block); end
829
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
830
+ def filter_map(*_arg0, **_arg1, &_arg2); end
782
831
 
783
- # source://forwardable/1.3.3/forwardable.rb#231
784
- def find(*args, **_arg1, &block); end
832
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
833
+ def find(*_arg0, **_arg1, &_arg2); end
785
834
 
786
- # source://forwardable/1.3.3/forwardable.rb#231
787
- def find_all(*args, **_arg1, &block); end
835
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
836
+ def find_all(*_arg0, **_arg1, &_arg2); end
788
837
 
789
- # source://forwardable/1.3.3/forwardable.rb#231
790
- def find_index(*args, **_arg1, &block); end
838
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
839
+ def find_index(*_arg0, **_arg1, &_arg2); end
791
840
 
792
- # source://forwardable/1.3.3/forwardable.rb#231
793
- def first(*args, **_arg1, &block); end
841
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
842
+ def first(*_arg0, **_arg1, &_arg2); end
794
843
 
795
- # source://forwardable/1.3.3/forwardable.rb#231
796
- def flat_map(*args, **_arg1, &block); end
844
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
845
+ def flat_map(*_arg0, **_arg1, &_arg2); end
797
846
 
798
- # source://forwardable/1.3.3/forwardable.rb#231
799
- def flatten(*args, **_arg1, &block); end
847
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
848
+ def flatten(*_arg0, **_arg1, &_arg2); end
800
849
 
801
- # source://forwardable/1.3.3/forwardable.rb#231
802
- def flatten!(*args, **_arg1, &block); end
850
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
851
+ def flatten!(*_arg0, **_arg1, &_arg2); end
803
852
 
804
- # source://forwardable/1.3.3/forwardable.rb#231
805
- def grep(*args, **_arg1, &block); end
853
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
854
+ def grep(*_arg0, **_arg1, &_arg2); end
806
855
 
807
- # source://forwardable/1.3.3/forwardable.rb#231
808
- def grep_v(*args, **_arg1, &block); end
856
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
857
+ def grep_v(*_arg0, **_arg1, &_arg2); end
809
858
 
810
- # source://forwardable/1.3.3/forwardable.rb#231
811
- def group_by(*args, **_arg1, &block); end
859
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
860
+ def group_by(*_arg0, **_arg1, &_arg2); end
812
861
 
813
- # source://forwardable/1.3.3/forwardable.rb#231
814
- def include?(*args, **_arg1, &block); end
862
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
863
+ def include?(*_arg0, **_arg1, &_arg2); end
815
864
 
816
- # source://forwardable/1.3.3/forwardable.rb#231
817
- def index(*args, **_arg1, &block); end
865
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
866
+ def index(*_arg0, **_arg1, &_arg2); end
818
867
 
819
- # source://forwardable/1.3.3/forwardable.rb#231
820
- def inject(*args, **_arg1, &block); end
868
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
869
+ def inject(*_arg0, **_arg1, &_arg2); end
821
870
 
822
- # source://forwardable/1.3.3/forwardable.rb#231
823
- def insert(*args, **_arg1, &block); end
871
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
872
+ def insert(*_arg0, **_arg1, &_arg2); end
824
873
 
825
- # source://forwardable/1.3.3/forwardable.rb#231
826
- def intersect?(*args, **_arg1, &block); end
874
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
875
+ def intersect?(*_arg0, **_arg1, &_arg2); end
827
876
 
828
- # source://forwardable/1.3.3/forwardable.rb#231
829
- def intersection(*args, **_arg1, &block); end
877
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
878
+ def intersection(*_arg0, **_arg1, &_arg2); end
830
879
 
831
- # source://forwardable/1.3.3/forwardable.rb#231
832
- def join(*args, **_arg1, &block); end
880
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
881
+ def join(*_arg0, **_arg1, &_arg2); end
833
882
 
834
- # source://forwardable/1.3.3/forwardable.rb#231
835
- def keep_if(*args, **_arg1, &block); end
883
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
884
+ def keep_if(*_arg0, **_arg1, &_arg2); end
836
885
 
837
- # source://forwardable/1.3.3/forwardable.rb#231
838
- def last(*args, **_arg1, &block); end
886
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
887
+ def last(*_arg0, **_arg1, &_arg2); end
839
888
 
840
- # source://forwardable/1.3.3/forwardable.rb#231
841
- def lazy(*args, **_arg1, &block); end
889
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
890
+ def lazy(*_arg0, **_arg1, &_arg2); end
842
891
 
843
- # source://forwardable/1.3.3/forwardable.rb#231
844
- def length(*args, **_arg1, &block); end
892
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
893
+ def length(*_arg0, **_arg1, &_arg2); end
845
894
 
846
- # source://forwardable/1.3.3/forwardable.rb#231
847
- def map(*args, **_arg1, &block); end
895
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
896
+ def map(*_arg0, **_arg1, &_arg2); end
848
897
 
849
- # source://forwardable/1.3.3/forwardable.rb#231
850
- def map!(*args, **_arg1, &block); end
898
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
899
+ def map!(*_arg0, **_arg1, &_arg2); end
851
900
 
852
- # source://forwardable/1.3.3/forwardable.rb#231
853
- def max(*args, **_arg1, &block); end
901
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
902
+ def max(*_arg0, **_arg1, &_arg2); end
854
903
 
855
- # source://forwardable/1.3.3/forwardable.rb#231
856
- def max_by(*args, **_arg1, &block); end
904
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
905
+ def max_by(*_arg0, **_arg1, &_arg2); end
857
906
 
858
- # source://forwardable/1.3.3/forwardable.rb#231
859
- def member?(*args, **_arg1, &block); end
907
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
908
+ def member?(*_arg0, **_arg1, &_arg2); end
860
909
 
861
- # source://forwardable/1.3.3/forwardable.rb#231
862
- def min(*args, **_arg1, &block); end
910
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
911
+ def min(*_arg0, **_arg1, &_arg2); end
863
912
 
864
- # source://forwardable/1.3.3/forwardable.rb#231
865
- def min_by(*args, **_arg1, &block); end
913
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
914
+ def min_by(*_arg0, **_arg1, &_arg2); end
866
915
 
867
- # source://forwardable/1.3.3/forwardable.rb#231
868
- def minmax(*args, **_arg1, &block); end
916
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
917
+ def minmax(*_arg0, **_arg1, &_arg2); end
869
918
 
870
- # source://forwardable/1.3.3/forwardable.rb#231
871
- def minmax_by(*args, **_arg1, &block); end
919
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
920
+ def minmax_by(*_arg0, **_arg1, &_arg2); end
872
921
 
873
- # source://forwardable/1.3.3/forwardable.rb#231
874
- def none?(*args, **_arg1, &block); end
922
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
923
+ def none?(*_arg0, **_arg1, &_arg2); end
875
924
 
876
- # source://forwardable/1.3.3/forwardable.rb#231
877
- def one?(*args, **_arg1, &block); end
925
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
926
+ def one?(*_arg0, **_arg1, &_arg2); end
878
927
 
879
- # source://forwardable/1.3.3/forwardable.rb#231
880
- def pack(*args, **_arg1, &block); end
928
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
929
+ def pack(*_arg0, **_arg1, &_arg2); end
881
930
 
882
- # source://forwardable/1.3.3/forwardable.rb#231
883
- def partition(*args, **_arg1, &block); end
931
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
932
+ def partition(*_arg0, **_arg1, &_arg2); end
884
933
 
885
- # source://forwardable/1.3.3/forwardable.rb#231
886
- def permutation(*args, **_arg1, &block); end
934
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
935
+ def permutation(*_arg0, **_arg1, &_arg2); end
887
936
 
888
- # source://forwardable/1.3.3/forwardable.rb#231
889
- def place(*args, **_arg1, &block); end
937
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
938
+ def place(*_arg0, **_arg1, &_arg2); end
890
939
 
891
- # source://forwardable/1.3.3/forwardable.rb#231
892
- def pop(*args, **_arg1, &block); end
940
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
941
+ def pop(*_arg0, **_arg1, &_arg2); end
893
942
 
894
- # source://forwardable/1.3.3/forwardable.rb#231
895
- def prepend(*args, **_arg1, &block); end
943
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
944
+ def prepend(*_arg0, **_arg1, &_arg2); end
896
945
 
897
- # source://forwardable/1.3.3/forwardable.rb#231
898
- def product(*args, **_arg1, &block); end
946
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
947
+ def product(*_arg0, **_arg1, &_arg2); end
899
948
 
900
- # source://forwardable/1.3.3/forwardable.rb#231
901
- def push(*args, **_arg1, &block); end
949
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
950
+ def push(*_arg0, **_arg1, &_arg2); end
902
951
 
903
- # source://forwardable/1.3.3/forwardable.rb#231
904
- def rassoc(*args, **_arg1, &block); end
952
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
953
+ def rassoc(*_arg0, **_arg1, &_arg2); end
905
954
 
906
- # source://forwardable/1.3.3/forwardable.rb#231
907
- def reduce(*args, **_arg1, &block); end
955
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
956
+ def reduce(*_arg0, **_arg1, &_arg2); end
908
957
 
909
- # source://forwardable/1.3.3/forwardable.rb#231
910
- def reject(*args, **_arg1, &block); end
958
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
959
+ def reject(*_arg0, **_arg1, &_arg2); end
911
960
 
912
- # source://forwardable/1.3.3/forwardable.rb#231
913
- def reject!(*args, **_arg1, &block); end
961
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
962
+ def reject!(*_arg0, **_arg1, &_arg2); end
914
963
 
915
- # source://forwardable/1.3.3/forwardable.rb#231
916
- def repeated_combination(*args, **_arg1, &block); end
964
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
965
+ def repeated_combination(*_arg0, **_arg1, &_arg2); end
917
966
 
918
- # source://forwardable/1.3.3/forwardable.rb#231
919
- def repeated_permutation(*args, **_arg1, &block); end
967
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
968
+ def repeated_permutation(*_arg0, **_arg1, &_arg2); end
920
969
 
921
- # source://forwardable/1.3.3/forwardable.rb#231
922
- def replace(*args, **_arg1, &block); end
970
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
971
+ def replace(*_arg0, **_arg1, &_arg2); end
923
972
 
924
- # source://forwardable/1.3.3/forwardable.rb#231
925
- def reverse(*args, **_arg1, &block); end
973
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
974
+ def reverse(*_arg0, **_arg1, &_arg2); end
926
975
 
927
- # source://forwardable/1.3.3/forwardable.rb#231
928
- def reverse!(*args, **_arg1, &block); end
976
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
977
+ def reverse!(*_arg0, **_arg1, &_arg2); end
929
978
 
930
- # source://forwardable/1.3.3/forwardable.rb#231
931
- def reverse_each(*args, **_arg1, &block); end
979
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
980
+ def reverse_each(*_arg0, **_arg1, &_arg2); end
932
981
 
933
- # source://forwardable/1.3.3/forwardable.rb#231
934
- def rindex(*args, **_arg1, &block); end
982
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
983
+ def rindex(*_arg0, **_arg1, &_arg2); end
935
984
 
936
- # source://forwardable/1.3.3/forwardable.rb#231
937
- def rotate(*args, **_arg1, &block); end
985
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
986
+ def rotate(*_arg0, **_arg1, &_arg2); end
938
987
 
939
- # source://forwardable/1.3.3/forwardable.rb#231
940
- def rotate!(*args, **_arg1, &block); end
988
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
989
+ def rotate!(*_arg0, **_arg1, &_arg2); end
941
990
 
942
- # source://forwardable/1.3.3/forwardable.rb#231
943
- def sample(*args, **_arg1, &block); end
991
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
992
+ def sample(*_arg0, **_arg1, &_arg2); end
944
993
 
945
- # source://forwardable/1.3.3/forwardable.rb#231
946
- def select(*args, **_arg1, &block); end
994
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
995
+ def select(*_arg0, **_arg1, &_arg2); end
947
996
 
948
- # source://forwardable/1.3.3/forwardable.rb#231
949
- def select!(*args, **_arg1, &block); end
997
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
998
+ def select!(*_arg0, **_arg1, &_arg2); end
950
999
 
951
- # source://forwardable/1.3.3/forwardable.rb#231
952
- def shelljoin(*args, **_arg1, &block); end
1000
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1001
+ def shelljoin(*_arg0, **_arg1, &_arg2); end
953
1002
 
954
- # source://forwardable/1.3.3/forwardable.rb#231
955
- def shift(*args, **_arg1, &block); end
1003
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1004
+ def shift(*_arg0, **_arg1, &_arg2); end
956
1005
 
957
- # source://forwardable/1.3.3/forwardable.rb#231
958
- def shuffle(*args, **_arg1, &block); end
1006
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1007
+ def shuffle(*_arg0, **_arg1, &_arg2); end
959
1008
 
960
- # source://forwardable/1.3.3/forwardable.rb#231
961
- def shuffle!(*args, **_arg1, &block); end
1009
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1010
+ def shuffle!(*_arg0, **_arg1, &_arg2); end
962
1011
 
963
- # source://forwardable/1.3.3/forwardable.rb#231
964
- def size(*args, **_arg1, &block); end
1012
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1013
+ def size(*_arg0, **_arg1, &_arg2); end
965
1014
 
966
- # source://forwardable/1.3.3/forwardable.rb#231
967
- def slice(*args, **_arg1, &block); end
1015
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1016
+ def slice(*_arg0, **_arg1, &_arg2); end
968
1017
 
969
- # source://forwardable/1.3.3/forwardable.rb#231
970
- def slice!(*args, **_arg1, &block); end
1018
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1019
+ def slice!(*_arg0, **_arg1, &_arg2); end
971
1020
 
972
- # source://forwardable/1.3.3/forwardable.rb#231
973
- def slice_after(*args, **_arg1, &block); end
1021
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1022
+ def slice_after(*_arg0, **_arg1, &_arg2); end
974
1023
 
975
- # source://forwardable/1.3.3/forwardable.rb#231
976
- def slice_before(*args, **_arg1, &block); end
1024
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1025
+ def slice_before(*_arg0, **_arg1, &_arg2); end
977
1026
 
978
- # source://forwardable/1.3.3/forwardable.rb#231
979
- def slice_when(*args, **_arg1, &block); end
1027
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1028
+ def slice_when(*_arg0, **_arg1, &_arg2); end
980
1029
 
981
- # source://forwardable/1.3.3/forwardable.rb#231
982
- def sort(*args, **_arg1, &block); end
1030
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1031
+ def sort(*_arg0, **_arg1, &_arg2); end
983
1032
 
984
- # source://forwardable/1.3.3/forwardable.rb#231
985
- def sort!(*args, **_arg1, &block); end
1033
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1034
+ def sort!(*_arg0, **_arg1, &_arg2); end
986
1035
 
987
- # source://forwardable/1.3.3/forwardable.rb#231
988
- def sort_by(*args, **_arg1, &block); end
1036
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1037
+ def sort_by(*_arg0, **_arg1, &_arg2); end
989
1038
 
990
- # source://forwardable/1.3.3/forwardable.rb#231
991
- def sort_by!(*args, **_arg1, &block); end
1039
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1040
+ def sort_by!(*_arg0, **_arg1, &_arg2); end
992
1041
 
993
- # source://forwardable/1.3.3/forwardable.rb#231
994
- def sum(*args, **_arg1, &block); end
1042
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1043
+ def sum(*_arg0, **_arg1, &_arg2); end
995
1044
 
996
- # source://forwardable/1.3.3/forwardable.rb#231
997
- def take(*args, **_arg1, &block); end
1045
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1046
+ def take(*_arg0, **_arg1, &_arg2); end
998
1047
 
999
- # source://forwardable/1.3.3/forwardable.rb#231
1000
- def take_while(*args, **_arg1, &block); end
1048
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1049
+ def take_while(*_arg0, **_arg1, &_arg2); end
1001
1050
 
1002
- # source://forwardable/1.3.3/forwardable.rb#231
1003
- def tally(*args, **_arg1, &block); end
1051
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1052
+ def tally(*_arg0, **_arg1, &_arg2); end
1004
1053
 
1005
- # source://forwardable/1.3.3/forwardable.rb#231
1006
- def to_ary(*args, **_arg1, &block); end
1054
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1055
+ def to_ary(*_arg0, **_arg1, &_arg2); end
1007
1056
 
1008
- # source://forwardable/1.3.3/forwardable.rb#231
1009
- def to_h(*args, **_arg1, &block); end
1057
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1058
+ def to_h(*_arg0, **_arg1, &_arg2); end
1010
1059
 
1011
- # source://forwardable/1.3.3/forwardable.rb#231
1012
- def to_set(*args, **_arg1, &block); end
1060
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1061
+ def to_set(*_arg0, **_arg1, &_arg2); end
1013
1062
 
1014
- # source://forwardable/1.3.3/forwardable.rb#231
1015
- def transpose(*args, **_arg1, &block); end
1063
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1064
+ def transpose(*_arg0, **_arg1, &_arg2); end
1016
1065
 
1017
- # source://forwardable/1.3.3/forwardable.rb#231
1018
- def union(*args, **_arg1, &block); end
1066
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1067
+ def union(*_arg0, **_arg1, &_arg2); end
1019
1068
 
1020
- # source://forwardable/1.3.3/forwardable.rb#231
1021
- def uniq(*args, **_arg1, &block); end
1069
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1070
+ def uniq(*_arg0, **_arg1, &_arg2); end
1022
1071
 
1023
- # source://forwardable/1.3.3/forwardable.rb#231
1024
- def uniq!(*args, **_arg1, &block); end
1072
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1073
+ def uniq!(*_arg0, **_arg1, &_arg2); end
1025
1074
 
1026
- # source://forwardable/1.3.3/forwardable.rb#231
1027
- def unshift(*args, **_arg1, &block); end
1075
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1076
+ def unshift(*_arg0, **_arg1, &_arg2); end
1028
1077
 
1029
- # source://forwardable/1.3.3/forwardable.rb#231
1030
- def values_at(*args, **_arg1, &block); end
1078
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1079
+ def values_at(*_arg0, **_arg1, &_arg2); end
1031
1080
 
1032
- # source://forwardable/1.3.3/forwardable.rb#231
1033
- def zip(*args, **_arg1, &block); end
1081
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1082
+ def zip(*_arg0, **_arg1, &_arg2); end
1034
1083
 
1035
- # source://forwardable/1.3.3/forwardable.rb#231
1036
- def |(*args, **_arg1, &block); end
1084
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#13
1085
+ def |(*_arg0, **_arg1, &_arg2); end
1037
1086
  end
1038
1087
 
1039
1088
  # source://rubocop-ast//lib/rubocop/ast/node/mixin/collection_node.rb#9
1040
1089
  RuboCop::AST::CollectionNode::ARRAY_METHODS = T.let(T.unsafe(nil), Array)
1041
1090
 
1091
+ # A node extension for `complex` nodes. This will be used in place of a plain
1092
+ # node when the builder constructs the AST, making its methods available to
1093
+ # all `complex` nodes within RuboCop.
1094
+ #
1095
+ # source://rubocop-ast//lib/rubocop/ast/node/complex_node.rb#8
1096
+ class RuboCop::AST::ComplexNode < ::RuboCop::AST::Node
1097
+ include ::RuboCop::AST::BasicLiteralNode
1098
+ include ::RuboCop::AST::NumericNode
1099
+ end
1100
+
1042
1101
  # Common functionality for nodes that have conditions:
1043
1102
  # `if`, `while`, `until`, `case`.
1044
1103
  # This currently doesn't include `when` nodes, because they have multiple
@@ -1084,16 +1143,24 @@ end
1084
1143
  #
1085
1144
  # source://rubocop-ast//lib/rubocop/ast/node/const_node.rb#6
1086
1145
  class RuboCop::AST::ConstNode < ::RuboCop::AST::Node
1146
+ include ::RuboCop::AST::ConstantNode
1147
+ end
1148
+
1149
+ # Common functionality for nodes that deal with constants:
1150
+ # `const`, `casgn`.
1151
+ #
1152
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/constant_node.rb#7
1153
+ module RuboCop::AST::ConstantNode
1087
1154
  # @return [Boolean] if the constant starts with `::` (aka s(:cbase))
1088
1155
  #
1089
- # source://rubocop-ast//lib/rubocop/ast/node/const_node.rb#26
1156
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/constant_node.rb#27
1090
1157
  def absolute?; end
1091
1158
 
1092
1159
  # @return [Boolean] if the constant is a Module / Class, according to the standard convention.
1093
1160
  # Note: some classes might have uppercase in which case this method
1094
1161
  # returns false
1095
1162
  #
1096
- # source://rubocop-ast//lib/rubocop/ast/node/const_node.rb#20
1163
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/constant_node.rb#24
1097
1164
  def class_name?; end
1098
1165
 
1099
1166
  # Yield nodes for the namespace
@@ -1103,29 +1170,29 @@ class RuboCop::AST::ConstNode < ::RuboCop::AST::Node
1103
1170
  # s(:const, :Foo), then
1104
1171
  # s(:const, s(:const, :Foo), :Bar)
1105
1172
  #
1106
- # source://rubocop-ast//lib/rubocop/ast/node/const_node.rb#43
1173
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/constant_node.rb#44
1107
1174
  def each_path(&block); end
1108
1175
 
1109
1176
  # @return [Boolean] if the constant is a Module / Class, according to the standard convention.
1110
1177
  # Note: some classes might have uppercase in which case this method
1111
1178
  # returns false
1112
1179
  #
1113
- # source://rubocop-ast//lib/rubocop/ast/node/const_node.rb#20
1180
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/constant_node.rb#21
1114
1181
  def module_name?; end
1115
1182
 
1116
1183
  # @return [Node, nil] the node associated with the scope (e.g. cbase, const, ...)
1117
1184
  #
1118
- # source://rubocop-ast//lib/rubocop/ast/node/const_node.rb#8
1185
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/constant_node.rb#9
1119
1186
  def namespace; end
1120
1187
 
1121
1188
  # @return [Boolean] if the constant does not start with `::` (aka s(:cbase))
1122
1189
  #
1123
- # source://rubocop-ast//lib/rubocop/ast/node/const_node.rb#33
1190
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/constant_node.rb#34
1124
1191
  def relative?; end
1125
1192
 
1126
1193
  # @return [Symbol] the demodulized name of the constant: "::Foo::Bar" => :Bar
1127
1194
  #
1128
- # source://rubocop-ast//lib/rubocop/ast/node/const_node.rb#13
1195
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/constant_node.rb#14
1129
1196
  def short_name; end
1130
1197
  end
1131
1198
 
@@ -1214,7 +1281,7 @@ class RuboCop::AST::DefinedNode < ::RuboCop::AST::Node
1214
1281
  include ::RuboCop::AST::MethodIdentifierPredicates
1215
1282
  include ::RuboCop::AST::MethodDispatchNode
1216
1283
 
1217
- # source://ast/2.4.2/lib/ast/node.rb#56
1284
+ # source://rubocop-ast//lib/rubocop/ast/node/defined_node.rb#16
1218
1285
  def arguments; end
1219
1286
 
1220
1287
  # source://rubocop-ast//lib/rubocop/ast/node/defined_node.rb#12
@@ -1311,20 +1378,38 @@ end
1311
1378
  class RuboCop::AST::EnsureNode < ::RuboCop::AST::Node
1312
1379
  # Returns the body of the `ensure` clause.
1313
1380
  #
1381
+ # @deprecated Use `EnsureNode#branch`
1314
1382
  # @return [Node, nil] The body of the `ensure`.
1315
1383
  #
1316
- # source://rubocop-ast//lib/rubocop/ast/node/ensure_node.rb#12
1384
+ # source://rubocop-ast//lib/rubocop/ast/node/ensure_node.rb#16
1317
1385
  def body; end
1318
1386
 
1387
+ # Returns an the ensure branch in the exception handling statement.
1388
+ #
1389
+ # @return [Node, nil] the body of the ensure branch.
1390
+ #
1391
+ # source://rubocop-ast//lib/rubocop/ast/node/ensure_node.rb#33
1392
+ def branch; end
1393
+
1394
+ # Returns the `rescue` node of the `ensure`, if present.
1395
+ #
1396
+ # @return [Node, nil] The `rescue` node.
1397
+ #
1398
+ # source://rubocop-ast//lib/rubocop/ast/node/ensure_node.rb#40
1399
+ def rescue_node; end
1400
+
1319
1401
  # Checks whether this node body is a void context.
1320
1402
  # Always `true` for `ensure`.
1321
1403
  #
1322
1404
  # @return [true] whether the `ensure` node body is a void context
1323
1405
  #
1324
- # source://rubocop-ast//lib/rubocop/ast/node/ensure_node.rb#20
1406
+ # source://rubocop-ast//lib/rubocop/ast/node/ensure_node.rb#48
1325
1407
  def void_context?; end
1326
1408
  end
1327
1409
 
1410
+ # source://rubocop-ast//lib/rubocop/ast/node/ensure_node.rb#9
1411
+ RuboCop::AST::EnsureNode::DEPRECATION_WARNING_LOCATION_CACHE = T.let(T.unsafe(nil), Array)
1412
+
1328
1413
  # source://rubocop-ast//lib/rubocop/ast/ext/range.rb#5
1329
1414
  module RuboCop::AST::Ext; end
1330
1415
 
@@ -1519,7 +1604,7 @@ class RuboCop::AST::HashElementNode::HashElementDelta
1519
1604
 
1520
1605
  private
1521
1606
 
1522
- # source://rubocop-ast//lib/rubocop/ast/node/mixin/hash_element_node.rb#106
1607
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/hash_element_node.rb#108
1523
1608
  def delta(first, second, alignment = T.unsafe(nil)); end
1524
1609
 
1525
1610
  # Returns the value of attribute first.
@@ -1529,7 +1614,7 @@ class RuboCop::AST::HashElementNode::HashElementDelta
1529
1614
 
1530
1615
  # @return [Boolean]
1531
1616
  #
1532
- # source://rubocop-ast//lib/rubocop/ast/node/mixin/hash_element_node.rb#117
1617
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/hash_element_node.rb#119
1533
1618
  def keyword_splat?; end
1534
1619
 
1535
1620
  # Returns the value of attribute second.
@@ -1655,12 +1740,12 @@ class RuboCop::AST::IfNode < ::RuboCop::AST::Node
1655
1740
  #
1656
1741
  # @return [Array<Node>] an array of branch nodes
1657
1742
  #
1658
- # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#147
1743
+ # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#154
1659
1744
  def branches; end
1660
1745
 
1661
1746
  # @deprecated Use `branches.each`
1662
1747
  #
1663
- # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#164
1748
+ # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#171
1664
1749
  def each_branch(&block); end
1665
1750
 
1666
1751
  # Checks whether the `if` node has an `else` clause.
@@ -1669,7 +1754,7 @@ class RuboCop::AST::IfNode < ::RuboCop::AST::Node
1669
1754
  # This is legacy behavior, and many cops rely on it.
1670
1755
  # @return [Boolean] whether the node has an `else` clause
1671
1756
  #
1672
- # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#42
1757
+ # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#49
1673
1758
  def else?; end
1674
1759
 
1675
1760
  # Returns the branch of the `if` node that gets evaluated when its
@@ -1679,7 +1764,7 @@ class RuboCop::AST::IfNode < ::RuboCop::AST::Node
1679
1764
  # @return [Node] the falsey branch node of the `if` node
1680
1765
  # @return [nil] when there is no else branch
1681
1766
  #
1682
- # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#126
1767
+ # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#133
1683
1768
  def else_branch; end
1684
1769
 
1685
1770
  # Checks whether the `if` is an `elsif`. Parser handles these by nesting
@@ -1687,7 +1772,7 @@ class RuboCop::AST::IfNode < ::RuboCop::AST::Node
1687
1772
  #
1688
1773
  # @return [Boolean] whether the node is an `elsif`
1689
1774
  #
1690
- # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#32
1775
+ # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#39
1691
1776
  def elsif?; end
1692
1777
 
1693
1778
  # Checks whether the `if` node has at least one `elsif` branch. Returns
@@ -1695,7 +1780,7 @@ class RuboCop::AST::IfNode < ::RuboCop::AST::Node
1695
1780
  #
1696
1781
  # @return [Boolean] whether the `if` node has at least one `elsif` branch
1697
1782
  #
1698
- # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#104
1783
+ # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#111
1699
1784
  def elsif_conditional?; end
1700
1785
 
1701
1786
  # Checks whether this node is an `if` statement. (This is not true of
@@ -1713,7 +1798,7 @@ class RuboCop::AST::IfNode < ::RuboCop::AST::Node
1713
1798
  # @return [Node] the truthy branch node of the `if` node
1714
1799
  # @return [nil] if the truthy branch is empty
1715
1800
  #
1716
- # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#115
1801
+ # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#122
1717
1802
  def if_branch; end
1718
1803
 
1719
1804
  # Returns the inverse keyword of the `if` node as a string. Returns `if`
@@ -1722,7 +1807,7 @@ class RuboCop::AST::IfNode < ::RuboCop::AST::Node
1722
1807
  #
1723
1808
  # @return [String] the inverse keyword of the `if` statement
1724
1809
  #
1725
- # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#66
1810
+ # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#73
1726
1811
  def inverse_keyword; end
1727
1812
 
1728
1813
  # Returns the keyword of the `if` statement as a string. Returns an empty
@@ -1730,7 +1815,7 @@ class RuboCop::AST::IfNode < ::RuboCop::AST::Node
1730
1815
  #
1731
1816
  # @return [String] the keyword of the `if` statement
1732
1817
  #
1733
- # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#57
1818
+ # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#64
1734
1819
  def keyword; end
1735
1820
 
1736
1821
  # Checks whether the `if` node is in a modifier form, i.e. a condition
@@ -1739,7 +1824,7 @@ class RuboCop::AST::IfNode < ::RuboCop::AST::Node
1739
1824
  #
1740
1825
  # @return [Boolean] whether the `if` node is a modifier
1741
1826
  #
1742
- # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#80
1827
+ # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#87
1743
1828
  def modifier_form?; end
1744
1829
 
1745
1830
  # Checks whether the `if` node has nested `if` nodes in any of its
@@ -1748,7 +1833,7 @@ class RuboCop::AST::IfNode < ::RuboCop::AST::Node
1748
1833
  # @note This performs a shallow search.
1749
1834
  # @return [Boolean] whether the `if` node contains nested conditionals
1750
1835
  #
1751
- # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#90
1836
+ # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#97
1752
1837
  def nested_conditional?; end
1753
1838
 
1754
1839
  # Custom destructuring method. This is used to normalize the branches
@@ -1756,16 +1841,23 @@ class RuboCop::AST::IfNode < ::RuboCop::AST::Node
1756
1841
  #
1757
1842
  # @return [Array<Node>] the different parts of the `if` statement
1758
1843
  #
1759
- # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#134
1844
+ # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#141
1760
1845
  def node_parts; end
1761
1846
 
1762
1847
  # Checks whether the `if` node is a ternary operator.
1763
1848
  #
1764
1849
  # @return [Boolean] whether the `if` node is a ternary operator
1765
1850
  #
1766
- # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#49
1851
+ # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#56
1767
1852
  def ternary?; end
1768
1853
 
1854
+ # Checks whether the `if` node has an `then` clause.
1855
+ #
1856
+ # @return [Boolean] whether the node has an `then` clause
1857
+ #
1858
+ # source://rubocop-ast//lib/rubocop/ast/node/if_node.rb#31
1859
+ def then?; end
1860
+
1769
1861
  # Checks whether this node is an `unless` statement. (This is not true
1770
1862
  # of ternary operators and `if` statements.)
1771
1863
  #
@@ -1924,6 +2016,35 @@ class RuboCop::AST::IntNode < ::RuboCop::AST::Node
1924
2016
  include ::RuboCop::AST::NumericNode
1925
2017
  end
1926
2018
 
2019
+ # A node extension for `kwbegin` nodes. This will be used in place of a plain
2020
+ # node when the builder constructs the AST, making its methods available
2021
+ # to all `kwbegin` nodes within RuboCop.
2022
+ #
2023
+ # source://rubocop-ast//lib/rubocop/ast/node/keyword_begin_node.rb#8
2024
+ class RuboCop::AST::KeywordBeginNode < ::RuboCop::AST::Node
2025
+ # Returns the body of the `kwbegin` block. Returns `self` if the `kwbegin` contains
2026
+ # multiple nodes.
2027
+ #
2028
+ # @return [Node, nil] The body of the `kwbegin`.
2029
+ #
2030
+ # source://rubocop-ast//lib/rubocop/ast/node/keyword_begin_node.rb#13
2031
+ def body; end
2032
+
2033
+ # Returns the `rescue` node of the `kwbegin` block, if one is present.
2034
+ #
2035
+ # @return [Node, nil] The `rescue` node within `kwbegin`.
2036
+ #
2037
+ # source://rubocop-ast//lib/rubocop/ast/node/keyword_begin_node.rb#30
2038
+ def ensure_node; end
2039
+
2040
+ # Returns the `rescue` node of the `kwbegin` block, if one is present.
2041
+ #
2042
+ # @return [Node, nil] The `rescue` node within `kwbegin`.
2043
+ #
2044
+ # source://rubocop-ast//lib/rubocop/ast/node/keyword_begin_node.rb#37
2045
+ def rescue_node; end
2046
+ end
2047
+
1927
2048
  # A node extension for `kwsplat` and `forwarded_kwrestarg` nodes. This will be used in
1928
2049
  # place of a plain node when the builder constructs the AST, making its methods available to
1929
2050
  # all `kwsplat` and `forwarded_kwrestarg` nodes within RuboCop.
@@ -2046,6 +2167,71 @@ class RuboCop::AST::LambdaNode < ::RuboCop::AST::Node
2046
2167
  def first_argument_index; end
2047
2168
  end
2048
2169
 
2170
+ # A node extension for `masgn` nodes.
2171
+ # This will be used in place of a plain node when the builder constructs
2172
+ # the AST, making its methods available to all assignment nodes within RuboCop.
2173
+ #
2174
+ # source://rubocop-ast//lib/rubocop/ast/node/masgn_node.rb#8
2175
+ class RuboCop::AST::MasgnNode < ::RuboCop::AST::Node
2176
+ # @return [Array<Node>] the assignment nodes of the multiple assignment
2177
+ #
2178
+ # source://rubocop-ast//lib/rubocop/ast/node/masgn_node.rb#16
2179
+ def assignments; end
2180
+
2181
+ # The RHS (right hand side) of the multiple assignment. This returns
2182
+ # the nodes as parsed: either a single node if the RHS has a single value,
2183
+ # or an `array` node containing multiple nodes.
2184
+ #
2185
+ # NOTE: Due to how parsing works, `expression` will return the same for
2186
+ # `a, b = x, y` and `a, b = [x, y]`.
2187
+ #
2188
+ # @return [Node] the right hand side of a multiple assignment.
2189
+ #
2190
+ # source://rubocop-ast//lib/rubocop/ast/node/masgn_node.rb#39
2191
+ def expression; end
2192
+
2193
+ # @return [MlhsNode] the `mlhs` node
2194
+ #
2195
+ # source://rubocop-ast//lib/rubocop/ast/node/masgn_node.rb#10
2196
+ def lhs; end
2197
+
2198
+ # @return [Array<Symbol>] names of all the variables being assigned
2199
+ #
2200
+ # source://rubocop-ast//lib/rubocop/ast/node/masgn_node.rb#21
2201
+ def names; end
2202
+
2203
+ # The RHS (right hand side) of the multiple assignment. This returns
2204
+ # the nodes as parsed: either a single node if the RHS has a single value,
2205
+ # or an `array` node containing multiple nodes.
2206
+ #
2207
+ # NOTE: Due to how parsing works, `expression` will return the same for
2208
+ # `a, b = x, y` and `a, b = [x, y]`.
2209
+ #
2210
+ # @return [Node] the right hand side of a multiple assignment.
2211
+ #
2212
+ # source://rubocop-ast//lib/rubocop/ast/node/masgn_node.rb#42
2213
+ def rhs; end
2214
+
2215
+ # In contrast to `expression`, `values` always returns a Ruby array
2216
+ # containing all the nodes being assigned on the RHS.
2217
+ #
2218
+ # Literal arrays are considered a singular value; but unlike `expression`,
2219
+ # implied `array` nodes from assigning multiple values on the RHS are treated
2220
+ # as separate.
2221
+ #
2222
+ # @return [Array<Node>] individual values being assigned on the RHS of the multiple assignment
2223
+ #
2224
+ # source://rubocop-ast//lib/rubocop/ast/node/masgn_node.rb#52
2225
+ def values; end
2226
+
2227
+ private
2228
+
2229
+ # @return [Boolean]
2230
+ #
2231
+ # source://rubocop-ast//lib/rubocop/ast/node/masgn_node.rb#58
2232
+ def multiple_rhs?; end
2233
+ end
2234
+
2049
2235
  # Common functionality for nodes that are a kind of method dispatch:
2050
2236
  # `send`, `csend`, `super`, `zsuper`, `yield`, `defined?`,
2051
2237
  # and (modern only): `index`, `indexasgn`, `lambda`
@@ -2062,7 +2248,7 @@ module RuboCop::AST::MethodDispatchNode
2062
2248
  # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_dispatch_node.rb#64
2063
2249
  def access_modifier?; end
2064
2250
 
2065
- # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_dispatch_node.rb#273
2251
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_dispatch_node.rb#272
2066
2252
  def adjacent_def_modifier?(param0 = T.unsafe(nil)); end
2067
2253
 
2068
2254
  # Checks whether this node is an arithmetic operation
@@ -2077,7 +2263,7 @@ module RuboCop::AST::MethodDispatchNode
2077
2263
  #
2078
2264
  # @return [Boolean] whether the dispatched method is a setter
2079
2265
  #
2080
- # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_dispatch_node.rb#107
2266
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_dispatch_node.rb#110
2081
2267
  def assignment?; end
2082
2268
 
2083
2269
  # Checks whether the dispatched method is a bare access modifier that
@@ -2089,7 +2275,7 @@ module RuboCop::AST::MethodDispatchNode
2089
2275
  # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_dispatch_node.rb#73
2090
2276
  def bare_access_modifier?; end
2091
2277
 
2092
- # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_dispatch_node.rb#278
2278
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_dispatch_node.rb#277
2093
2279
  def bare_access_modifier_declaration?(param0 = T.unsafe(nil)); end
2094
2280
 
2095
2281
  # Checks whether this is a binary operation.
@@ -2099,7 +2285,7 @@ module RuboCop::AST::MethodDispatchNode
2099
2285
  # foo + bar
2100
2286
  # @return [Boolean] whether this method is a binary operation
2101
2287
  #
2102
- # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_dispatch_node.rb#248
2288
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_dispatch_node.rb#247
2103
2289
  def binary_operation?; end
2104
2290
 
2105
2291
  # Whether this method dispatch has an explicit block.
@@ -2109,10 +2295,10 @@ module RuboCop::AST::MethodDispatchNode
2109
2295
  # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_dispatch_node.rb#167
2110
2296
  def block_literal?; end
2111
2297
 
2112
- # The `block` or `numblock` node associated with this method dispatch, if any.
2298
+ # The `block`, `numblock`, or `itblock` node associated with this method dispatch, if any.
2113
2299
  #
2114
- # @return [BlockNode, nil] the `block` or `numblock` node associated with this method
2115
- # call or `nil`
2300
+ # @return [BlockNode, nil] the `block`, `numblock`, or `itblock` node associated with this
2301
+ # method call or `nil`
2116
2302
  #
2117
2303
  # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_dispatch_node.rb#46
2118
2304
  def block_node; end
@@ -2186,7 +2372,7 @@ module RuboCop::AST::MethodDispatchNode
2186
2372
  # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_dispatch_node.rb#160
2187
2373
  def implicit_call?; end
2188
2374
 
2189
- # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_dispatch_node.rb#257
2375
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_dispatch_node.rb#256
2190
2376
  def in_macro_scope?(param0 = T.unsafe(nil)); end
2191
2377
 
2192
2378
  # Checks whether this is a lambda. Some versions of parser parses
@@ -2194,7 +2380,7 @@ module RuboCop::AST::MethodDispatchNode
2194
2380
  #
2195
2381
  # @return [Boolean] whether this method is a lambda
2196
2382
  #
2197
- # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_dispatch_node.rb#213
2383
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_dispatch_node.rb#212
2198
2384
  def lambda?; end
2199
2385
 
2200
2386
  # Checks whether this is a lambda literal (stabby lambda.)
@@ -2204,7 +2390,7 @@ module RuboCop::AST::MethodDispatchNode
2204
2390
  # -> (foo) { bar }
2205
2391
  # @return [Boolean] whether this method is a lambda literal
2206
2392
  #
2207
- # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_dispatch_node.rb#224
2393
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_dispatch_node.rb#223
2208
2394
  def lambda_literal?; end
2209
2395
 
2210
2396
  # Checks whether the dispatched method is a macro method. A macro method
@@ -2233,7 +2419,7 @@ module RuboCop::AST::MethodDispatchNode
2233
2419
  # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_dispatch_node.rb#82
2234
2420
  def non_bare_access_modifier?; end
2235
2421
 
2236
- # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_dispatch_node.rb#283
2422
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_dispatch_node.rb#282
2237
2423
  def non_bare_access_modifier_declaration?(param0 = T.unsafe(nil)); end
2238
2424
 
2239
2425
  # The receiving node of the method dispatch.
@@ -2289,7 +2475,7 @@ module RuboCop::AST::MethodDispatchNode
2289
2475
  # -foo
2290
2476
  # @return [Boolean] whether this method is a unary operation
2291
2477
  #
2292
- # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_dispatch_node.rb#235
2478
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_dispatch_node.rb#234
2293
2479
  def unary_operation?; end
2294
2480
  end
2295
2481
 
@@ -2478,6 +2664,23 @@ RuboCop::AST::MethodIdentifierPredicates::NONMUTATING_UNARY_OPERATOR_METHODS = T
2478
2664
  # source://rubocop-ast//lib/rubocop/ast/node/mixin/method_identifier_predicates.rb#20
2479
2665
  RuboCop::AST::MethodIdentifierPredicates::OPERATOR_METHODS = T.let(T.unsafe(nil), Set)
2480
2666
 
2667
+ # A node extension for `mlhs` nodes.
2668
+ # This will be used in place of a plain node when the builder constructs
2669
+ # the AST, making its methods available to all assignment nodes within RuboCop.
2670
+ #
2671
+ # source://rubocop-ast//lib/rubocop/ast/node/mlhs_node.rb#8
2672
+ class RuboCop::AST::MlhsNode < ::RuboCop::AST::Node
2673
+ # Returns all the assignment nodes on the left hand side (LHS) of a multiple assignment.
2674
+ # These are generally assignment nodes (`lvasgn`, `ivasgn`, `cvasgn`, `gvasgn`, `casgn`)
2675
+ # but can also be `send` nodes in case of `foo.bar, ... =` or `foo[:bar], ... =`,
2676
+ # or a `splat` node for `*, ... =`.
2677
+ #
2678
+ # @return [Array<Node>] the assignment nodes of the multiple assignment LHS
2679
+ #
2680
+ # source://rubocop-ast//lib/rubocop/ast/node/mlhs_node.rb#15
2681
+ def assignments; end
2682
+ end
2683
+
2481
2684
  # Common functionality for nodes that can be used as modifiers:
2482
2685
  # `if`, `while`, `until`
2483
2686
  #
@@ -2548,19 +2751,19 @@ class RuboCop::AST::Node < ::Parser::AST::Node
2548
2751
  # @return [Node] a new instance of Node
2549
2752
  # @see https://www.rubydoc.info/gems/ast/AST/Node:initialize
2550
2753
  #
2551
- # source://rubocop-ast//lib/rubocop/ast/node.rb#113
2754
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#148
2552
2755
  def initialize(type, children = T.unsafe(nil), properties = T.unsafe(nil)); end
2553
2756
 
2554
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2757
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2555
2758
  def __ENCODING___type?; end
2556
2759
 
2557
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2760
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2558
2761
  def __FILE___type?; end
2559
2762
 
2560
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2763
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2561
2764
  def __LINE___type?; end
2562
2765
 
2563
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2766
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2564
2767
  def alias_type?; end
2565
2768
 
2566
2769
  # Returns an array of ancestor nodes.
@@ -2568,173 +2771,188 @@ class RuboCop::AST::Node < ::Parser::AST::Node
2568
2771
  #
2569
2772
  # @return [Array<Node>] an array of ancestor nodes
2570
2773
  #
2571
- # source://rubocop-ast//lib/rubocop/ast/node.rb#268
2774
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#313
2572
2775
  def ancestors; end
2573
2776
 
2574
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2777
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2575
2778
  def and_asgn_type?; end
2576
2779
 
2577
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2780
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2578
2781
  def and_type?; end
2579
2782
 
2580
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2783
+ # @return [Boolean]
2784
+ #
2785
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#542
2786
+ def any_block_type?; end
2787
+
2788
+ # @return [Boolean]
2789
+ #
2790
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#522
2791
+ def any_def_type?; end
2792
+
2793
+ # @return [Boolean]
2794
+ #
2795
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#546
2796
+ def any_match_pattern_type?; end
2797
+
2798
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2581
2799
  def arg_expr_type?; end
2582
2800
 
2583
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2801
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2584
2802
  def arg_type?; end
2585
2803
 
2586
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2804
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2587
2805
  def args_type?; end
2588
2806
 
2589
2807
  # @return [Boolean]
2590
2808
  #
2591
- # source://rubocop-ast//lib/rubocop/ast/node.rb#474
2809
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#518
2592
2810
  def argument?; end
2593
2811
 
2594
2812
  # @return [Boolean]
2595
2813
  #
2596
- # source://rubocop-ast//lib/rubocop/ast/node.rb#478
2814
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#526
2597
2815
  def argument_type?; end
2598
2816
 
2599
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2817
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2600
2818
  def array_pattern_type?; end
2601
2819
 
2602
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2820
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2603
2821
  def array_pattern_with_tail_type?; end
2604
2822
 
2605
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2823
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2606
2824
  def array_type?; end
2607
2825
 
2608
2826
  # @return [Boolean]
2609
2827
  #
2610
- # source://rubocop-ast//lib/rubocop/ast/node.rb#426
2828
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#470
2611
2829
  def assignment?; end
2612
2830
 
2613
2831
  # Some cops treat the shovel operator as a kind of assignment.
2614
2832
  #
2615
- # source://rubocop-ast//lib/rubocop/ast/node.rb#376
2833
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#420
2616
2834
  def assignment_or_similar?(param0 = T.unsafe(nil)); end
2617
2835
 
2618
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2836
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2619
2837
  def back_ref_type?; end
2620
2838
 
2621
2839
  # @return [Boolean]
2622
2840
  #
2623
- # source://rubocop-ast//lib/rubocop/ast/node.rb#430
2841
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#474
2624
2842
  def basic_conditional?; end
2625
2843
 
2626
2844
  # @return [Boolean]
2627
2845
  #
2628
- # source://rubocop-ast//lib/rubocop/ast/node.rb#384
2846
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#428
2629
2847
  def basic_literal?; end
2630
2848
 
2631
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2849
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2632
2850
  def begin_type?; end
2633
2851
 
2634
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2852
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2635
2853
  def block_pass_type?; end
2636
2854
 
2637
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2855
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2638
2856
  def block_type?; end
2639
2857
 
2640
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2858
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2641
2859
  def blockarg_expr_type?; end
2642
2860
 
2643
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2861
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2644
2862
  def blockarg_type?; end
2645
2863
 
2646
2864
  # @return [Boolean]
2647
2865
  #
2648
- # source://rubocop-ast//lib/rubocop/ast/node.rb#482
2866
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#530
2649
2867
  def boolean_type?; end
2650
2868
 
2651
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2869
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2652
2870
  def break_type?; end
2653
2871
 
2654
2872
  # @return [Boolean]
2655
2873
  #
2656
- # source://rubocop-ast//lib/rubocop/ast/node.rb#466
2874
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#510
2657
2875
  def call_type?; end
2658
2876
 
2659
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2877
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2660
2878
  def case_match_type?; end
2661
2879
 
2662
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2880
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2663
2881
  def case_type?; end
2664
2882
 
2665
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2883
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2666
2884
  def casgn_type?; end
2667
2885
 
2668
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2886
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2669
2887
  def cbase_type?; end
2670
2888
 
2671
2889
  # @return [Boolean]
2672
2890
  #
2673
- # source://rubocop-ast//lib/rubocop/ast/node.rb#470
2891
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#514
2674
2892
  def chained?; end
2675
2893
 
2676
- # source://rubocop-ast//lib/rubocop/ast/node.rb#522
2894
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#594
2677
2895
  def class_constructor?(param0 = T.unsafe(nil)); end
2678
2896
 
2679
- # source://rubocop-ast//lib/rubocop/ast/node.rb#540
2897
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#612
2680
2898
  def class_definition?(param0 = T.unsafe(nil)); end
2681
2899
 
2682
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2900
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2683
2901
  def class_type?; end
2684
2902
 
2685
- # source://rubocop-ast//lib/rubocop/ast/node.rb#165
2903
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#210
2686
2904
  def complete!; end
2687
2905
 
2688
2906
  # @return [Boolean]
2689
2907
  #
2690
- # source://rubocop-ast//lib/rubocop/ast/node.rb#170
2908
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#215
2691
2909
  def complete?; end
2692
2910
 
2693
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2911
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2694
2912
  def complex_type?; end
2695
2913
 
2696
2914
  # @return [Boolean]
2697
2915
  #
2698
- # source://rubocop-ast//lib/rubocop/ast/node.rb#434
2916
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#478
2699
2917
  def conditional?; end
2700
2918
 
2701
- # source://rubocop-ast//lib/rubocop/ast/node.rb#314
2919
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#359
2702
2920
  def const_name; end
2703
2921
 
2704
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2922
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2705
2923
  def const_pattern_type?; end
2706
2924
 
2707
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2925
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2708
2926
  def const_type?; end
2709
2927
 
2710
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2928
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2711
2929
  def csend_type?; end
2712
2930
 
2713
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2931
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2714
2932
  def cvar_type?; end
2715
2933
 
2716
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2934
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2717
2935
  def cvasgn_type?; end
2718
2936
 
2719
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2937
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2720
2938
  def def_type?; end
2721
2939
 
2722
- # source://rubocop-ast//lib/rubocop/ast/node.rb#335
2940
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#379
2723
2941
  def defined_module; end
2724
2942
 
2725
- # source://rubocop-ast//lib/rubocop/ast/node.rb#340
2943
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#384
2726
2944
  def defined_module_name; end
2727
2945
 
2728
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2946
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2729
2947
  def defined_type?; end
2730
2948
 
2731
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2949
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2732
2950
  def defs_type?; end
2733
2951
 
2734
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2952
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2735
2953
  def dstr_type?; end
2736
2954
 
2737
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2955
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2738
2956
  def dsym_type?; end
2739
2957
 
2740
2958
  # Calls the given block for each ancestor node from parent to root.
@@ -2747,163 +2965,169 @@ class RuboCop::AST::Node < ::Parser::AST::Node
2747
2965
  # @return [Enumerator] if no block is given
2748
2966
  # @yieldparam node [Node] each ancestor node
2749
2967
  #
2750
- # source://rubocop-ast//lib/rubocop/ast/node.rb#256
2968
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#301
2751
2969
  def each_ancestor(*types, &block); end
2752
2970
 
2753
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2971
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2754
2972
  def eflipflop_type?; end
2755
2973
 
2756
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2974
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2757
2975
  def empty_else_type?; end
2758
2976
 
2759
2977
  # @return [Boolean]
2760
2978
  #
2761
- # source://rubocop-ast//lib/rubocop/ast/node.rb#370
2979
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#414
2762
2980
  def empty_source?; end
2763
2981
 
2764
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2982
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2765
2983
  def ensure_type?; end
2766
2984
 
2767
2985
  # @return [Boolean]
2768
2986
  #
2769
- # source://rubocop-ast//lib/rubocop/ast/node.rb#418
2987
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#462
2770
2988
  def equals_asgn?; end
2771
2989
 
2772
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2990
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2773
2991
  def erange_type?; end
2774
2992
 
2775
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
2993
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2776
2994
  def false_type?; end
2777
2995
 
2778
2996
  # @return [Boolean]
2779
2997
  #
2780
- # source://rubocop-ast//lib/rubocop/ast/node.rb#392
2998
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#436
2781
2999
  def falsey_literal?; end
2782
3000
 
2783
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3001
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2784
3002
  def find_pattern_type?; end
2785
3003
 
2786
- # source://rubocop-ast//lib/rubocop/ast/node.rb#282
3004
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#327
2787
3005
  def first_line; end
2788
3006
 
2789
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3007
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2790
3008
  def float_type?; end
2791
3009
 
2792
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3010
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2793
3011
  def for_type?; end
2794
3012
 
2795
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3013
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2796
3014
  def forward_arg_type?; end
2797
3015
 
2798
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3016
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2799
3017
  def forward_args_type?; end
2800
3018
 
2801
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3019
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2802
3020
  def forwarded_args_type?; end
2803
3021
 
2804
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3022
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2805
3023
  def forwarded_kwrestarg_type?; end
2806
3024
 
2807
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3025
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2808
3026
  def forwarded_restarg_type?; end
2809
3027
 
2810
- # source://rubocop-ast//lib/rubocop/ast/node.rb#519
3028
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#591
2811
3029
  def global_const?(param0 = T.unsafe(nil), param1); end
2812
3030
 
2813
3031
  # @return [Boolean]
2814
3032
  #
2815
- # source://rubocop-ast//lib/rubocop/ast/node.rb#494
3033
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#550
2816
3034
  def guard_clause?; end
2817
3035
 
2818
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3036
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2819
3037
  def gvar_type?; end
2820
3038
 
2821
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3039
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2822
3040
  def gvasgn_type?; end
2823
3041
 
2824
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3042
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2825
3043
  def hash_pattern_type?; end
2826
3044
 
2827
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3045
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2828
3046
  def hash_type?; end
2829
3047
 
2830
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3048
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2831
3049
  def ident_type?; end
2832
3050
 
2833
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3051
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2834
3052
  def if_guard_type?; end
2835
3053
 
2836
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3054
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2837
3055
  def if_type?; end
2838
3056
 
2839
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3057
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2840
3058
  def iflipflop_type?; end
2841
3059
 
2842
3060
  # @return [Boolean]
2843
3061
  #
2844
- # source://rubocop-ast//lib/rubocop/ast/node.rb#400
3062
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#444
2845
3063
  def immutable_literal?; end
2846
3064
 
2847
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3065
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2848
3066
  def in_match_type?; end
2849
3067
 
2850
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3068
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2851
3069
  def in_pattern_type?; end
2852
3070
 
2853
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3071
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2854
3072
  def index_type?; end
2855
3073
 
2856
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3074
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2857
3075
  def indexasgn_type?; end
2858
3076
 
2859
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3077
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2860
3078
  def int_type?; end
2861
3079
 
2862
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3080
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2863
3081
  def irange_type?; end
2864
3082
 
2865
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3083
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3084
+ def itarg_type?; end
3085
+
3086
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3087
+ def itblock_type?; end
3088
+
3089
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2866
3090
  def ivar_type?; end
2867
3091
 
2868
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3092
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2869
3093
  def ivasgn_type?; end
2870
3094
 
2871
3095
  # @return [Boolean]
2872
3096
  #
2873
- # source://rubocop-ast//lib/rubocop/ast/node.rb#447
3097
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#491
2874
3098
  def keyword?; end
2875
3099
 
2876
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3100
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2877
3101
  def kwarg_type?; end
2878
3102
 
2879
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3103
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2880
3104
  def kwargs_type?; end
2881
3105
 
2882
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3106
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2883
3107
  def kwbegin_type?; end
2884
3108
 
2885
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3109
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2886
3110
  def kwnilarg_type?; end
2887
3111
 
2888
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3112
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2889
3113
  def kwoptarg_type?; end
2890
3114
 
2891
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3115
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2892
3116
  def kwrestarg_type?; end
2893
3117
 
2894
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3118
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2895
3119
  def kwsplat_type?; end
2896
3120
 
2897
- # source://rubocop-ast//lib/rubocop/ast/node.rb#513
3121
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#585
2898
3122
  def lambda?(param0 = T.unsafe(nil)); end
2899
3123
 
2900
- # source://rubocop-ast//lib/rubocop/ast/node.rb#516
3124
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#588
2901
3125
  def lambda_or_proc?(param0 = T.unsafe(nil)); end
2902
3126
 
2903
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3127
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2904
3128
  def lambda_type?; end
2905
3129
 
2906
- # source://rubocop-ast//lib/rubocop/ast/node.rb#286
3130
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#331
2907
3131
  def last_line; end
2908
3132
 
2909
3133
  # Use is discouraged, this is a potentially slow method and can lead
@@ -2911,7 +3135,7 @@ class RuboCop::AST::Node < ::Parser::AST::Node
2911
3135
  #
2912
3136
  # @return [Node, nil] the left (aka previous) sibling
2913
3137
  #
2914
- # source://rubocop-ast//lib/rubocop/ast/node.rb#208
3138
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#253
2915
3139
  def left_sibling; end
2916
3140
 
2917
3141
  # Use is discouraged, this is a potentially slow method and can lead
@@ -2919,94 +3143,109 @@ class RuboCop::AST::Node < ::Parser::AST::Node
2919
3143
  #
2920
3144
  # @return [Array<Node>] the left (aka previous) siblings
2921
3145
  #
2922
- # source://rubocop-ast//lib/rubocop/ast/node.rb#218
3146
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#263
2923
3147
  def left_siblings; end
2924
3148
 
2925
- # source://rubocop-ast//lib/rubocop/ast/node.rb#290
3149
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#335
2926
3150
  def line_count; end
2927
3151
 
2928
3152
  # @return [Boolean]
2929
3153
  #
2930
- # source://rubocop-ast//lib/rubocop/ast/node.rb#380
3154
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#424
2931
3155
  def literal?; end
2932
3156
 
3157
+ # Shortcut to safely check if a location is present
3158
+ #
3159
+ # @return [Boolean]
3160
+ #
3161
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#558
3162
+ def loc?(which_loc); end
3163
+
3164
+ # Shortcut to safely test a particular location, even if
3165
+ # this location does not exist or is `nil`
3166
+ #
3167
+ # @return [Boolean]
3168
+ #
3169
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#566
3170
+ def loc_is?(which_loc, str); end
3171
+
2933
3172
  # NOTE: `loop { }` is a normal method call and thus not a loop keyword.
2934
3173
  #
2935
3174
  # @return [Boolean]
2936
3175
  #
2937
- # source://rubocop-ast//lib/rubocop/ast/node.rb#443
3176
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#487
2938
3177
  def loop_keyword?; end
2939
3178
 
2940
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3179
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2941
3180
  def lvar_type?; end
2942
3181
 
2943
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3182
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2944
3183
  def lvasgn_type?; end
2945
3184
 
2946
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3185
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2947
3186
  def masgn_type?; end
2948
3187
 
2949
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3188
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2950
3189
  def match_alt_type?; end
2951
3190
 
2952
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3191
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2953
3192
  def match_as_type?; end
2954
3193
 
2955
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3194
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2956
3195
  def match_current_line_type?; end
2957
3196
 
2958
- # source://rubocop-ast//lib/rubocop/ast/node.rb#501
3197
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#573
2959
3198
  def match_guard_clause?(param0 = T.unsafe(nil)); end
2960
3199
 
2961
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3200
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2962
3201
  def match_nil_pattern_type?; end
2963
3202
 
2964
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3203
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2965
3204
  def match_pattern_p_type?; end
2966
3205
 
2967
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3206
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2968
3207
  def match_pattern_type?; end
2969
3208
 
2970
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3209
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2971
3210
  def match_rest_type?; end
2972
3211
 
2973
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3212
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2974
3213
  def match_var_type?; end
2975
3214
 
2976
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3215
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2977
3216
  def match_with_lvasgn_type?; end
2978
3217
 
2979
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3218
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2980
3219
  def match_with_trailing_comma_type?; end
2981
3220
 
2982
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3221
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2983
3222
  def mlhs_type?; end
2984
3223
 
2985
- # source://rubocop-ast//lib/rubocop/ast/node.rb#547
3224
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#619
2986
3225
  def module_definition?(param0 = T.unsafe(nil)); end
2987
3226
 
2988
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3227
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
2989
3228
  def module_type?; end
2990
3229
 
2991
3230
  # Predicates
2992
3231
  #
2993
3232
  # @return [Boolean]
2994
3233
  #
2995
- # source://rubocop-ast//lib/rubocop/ast/node.rb#362
3234
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#406
2996
3235
  def multiline?; end
2997
3236
 
2998
3237
  # @return [Boolean]
2999
3238
  #
3000
- # source://rubocop-ast//lib/rubocop/ast/node.rb#396
3239
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#440
3001
3240
  def mutable_literal?; end
3002
3241
 
3003
- # source://rubocop-ast//lib/rubocop/ast/node.rb#679
3242
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#750
3004
3243
  def new_class_or_module_block?(param0 = T.unsafe(nil)); end
3005
3244
 
3006
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3245
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3007
3246
  def next_type?; end
3008
3247
 
3009
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3248
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3010
3249
  def nil_type?; end
3011
3250
 
3012
3251
  # Common destructuring method. This can be used to normalize
@@ -3016,98 +3255,98 @@ class RuboCop::AST::Node < ::Parser::AST::Node
3016
3255
  #
3017
3256
  # @return [Array<Node>] the different parts of the ndde
3018
3257
  #
3019
- # source://ast/2.4.2/lib/ast/node.rb#56
3258
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#284
3020
3259
  def node_parts; end
3021
3260
 
3022
- # source://rubocop-ast//lib/rubocop/ast/node.rb#296
3261
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#341
3023
3262
  def nonempty_line_count; end
3024
3263
 
3025
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3264
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3026
3265
  def not_type?; end
3027
3266
 
3028
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3267
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3029
3268
  def nth_ref_type?; end
3030
3269
 
3031
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3270
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3032
3271
  def numargs_type?; end
3033
3272
 
3034
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3273
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3035
3274
  def numblock_type?; end
3036
3275
 
3037
3276
  # @return [Boolean]
3038
3277
  #
3039
- # source://rubocop-ast//lib/rubocop/ast/node.rb#486
3278
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#534
3040
3279
  def numeric_type?; end
3041
3280
 
3042
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3281
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3043
3282
  def objc_kwarg_type?; end
3044
3283
 
3045
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3284
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3046
3285
  def objc_restarg_type?; end
3047
3286
 
3048
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3287
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3049
3288
  def objc_varargs_type?; end
3050
3289
 
3051
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3290
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3052
3291
  def op_asgn_type?; end
3053
3292
 
3054
3293
  # @return [Boolean]
3055
3294
  #
3056
- # source://rubocop-ast//lib/rubocop/ast/node.rb#458
3295
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#502
3057
3296
  def operator_keyword?; end
3058
3297
 
3059
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3298
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3060
3299
  def optarg_type?; end
3061
3300
 
3062
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3301
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3063
3302
  def or_asgn_type?; end
3064
3303
 
3065
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3304
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3066
3305
  def or_type?; end
3067
3306
 
3068
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3307
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3069
3308
  def pair_type?; end
3070
3309
 
3071
3310
  # Returns the parent node, or `nil` if the receiver is a root node.
3072
3311
  #
3073
3312
  # @return [Node, nil] the parent node or `nil`
3074
3313
  #
3075
- # source://rubocop-ast//lib/rubocop/ast/node.rb#147
3314
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#192
3076
3315
  def parent; end
3077
3316
 
3078
3317
  # @return [Boolean]
3079
3318
  #
3080
- # source://rubocop-ast//lib/rubocop/ast/node.rb#156
3319
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#201
3081
3320
  def parent?; end
3082
3321
 
3083
3322
  # Searching the AST
3084
3323
  #
3085
- # source://rubocop-ast//lib/rubocop/ast/node.rb#346
3324
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#390
3086
3325
  def parent_module_name; end
3087
3326
 
3088
3327
  # @return [Boolean]
3089
3328
  #
3090
- # source://rubocop-ast//lib/rubocop/ast/node.rb#462
3329
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#506
3091
3330
  def parenthesized_call?; end
3092
3331
 
3093
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3332
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3094
3333
  def pin_type?; end
3095
3334
 
3096
3335
  # @return [Boolean]
3097
3336
  #
3098
- # source://rubocop-ast//lib/rubocop/ast/node.rb#438
3337
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#482
3099
3338
  def post_condition_loop?; end
3100
3339
 
3101
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3340
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3102
3341
  def postexe_type?; end
3103
3342
 
3104
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3343
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3105
3344
  def preexe_type?; end
3106
3345
 
3107
- # source://rubocop-ast//lib/rubocop/ast/node.rb#506
3346
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#578
3108
3347
  def proc?(param0 = T.unsafe(nil)); end
3109
3348
 
3110
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3349
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3111
3350
  def procarg0_type?; end
3112
3351
 
3113
3352
  # Some expressions are evaluated for their value, some for their side
@@ -3120,60 +3359,60 @@ class RuboCop::AST::Node < ::Parser::AST::Node
3120
3359
  #
3121
3360
  # @return [Boolean]
3122
3361
  #
3123
- # source://rubocop-ast//lib/rubocop/ast/node.rb#590
3362
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#662
3124
3363
  def pure?; end
3125
3364
 
3126
3365
  # @return [Boolean]
3127
3366
  #
3128
- # source://rubocop-ast//lib/rubocop/ast/node.rb#490
3367
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#538
3129
3368
  def range_type?; end
3130
3369
 
3131
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3370
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3132
3371
  def rational_type?; end
3133
3372
 
3134
- # source://rubocop-ast//lib/rubocop/ast/node.rb#307
3373
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#352
3135
3374
  def receiver(param0 = T.unsafe(nil)); end
3136
3375
 
3137
3376
  # @return [Boolean]
3138
3377
  #
3139
- # source://rubocop-ast//lib/rubocop/ast/node.rb#97
3378
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#131
3140
3379
  def recursive_basic_literal?; end
3141
3380
 
3142
3381
  # @return [Boolean]
3143
3382
  #
3144
- # source://rubocop-ast//lib/rubocop/ast/node.rb#97
3383
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#131
3145
3384
  def recursive_literal?; end
3146
3385
 
3147
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3386
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3148
3387
  def redo_type?; end
3149
3388
 
3150
3389
  # @return [Boolean]
3151
3390
  #
3152
- # source://rubocop-ast//lib/rubocop/ast/node.rb#414
3391
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#458
3153
3392
  def reference?; end
3154
3393
 
3155
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3394
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3156
3395
  def regexp_type?; end
3157
3396
 
3158
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3397
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3159
3398
  def regopt_type?; end
3160
3399
 
3161
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3400
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3162
3401
  def resbody_type?; end
3163
3402
 
3164
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3403
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3165
3404
  def rescue_type?; end
3166
3405
 
3167
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3406
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3168
3407
  def restarg_expr_type?; end
3169
3408
 
3170
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3409
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3171
3410
  def restarg_type?; end
3172
3411
 
3173
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3412
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3174
3413
  def retry_type?; end
3175
3414
 
3176
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3415
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3177
3416
  def return_type?; end
3178
3417
 
3179
3418
  # Use is discouraged, this is a potentially slow method and can lead
@@ -3181,7 +3420,7 @@ class RuboCop::AST::Node < ::Parser::AST::Node
3181
3420
  #
3182
3421
  # @return [Node, nil] the right (aka next) sibling
3183
3422
  #
3184
- # source://rubocop-ast//lib/rubocop/ast/node.rb#199
3423
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#244
3185
3424
  def right_sibling; end
3186
3425
 
3187
3426
  # Use is discouraged, this is a potentially slow method and can lead
@@ -3189,18 +3428,18 @@ class RuboCop::AST::Node < ::Parser::AST::Node
3189
3428
  #
3190
3429
  # @return [Array<Node>] the right (aka next) siblings
3191
3430
  #
3192
- # source://rubocop-ast//lib/rubocop/ast/node.rb#227
3431
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#272
3193
3432
  def right_siblings; end
3194
3433
 
3195
3434
  # @return [Boolean]
3196
3435
  #
3197
- # source://rubocop-ast//lib/rubocop/ast/node.rb#161
3436
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#206
3198
3437
  def root?; end
3199
3438
 
3200
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3439
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3201
3440
  def sclass_type?; end
3202
3441
 
3203
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3442
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3204
3443
  def self_type?; end
3205
3444
 
3206
3445
  # Most nodes are of 'send' type, so this method is defined
@@ -3208,15 +3447,15 @@ class RuboCop::AST::Node < ::Parser::AST::Node
3208
3447
  #
3209
3448
  # @return [Boolean]
3210
3449
  #
3211
- # source://rubocop-ast//lib/rubocop/ast/node.rb#140
3450
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#185
3212
3451
  def send_type?; end
3213
3452
 
3214
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3453
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3215
3454
  def shadowarg_type?; end
3216
3455
 
3217
3456
  # @return [Boolean]
3218
3457
  #
3219
- # source://rubocop-ast//lib/rubocop/ast/node.rb#422
3458
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#466
3220
3459
  def shorthand_asgn?; end
3221
3460
 
3222
3461
  # Returns the index of the receiver node in its siblings. (Sibling index
@@ -3225,70 +3464,79 @@ class RuboCop::AST::Node < ::Parser::AST::Node
3225
3464
  #
3226
3465
  # @return [Integer, nil] the index of the receiver node in its siblings
3227
3466
  #
3228
- # source://rubocop-ast//lib/rubocop/ast/node.rb#192
3467
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#237
3229
3468
  def sibling_index; end
3230
3469
 
3231
3470
  # @return [Boolean]
3232
3471
  #
3233
- # source://rubocop-ast//lib/rubocop/ast/node.rb#366
3472
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#410
3234
3473
  def single_line?; end
3235
3474
 
3236
3475
  # NOTE: Some rare nodes may have no source, like `s(:args)` in `foo {}`
3237
3476
  #
3238
3477
  # @return [String, nil]
3239
3478
  #
3240
- # source://rubocop-ast//lib/rubocop/ast/node.rb#274
3479
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#319
3241
3480
  def source; end
3242
3481
 
3243
- # source://rubocop-ast//lib/rubocop/ast/node.rb#300
3482
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#345
3244
3483
  def source_length; end
3245
3484
 
3246
- # source://rubocop-ast//lib/rubocop/ast/node.rb#278
3485
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#323
3247
3486
  def source_range; end
3248
3487
 
3249
3488
  # @return [Boolean]
3250
3489
  #
3251
- # source://rubocop-ast//lib/rubocop/ast/node.rb#454
3490
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#498
3252
3491
  def special_keyword?; end
3253
3492
 
3254
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3493
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3255
3494
  def splat_type?; end
3256
3495
 
3257
- # source://rubocop-ast//lib/rubocop/ast/node.rb#312
3496
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#357
3258
3497
  def str_content(param0 = T.unsafe(nil)); end
3259
3498
 
3260
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3499
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3261
3500
  def str_type?; end
3262
3501
 
3263
3502
  # @deprecated Use `:class_constructor?`
3264
3503
  #
3265
- # source://rubocop-ast//lib/rubocop/ast/node.rb#535
3504
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#607
3266
3505
  def struct_constructor?(param0 = T.unsafe(nil)); end
3267
3506
 
3268
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3507
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3269
3508
  def super_type?; end
3270
3509
 
3271
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3510
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3272
3511
  def sym_type?; end
3273
3512
 
3274
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3513
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3275
3514
  def true_type?; end
3276
3515
 
3277
3516
  # @return [Boolean]
3278
3517
  #
3279
- # source://rubocop-ast//lib/rubocop/ast/node.rb#388
3518
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#432
3280
3519
  def truthy_literal?; end
3281
3520
 
3282
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3521
+ # Determine if the node is one of several node types in a single query
3522
+ # Allows specific single node types, as well as "grouped" types
3523
+ # (e.g. `:boolean` for `:true` or `:false`)
3524
+ #
3525
+ # @return [Boolean]
3526
+ #
3527
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#167
3528
+ def type?(*types); end
3529
+
3530
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3283
3531
  def undef_type?; end
3284
3532
 
3285
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3533
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3286
3534
  def unless_guard_type?; end
3287
3535
 
3288
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3536
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3289
3537
  def until_post_type?; end
3290
3538
 
3291
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3539
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3292
3540
  def until_type?; end
3293
3541
 
3294
3542
  # Override `AST::Node#updated` so that `AST::Processor` does not try to
@@ -3297,7 +3545,7 @@ class RuboCop::AST::Node < ::Parser::AST::Node
3297
3545
  # identical subtrees. Rather, the entire AST must be copied any time any
3298
3546
  # part of it is changed.
3299
3547
  #
3300
- # source://rubocop-ast//lib/rubocop/ast/node.rb#181
3548
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#226
3301
3549
  def updated(type = T.unsafe(nil), children = T.unsafe(nil), properties = T.unsafe(nil)); end
3302
3550
 
3303
3551
  # Some expressions are evaluated for their value, some for their side
@@ -3310,87 +3558,82 @@ class RuboCop::AST::Node < ::Parser::AST::Node
3310
3558
  #
3311
3559
  # @return [Boolean]
3312
3560
  #
3313
- # source://rubocop-ast//lib/rubocop/ast/node.rb#560
3561
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#632
3314
3562
  def value_used?; end
3315
3563
 
3316
3564
  # @return [Boolean]
3317
3565
  #
3318
- # source://rubocop-ast//lib/rubocop/ast/node.rb#410
3566
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#454
3319
3567
  def variable?; end
3320
3568
 
3321
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3569
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3322
3570
  def when_type?; end
3323
3571
 
3324
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3572
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3325
3573
  def while_post_type?; end
3326
3574
 
3327
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3575
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3328
3576
  def while_type?; end
3329
3577
 
3330
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3578
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3331
3579
  def xstr_type?; end
3332
3580
 
3333
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3581
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3334
3582
  def yield_type?; end
3335
3583
 
3336
- # source://rubocop-ast//lib/rubocop/ast/node.rb#132
3584
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#176
3337
3585
  def zsuper_type?; end
3338
3586
 
3339
3587
  protected
3340
3588
 
3341
- # source://rubocop-ast//lib/rubocop/ast/node.rb#151
3589
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#196
3342
3590
  def parent=(node); end
3343
3591
 
3344
3592
  private
3345
3593
 
3346
3594
  # @return [Boolean]
3347
3595
  #
3348
- # source://rubocop-ast//lib/rubocop/ast/node.rb#618
3596
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#689
3349
3597
  def begin_value_used?; end
3350
3598
 
3351
3599
  # @return [Boolean]
3352
3600
  #
3353
- # source://rubocop-ast//lib/rubocop/ast/node.rb#629
3601
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#700
3354
3602
  def case_if_value_used?; end
3355
3603
 
3356
- # source://rubocop-ast//lib/rubocop/ast/node.rb#326
3604
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#370
3357
3605
  def defined_module0(param0 = T.unsafe(nil)); end
3358
3606
 
3359
3607
  # @return [Boolean]
3360
3608
  #
3361
- # source://rubocop-ast//lib/rubocop/ast/node.rb#623
3609
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#694
3362
3610
  def for_value_used?; end
3363
3611
 
3364
- # source://rubocop-ast//lib/rubocop/ast/node.rb#665
3612
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#736
3365
3613
  def parent_module_name_for_block(ancestor); end
3366
3614
 
3367
- # source://rubocop-ast//lib/rubocop/ast/node.rb#653
3615
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#724
3368
3616
  def parent_module_name_for_sclass(sclass_node); end
3369
3617
 
3370
- # source://rubocop-ast//lib/rubocop/ast/node.rb#640
3618
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#711
3371
3619
  def parent_module_name_part(node); end
3372
3620
 
3373
- # source://rubocop-ast//lib/rubocop/ast/node.rb#608
3621
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#680
3374
3622
  def visit_ancestors(types); end
3375
3623
 
3376
3624
  # @return [Boolean]
3377
3625
  #
3378
- # source://rubocop-ast//lib/rubocop/ast/node.rb#635
3626
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#706
3379
3627
  def while_until_value_used?; end
3380
3628
 
3381
3629
  class << self
3382
3630
  private
3383
3631
 
3384
- # source://rubocop-ast//lib/rubocop/ast/node.rb#92
3632
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#127
3385
3633
  def def_recursive_literal_predicate(kind); end
3386
3634
  end
3387
3635
  end
3388
3636
 
3389
- # @api private
3390
- #
3391
- # source://rubocop-ast//lib/rubocop/ast/node.rb#80
3392
- RuboCop::AST::Node::ARGUMENT_TYPES = T.let(T.unsafe(nil), Set)
3393
-
3394
3637
  # @api private
3395
3638
  #
3396
3639
  # source://rubocop-ast//lib/rubocop/ast/node.rb#55
@@ -3423,10 +3666,10 @@ RuboCop::AST::Node::COMPOSITE_LITERALS = T.let(T.unsafe(nil), Set)
3423
3666
  # source://rubocop-ast//lib/rubocop/ast/node.rb#60
3424
3667
  RuboCop::AST::Node::CONDITIONALS = T.let(T.unsafe(nil), Set)
3425
3668
 
3426
- # source://rubocop-ast//lib/rubocop/ast/node.rb#87
3669
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#84
3427
3670
  RuboCop::AST::Node::EMPTY_CHILDREN = T.let(T.unsafe(nil), Array)
3428
3671
 
3429
- # source://rubocop-ast//lib/rubocop/ast/node.rb#88
3672
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#85
3430
3673
  RuboCop::AST::Node::EMPTY_PROPERTIES = T.let(T.unsafe(nil), Hash)
3431
3674
 
3432
3675
  # @api private
@@ -3439,6 +3682,11 @@ RuboCop::AST::Node::EQUALS_ASSIGNMENTS = T.let(T.unsafe(nil), Set)
3439
3682
  # source://rubocop-ast//lib/rubocop/ast/node.rb#35
3440
3683
  RuboCop::AST::Node::FALSEY_LITERALS = T.let(T.unsafe(nil), Set)
3441
3684
 
3685
+ # @api private
3686
+ #
3687
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#89
3688
+ RuboCop::AST::Node::GROUP_FOR_TYPE = T.let(T.unsafe(nil), Hash)
3689
+
3442
3690
  # @api private
3443
3691
  #
3444
3692
  # source://rubocop-ast//lib/rubocop/ast/node.rb#47
@@ -3454,10 +3702,10 @@ RuboCop::AST::Node::KEYWORDS = T.let(T.unsafe(nil), Set)
3454
3702
  # source://rubocop-ast//lib/rubocop/ast/node.rb#37
3455
3703
  RuboCop::AST::Node::LITERALS = T.let(T.unsafe(nil), Set)
3456
3704
 
3457
- # source://rubocop-ast//lib/rubocop/ast/node.rb#83
3705
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#80
3458
3706
  RuboCop::AST::Node::LITERAL_RECURSIVE_METHODS = T.let(T.unsafe(nil), Set)
3459
3707
 
3460
- # source://rubocop-ast//lib/rubocop/ast/node.rb#84
3708
+ # source://rubocop-ast//lib/rubocop/ast/node.rb#81
3461
3709
  RuboCop::AST::Node::LITERAL_RECURSIVE_TYPES = T.let(T.unsafe(nil), Set)
3462
3710
 
3463
3711
  # @api private
@@ -3527,7 +3775,7 @@ RuboCop::AST::Node::VARIABLES = T.let(T.unsafe(nil), Set)
3527
3775
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/method_definer.rb#5
3528
3776
  class RuboCop::AST::NodePattern
3529
3777
  include ::RuboCop::AST::NodePattern::MethodDefiner
3530
- extend ::Forwardable
3778
+ extend ::RuboCop::SimpleForwardable
3531
3779
 
3532
3780
  # @return [NodePattern] a new instance of NodePattern
3533
3781
  #
@@ -3545,13 +3793,13 @@ class RuboCop::AST::NodePattern
3545
3793
  # source://rubocop-ast//lib/rubocop/ast/node_pattern.rb#73
3546
3794
  def ast; end
3547
3795
 
3548
- # source://forwardable/1.3.3/forwardable.rb#231
3549
- def captures(*args, **_arg1, &block); end
3796
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern.rb#75
3797
+ def captures(*_arg0, **_arg1, &_arg2); end
3550
3798
 
3551
3799
  # source://rubocop-ast//lib/rubocop/ast/node_pattern.rb#111
3552
3800
  def encode_with(coder); end
3553
3801
 
3554
- # source://rubocop-ast//lib/rubocop/ast/node_pattern.rb#90
3802
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern.rb#93
3555
3803
  def eql?(other); end
3556
3804
 
3557
3805
  # source://rubocop-ast//lib/rubocop/ast/node_pattern.rb#119
@@ -3574,16 +3822,16 @@ class RuboCop::AST::NodePattern
3574
3822
  # source://rubocop-ast//lib/rubocop/ast/node_pattern.rb#73
3575
3823
  def match_code; end
3576
3824
 
3577
- # source://forwardable/1.3.3/forwardable.rb#231
3578
- def named_parameters(*args, **_arg1, &block); end
3825
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern.rb#75
3826
+ def named_parameters(*_arg0, **_arg1, &_arg2); end
3579
3827
 
3580
3828
  # Returns the value of attribute pattern.
3581
3829
  #
3582
3830
  # source://rubocop-ast//lib/rubocop/ast/node_pattern.rb#73
3583
3831
  def pattern; end
3584
3832
 
3585
- # source://forwardable/1.3.3/forwardable.rb#231
3586
- def positional_parameters(*args, **_arg1, &block); end
3833
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern.rb#75
3834
+ def positional_parameters(*_arg0, **_arg1, &_arg2); end
3587
3835
 
3588
3836
  # source://rubocop-ast//lib/rubocop/ast/node_pattern.rb#95
3589
3837
  def to_s; end
@@ -3666,7 +3914,7 @@ class RuboCop::AST::NodePattern::Comment
3666
3914
 
3667
3915
  # Returns the value of attribute location.
3668
3916
  #
3669
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/comment.rb#8
3917
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/comment.rb#9
3670
3918
  def loc; end
3671
3919
 
3672
3920
  # Returns the value of attribute location.
@@ -3688,15 +3936,15 @@ end
3688
3936
  #
3689
3937
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler.rb#11
3690
3938
  class RuboCop::AST::NodePattern::Compiler
3691
- extend ::Forwardable
3939
+ extend ::RuboCop::SimpleForwardable
3692
3940
 
3693
3941
  # @return [Compiler] a new instance of Compiler
3694
3942
  #
3695
3943
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler.rb#15
3696
3944
  def initialize; end
3697
3945
 
3698
- # source://forwardable/1.3.3/forwardable.rb#231
3699
- def bind(*args, **_arg1, &block); end
3946
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler.rb#24
3947
+ def bind(*_arg0, **_arg1, &_arg2); end
3700
3948
 
3701
3949
  # Returns the value of attribute binding.
3702
3950
  #
@@ -3778,7 +4026,7 @@ class RuboCop::AST::NodePattern::Compiler::AtomSubcompiler < ::RuboCop::AST::Nod
3778
4026
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/atom_subcompiler.rb#32
3779
4027
  def visit_named_parameter; end
3780
4028
 
3781
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/atom_subcompiler.rb#21
4029
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/atom_subcompiler.rb#24
3782
4030
  def visit_number; end
3783
4031
 
3784
4032
  # Assumes other types are node patterns.
@@ -3789,13 +4037,13 @@ class RuboCop::AST::NodePattern::Compiler::AtomSubcompiler < ::RuboCop::AST::Nod
3789
4037
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/atom_subcompiler.rb#36
3790
4038
  def visit_positional_parameter; end
3791
4039
 
3792
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/atom_subcompiler.rb#21
4040
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/atom_subcompiler.rb#26
3793
4041
  def visit_regexp; end
3794
4042
 
3795
4043
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/atom_subcompiler.rb#40
3796
4044
  def visit_set; end
3797
4045
 
3798
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/atom_subcompiler.rb#21
4046
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/atom_subcompiler.rb#25
3799
4047
  def visit_string; end
3800
4048
 
3801
4049
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/atom_subcompiler.rb#21
@@ -3839,79 +4087,74 @@ end
3839
4087
  class RuboCop::AST::NodePattern::Compiler::Debug < ::RuboCop::AST::NodePattern::Compiler
3840
4088
  # @return [Debug] a new instance of Debug
3841
4089
  #
3842
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#123
4090
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#118
3843
4091
  def initialize; end
3844
4092
 
3845
- # source://forwardable/1.3.3/forwardable.rb#231
3846
- def comments(*args, **_arg1, &block); end
4093
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#131
4094
+ def comments(*_arg0, **_arg1, &_arg2); end
3847
4095
 
3848
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#128
4096
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#123
3849
4097
  def named_parameters; end
3850
4098
 
3851
4099
  # Returns the value of attribute node_ids.
3852
4100
  #
3853
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#33
4101
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#35
3854
4102
  def node_ids; end
3855
4103
 
3856
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#132
4104
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#127
3857
4105
  def parser; end
3858
4106
 
3859
- # source://forwardable/1.3.3/forwardable.rb#231
3860
- def tokens(*args, **_arg1, &block); end
4107
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#131
4108
+ def tokens(*_arg0, **_arg1, &_arg2); end
3861
4109
  end
3862
4110
 
3863
4111
  # @api private
3864
4112
  #
3865
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#36
4113
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#38
3866
4114
  class RuboCop::AST::NodePattern::Compiler::Debug::Colorizer
3867
4115
  # @api private
3868
4116
  # @return [Colorizer] a new instance of Colorizer
3869
4117
  #
3870
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#96
4118
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#98
3871
4119
  def initialize(pattern, compiler: T.unsafe(nil)); end
3872
4120
 
3873
4121
  # @api private
3874
4122
  #
3875
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#94
4123
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#96
3876
4124
  def compiler; end
3877
4125
 
3878
4126
  # @api private
3879
4127
  #
3880
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#94
4128
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#96
3881
4129
  def node_pattern; end
3882
4130
 
3883
4131
  # @api private
3884
4132
  #
3885
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#94
4133
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#96
3886
4134
  def pattern; end
3887
4135
 
3888
4136
  # @api private
3889
4137
  # @return [Node] the Ruby AST
3890
4138
  #
3891
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#103
4139
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#105
3892
4140
  def test(ruby, trace: T.unsafe(nil)); end
3893
4141
 
3894
4142
  private
3895
4143
 
3896
4144
  # @api private
3897
4145
  #
3898
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#111
4146
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#113
3899
4147
  def ruby_ast(ruby); end
3900
-
3901
- # @api private
3902
- #
3903
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#116
3904
- def ruby_parser; end
3905
4148
  end
3906
4149
 
3907
4150
  # @api private
3908
4151
  #
3909
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#37
4152
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#39
3910
4153
  RuboCop::AST::NodePattern::Compiler::Debug::Colorizer::COLOR_SCHEME = T.let(T.unsafe(nil), Hash)
3911
4154
 
3912
4155
  # @api private
3913
4156
  #
3914
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#92
4157
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#94
3915
4158
  RuboCop::AST::NodePattern::Compiler::Debug::Colorizer::Compiler = RuboCop::AST::NodePattern::Compiler::Debug
3916
4159
 
3917
4160
  # Result of a NodePattern run against a particular AST
@@ -3919,129 +4162,154 @@ RuboCop::AST::NodePattern::Compiler::Debug::Colorizer::Compiler = RuboCop::AST::
3919
4162
  #
3920
4163
  # @api private
3921
4164
  #
3922
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#46
4165
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#48
3923
4166
  class RuboCop::AST::NodePattern::Compiler::Debug::Colorizer::Result < ::Struct
3924
4167
  # @api private
3925
4168
  # @return [Hash] a map for {character_position => color}
3926
4169
  #
3927
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#56
4170
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#58
3928
4171
  def color_map(color_scheme = T.unsafe(nil)); end
3929
4172
 
3930
4173
  # @api private
3931
4174
  # @return [String] a Rainbow colorized version of ruby
3932
4175
  #
3933
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#48
4176
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#50
3934
4177
  def colorize(color_scheme = T.unsafe(nil)); end
3935
4178
 
3936
4179
  # Returns the value of attribute colorizer
3937
4180
  #
3938
4181
  # @return [Object] the current value of colorizer
4182
+ #
4183
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#48
3939
4184
  def colorizer; end
3940
4185
 
3941
4186
  # Sets the attribute colorizer
3942
4187
  #
3943
4188
  # @param value [Object] the value to set the attribute colorizer to.
3944
4189
  # @return [Object] the newly set value
4190
+ #
4191
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#48
3945
4192
  def colorizer=(_); end
3946
4193
 
3947
4194
  # @api private
3948
4195
  # @return [Hash] a map for {node => matched?}, depth-first
3949
4196
  #
3950
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#66
4197
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#68
3951
4198
  def match_map; end
3952
4199
 
3953
4200
  # @api private
3954
4201
  # @return [Boolean] a value of `Trace#matched?` or `:not_visitable`
3955
4202
  #
3956
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#74
4203
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#76
3957
4204
  def matched?(node); end
3958
4205
 
3959
4206
  # Returns the value of attribute returned
3960
4207
  #
3961
4208
  # @return [Object] the current value of returned
4209
+ #
4210
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#48
3962
4211
  def returned; end
3963
4212
 
3964
4213
  # Sets the attribute returned
3965
4214
  #
3966
4215
  # @param value [Object] the value to set the attribute returned to.
3967
4216
  # @return [Object] the newly set value
4217
+ #
4218
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#48
3968
4219
  def returned=(_); end
3969
4220
 
3970
4221
  # Returns the value of attribute ruby_ast
3971
4222
  #
3972
4223
  # @return [Object] the current value of ruby_ast
4224
+ #
4225
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#48
3973
4226
  def ruby_ast; end
3974
4227
 
3975
4228
  # Sets the attribute ruby_ast
3976
4229
  #
3977
4230
  # @param value [Object] the value to set the attribute ruby_ast to.
3978
4231
  # @return [Object] the newly set value
4232
+ #
4233
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#48
3979
4234
  def ruby_ast=(_); end
3980
4235
 
3981
4236
  # Returns the value of attribute trace
3982
4237
  #
3983
4238
  # @return [Object] the current value of trace
4239
+ #
4240
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#48
3984
4241
  def trace; end
3985
4242
 
3986
4243
  # Sets the attribute trace
3987
4244
  #
3988
4245
  # @param value [Object] the value to set the attribute trace to.
3989
4246
  # @return [Object] the newly set value
4247
+ #
4248
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#48
3990
4249
  def trace=(_); end
3991
4250
 
3992
4251
  private
3993
4252
 
3994
4253
  # @api private
3995
4254
  #
3996
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#87
4255
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#89
3997
4256
  def ast; end
3998
4257
 
3999
4258
  # @api private
4000
4259
  #
4001
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#81
4260
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#83
4002
4261
  def color_map_for(node, color); end
4003
4262
 
4004
4263
  class << self
4264
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#48
4005
4265
  def [](*_arg0); end
4266
+
4267
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#48
4006
4268
  def inspect; end
4269
+
4270
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#48
4007
4271
  def keyword_init?; end
4272
+
4273
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#48
4008
4274
  def members; end
4275
+
4276
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#48
4009
4277
  def new(*_arg0); end
4010
4278
  end
4011
4279
  end
4012
4280
 
4013
4281
  # @api private
4014
4282
  #
4015
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#139
4283
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#134
4016
4284
  module RuboCop::AST::NodePattern::Compiler::Debug::InstrumentationSubcompiler
4017
4285
  # @api private
4018
4286
  #
4019
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#140
4287
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#135
4020
4288
  def do_compile; end
4021
4289
 
4022
4290
  private
4023
4291
 
4024
4292
  # @api private
4025
4293
  #
4026
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#150
4294
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#145
4027
4295
  def node_id; end
4028
4296
 
4029
4297
  # @api private
4030
4298
  #
4031
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#146
4299
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#141
4032
4300
  def tracer(kind); end
4033
4301
  end
4034
4302
 
4035
4303
  # @api private
4036
4304
  #
4037
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#156
4305
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#151
4038
4306
  class RuboCop::AST::NodePattern::Compiler::Debug::NodePatternSubcompiler < ::RuboCop::AST::NodePattern::Compiler::NodePatternSubcompiler
4039
4307
  include ::RuboCop::AST::NodePattern::Compiler::Debug::InstrumentationSubcompiler
4040
4308
  end
4041
4309
 
4042
4310
  # @api private
4043
4311
  #
4044
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#161
4312
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#156
4045
4313
  class RuboCop::AST::NodePattern::Compiler::Debug::SequenceSubcompiler < ::RuboCop::AST::NodePattern::Compiler::SequenceSubcompiler
4046
4314
  include ::RuboCop::AST::NodePattern::Compiler::Debug::InstrumentationSubcompiler
4047
4315
  end
@@ -4056,17 +4324,17 @@ class RuboCop::AST::NodePattern::Compiler::Debug::Trace
4056
4324
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#14
4057
4325
  def initialize; end
4058
4326
 
4059
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#18
4327
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#19
4060
4328
  def enter(node_id); end
4061
4329
 
4062
4330
  # return nil (not visited), false (not matched) or true (matched)
4063
4331
  #
4064
4332
  # @return [Boolean]
4065
4333
  #
4066
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#28
4334
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#30
4067
4335
  def matched?(node_id); end
4068
4336
 
4069
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#23
4337
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/debug.rb#25
4070
4338
  def success(node_id); end
4071
4339
  end
4072
4340
 
@@ -4210,7 +4478,7 @@ class RuboCop::AST::NodePattern::Compiler::SequenceSubcompiler < ::RuboCop::AST:
4210
4478
 
4211
4479
  private
4212
4480
 
4213
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/subcompiler.rb#20
4481
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/compiler/sequence_subcompiler.rb#59
4214
4482
  def compile(node); end
4215
4483
 
4216
4484
  # Compilation helpers
@@ -4464,7 +4732,7 @@ class RuboCop::AST::NodePattern::LexerRex
4464
4732
 
4465
4733
  # The StringScanner for this lexer.
4466
4734
  #
4467
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/lexer.rex.rb#48
4735
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/lexer.rex.rb#55
4468
4736
  def match; end
4469
4737
 
4470
4738
  # The match groups for the current scan.
@@ -4633,7 +4901,7 @@ end
4633
4901
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/node.rb#7
4634
4902
  class RuboCop::AST::NodePattern::Node < ::Parser::AST::Node
4635
4903
  include ::RuboCop::AST::Descendence
4636
- extend ::Forwardable
4904
+ extend ::RuboCop::SimpleForwardable
4637
4905
 
4638
4906
  # Note: `arity.end` may be `Float::INFINITY`
4639
4907
  #
@@ -4674,7 +4942,7 @@ class RuboCop::AST::NodePattern::Node < ::Parser::AST::Node
4674
4942
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/node.rb#63
4675
4943
  def matches_within_set?; end
4676
4944
 
4677
- # @return [Integer] nb of captures of that node and its descendants
4945
+ # @return [Integer] nb of captures that this node will emit
4678
4946
  #
4679
4947
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/node.rb#52
4680
4948
  def nb_captures; end
@@ -4726,8 +4994,8 @@ RuboCop::AST::NodePattern::Node::AnyOrder::ARITIES = T.let(T.unsafe(nil), Hash)
4726
4994
  #
4727
4995
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/node.rb#96
4728
4996
  class RuboCop::AST::NodePattern::Node::Capture < ::RuboCop::AST::NodePattern::Node
4729
- # source://forwardable/1.3.3/forwardable.rb#231
4730
- def arity(*args, **_arg1, &block); end
4997
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/node.rb#98
4998
+ def arity(*_arg0, **_arg1, &_arg2); end
4731
4999
 
4732
5000
  # @return [Boolean]
4733
5001
  #
@@ -4740,8 +5008,8 @@ class RuboCop::AST::NodePattern::Node::Capture < ::RuboCop::AST::NodePattern::No
4740
5008
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/node.rb#104
4741
5009
  def nb_captures; end
4742
5010
 
4743
- # source://forwardable/1.3.3/forwardable.rb#231
4744
- def rest?(*args, **_arg1, &block); end
5011
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/node.rb#98
5012
+ def rest?(*_arg0, **_arg1, &_arg2); end
4745
5013
  end
4746
5014
 
4747
5015
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/node.rb#85
@@ -4760,7 +5028,7 @@ RuboCop::AST::NodePattern::Node::INT_TO_RANGE = T.let(T.unsafe(nil), Hash)
4760
5028
 
4761
5029
  # Registry
4762
5030
  #
4763
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/node.rb#249
5031
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/node.rb#255
4764
5032
  RuboCop::AST::NodePattern::Node::MAP = T.let(T.unsafe(nil), Hash)
4765
5033
 
4766
5034
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/node.rb#11
@@ -4846,6 +5114,12 @@ class RuboCop::AST::NodePattern::Node::Union < ::RuboCop::AST::NodePattern::Node
4846
5114
 
4847
5115
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/node.rb#231
4848
5116
  def in_sequence_head; end
5117
+
5118
+ # Each child in a union must contain the same number
5119
+ # of captures. Only one branch ends up capturing.
5120
+ #
5121
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/node.rb#249
5122
+ def nb_captures; end
4849
5123
  end
4850
5124
 
4851
5125
  # Parser for NodePattern
@@ -4856,7 +5130,7 @@ end
4856
5130
  #
4857
5131
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/parser.racc.rb#12
4858
5132
  class RuboCop::AST::NodePattern::Parser < ::Racc::Parser
4859
- extend ::Forwardable
5133
+ extend ::RuboCop::SimpleForwardable
4860
5134
 
4861
5135
  # @return [Parser] a new instance of Parser
4862
5136
  #
@@ -4975,29 +5249,29 @@ class RuboCop::AST::NodePattern::Parser < ::Racc::Parser
4975
5249
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/parser.racc.rb#465
4976
5250
  def _reduce_none(val, _values); end
4977
5251
 
4978
- # source://forwardable/1.3.3/forwardable.rb#231
4979
- def emit_atom(*args, **_arg1, &block); end
5252
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/parser.rb#46
5253
+ def emit_atom(*_arg0, **_arg1, &_arg2); end
4980
5254
 
4981
- # source://forwardable/1.3.3/forwardable.rb#231
4982
- def emit_call(*args, **_arg1, &block); end
5255
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/parser.rb#46
5256
+ def emit_call(*_arg0, **_arg1, &_arg2); end
4983
5257
 
4984
- # source://forwardable/1.3.3/forwardable.rb#231
4985
- def emit_capture(*args, **_arg1, &block); end
5258
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/parser.rb#46
5259
+ def emit_capture(*_arg0, **_arg1, &_arg2); end
4986
5260
 
4987
- # source://forwardable/1.3.3/forwardable.rb#231
4988
- def emit_list(*args, **_arg1, &block); end
5261
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/parser.rb#46
5262
+ def emit_list(*_arg0, **_arg1, &_arg2); end
4989
5263
 
4990
- # source://forwardable/1.3.3/forwardable.rb#231
4991
- def emit_unary_op(*args, **_arg1, &block); end
5264
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/parser.rb#46
5265
+ def emit_unary_op(*_arg0, **_arg1, &_arg2); end
4992
5266
 
4993
- # source://forwardable/1.3.3/forwardable.rb#231
4994
- def emit_union(*args, **_arg1, &block); end
5267
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/parser.rb#46
5268
+ def emit_union(*_arg0, **_arg1, &_arg2); end
4995
5269
 
4996
5270
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/parser.rb#40
4997
5271
  def inspect; end
4998
5272
 
4999
- # source://forwardable/1.3.3/forwardable.rb#231
5000
- def next_token(*args, **_arg1, &block); end
5273
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/parser.rb#48
5274
+ def next_token(*_arg0, **_arg1, &_arg2); end
5001
5275
 
5002
5276
  # (Similar API to `parser` gem)
5003
5277
  # Parses a source and returns the AST.
@@ -5154,14 +5428,17 @@ RuboCop::AST::NodePattern::Sets::SET_AFTER_ACTION_APPEND_AFTER_ACTION_APPEND_ARO
5154
5428
  RuboCop::AST::NodePattern::Sets::SET_ALL_ANY_CLASS_OF_ETC = T.let(T.unsafe(nil), Set)
5155
5429
 
5156
5430
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5157
- RuboCop::AST::NodePattern::Sets::SET_ANY_EMPTY = T.let(T.unsafe(nil), Set)
5431
+ RuboCop::AST::NodePattern::Sets::SET_ANY_EMPTY_NONE_ETC = T.let(T.unsafe(nil), Set)
5158
5432
 
5159
5433
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5160
- RuboCop::AST::NodePattern::Sets::SET_ANY_EMPTY_NONE_ETC = T.let(T.unsafe(nil), Set)
5434
+ RuboCop::AST::NodePattern::Sets::SET_ANY_NONE = T.let(T.unsafe(nil), Set)
5161
5435
 
5162
5436
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5163
5437
  RuboCop::AST::NodePattern::Sets::SET_AP_P_PP_ETC = T.let(T.unsafe(nil), Set)
5164
5438
 
5439
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5440
+ RuboCop::AST::NodePattern::Sets::SET_ARRAY_HASH = T.let(T.unsafe(nil), Set)
5441
+
5165
5442
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5166
5443
  RuboCop::AST::NodePattern::Sets::SET_ATTR_READER_ATTR_WRITER_ATTR_ACCESSOR = T.let(T.unsafe(nil), Set)
5167
5444
 
@@ -5270,6 +5547,9 @@ RuboCop::AST::NodePattern::Sets::SET_HEAD_ASSERT_RESPONSE = T.let(T.unsafe(nil),
5270
5547
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5271
5548
  RuboCop::AST::NodePattern::Sets::SET_HTML_HTML5 = T.let(T.unsafe(nil), Set)
5272
5549
 
5550
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5551
+ RuboCop::AST::NodePattern::Sets::SET_IF = T.let(T.unsafe(nil), Set)
5552
+
5273
5553
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5274
5554
  RuboCop::AST::NodePattern::Sets::SET_IF_UNLESS = T.let(T.unsafe(nil), Set)
5275
5555
 
@@ -5288,9 +5568,15 @@ RuboCop::AST::NodePattern::Sets::SET_INSTANCE_EVAL_CLASS_EVAL_MODULE_EVAL = T.le
5288
5568
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5289
5569
  RuboCop::AST::NodePattern::Sets::SET_INSTANCE_EXEC_CLASS_EXEC_MODULE_EXEC = T.let(T.unsafe(nil), Set)
5290
5570
 
5571
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5572
+ RuboCop::AST::NodePattern::Sets::SET_INTEGER_BIGDECIMAL_COMPLEX_RATIONAL = T.let(T.unsafe(nil), Set)
5573
+
5291
5574
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5292
5575
  RuboCop::AST::NodePattern::Sets::SET_IO_FILE = T.let(T.unsafe(nil), Set)
5293
5576
 
5577
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5578
+ RuboCop::AST::NodePattern::Sets::SET_IS_A_KIND_OF = T.let(T.unsafe(nil), Set)
5579
+
5294
5580
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5295
5581
  RuboCop::AST::NodePattern::Sets::SET_KEYS_VALUES = T.let(T.unsafe(nil), Set)
5296
5582
 
@@ -5348,9 +5634,6 @@ RuboCop::AST::NodePattern::Sets::SET_ONLY_EXCEPT = T.let(T.unsafe(nil), Set)
5348
5634
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5349
5635
  RuboCop::AST::NodePattern::Sets::SET_PIPELINE_PIPELINE_R_PIPELINE_RW_ETC = T.let(T.unsafe(nil), Set)
5350
5636
 
5351
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5352
- RuboCop::AST::NodePattern::Sets::SET_PRESENT_ANY_BLANK_EMPTY = T.let(T.unsafe(nil), Set)
5353
-
5354
5637
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5355
5638
  RuboCop::AST::NodePattern::Sets::SET_PRIVATE_PROTECTED_PRIVATE_CLASS_METHOD = T.let(T.unsafe(nil), Set)
5356
5639
 
@@ -5385,7 +5668,7 @@ RuboCop::AST::NodePattern::Sets::SET_REFERER_REFERRER = T.let(T.unsafe(nil), Set
5385
5668
  RuboCop::AST::NodePattern::Sets::SET_REJECT_DELETE_IF = T.let(T.unsafe(nil), Set)
5386
5669
 
5387
5670
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5388
- RuboCop::AST::NodePattern::Sets::SET_REJECT_DELETE_IF_REJECT = T.let(T.unsafe(nil), Set)
5671
+ RuboCop::AST::NodePattern::Sets::SET_REJECT_REJECT = T.let(T.unsafe(nil), Set)
5389
5672
 
5390
5673
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5391
5674
  RuboCop::AST::NodePattern::Sets::SET_RENDER_REDIRECT_TO = T.let(T.unsafe(nil), Set)
@@ -5399,18 +5682,24 @@ RuboCop::AST::NodePattern::Sets::SET_RETURNING_UNIQUE_BY = T.let(T.unsafe(nil),
5399
5682
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5400
5683
  RuboCop::AST::NodePattern::Sets::SET_ROOT_PUBLIC_PATH = T.let(T.unsafe(nil), Set)
5401
5684
 
5685
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5686
+ RuboCop::AST::NodePattern::Sets::SET_SELECT_FILTER = T.let(T.unsafe(nil), Set)
5687
+
5402
5688
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5403
5689
  RuboCop::AST::NodePattern::Sets::SET_SELECT_FILTER_FIND_ALL = T.let(T.unsafe(nil), Set)
5404
5690
 
5405
5691
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5406
- RuboCop::AST::NodePattern::Sets::SET_SELECT_KEEP_IF = T.let(T.unsafe(nil), Set)
5692
+ RuboCop::AST::NodePattern::Sets::SET_SELECT_FILTER_KEEP_IF = T.let(T.unsafe(nil), Set)
5407
5693
 
5408
5694
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5409
- RuboCop::AST::NodePattern::Sets::SET_SELECT_SELECT = T.let(T.unsafe(nil), Set)
5695
+ RuboCop::AST::NodePattern::Sets::SET_SELECT_SELECT_FILTER_FILTER = T.let(T.unsafe(nil), Set)
5410
5696
 
5411
5697
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5412
5698
  RuboCop::AST::NodePattern::Sets::SET_SEND_PUBLIC_SEND___SEND__ = T.let(T.unsafe(nil), Set)
5413
5699
 
5700
+ # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5701
+ RuboCop::AST::NodePattern::Sets::SET_SET_SORTEDSET = T.let(T.unsafe(nil), Set)
5702
+
5414
5703
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5415
5704
  RuboCop::AST::NodePattern::Sets::SET_SIG_HELPERS = T.let(T.unsafe(nil), Set)
5416
5705
 
@@ -5516,12 +5805,6 @@ RuboCop::AST::NodePattern::Sets::SET___7 = T.let(T.unsafe(nil), Set)
5516
5805
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5517
5806
  RuboCop::AST::NodePattern::Sets::SET___8 = T.let(T.unsafe(nil), Set)
5518
5807
 
5519
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5520
- RuboCop::AST::NodePattern::Sets::SET___EQL_ETC = T.let(T.unsafe(nil), Set)
5521
-
5522
- # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5523
- RuboCop::AST::NodePattern::Sets::SET___EQL_INCLUDE = T.let(T.unsafe(nil), Set)
5524
-
5525
5808
  # source://rubocop-ast//lib/rubocop/ast/node_pattern/sets.rb#10
5526
5809
  RuboCop::AST::NodePattern::Sets::SET___METHOD_____CALLEE__ = T.let(T.unsafe(nil), Set)
5527
5810
 
@@ -5549,7 +5832,7 @@ RuboCop::AST::NodePattern::Sets::SET_____2 = T.let(T.unsafe(nil), Set)
5549
5832
  # source://rubocop-ast//lib/rubocop/ast/node_pattern.rb#55
5550
5833
  RuboCop::AST::NodePattern::VAR = T.let(T.unsafe(nil), String)
5551
5834
 
5552
- # Common functionality for primitive numeric nodes: `int`, `float`, `rational`...
5835
+ # Common functionality for primitive numeric nodes: `int`, `float`, `rational`, `complex`...
5553
5836
  #
5554
5837
  # source://rubocop-ast//lib/rubocop/ast/node/mixin/numeric_node.rb#6
5555
5838
  module RuboCop::AST::NumericNode
@@ -5582,22 +5865,34 @@ class RuboCop::AST::OpAsgnNode < ::RuboCop::AST::Node
5582
5865
  #
5583
5866
  # @return [Node] the expression being assigned.
5584
5867
  #
5585
- # source://rubocop-ast//lib/rubocop/ast/node/op_asgn_node.rb#31
5868
+ # source://rubocop-ast//lib/rubocop/ast/node/op_asgn_node.rb#32
5586
5869
  def expression; end
5587
5870
 
5871
+ # @return [AsgnNode] the assignment node
5872
+ #
5873
+ # source://rubocop-ast//lib/rubocop/ast/node/op_asgn_node.rb#13
5874
+ def lhs; end
5875
+
5588
5876
  # The name of the variable being assigned as a symbol.
5589
5877
  #
5590
5878
  # @return [Symbol] the name of the variable being assigned
5591
5879
  #
5592
- # source://rubocop-ast//lib/rubocop/ast/node/op_asgn_node.rb#17
5880
+ # source://rubocop-ast//lib/rubocop/ast/node/op_asgn_node.rb#18
5593
5881
  def name; end
5594
5882
 
5595
5883
  # The operator being used for assignment as a symbol.
5596
5884
  #
5597
5885
  # @return [Symbol] the assignment operator
5598
5886
  #
5599
- # source://rubocop-ast//lib/rubocop/ast/node/op_asgn_node.rb#24
5887
+ # source://rubocop-ast//lib/rubocop/ast/node/op_asgn_node.rb#25
5600
5888
  def operator; end
5889
+
5890
+ # The expression being assigned to the variable.
5891
+ #
5892
+ # @return [Node] the expression being assigned.
5893
+ #
5894
+ # source://rubocop-ast//lib/rubocop/ast/node/op_asgn_node.rb#35
5895
+ def rhs; end
5601
5896
  end
5602
5897
 
5603
5898
  # A node extension for `op_asgn` nodes.
@@ -5760,7 +6055,7 @@ module RuboCop::AST::ParameterizedNode
5760
6055
  #
5761
6056
  # @return [Boolean] whether the node is a splat argument
5762
6057
  #
5763
- # source://rubocop-ast//lib/rubocop/ast/node/mixin/parameterized_node.rb#48
6058
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/parameterized_node.rb#52
5764
6059
  def rest_argument?; end
5765
6060
 
5766
6061
  # Checks whether any argument of the node is a splat
@@ -5838,36 +6133,59 @@ module RuboCop::AST::PredicateOperatorNode
5838
6133
  #
5839
6134
  # @return [Boolean] whether this is a logical operator
5840
6135
  #
5841
- # source://rubocop-ast//lib/rubocop/ast/node/mixin/predicate_operator_node.rb#27
6136
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/predicate_operator_node.rb#32
5842
6137
  def logical_operator?; end
5843
6138
 
5844
6139
  # Returns the operator as a string.
5845
6140
  #
5846
6141
  # @return [String] the operator
5847
6142
  #
5848
- # source://rubocop-ast//lib/rubocop/ast/node/mixin/predicate_operator_node.rb#20
6143
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/predicate_operator_node.rb#25
5849
6144
  def operator; end
5850
6145
 
5851
6146
  # Checks whether this is a semantic operator.
5852
6147
  #
5853
6148
  # @return [Boolean] whether this is a semantic operator
5854
6149
  #
5855
- # source://rubocop-ast//lib/rubocop/ast/node/mixin/predicate_operator_node.rb#34
6150
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/predicate_operator_node.rb#39
5856
6151
  def semantic_operator?; end
5857
6152
  end
5858
6153
 
5859
6154
  # source://rubocop-ast//lib/rubocop/ast/node/mixin/predicate_operator_node.rb#8
5860
6155
  RuboCop::AST::PredicateOperatorNode::LOGICAL_AND = T.let(T.unsafe(nil), String)
5861
6156
 
6157
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/predicate_operator_node.rb#17
6158
+ RuboCop::AST::PredicateOperatorNode::LOGICAL_OPERATORS = T.let(T.unsafe(nil), Array)
6159
+
5862
6160
  # source://rubocop-ast//lib/rubocop/ast/node/mixin/predicate_operator_node.rb#12
5863
6161
  RuboCop::AST::PredicateOperatorNode::LOGICAL_OR = T.let(T.unsafe(nil), String)
5864
6162
 
5865
6163
  # source://rubocop-ast//lib/rubocop/ast/node/mixin/predicate_operator_node.rb#10
5866
6164
  RuboCop::AST::PredicateOperatorNode::SEMANTIC_AND = T.let(T.unsafe(nil), String)
5867
6165
 
6166
+ # source://rubocop-ast//lib/rubocop/ast/node/mixin/predicate_operator_node.rb#19
6167
+ RuboCop::AST::PredicateOperatorNode::SEMANTIC_OPERATORS = T.let(T.unsafe(nil), Array)
6168
+
5868
6169
  # source://rubocop-ast//lib/rubocop/ast/node/mixin/predicate_operator_node.rb#14
5869
6170
  RuboCop::AST::PredicateOperatorNode::SEMANTIC_OR = T.let(T.unsafe(nil), String)
5870
6171
 
6172
+ # A `Prism` interface's class that provides a fixed `Prism::ParseLexResult` instead of parsing.
6173
+ #
6174
+ # This class implements the `parse_lex` method to return a preparsed `Prism::ParseLexResult`
6175
+ # rather than parsing the source code. When the parse result is already available externally,
6176
+ # such as in Ruby LSP, the Prism parsing process can be bypassed.
6177
+ #
6178
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#12
6179
+ class RuboCop::AST::PrismPreparsed
6180
+ # @return [PrismPreparsed] a new instance of PrismPreparsed
6181
+ #
6182
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#13
6183
+ def initialize(prism_result); end
6184
+
6185
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#23
6186
+ def parse_lex(_source, **_prism_options); end
6187
+ end
6188
+
5871
6189
  # A node extension for `procarg0` nodes.
5872
6190
  # This will be used in place of a plain node when the builder constructs
5873
6191
  # the AST, making its methods available to all `arg` nodes within RuboCop.
@@ -5886,42 +6204,42 @@ end
5886
6204
  # and other information such as disabled lines for cops.
5887
6205
  # It also provides a convenient way to access source lines.
5888
6206
  #
5889
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#10
6207
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#31
5890
6208
  class RuboCop::AST::ProcessedSource
5891
6209
  # @return [ProcessedSource] a new instance of ProcessedSource
5892
6210
  #
5893
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#28
5894
- def initialize(source, ruby_version, path = T.unsafe(nil), parser_engine: T.unsafe(nil)); end
6211
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#49
6212
+ def initialize(source, ruby_version, path = T.unsafe(nil), parser_engine: T.unsafe(nil), prism_result: T.unsafe(nil)); end
5895
6213
 
5896
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#72
6214
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#91
5897
6215
  def [](*args); end
5898
6216
 
5899
6217
  # Returns the value of attribute ast.
5900
6218
  #
5901
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#20
6219
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#41
5902
6220
  def ast; end
5903
6221
 
5904
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#50
6222
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#69
5905
6223
  def ast_with_comments; end
5906
6224
 
5907
6225
  # @return [Boolean]
5908
6226
  #
5909
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#111
6227
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#130
5910
6228
  def blank?; end
5911
6229
 
5912
6230
  # Returns the value of attribute buffer.
5913
6231
  #
5914
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#20
6232
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#41
5915
6233
  def buffer; end
5916
6234
 
5917
6235
  # Raw source checksum for tracking infinite loops.
5918
6236
  #
5919
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#83
6237
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#102
5920
6238
  def checksum; end
5921
6239
 
5922
6240
  # @return [Comment, nil] the comment at that line, if any.
5923
6241
  #
5924
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#116
6242
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#135
5925
6243
  def comment_at_line(line); end
5926
6244
 
5927
6245
  # Consider using `each_comment_in_lines` instead
@@ -5929,181 +6247,194 @@ class RuboCop::AST::ProcessedSource
5929
6247
  # @deprecated use contains_comment?
5930
6248
  # @return [Boolean] if any of the lines in the given `source_range` has a comment.
5931
6249
  #
5932
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#138
6250
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#161
5933
6251
  def commented?(source_range); end
5934
6252
 
5935
6253
  # Returns the value of attribute comments.
5936
6254
  #
5937
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#20
6255
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#41
5938
6256
  def comments; end
5939
6257
 
5940
6258
  # Should have been called `comments_before_or_at_line`. Doubtful it has of any valid use.
5941
6259
  #
5942
6260
  # @deprecated Use `each_comment_in_lines`
5943
6261
  #
5944
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#146
6262
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#165
5945
6263
  def comments_before_line(line); end
5946
6264
 
5947
6265
  # Consider using `each_comment_in_lines` instead
5948
6266
  #
5949
6267
  # @return [Boolean] if any of the lines in the given `source_range` has a comment.
5950
6268
  #
5951
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#138
6269
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#157
5952
6270
  def contains_comment?(source_range); end
5953
6271
 
5954
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#160
6272
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#179
5955
6273
  def current_line(token); end
5956
6274
 
5957
6275
  # Returns the value of attribute diagnostics.
5958
6276
  #
5959
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#20
6277
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#41
5960
6278
  def diagnostics; end
5961
6279
 
5962
6280
  # @deprecated Use `comments.each`
5963
6281
  #
5964
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#88
6282
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#107
5965
6283
  def each_comment(&block); end
5966
6284
 
5967
6285
  # Enumerates on the comments contained with the given `line_range`
5968
6286
  #
5969
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#126
6287
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#145
5970
6288
  def each_comment_in_lines(line_range); end
5971
6289
 
5972
6290
  # @deprecated Use `tokens.each`
5973
6291
  #
5974
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#98
6292
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#117
5975
6293
  def each_token(&block); end
5976
6294
 
5977
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#107
6295
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#126
5978
6296
  def file_path; end
5979
6297
 
5980
6298
  # @deprecated Use `comment_at_line`, `each_comment_in_lines`, or `comments.find`
5981
6299
  #
5982
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#93
6300
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#112
5983
6301
  def find_comment(&block); end
5984
6302
 
5985
6303
  # @deprecated Use `tokens.find`
5986
6304
  #
5987
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#103
6305
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#122
5988
6306
  def find_token(&block); end
5989
6307
 
5990
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#181
6308
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#200
5991
6309
  def first_token_of(range_or_node); end
5992
6310
 
5993
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#164
6311
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#183
5994
6312
  def following_line(token); end
5995
6313
 
5996
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#185
6314
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#204
5997
6315
  def last_token_of(range_or_node); end
5998
6316
 
5999
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#168
6317
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#187
6000
6318
  def line_indentation(line_number); end
6001
6319
 
6002
6320
  # @return [Boolean] if the given line number has a comment.
6003
6321
  #
6004
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#121
6322
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#140
6005
6323
  def line_with_comment?(line); end
6006
6324
 
6007
6325
  # Returns the source lines, line break characters removed, excluding a
6008
6326
  # possible __END__ and everything that comes after.
6009
6327
  #
6010
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#58
6328
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#77
6011
6329
  def lines; end
6012
6330
 
6013
6331
  # Returns the value of attribute parser_engine.
6014
6332
  #
6015
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#20
6333
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#41
6016
6334
  def parser_engine; end
6017
6335
 
6018
6336
  # Returns the value of attribute parser_error.
6019
6337
  #
6020
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#20
6338
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#41
6021
6339
  def parser_error; end
6022
6340
 
6023
6341
  # Returns the value of attribute path.
6024
6342
  #
6025
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#20
6343
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#41
6026
6344
  def path; end
6027
6345
 
6028
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#156
6346
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#175
6029
6347
  def preceding_line(token); end
6030
6348
 
6031
6349
  # Returns the value of attribute raw_source.
6032
6350
  #
6033
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#20
6351
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#41
6034
6352
  def raw_source; end
6035
6353
 
6036
6354
  # Returns the value of attribute ruby_version.
6037
6355
  #
6038
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#20
6356
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#41
6039
6357
  def ruby_version; end
6040
6358
 
6041
6359
  # The tokens list is always sorted by token position, except for cases when heredoc
6042
6360
  # is passed as a method argument. In this case tokens are interleaved by
6043
6361
  # heredoc contents' tokens.
6044
6362
  #
6045
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#192
6363
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#211
6046
6364
  def sorted_tokens; end
6047
6365
 
6048
6366
  # @return [Boolean]
6049
6367
  #
6050
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#150
6368
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#169
6051
6369
  def start_with?(string); end
6052
6370
 
6053
6371
  # Returns the value of attribute tokens.
6054
6372
  #
6055
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#20
6373
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#41
6056
6374
  def tokens; end
6057
6375
 
6058
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#175
6376
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#194
6059
6377
  def tokens_within(range_or_node); end
6060
6378
 
6061
6379
  # @return [Boolean]
6062
6380
  #
6063
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#76
6381
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#95
6064
6382
  def valid_syntax?; end
6065
6383
 
6066
6384
  private
6067
6385
 
6068
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#199
6386
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#329
6387
+ def builder_class(parser_engine); end
6388
+
6389
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#218
6069
6390
  def comment_index; end
6070
6391
 
6071
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#309
6072
- def create_parser(ruby_version, parser_engine); end
6392
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#339
6393
+ def create_parser(ruby_version, parser_engine, prism_result); end
6073
6394
 
6074
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#325
6395
+ # The Parser gem does not support Ruby 3.5 or later.
6396
+ # It is also not fully compatible with Ruby 3.4 but for
6397
+ # now respects using parser for backwards compatibility.
6398
+ #
6399
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#385
6400
+ def default_parser_engine(ruby_version); end
6401
+
6402
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#393
6075
6403
  def first_token_index(range_or_node); end
6076
6404
 
6077
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#330
6405
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#398
6078
6406
  def last_token_index(range_or_node); end
6079
6407
 
6080
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#205
6081
- def parse(source, ruby_version, parser_engine); end
6408
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#368
6409
+ def normalize_parser_engine(parser_engine, ruby_version); end
6410
+
6411
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#224
6412
+ def parse(source, ruby_version, parser_engine, prism_result); end
6082
6413
 
6083
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#238
6414
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#260
6084
6415
  def parser_class(ruby_version, parser_engine); end
6085
6416
 
6086
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#335
6417
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#403
6087
6418
  def source_range(range_or_node); end
6088
6419
 
6089
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#222
6420
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#243
6090
6421
  def tokenize(parser); end
6091
6422
 
6092
6423
  class << self
6093
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#23
6424
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#44
6094
6425
  def from_file(path, ruby_version, parser_engine: T.unsafe(nil)); end
6095
6426
  end
6096
6427
  end
6097
6428
 
6098
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#14
6429
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#35
6099
6430
  RuboCop::AST::ProcessedSource::INVALID_LEVELS = T.let(T.unsafe(nil), Array)
6100
6431
 
6101
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#17
6432
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#38
6102
6433
  RuboCop::AST::ProcessedSource::PARSER_ENGINES = T.let(T.unsafe(nil), Array)
6103
6434
 
6104
6435
  # @api private
6105
6436
  #
6106
- # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#12
6437
+ # source://rubocop-ast//lib/rubocop/ast/processed_source.rb#33
6107
6438
  RuboCop::AST::ProcessedSource::STRING_SOURCE_NAME = T.let(T.unsafe(nil), String)
6108
6439
 
6109
6440
  # A node extension for `irange` and `erange` nodes. This will be used in
@@ -6399,15 +6730,38 @@ class RuboCop::AST::StrNode < ::RuboCop::AST::Node
6399
6730
 
6400
6731
  # @return [Boolean]
6401
6732
  #
6402
- # source://rubocop-ast//lib/rubocop/ast/node/str_node.rb#11
6733
+ # source://rubocop-ast//lib/rubocop/ast/node/str_node.rb#26
6403
6734
  def character_literal?; end
6404
6735
 
6405
6736
  # @return [Boolean]
6406
6737
  #
6407
- # source://rubocop-ast//lib/rubocop/ast/node/str_node.rb#15
6738
+ # source://rubocop-ast//lib/rubocop/ast/node/str_node.rb#22
6739
+ def double_quoted?; end
6740
+
6741
+ # @return [Boolean]
6742
+ #
6743
+ # source://rubocop-ast//lib/rubocop/ast/node/str_node.rb#30
6408
6744
  def heredoc?; end
6745
+
6746
+ # Checks whether the string literal is delimited by percent brackets.
6747
+ #
6748
+ # @overload percent_literal?
6749
+ # @overload percent_literal?
6750
+ # @param type [Symbol] an optional percent literal type
6751
+ # @return [Boolean] whether the string is enclosed in percent brackets
6752
+ #
6753
+ # source://rubocop-ast//lib/rubocop/ast/node/str_node.rb#45
6754
+ def percent_literal?(type = T.unsafe(nil)); end
6755
+
6756
+ # @return [Boolean]
6757
+ #
6758
+ # source://rubocop-ast//lib/rubocop/ast/node/str_node.rb#18
6759
+ def single_quoted?; end
6409
6760
  end
6410
6761
 
6762
+ # source://rubocop-ast//lib/rubocop/ast/node/str_node.rb#11
6763
+ RuboCop::AST::StrNode::PERCENT_LITERAL_TYPES = T.let(T.unsafe(nil), Hash)
6764
+
6411
6765
  # A node extension for `super`- and `zsuper` nodes. This will be used in
6412
6766
  # place of a plain node when the builder constructs the AST, making its
6413
6767
  # methods available to all `super`- and `zsuper` nodes within RuboCop.
@@ -6418,7 +6772,7 @@ class RuboCop::AST::SuperNode < ::RuboCop::AST::Node
6418
6772
  include ::RuboCop::AST::MethodIdentifierPredicates
6419
6773
  include ::RuboCop::AST::MethodDispatchNode
6420
6774
 
6421
- # source://ast/2.4.2/lib/ast/node.rb#56
6775
+ # source://rubocop-ast//lib/rubocop/ast/node/super_node.rb#20
6422
6776
  def arguments; end
6423
6777
 
6424
6778
  # Custom destructuring method. This can be used to normalize
@@ -6445,151 +6799,154 @@ end
6445
6799
  class RuboCop::AST::Token
6446
6800
  # @return [Token] a new instance of Token
6447
6801
  #
6448
- # source://rubocop-ast//lib/rubocop/ast/token.rb#17
6802
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#18
6449
6803
  def initialize(pos, type, text); end
6450
6804
 
6451
- # source://rubocop-ast//lib/rubocop/ast/token.rb#32
6805
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#33
6452
6806
  def begin_pos; end
6453
6807
 
6454
- # source://rubocop-ast//lib/rubocop/ast/token.rb#28
6808
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#29
6455
6809
  def column; end
6456
6810
 
6457
6811
  # @return [Boolean]
6458
6812
  #
6459
- # source://rubocop-ast//lib/rubocop/ast/token.rb#101
6813
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#102
6460
6814
  def comma?; end
6461
6815
 
6462
6816
  # Type Predicates
6463
6817
  #
6464
6818
  # @return [Boolean]
6465
6819
  #
6466
- # source://rubocop-ast//lib/rubocop/ast/token.rb#57
6820
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#58
6467
6821
  def comment?; end
6468
6822
 
6469
6823
  # @return [Boolean]
6470
6824
  #
6471
- # source://rubocop-ast//lib/rubocop/ast/token.rb#105
6825
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#106
6472
6826
  def dot?; end
6473
6827
 
6474
6828
  # @return [Boolean]
6475
6829
  #
6476
- # source://rubocop-ast//lib/rubocop/ast/token.rb#117
6830
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#118
6477
6831
  def end?; end
6478
6832
 
6479
- # source://rubocop-ast//lib/rubocop/ast/token.rb#36
6833
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#37
6480
6834
  def end_pos; end
6481
6835
 
6482
6836
  # @return [Boolean]
6483
6837
  #
6484
- # source://rubocop-ast//lib/rubocop/ast/token.rb#121
6838
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#122
6485
6839
  def equal_sign?; end
6486
6840
 
6487
6841
  # @return [Boolean]
6488
6842
  #
6489
- # source://rubocop-ast//lib/rubocop/ast/token.rb#65
6843
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#66
6490
6844
  def left_array_bracket?; end
6491
6845
 
6492
6846
  # @return [Boolean]
6493
6847
  #
6494
- # source://rubocop-ast//lib/rubocop/ast/token.rb#81
6848
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#82
6495
6849
  def left_brace?; end
6496
6850
 
6497
6851
  # @return [Boolean]
6498
6852
  #
6499
- # source://rubocop-ast//lib/rubocop/ast/token.rb#73
6853
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#74
6500
6854
  def left_bracket?; end
6501
6855
 
6502
6856
  # @return [Boolean]
6503
6857
  #
6504
- # source://rubocop-ast//lib/rubocop/ast/token.rb#85
6858
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#86
6505
6859
  def left_curly_brace?; end
6506
6860
 
6507
6861
  # @return [Boolean]
6508
6862
  #
6509
- # source://rubocop-ast//lib/rubocop/ast/token.rb#93
6863
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#94
6510
6864
  def left_parens?; end
6511
6865
 
6512
6866
  # @return [Boolean]
6513
6867
  #
6514
- # source://rubocop-ast//lib/rubocop/ast/token.rb#69
6868
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#70
6515
6869
  def left_ref_bracket?; end
6516
6870
 
6517
- # source://rubocop-ast//lib/rubocop/ast/token.rb#24
6871
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#25
6518
6872
  def line; end
6519
6873
 
6520
6874
  # @return [Boolean]
6521
6875
  #
6522
- # source://rubocop-ast//lib/rubocop/ast/token.rb#125
6876
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#126
6523
6877
  def new_line?; end
6524
6878
 
6525
6879
  # Returns the value of attribute pos.
6526
6880
  #
6527
- # source://rubocop-ast//lib/rubocop/ast/token.rb#9
6881
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#10
6528
6882
  def pos; end
6529
6883
 
6530
6884
  # @return [Boolean]
6531
6885
  #
6532
- # source://rubocop-ast//lib/rubocop/ast/token.rb#109
6886
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#110
6533
6887
  def regexp_dots?; end
6534
6888
 
6535
6889
  # @return [Boolean]
6536
6890
  #
6537
- # source://rubocop-ast//lib/rubocop/ast/token.rb#113
6891
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#114
6538
6892
  def rescue_modifier?; end
6539
6893
 
6540
6894
  # @return [Boolean]
6541
6895
  #
6542
- # source://rubocop-ast//lib/rubocop/ast/token.rb#77
6896
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#78
6543
6897
  def right_bracket?; end
6544
6898
 
6545
6899
  # @return [Boolean]
6546
6900
  #
6547
- # source://rubocop-ast//lib/rubocop/ast/token.rb#89
6901
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#90
6548
6902
  def right_curly_brace?; end
6549
6903
 
6550
6904
  # @return [Boolean]
6551
6905
  #
6552
- # source://rubocop-ast//lib/rubocop/ast/token.rb#97
6906
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#98
6553
6907
  def right_parens?; end
6554
6908
 
6555
6909
  # @return [Boolean]
6556
6910
  #
6557
- # source://rubocop-ast//lib/rubocop/ast/token.rb#61
6911
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#62
6558
6912
  def semicolon?; end
6559
6913
 
6560
6914
  # Checks if there is whitespace after token
6561
6915
  #
6562
6916
  # @return [Boolean]
6563
6917
  #
6564
- # source://rubocop-ast//lib/rubocop/ast/token.rb#45
6918
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#46
6565
6919
  def space_after?; end
6566
6920
 
6567
6921
  # Checks if there is whitespace before token
6568
6922
  #
6569
6923
  # @return [Boolean]
6570
6924
  #
6571
- # source://rubocop-ast//lib/rubocop/ast/token.rb#50
6925
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#51
6572
6926
  def space_before?; end
6573
6927
 
6574
6928
  # Returns the value of attribute text.
6575
6929
  #
6576
- # source://rubocop-ast//lib/rubocop/ast/token.rb#9
6930
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#10
6577
6931
  def text; end
6578
6932
 
6579
- # source://rubocop-ast//lib/rubocop/ast/token.rb#40
6933
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#41
6580
6934
  def to_s; end
6581
6935
 
6582
6936
  # Returns the value of attribute type.
6583
6937
  #
6584
- # source://rubocop-ast//lib/rubocop/ast/token.rb#9
6938
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#10
6585
6939
  def type; end
6586
6940
 
6587
6941
  class << self
6588
- # source://rubocop-ast//lib/rubocop/ast/token.rb#11
6942
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#12
6589
6943
  def from_parser_token(parser_token); end
6590
6944
  end
6591
6945
  end
6592
6946
 
6947
+ # source://rubocop-ast//lib/rubocop/ast/token.rb#8
6948
+ RuboCop::AST::Token::LEFT_CURLY_TYPES = T.let(T.unsafe(nil), Array)
6949
+
6593
6950
  # source://rubocop-ast//lib/rubocop/ast/token.rb#7
6594
6951
  RuboCop::AST::Token::LEFT_PAREN_TYPES = T.let(T.unsafe(nil), Array)
6595
6952
 
@@ -6602,394 +6959,397 @@ RuboCop::AST::Token::LEFT_PAREN_TYPES = T.let(T.unsafe(nil), Array)
6602
6959
  module RuboCop::AST::Traversal
6603
6960
  extend ::RuboCop::AST::Traversal::CallbackCompiler
6604
6961
 
6605
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#173
6962
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#43
6606
6963
  def on_(node); end
6607
6964
 
6608
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#123
6965
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6609
6966
  def on___ENCODING__(node); end
6610
6967
 
6611
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#123
6968
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6612
6969
  def on___FILE__(node); end
6613
6970
 
6614
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#123
6971
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6615
6972
  def on___LINE__(node); end
6616
6973
 
6617
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
6974
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6618
6975
  def on_alias(node); end
6619
6976
 
6620
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
6977
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6621
6978
  def on_and(node); end
6622
6979
 
6623
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
6980
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6624
6981
  def on_and_asgn(node); end
6625
6982
 
6626
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#127
6983
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6627
6984
  def on_arg(node); end
6628
6985
 
6629
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#128
6986
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6630
6987
  def on_arg_expr(node); end
6631
6988
 
6632
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
6989
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6633
6990
  def on_args(node); end
6634
6991
 
6635
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
6992
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6636
6993
  def on_array(node); end
6637
6994
 
6638
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
6995
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6639
6996
  def on_array_pattern(node); end
6640
6997
 
6641
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
6998
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6642
6999
  def on_array_pattern_with_tail(node); end
6643
7000
 
6644
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#127
7001
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6645
7002
  def on_back_ref(node); end
6646
7003
 
6647
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7004
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6648
7005
  def on_begin(node); end
6649
7006
 
6650
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#151
7007
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#43
6651
7008
  def on_block(node); end
6652
7009
 
6653
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#129
7010
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#43
6654
7011
  def on_block_pass(node); end
6655
7012
 
6656
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#127
7013
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6657
7014
  def on_blockarg(node); end
6658
7015
 
6659
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7016
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6660
7017
  def on_break(node); end
6661
7018
 
6662
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#139
7019
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#43
6663
7020
  def on_case(node); end
6664
7021
 
6665
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#139
7022
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6666
7023
  def on_case_match(node); end
6667
7024
 
6668
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#146
7025
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#43
6669
7026
  def on_casgn(node); end
6670
7027
 
6671
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#123
7028
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6672
7029
  def on_cbase(node); end
6673
7030
 
6674
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#147
7031
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#43
6675
7032
  def on_class(node); end
6676
7033
 
6677
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#127
7034
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6678
7035
  def on_complex(node); end
6679
7036
 
6680
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#145
7037
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#43
6681
7038
  def on_const(node); end
6682
7039
 
6683
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7040
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6684
7041
  def on_const_pattern(node); end
6685
7042
 
6686
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#155
7043
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6687
7044
  def on_csend(node); end
6688
7045
 
6689
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#127
7046
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6690
7047
  def on_cvar(node); end
6691
7048
 
6692
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#131
7049
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6693
7050
  def on_cvasgn(node); end
6694
7051
 
6695
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#148
7052
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#43
6696
7053
  def on_def(node); end
6697
7054
 
6698
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#128
7055
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6699
7056
  def on_defined?(node); end
6700
7057
 
6701
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#153
7058
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#43
6702
7059
  def on_defs(node); end
6703
7060
 
6704
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7061
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#43
6705
7062
  def on_dstr(node); end
6706
7063
 
6707
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7064
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6708
7065
  def on_dsym(node); end
6709
7066
 
6710
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7067
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6711
7068
  def on_eflipflop(node); end
6712
7069
 
6713
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#123
7070
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6714
7071
  def on_empty_else(node); end
6715
7072
 
6716
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#139
7073
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6717
7074
  def on_ensure(node); end
6718
7075
 
6719
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#139
7076
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6720
7077
  def on_erange(node); end
6721
7078
 
6722
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#123
7079
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6723
7080
  def on_false(node); end
6724
7081
 
6725
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7082
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6726
7083
  def on_find_pattern(node); end
6727
7084
 
6728
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#127
7085
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6729
7086
  def on_float(node); end
6730
7087
 
6731
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#139
7088
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6732
7089
  def on_for(node); end
6733
7090
 
6734
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#123
7091
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6735
7092
  def on_forward_arg(node); end
6736
7093
 
6737
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#123
7094
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6738
7095
  def on_forward_args(node); end
6739
7096
 
6740
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#123
7097
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6741
7098
  def on_forwarded_args(node); end
6742
7099
 
6743
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#123
7100
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6744
7101
  def on_forwarded_kwrestarg(node); end
6745
7102
 
6746
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#123
7103
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6747
7104
  def on_forwarded_restarg(node); end
6748
7105
 
6749
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#127
7106
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6750
7107
  def on_gvar(node); end
6751
7108
 
6752
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#131
7109
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6753
7110
  def on_gvasgn(node); end
6754
7111
 
6755
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7112
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6756
7113
  def on_hash(node); end
6757
7114
 
6758
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7115
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6759
7116
  def on_hash_pattern(node); end
6760
7117
 
6761
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#150
7118
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#43
6762
7119
  def on_if(node); end
6763
7120
 
6764
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#128
7121
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6765
7122
  def on_if_guard(node); end
6766
7123
 
6767
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7124
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6768
7125
  def on_iflipflop(node); end
6769
7126
 
6770
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7127
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6771
7128
  def on_in_match(node); end
6772
7129
 
6773
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#139
7130
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6774
7131
  def on_in_pattern(node); end
6775
7132
 
6776
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7133
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6777
7134
  def on_index(node); end
6778
7135
 
6779
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7136
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6780
7137
  def on_indexasgn(node); end
6781
7138
 
6782
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#127
7139
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#43
6783
7140
  def on_int(node); end
6784
7141
 
6785
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#139
7142
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6786
7143
  def on_irange(node); end
6787
7144
 
6788
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#127
7145
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#43
7146
+ def on_itblock(node); end
7147
+
7148
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6789
7149
  def on_ivar(node); end
6790
7150
 
6791
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#131
7151
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6792
7152
  def on_ivasgn(node); end
6793
7153
 
6794
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#127
7154
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6795
7155
  def on_kwarg(node); end
6796
7156
 
6797
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7157
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6798
7158
  def on_kwargs(node); end
6799
7159
 
6800
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7160
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6801
7161
  def on_kwbegin(node); end
6802
7162
 
6803
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#123
7163
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6804
7164
  def on_kwnilarg(node); end
6805
7165
 
6806
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#132
7166
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6807
7167
  def on_kwoptarg(node); end
6808
7168
 
6809
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#124
7169
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6810
7170
  def on_kwrestarg(node); end
6811
7171
 
6812
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#125
7172
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6813
7173
  def on_kwsplat(node); end
6814
7174
 
6815
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#123
7175
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6816
7176
  def on_lambda(node); end
6817
7177
 
6818
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#127
7178
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6819
7179
  def on_lvar(node); end
6820
7180
 
6821
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#131
7181
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#43
6822
7182
  def on_lvasgn(node); end
6823
7183
 
6824
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7184
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6825
7185
  def on_masgn(node); end
6826
7186
 
6827
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7187
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6828
7188
  def on_match_alt(node); end
6829
7189
 
6830
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7190
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6831
7191
  def on_match_as(node); end
6832
7192
 
6833
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#128
7193
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6834
7194
  def on_match_current_line(node); end
6835
7195
 
6836
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#123
7196
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6837
7197
  def on_match_nil_pattern(node); end
6838
7198
 
6839
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#139
7199
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6840
7200
  def on_match_pattern(node); end
6841
7201
 
6842
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#139
7202
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6843
7203
  def on_match_pattern_p(node); end
6844
7204
 
6845
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#125
7205
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6846
7206
  def on_match_rest(node); end
6847
7207
 
6848
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#127
7208
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6849
7209
  def on_match_var(node); end
6850
7210
 
6851
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7211
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6852
7212
  def on_match_with_lvasgn(node); end
6853
7213
 
6854
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#128
7214
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6855
7215
  def on_match_with_trailing_comma(node); end
6856
7216
 
6857
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7217
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6858
7218
  def on_mlhs(node); end
6859
7219
 
6860
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#133
7220
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6861
7221
  def on_module(node); end
6862
7222
 
6863
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7223
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6864
7224
  def on_mrasgn(node); end
6865
7225
 
6866
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7226
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6867
7227
  def on_next(node); end
6868
7228
 
6869
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#123
7229
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6870
7230
  def on_nil(node); end
6871
7231
 
6872
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#128
7232
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#43
6873
7233
  def on_not(node); end
6874
7234
 
6875
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#127
7235
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6876
7236
  def on_nth_ref(node); end
6877
7237
 
6878
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#152
7238
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#43
6879
7239
  def on_numblock(node); end
6880
7240
 
6881
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#149
7241
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#43
6882
7242
  def on_op_asgn(node); end
6883
7243
 
6884
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#132
7244
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#43
6885
7245
  def on_optarg(node); end
6886
7246
 
6887
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7247
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6888
7248
  def on_or(node); end
6889
7249
 
6890
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7250
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6891
7251
  def on_or_asgn(node); end
6892
7252
 
6893
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7253
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6894
7254
  def on_pair(node); end
6895
7255
 
6896
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#128
7256
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6897
7257
  def on_pin(node); end
6898
7258
 
6899
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#129
7259
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6900
7260
  def on_postexe(node); end
6901
7261
 
6902
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#129
7262
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6903
7263
  def on_preexe(node); end
6904
7264
 
6905
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7265
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6906
7266
  def on_procarg0(node); end
6907
7267
 
6908
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7268
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6909
7269
  def on_rasgn(node); end
6910
7270
 
6911
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#127
7271
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6912
7272
  def on_rational(node); end
6913
7273
 
6914
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#123
7274
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6915
7275
  def on_redo(node); end
6916
7276
 
6917
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7277
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6918
7278
  def on_regexp(node); end
6919
7279
 
6920
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#135
7280
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#43
6921
7281
  def on_regopt(node); end
6922
7282
 
6923
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#139
7283
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6924
7284
  def on_resbody(node); end
6925
7285
 
6926
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#139
7286
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6927
7287
  def on_rescue(node); end
6928
7288
 
6929
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#124
7289
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#43
6930
7290
  def on_restarg(node); end
6931
7291
 
6932
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#123
7292
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6933
7293
  def on_retry(node); end
6934
7294
 
6935
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7295
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6936
7296
  def on_return(node); end
6937
7297
 
6938
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#133
7298
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6939
7299
  def on_sclass(node); end
6940
7300
 
6941
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#123
7301
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6942
7302
  def on_self(node); end
6943
7303
 
6944
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#155
7304
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#43
6945
7305
  def on_send(node); end
6946
7306
 
6947
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#127
7307
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6948
7308
  def on_shadowarg(node); end
6949
7309
 
6950
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#125
7310
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#43
6951
7311
  def on_splat(node); end
6952
7312
 
6953
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#127
7313
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6954
7314
  def on_str(node); end
6955
7315
 
6956
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7316
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6957
7317
  def on_super(node); end
6958
7318
 
6959
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#127
7319
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6960
7320
  def on_sym(node); end
6961
7321
 
6962
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#123
7322
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#43
6963
7323
  def on_true(node); end
6964
7324
 
6965
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7325
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6966
7326
  def on_undef(node); end
6967
7327
 
6968
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#128
7328
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6969
7329
  def on_unless_guard(node); end
6970
7330
 
6971
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#133
7331
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6972
7332
  def on_until(node); end
6973
7333
 
6974
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7334
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6975
7335
  def on_until_post(node); end
6976
7336
 
6977
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#139
7337
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6978
7338
  def on_when(node); end
6979
7339
 
6980
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#133
7340
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#43
6981
7341
  def on_while(node); end
6982
7342
 
6983
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7343
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6984
7344
  def on_while_post(node); end
6985
7345
 
6986
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7346
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6987
7347
  def on_xstr(node); end
6988
7348
 
6989
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#136
7349
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6990
7350
  def on_yield(node); end
6991
7351
 
6992
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#123
7352
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#50
6993
7353
  def on_zsuper(node); end
6994
7354
 
6995
7355
  # source://rubocop-ast//lib/rubocop/ast/traversal.rb#17
@@ -7002,18 +7362,18 @@ end
7002
7362
  module RuboCop::AST::Traversal::CallbackCompiler
7003
7363
  # @api private
7004
7364
  #
7005
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#61
7006
- def arity_check(range); end
7365
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#54
7366
+ def body(child_node_types, expected_children_count); end
7007
7367
 
7008
7368
  # @api private
7009
7369
  #
7010
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#52
7011
- def body(signature, prelude); end
7370
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#68
7371
+ def children_count_check_code(range); end
7012
7372
 
7013
7373
  # @api private
7014
7374
  #
7015
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#35
7016
- def def_callback(type, *signature, arity: T.unsafe(nil), arity_check: T.unsafe(nil), body: T.unsafe(nil)); end
7375
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#38
7376
+ def def_callback(type, *child_node_types, expected_children_count: T.unsafe(nil), body: T.unsafe(nil)); end
7017
7377
  end
7018
7378
 
7019
7379
  # @api private
@@ -7021,9 +7381,13 @@ end
7021
7381
  # source://rubocop-ast//lib/rubocop/ast/traversal.rb#26
7022
7382
  RuboCop::AST::Traversal::CallbackCompiler::SEND = T.let(T.unsafe(nil), String)
7023
7383
 
7384
+ # How a particular child node should be visited. For example, if a child node
7385
+ # can be nil it should be guarded behind a nil check. Or, if a child node is a literal
7386
+ # (like a symbol) then the literal itself should not be visited.
7387
+ #
7024
7388
  # @api private
7025
7389
  #
7026
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#29
7390
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#32
7027
7391
  RuboCop::AST::Traversal::CallbackCompiler::TEMPLATE = T.let(T.unsafe(nil), Hash)
7028
7392
 
7029
7393
  # Only for debugging.
@@ -7033,7 +7397,7 @@ RuboCop::AST::Traversal::CallbackCompiler::TEMPLATE = T.let(T.unsafe(nil), Hash)
7033
7397
  # source://rubocop-ast//lib/rubocop/ast/traversal.rb#12
7034
7398
  class RuboCop::AST::Traversal::DebugError < ::RuntimeError; end
7035
7399
 
7036
- # source://rubocop-ast//lib/rubocop/ast/traversal.rb#100
7400
+ # source://rubocop-ast//lib/rubocop/ast/traversal.rb#109
7037
7401
  RuboCop::AST::Traversal::NO_CHILD_NODES = T.let(T.unsafe(nil), Set)
7038
7402
 
7039
7403
  # source://rubocop-ast//lib/rubocop/ast/traversal.rb#15
@@ -7071,6 +7435,18 @@ class RuboCop::AST::UntilNode < ::RuboCop::AST::Node
7071
7435
  def keyword; end
7072
7436
  end
7073
7437
 
7438
+ # A node extension for `lvar`, `ivar`, `cvar` and `gvar` nodes.
7439
+ # This will be used in place of a plain node when the builder constructs
7440
+ # the AST, making its methods available to all assignment nodes within RuboCop.
7441
+ #
7442
+ # source://rubocop-ast//lib/rubocop/ast/node/var_node.rb#8
7443
+ class RuboCop::AST::VarNode < ::RuboCop::AST::Node
7444
+ # @return [Symbol] The name of the variable.
7445
+ #
7446
+ # source://rubocop-ast//lib/rubocop/ast/node/var_node.rb#10
7447
+ def name; end
7448
+ end
7449
+
7074
7450
  # source://rubocop-ast//lib/rubocop/ast/version.rb#5
7075
7451
  module RuboCop::AST::Version; end
7076
7452
 
@@ -7159,7 +7535,7 @@ class RuboCop::AST::YieldNode < ::RuboCop::AST::Node
7159
7535
  include ::RuboCop::AST::MethodIdentifierPredicates
7160
7536
  include ::RuboCop::AST::MethodDispatchNode
7161
7537
 
7162
- # source://ast/2.4.2/lib/ast/node.rb#56
7538
+ # source://rubocop-ast//lib/rubocop/ast/node/yield_node.rb#20
7163
7539
  def arguments; end
7164
7540
 
7165
7541
  # Custom destructuring method. This can be used to normalize
@@ -7170,3 +7546,15 @@ class RuboCop::AST::YieldNode < ::RuboCop::AST::Node
7170
7546
  # source://rubocop-ast//lib/rubocop/ast/node/yield_node.rb#16
7171
7547
  def node_parts; end
7172
7548
  end
7549
+
7550
+ class RuboCop::CommentConfig; end
7551
+ class RuboCop::Config; end
7552
+ class RuboCop::ConfigValidator; end
7553
+
7554
+ # Similar to `Forwardable#def_delegators`, but simpler & faster
7555
+ #
7556
+ # source://rubocop-ast//lib/rubocop/ast/utilities/simple_forwardable.rb#5
7557
+ module RuboCop::SimpleForwardable
7558
+ # source://rubocop-ast//lib/rubocop/ast/utilities/simple_forwardable.rb#6
7559
+ def def_delegators(accessor, *methods); end
7560
+ end