prism 0.26.0 → 0.28.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 (67) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +45 -1
  3. data/Makefile +3 -2
  4. data/config.yml +305 -20
  5. data/docs/configuration.md +1 -0
  6. data/ext/prism/api_node.c +884 -879
  7. data/ext/prism/extconf.rb +23 -4
  8. data/ext/prism/extension.c +16 -9
  9. data/ext/prism/extension.h +1 -1
  10. data/include/prism/ast.h +298 -9
  11. data/include/prism/diagnostic.h +15 -5
  12. data/include/prism/options.h +2 -2
  13. data/include/prism/parser.h +10 -0
  14. data/include/prism/static_literals.h +8 -6
  15. data/include/prism/version.h +2 -2
  16. data/lib/prism/dot_visitor.rb +22 -6
  17. data/lib/prism/dsl.rb +8 -8
  18. data/lib/prism/ffi.rb +4 -4
  19. data/lib/prism/inspect_visitor.rb +2156 -0
  20. data/lib/prism/lex_compat.rb +18 -1
  21. data/lib/prism/mutation_compiler.rb +2 -2
  22. data/lib/prism/node.rb +2345 -1964
  23. data/lib/prism/node_ext.rb +34 -5
  24. data/lib/prism/parse_result/newlines.rb +0 -2
  25. data/lib/prism/parse_result.rb +137 -13
  26. data/lib/prism/pattern.rb +12 -6
  27. data/lib/prism/polyfill/byteindex.rb +13 -0
  28. data/lib/prism/polyfill/unpack1.rb +14 -0
  29. data/lib/prism/reflection.rb +21 -31
  30. data/lib/prism/serialize.rb +27 -17
  31. data/lib/prism/translation/parser/compiler.rb +34 -15
  32. data/lib/prism/translation/parser.rb +6 -6
  33. data/lib/prism/translation/ripper.rb +72 -68
  34. data/lib/prism/translation/ruby_parser.rb +69 -31
  35. data/lib/prism.rb +3 -2
  36. data/prism.gemspec +36 -38
  37. data/rbi/prism/compiler.rbi +3 -5
  38. data/rbi/prism/inspect_visitor.rbi +12 -0
  39. data/rbi/prism/node.rbi +359 -321
  40. data/rbi/prism/parse_result.rbi +85 -34
  41. data/rbi/prism/reflection.rbi +7 -13
  42. data/rbi/prism/translation/ripper.rbi +1 -11
  43. data/rbi/prism.rbi +9 -9
  44. data/sig/prism/dsl.rbs +3 -3
  45. data/sig/prism/inspect_visitor.rbs +22 -0
  46. data/sig/prism/node.rbs +68 -48
  47. data/sig/prism/parse_result.rbs +42 -10
  48. data/sig/prism/reflection.rbs +2 -8
  49. data/sig/prism/serialize.rbs +2 -3
  50. data/sig/prism.rbs +9 -9
  51. data/src/diagnostic.c +44 -24
  52. data/src/node.c +41 -16
  53. data/src/options.c +2 -2
  54. data/src/prettyprint.c +61 -18
  55. data/src/prism.c +623 -188
  56. data/src/serialize.c +5 -2
  57. data/src/static_literals.c +120 -34
  58. data/src/token_type.c +4 -4
  59. data/src/util/pm_integer.c +9 -2
  60. metadata +7 -9
  61. data/lib/prism/node_inspector.rb +0 -68
  62. data/lib/prism/polyfill/string.rb +0 -12
  63. data/rbi/prism/desugar_compiler.rbi +0 -5
  64. data/rbi/prism/mutation_compiler.rbi +0 -5
  65. data/rbi/prism/translation/parser/compiler.rbi +0 -13
  66. data/rbi/prism/translation/ripper/ripper_compiler.rbi +0 -5
  67. data/rbi/prism/translation/ruby_parser.rbi +0 -11
data/rbi/prism/node.rbi CHANGED
@@ -10,7 +10,7 @@ class Prism::Node
10
10
  abstract!
11
11
 
12
12
  sig { returns(Prism::Source) }
13
- attr_reader :source
13
+ def source; end
14
14
 
15
15
  sig { returns(Prism::Location) }
16
16
  def location; end
@@ -21,15 +21,27 @@ class Prism::Node
21
21
  sig { returns(Integer) }
22
22
  def end_offset; end
23
23
 
24
+ sig { returns(T::Array[String]) }
25
+ def source_lines; end
26
+
27
+ sig { returns(T::Array[String]) }
28
+ def script_lines; end
29
+
24
30
  sig { returns(String) }
25
31
  def slice; end
26
32
 
33
+ sig { returns(String) }
34
+ def slice_lines; end
35
+
27
36
  sig { params(q: T.untyped).void }
28
37
  def pretty_print(q); end
29
38
 
30
39
  sig { returns(String) }
31
40
  def to_dot; end
32
41
 
42
+ sig { params(line: Integer, column: Integer).returns(T::Array[Prism::Node]) }
43
+ def tunnel(line, column); end
44
+
33
45
  sig { abstract.params(visitor: Prism::Visitor).returns(T.untyped) }
34
46
  def accept(visitor); end
35
47
 
@@ -51,8 +63,8 @@ class Prism::Node
51
63
  sig { abstract.returns(Symbol) }
52
64
  def type; end
53
65
 
54
- sig { abstract.params(inspector: Prism::NodeInspector).returns(String) }
55
- def inspect(inspector = Prism::NodeInspector.new); end
66
+ sig { abstract.returns(String) }
67
+ def inspect; end
56
68
  end
57
69
 
58
70
  # Represents the use of the `alias` keyword to alias a global variable.
@@ -99,8 +111,8 @@ class Prism::AliasGlobalVariableNode < Prism::Node
99
111
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
100
112
  def fields; end
101
113
 
102
- sig { params(inspector: T.untyped).returns(String) }
103
- def inspect(inspector = nil); end
114
+ sig { override.returns(String) }
115
+ def inspect; end
104
116
 
105
117
  sig { override.returns(Symbol) }
106
118
  def type; end
@@ -150,8 +162,8 @@ class Prism::AliasMethodNode < Prism::Node
150
162
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
151
163
  def fields; end
152
164
 
153
- sig { params(inspector: T.untyped).returns(String) }
154
- def inspect(inspector = nil); end
165
+ sig { override.returns(String) }
166
+ def inspect; end
155
167
 
156
168
  sig { override.returns(Symbol) }
157
169
  def type; end
@@ -201,8 +213,8 @@ class Prism::AlternationPatternNode < Prism::Node
201
213
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
202
214
  def fields; end
203
215
 
204
- sig { params(inspector: T.untyped).returns(String) }
205
- def inspect(inspector = nil); end
216
+ sig { override.returns(String) }
217
+ def inspect; end
206
218
 
207
219
  sig { override.returns(Symbol) }
208
220
  def type; end
@@ -252,8 +264,8 @@ class Prism::AndNode < Prism::Node
252
264
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
253
265
  def fields; end
254
266
 
255
- sig { params(inspector: T.untyped).returns(String) }
256
- def inspect(inspector = nil); end
267
+ sig { override.returns(String) }
268
+ def inspect; end
257
269
 
258
270
  sig { override.returns(Symbol) }
259
271
  def type; end
@@ -294,14 +306,17 @@ class Prism::ArgumentsNode < Prism::Node
294
306
  sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
295
307
  def deconstruct_keys(keys); end
296
308
 
309
+ sig { returns(T::Boolean) }
310
+ def contains_keywords?; end
311
+
297
312
  sig { returns(T::Boolean) }
298
313
  def contains_keyword_splat?; end
299
314
 
300
315
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
301
316
  def fields; end
302
317
 
303
- sig { params(inspector: T.untyped).returns(String) }
304
- def inspect(inspector = nil); end
318
+ sig { override.returns(String) }
319
+ def inspect; end
305
320
 
306
321
  sig { override.returns(Symbol) }
307
322
  def type; end
@@ -360,8 +375,8 @@ class Prism::ArrayNode < Prism::Node
360
375
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
361
376
  def fields; end
362
377
 
363
- sig { params(inspector: T.untyped).returns(String) }
364
- def inspect(inspector = nil); end
378
+ sig { override.returns(String) }
379
+ def inspect; end
365
380
 
366
381
  sig { override.returns(Symbol) }
367
382
  def type; end
@@ -435,8 +450,8 @@ class Prism::ArrayPatternNode < Prism::Node
435
450
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
436
451
  def fields; end
437
452
 
438
- sig { params(inspector: T.untyped).returns(String) }
439
- def inspect(inspector = nil); end
453
+ sig { override.returns(String) }
454
+ def inspect; end
440
455
 
441
456
  sig { override.returns(Symbol) }
442
457
  def type; end
@@ -486,8 +501,8 @@ class Prism::AssocNode < Prism::Node
486
501
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
487
502
  def fields; end
488
503
 
489
- sig { params(inspector: T.untyped).returns(String) }
490
- def inspect(inspector = nil); end
504
+ sig { override.returns(String) }
505
+ def inspect; end
491
506
 
492
507
  sig { override.returns(Symbol) }
493
508
  def type; end
@@ -534,8 +549,8 @@ class Prism::AssocSplatNode < Prism::Node
534
549
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
535
550
  def fields; end
536
551
 
537
- sig { params(inspector: T.untyped).returns(String) }
538
- def inspect(inspector = nil); end
552
+ sig { override.returns(String) }
553
+ def inspect; end
539
554
 
540
555
  sig { override.returns(Symbol) }
541
556
  def type; end
@@ -576,8 +591,8 @@ class Prism::BackReferenceReadNode < Prism::Node
576
591
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
577
592
  def fields; end
578
593
 
579
- sig { params(inspector: T.untyped).returns(String) }
580
- def inspect(inspector = nil); end
594
+ sig { override.returns(String) }
595
+ def inspect; end
581
596
 
582
597
  sig { override.returns(Symbol) }
583
598
  def type; end
@@ -641,8 +656,8 @@ class Prism::BeginNode < Prism::Node
641
656
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
642
657
  def fields; end
643
658
 
644
- sig { params(inspector: T.untyped).returns(String) }
645
- def inspect(inspector = nil); end
659
+ sig { override.returns(String) }
660
+ def inspect; end
646
661
 
647
662
  sig { override.returns(Symbol) }
648
663
  def type; end
@@ -689,8 +704,8 @@ class Prism::BlockArgumentNode < Prism::Node
689
704
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
690
705
  def fields; end
691
706
 
692
- sig { params(inspector: T.untyped).returns(String) }
693
- def inspect(inspector = nil); end
707
+ sig { override.returns(String) }
708
+ def inspect; end
694
709
 
695
710
  sig { override.returns(Symbol) }
696
711
  def type; end
@@ -737,8 +752,8 @@ class Prism::BlockLocalVariableNode < Prism::Node
737
752
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
738
753
  def fields; end
739
754
 
740
- sig { params(inspector: T.untyped).returns(String) }
741
- def inspect(inspector = nil); end
755
+ sig { override.returns(String) }
756
+ def inspect; end
742
757
 
743
758
  sig { override.returns(Symbol) }
744
759
  def type; end
@@ -797,8 +812,8 @@ class Prism::BlockNode < Prism::Node
797
812
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
798
813
  def fields; end
799
814
 
800
- sig { params(inspector: T.untyped).returns(String) }
801
- def inspect(inspector = nil); end
815
+ sig { override.returns(String) }
816
+ def inspect; end
802
817
 
803
818
  sig { override.returns(Symbol) }
804
819
  def type; end
@@ -855,8 +870,8 @@ class Prism::BlockParameterNode < Prism::Node
855
870
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
856
871
  def fields; end
857
872
 
858
- sig { params(inspector: T.untyped).returns(String) }
859
- def inspect(inspector = nil); end
873
+ sig { override.returns(String) }
874
+ def inspect; end
860
875
 
861
876
  sig { override.returns(Symbol) }
862
877
  def type; end
@@ -916,8 +931,8 @@ class Prism::BlockParametersNode < Prism::Node
916
931
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
917
932
  def fields; end
918
933
 
919
- sig { params(inspector: T.untyped).returns(String) }
920
- def inspect(inspector = nil); end
934
+ sig { override.returns(String) }
935
+ def inspect; end
921
936
 
922
937
  sig { override.returns(Symbol) }
923
938
  def type; end
@@ -964,8 +979,8 @@ class Prism::BreakNode < Prism::Node
964
979
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
965
980
  def fields; end
966
981
 
967
- sig { params(inspector: T.untyped).returns(String) }
968
- def inspect(inspector = nil); end
982
+ sig { override.returns(String) }
983
+ def inspect; end
969
984
 
970
985
  sig { override.returns(Symbol) }
971
986
  def type; end
@@ -1048,8 +1063,8 @@ class Prism::CallAndWriteNode < Prism::Node
1048
1063
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
1049
1064
  def fields; end
1050
1065
 
1051
- sig { params(inspector: T.untyped).returns(String) }
1052
- def inspect(inspector = nil); end
1066
+ sig { override.returns(String) }
1067
+ def inspect; end
1053
1068
 
1054
1069
  sig { override.returns(Symbol) }
1055
1070
  def type; end
@@ -1153,8 +1168,8 @@ class Prism::CallNode < Prism::Node
1153
1168
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
1154
1169
  def fields; end
1155
1170
 
1156
- sig { params(inspector: T.untyped).returns(String) }
1157
- def inspect(inspector = nil); end
1171
+ sig { override.returns(String) }
1172
+ def inspect; end
1158
1173
 
1159
1174
  sig { override.returns(Symbol) }
1160
1175
  def type; end
@@ -1237,8 +1252,8 @@ class Prism::CallOperatorWriteNode < Prism::Node
1237
1252
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
1238
1253
  def fields; end
1239
1254
 
1240
- sig { params(inspector: T.untyped).returns(String) }
1241
- def inspect(inspector = nil); end
1255
+ sig { override.returns(String) }
1256
+ def inspect; end
1242
1257
 
1243
1258
  sig { override.returns(Symbol) }
1244
1259
  def type; end
@@ -1321,8 +1336,8 @@ class Prism::CallOrWriteNode < Prism::Node
1321
1336
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
1322
1337
  def fields; end
1323
1338
 
1324
- sig { params(inspector: T.untyped).returns(String) }
1325
- def inspect(inspector = nil); end
1339
+ sig { override.returns(String) }
1340
+ def inspect; end
1326
1341
 
1327
1342
  sig { override.returns(Symbol) }
1328
1343
  def type; end
@@ -1401,8 +1416,8 @@ class Prism::CallTargetNode < Prism::Node
1401
1416
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
1402
1417
  def fields; end
1403
1418
 
1404
- sig { params(inspector: T.untyped).returns(String) }
1405
- def inspect(inspector = nil); end
1419
+ sig { override.returns(String) }
1420
+ def inspect; end
1406
1421
 
1407
1422
  sig { override.returns(Symbol) }
1408
1423
  def type; end
@@ -1452,8 +1467,8 @@ class Prism::CapturePatternNode < Prism::Node
1452
1467
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
1453
1468
  def fields; end
1454
1469
 
1455
- sig { params(inspector: T.untyped).returns(String) }
1456
- def inspect(inspector = nil); end
1470
+ sig { override.returns(String) }
1471
+ def inspect; end
1457
1472
 
1458
1473
  sig { override.returns(Symbol) }
1459
1474
  def type; end
@@ -1514,8 +1529,8 @@ class Prism::CaseMatchNode < Prism::Node
1514
1529
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
1515
1530
  def fields; end
1516
1531
 
1517
- sig { params(inspector: T.untyped).returns(String) }
1518
- def inspect(inspector = nil); end
1532
+ sig { override.returns(String) }
1533
+ def inspect; end
1519
1534
 
1520
1535
  sig { override.returns(Symbol) }
1521
1536
  def type; end
@@ -1576,8 +1591,8 @@ class Prism::CaseNode < Prism::Node
1576
1591
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
1577
1592
  def fields; end
1578
1593
 
1579
- sig { params(inspector: T.untyped).returns(String) }
1580
- def inspect(inspector = nil); end
1594
+ sig { override.returns(String) }
1595
+ def inspect; end
1581
1596
 
1582
1597
  sig { override.returns(Symbol) }
1583
1598
  def type; end
@@ -1648,8 +1663,8 @@ class Prism::ClassNode < Prism::Node
1648
1663
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
1649
1664
  def fields; end
1650
1665
 
1651
- sig { params(inspector: T.untyped).returns(String) }
1652
- def inspect(inspector = nil); end
1666
+ sig { override.returns(String) }
1667
+ def inspect; end
1653
1668
 
1654
1669
  sig { override.returns(Symbol) }
1655
1670
  def type; end
@@ -1702,8 +1717,8 @@ class Prism::ClassVariableAndWriteNode < Prism::Node
1702
1717
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
1703
1718
  def fields; end
1704
1719
 
1705
- sig { params(inspector: T.untyped).returns(String) }
1706
- def inspect(inspector = nil); end
1720
+ sig { override.returns(String) }
1721
+ def inspect; end
1707
1722
 
1708
1723
  sig { override.returns(Symbol) }
1709
1724
  def type; end
@@ -1756,8 +1771,8 @@ class Prism::ClassVariableOperatorWriteNode < Prism::Node
1756
1771
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
1757
1772
  def fields; end
1758
1773
 
1759
- sig { params(inspector: T.untyped).returns(String) }
1760
- def inspect(inspector = nil); end
1774
+ sig { override.returns(String) }
1775
+ def inspect; end
1761
1776
 
1762
1777
  sig { override.returns(Symbol) }
1763
1778
  def type; end
@@ -1810,8 +1825,8 @@ class Prism::ClassVariableOrWriteNode < Prism::Node
1810
1825
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
1811
1826
  def fields; end
1812
1827
 
1813
- sig { params(inspector: T.untyped).returns(String) }
1814
- def inspect(inspector = nil); end
1828
+ sig { override.returns(String) }
1829
+ def inspect; end
1815
1830
 
1816
1831
  sig { override.returns(Symbol) }
1817
1832
  def type; end
@@ -1852,8 +1867,8 @@ class Prism::ClassVariableReadNode < Prism::Node
1852
1867
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
1853
1868
  def fields; end
1854
1869
 
1855
- sig { params(inspector: T.untyped).returns(String) }
1856
- def inspect(inspector = nil); end
1870
+ sig { override.returns(String) }
1871
+ def inspect; end
1857
1872
 
1858
1873
  sig { override.returns(Symbol) }
1859
1874
  def type; end
@@ -1894,8 +1909,8 @@ class Prism::ClassVariableTargetNode < Prism::Node
1894
1909
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
1895
1910
  def fields; end
1896
1911
 
1897
- sig { params(inspector: T.untyped).returns(String) }
1898
- def inspect(inspector = nil); end
1912
+ sig { override.returns(String) }
1913
+ def inspect; end
1899
1914
 
1900
1915
  sig { override.returns(Symbol) }
1901
1916
  def type; end
@@ -1948,8 +1963,8 @@ class Prism::ClassVariableWriteNode < Prism::Node
1948
1963
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
1949
1964
  def fields; end
1950
1965
 
1951
- sig { params(inspector: T.untyped).returns(String) }
1952
- def inspect(inspector = nil); end
1966
+ sig { override.returns(String) }
1967
+ def inspect; end
1953
1968
 
1954
1969
  sig { override.returns(Symbol) }
1955
1970
  def type; end
@@ -2002,8 +2017,8 @@ class Prism::ConstantAndWriteNode < Prism::Node
2002
2017
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
2003
2018
  def fields; end
2004
2019
 
2005
- sig { params(inspector: T.untyped).returns(String) }
2006
- def inspect(inspector = nil); end
2020
+ sig { override.returns(String) }
2021
+ def inspect; end
2007
2022
 
2008
2023
  sig { override.returns(Symbol) }
2009
2024
  def type; end
@@ -2056,8 +2071,8 @@ class Prism::ConstantOperatorWriteNode < Prism::Node
2056
2071
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
2057
2072
  def fields; end
2058
2073
 
2059
- sig { params(inspector: T.untyped).returns(String) }
2060
- def inspect(inspector = nil); end
2074
+ sig { override.returns(String) }
2075
+ def inspect; end
2061
2076
 
2062
2077
  sig { override.returns(Symbol) }
2063
2078
  def type; end
@@ -2110,8 +2125,8 @@ class Prism::ConstantOrWriteNode < Prism::Node
2110
2125
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
2111
2126
  def fields; end
2112
2127
 
2113
- sig { params(inspector: T.untyped).returns(String) }
2114
- def inspect(inspector = nil); end
2128
+ sig { override.returns(String) }
2129
+ def inspect; end
2115
2130
 
2116
2131
  sig { override.returns(Symbol) }
2117
2132
  def type; end
@@ -2161,8 +2176,8 @@ class Prism::ConstantPathAndWriteNode < Prism::Node
2161
2176
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
2162
2177
  def fields; end
2163
2178
 
2164
- sig { params(inspector: T.untyped).returns(String) }
2165
- def inspect(inspector = nil); end
2179
+ sig { override.returns(String) }
2180
+ def inspect; end
2166
2181
 
2167
2182
  sig { override.returns(Symbol) }
2168
2183
  def type; end
@@ -2176,14 +2191,17 @@ class Prism::ConstantPathNode < Prism::Node
2176
2191
  sig { returns(T.nilable(Prism::Node)) }
2177
2192
  def parent; end
2178
2193
 
2179
- sig { returns(T.any(Prism::ConstantReadNode, Prism::MissingNode)) }
2180
- def child; end
2194
+ sig { returns(T.nilable(Symbol)) }
2195
+ def name; end
2181
2196
 
2182
2197
  sig { returns(Prism::Location) }
2183
2198
  def delimiter_loc; end
2184
2199
 
2185
- sig { params(source: Prism::Source, parent: T.nilable(Prism::Node), child: T.any(Prism::ConstantReadNode, Prism::MissingNode), delimiter_loc: Prism::Location, location: Prism::Location).void }
2186
- def initialize(source, parent, child, delimiter_loc, location); end
2200
+ sig { returns(Prism::Location) }
2201
+ def name_loc; end
2202
+
2203
+ sig { params(source: Prism::Source, parent: T.nilable(Prism::Node), name: T.nilable(Symbol), delimiter_loc: Prism::Location, name_loc: Prism::Location, location: Prism::Location).void }
2204
+ def initialize(source, parent, name, delimiter_loc, name_loc, location); end
2187
2205
 
2188
2206
  sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
2189
2207
  def accept(visitor); end
@@ -2200,8 +2218,8 @@ class Prism::ConstantPathNode < Prism::Node
2200
2218
  sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
2201
2219
  def comment_targets; end
2202
2220
 
2203
- sig { params(parent: T.nilable(Prism::Node), child: T.any(Prism::ConstantReadNode, Prism::MissingNode), delimiter_loc: Prism::Location, location: Prism::Location).returns(Prism::ConstantPathNode) }
2204
- def copy(parent: self.parent, child: self.child, delimiter_loc: self.delimiter_loc, location: self.location); end
2221
+ sig { params(parent: T.nilable(Prism::Node), name: T.nilable(Symbol), delimiter_loc: Prism::Location, name_loc: Prism::Location, location: Prism::Location).returns(Prism::ConstantPathNode) }
2222
+ def copy(parent: self.parent, name: self.name, delimiter_loc: self.delimiter_loc, name_loc: self.name_loc, location: self.location); end
2205
2223
 
2206
2224
  sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
2207
2225
  def deconstruct_keys(keys); end
@@ -2212,8 +2230,8 @@ class Prism::ConstantPathNode < Prism::Node
2212
2230
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
2213
2231
  def fields; end
2214
2232
 
2215
- sig { params(inspector: T.untyped).returns(String) }
2216
- def inspect(inspector = nil); end
2233
+ sig { override.returns(String) }
2234
+ def inspect; end
2217
2235
 
2218
2236
  sig { override.returns(Symbol) }
2219
2237
  def type; end
@@ -2263,8 +2281,8 @@ class Prism::ConstantPathOperatorWriteNode < Prism::Node
2263
2281
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
2264
2282
  def fields; end
2265
2283
 
2266
- sig { params(inspector: T.untyped).returns(String) }
2267
- def inspect(inspector = nil); end
2284
+ sig { override.returns(String) }
2285
+ def inspect; end
2268
2286
 
2269
2287
  sig { override.returns(Symbol) }
2270
2288
  def type; end
@@ -2314,8 +2332,8 @@ class Prism::ConstantPathOrWriteNode < Prism::Node
2314
2332
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
2315
2333
  def fields; end
2316
2334
 
2317
- sig { params(inspector: T.untyped).returns(String) }
2318
- def inspect(inspector = nil); end
2335
+ sig { override.returns(String) }
2336
+ def inspect; end
2319
2337
 
2320
2338
  sig { override.returns(Symbol) }
2321
2339
  def type; end
@@ -2329,14 +2347,17 @@ class Prism::ConstantPathTargetNode < Prism::Node
2329
2347
  sig { returns(T.nilable(Prism::Node)) }
2330
2348
  def parent; end
2331
2349
 
2332
- sig { returns(T.any(Prism::ConstantReadNode, Prism::MissingNode)) }
2333
- def child; end
2350
+ sig { returns(T.nilable(Symbol)) }
2351
+ def name; end
2334
2352
 
2335
2353
  sig { returns(Prism::Location) }
2336
2354
  def delimiter_loc; end
2337
2355
 
2338
- sig { params(source: Prism::Source, parent: T.nilable(Prism::Node), child: T.any(Prism::ConstantReadNode, Prism::MissingNode), delimiter_loc: Prism::Location, location: Prism::Location).void }
2339
- def initialize(source, parent, child, delimiter_loc, location); end
2356
+ sig { returns(Prism::Location) }
2357
+ def name_loc; end
2358
+
2359
+ sig { params(source: Prism::Source, parent: T.nilable(Prism::Node), name: T.nilable(Symbol), delimiter_loc: Prism::Location, name_loc: Prism::Location, location: Prism::Location).void }
2360
+ def initialize(source, parent, name, delimiter_loc, name_loc, location); end
2340
2361
 
2341
2362
  sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
2342
2363
  def accept(visitor); end
@@ -2353,8 +2374,8 @@ class Prism::ConstantPathTargetNode < Prism::Node
2353
2374
  sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
2354
2375
  def comment_targets; end
2355
2376
 
2356
- sig { params(parent: T.nilable(Prism::Node), child: T.any(Prism::ConstantReadNode, Prism::MissingNode), delimiter_loc: Prism::Location, location: Prism::Location).returns(Prism::ConstantPathTargetNode) }
2357
- def copy(parent: self.parent, child: self.child, delimiter_loc: self.delimiter_loc, location: self.location); end
2377
+ sig { params(parent: T.nilable(Prism::Node), name: T.nilable(Symbol), delimiter_loc: Prism::Location, name_loc: Prism::Location, location: Prism::Location).returns(Prism::ConstantPathTargetNode) }
2378
+ def copy(parent: self.parent, name: self.name, delimiter_loc: self.delimiter_loc, name_loc: self.name_loc, location: self.location); end
2358
2379
 
2359
2380
  sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
2360
2381
  def deconstruct_keys(keys); end
@@ -2365,8 +2386,8 @@ class Prism::ConstantPathTargetNode < Prism::Node
2365
2386
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
2366
2387
  def fields; end
2367
2388
 
2368
- sig { params(inspector: T.untyped).returns(String) }
2369
- def inspect(inspector = nil); end
2389
+ sig { override.returns(String) }
2390
+ def inspect; end
2370
2391
 
2371
2392
  sig { override.returns(Symbol) }
2372
2393
  def type; end
@@ -2422,8 +2443,8 @@ class Prism::ConstantPathWriteNode < Prism::Node
2422
2443
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
2423
2444
  def fields; end
2424
2445
 
2425
- sig { params(inspector: T.untyped).returns(String) }
2426
- def inspect(inspector = nil); end
2446
+ sig { override.returns(String) }
2447
+ def inspect; end
2427
2448
 
2428
2449
  sig { override.returns(Symbol) }
2429
2450
  def type; end
@@ -2464,8 +2485,8 @@ class Prism::ConstantReadNode < Prism::Node
2464
2485
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
2465
2486
  def fields; end
2466
2487
 
2467
- sig { params(inspector: T.untyped).returns(String) }
2468
- def inspect(inspector = nil); end
2488
+ sig { override.returns(String) }
2489
+ def inspect; end
2469
2490
 
2470
2491
  sig { override.returns(Symbol) }
2471
2492
  def type; end
@@ -2506,8 +2527,8 @@ class Prism::ConstantTargetNode < Prism::Node
2506
2527
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
2507
2528
  def fields; end
2508
2529
 
2509
- sig { params(inspector: T.untyped).returns(String) }
2510
- def inspect(inspector = nil); end
2530
+ sig { override.returns(String) }
2531
+ def inspect; end
2511
2532
 
2512
2533
  sig { override.returns(Symbol) }
2513
2534
  def type; end
@@ -2560,8 +2581,8 @@ class Prism::ConstantWriteNode < Prism::Node
2560
2581
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
2561
2582
  def fields; end
2562
2583
 
2563
- sig { params(inspector: T.untyped).returns(String) }
2564
- def inspect(inspector = nil); end
2584
+ sig { override.returns(String) }
2585
+ def inspect; end
2565
2586
 
2566
2587
  sig { override.returns(Symbol) }
2567
2588
  def type; end
@@ -2654,8 +2675,8 @@ class Prism::DefNode < Prism::Node
2654
2675
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
2655
2676
  def fields; end
2656
2677
 
2657
- sig { params(inspector: T.untyped).returns(String) }
2658
- def inspect(inspector = nil); end
2678
+ sig { override.returns(String) }
2679
+ def inspect; end
2659
2680
 
2660
2681
  sig { override.returns(Symbol) }
2661
2682
  def type; end
@@ -2714,8 +2735,8 @@ class Prism::DefinedNode < Prism::Node
2714
2735
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
2715
2736
  def fields; end
2716
2737
 
2717
- sig { params(inspector: T.untyped).returns(String) }
2718
- def inspect(inspector = nil); end
2738
+ sig { override.returns(String) }
2739
+ def inspect; end
2719
2740
 
2720
2741
  sig { override.returns(Symbol) }
2721
2742
  def type; end
@@ -2768,8 +2789,8 @@ class Prism::ElseNode < Prism::Node
2768
2789
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
2769
2790
  def fields; end
2770
2791
 
2771
- sig { params(inspector: T.untyped).returns(String) }
2772
- def inspect(inspector = nil); end
2792
+ sig { override.returns(String) }
2793
+ def inspect; end
2773
2794
 
2774
2795
  sig { override.returns(Symbol) }
2775
2796
  def type; end
@@ -2822,8 +2843,8 @@ class Prism::EmbeddedStatementsNode < Prism::Node
2822
2843
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
2823
2844
  def fields; end
2824
2845
 
2825
- sig { params(inspector: T.untyped).returns(String) }
2826
- def inspect(inspector = nil); end
2846
+ sig { override.returns(String) }
2847
+ def inspect; end
2827
2848
 
2828
2849
  sig { override.returns(Symbol) }
2829
2850
  def type; end
@@ -2870,8 +2891,8 @@ class Prism::EmbeddedVariableNode < Prism::Node
2870
2891
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
2871
2892
  def fields; end
2872
2893
 
2873
- sig { params(inspector: T.untyped).returns(String) }
2874
- def inspect(inspector = nil); end
2894
+ sig { override.returns(String) }
2895
+ def inspect; end
2875
2896
 
2876
2897
  sig { override.returns(Symbol) }
2877
2898
  def type; end
@@ -2928,8 +2949,8 @@ class Prism::EnsureNode < Prism::Node
2928
2949
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
2929
2950
  def fields; end
2930
2951
 
2931
- sig { params(inspector: T.untyped).returns(String) }
2932
- def inspect(inspector = nil); end
2952
+ sig { override.returns(String) }
2953
+ def inspect; end
2933
2954
 
2934
2955
  sig { override.returns(Symbol) }
2935
2956
  def type; end
@@ -2967,8 +2988,8 @@ class Prism::FalseNode < Prism::Node
2967
2988
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
2968
2989
  def fields; end
2969
2990
 
2970
- sig { params(inspector: T.untyped).returns(String) }
2971
- def inspect(inspector = nil); end
2991
+ sig { override.returns(String) }
2992
+ def inspect; end
2972
2993
 
2973
2994
  sig { override.returns(Symbol) }
2974
2995
  def type; end
@@ -3036,8 +3057,8 @@ class Prism::FindPatternNode < Prism::Node
3036
3057
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
3037
3058
  def fields; end
3038
3059
 
3039
- sig { params(inspector: T.untyped).returns(String) }
3040
- def inspect(inspector = nil); end
3060
+ sig { override.returns(String) }
3061
+ def inspect; end
3041
3062
 
3042
3063
  sig { override.returns(Symbol) }
3043
3064
  def type; end
@@ -3093,8 +3114,8 @@ class Prism::FlipFlopNode < Prism::Node
3093
3114
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
3094
3115
  def fields; end
3095
3116
 
3096
- sig { params(inspector: T.untyped).returns(String) }
3097
- def inspect(inspector = nil); end
3117
+ sig { override.returns(String) }
3118
+ def inspect; end
3098
3119
 
3099
3120
  sig { override.returns(Symbol) }
3100
3121
  def type; end
@@ -3135,8 +3156,8 @@ class Prism::FloatNode < Prism::Node
3135
3156
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
3136
3157
  def fields; end
3137
3158
 
3138
- sig { params(inspector: T.untyped).returns(String) }
3139
- def inspect(inspector = nil); end
3159
+ sig { override.returns(String) }
3160
+ def inspect; end
3140
3161
 
3141
3162
  sig { override.returns(Symbol) }
3142
3163
  def type; end
@@ -3207,8 +3228,8 @@ class Prism::ForNode < Prism::Node
3207
3228
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
3208
3229
  def fields; end
3209
3230
 
3210
- sig { params(inspector: T.untyped).returns(String) }
3211
- def inspect(inspector = nil); end
3231
+ sig { override.returns(String) }
3232
+ def inspect; end
3212
3233
 
3213
3234
  sig { override.returns(Symbol) }
3214
3235
  def type; end
@@ -3248,8 +3269,8 @@ class Prism::ForwardingArgumentsNode < Prism::Node
3248
3269
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
3249
3270
  def fields; end
3250
3271
 
3251
- sig { params(inspector: T.untyped).returns(String) }
3252
- def inspect(inspector = nil); end
3272
+ sig { override.returns(String) }
3273
+ def inspect; end
3253
3274
 
3254
3275
  sig { override.returns(Symbol) }
3255
3276
  def type; end
@@ -3288,8 +3309,8 @@ class Prism::ForwardingParameterNode < Prism::Node
3288
3309
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
3289
3310
  def fields; end
3290
3311
 
3291
- sig { params(inspector: T.untyped).returns(String) }
3292
- def inspect(inspector = nil); end
3312
+ sig { override.returns(String) }
3313
+ def inspect; end
3293
3314
 
3294
3315
  sig { override.returns(Symbol) }
3295
3316
  def type; end
@@ -3330,8 +3351,8 @@ class Prism::ForwardingSuperNode < Prism::Node
3330
3351
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
3331
3352
  def fields; end
3332
3353
 
3333
- sig { params(inspector: T.untyped).returns(String) }
3334
- def inspect(inspector = nil); end
3354
+ sig { override.returns(String) }
3355
+ def inspect; end
3335
3356
 
3336
3357
  sig { override.returns(Symbol) }
3337
3358
  def type; end
@@ -3384,8 +3405,8 @@ class Prism::GlobalVariableAndWriteNode < Prism::Node
3384
3405
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
3385
3406
  def fields; end
3386
3407
 
3387
- sig { params(inspector: T.untyped).returns(String) }
3388
- def inspect(inspector = nil); end
3408
+ sig { override.returns(String) }
3409
+ def inspect; end
3389
3410
 
3390
3411
  sig { override.returns(Symbol) }
3391
3412
  def type; end
@@ -3438,8 +3459,8 @@ class Prism::GlobalVariableOperatorWriteNode < Prism::Node
3438
3459
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
3439
3460
  def fields; end
3440
3461
 
3441
- sig { params(inspector: T.untyped).returns(String) }
3442
- def inspect(inspector = nil); end
3462
+ sig { override.returns(String) }
3463
+ def inspect; end
3443
3464
 
3444
3465
  sig { override.returns(Symbol) }
3445
3466
  def type; end
@@ -3492,8 +3513,8 @@ class Prism::GlobalVariableOrWriteNode < Prism::Node
3492
3513
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
3493
3514
  def fields; end
3494
3515
 
3495
- sig { params(inspector: T.untyped).returns(String) }
3496
- def inspect(inspector = nil); end
3516
+ sig { override.returns(String) }
3517
+ def inspect; end
3497
3518
 
3498
3519
  sig { override.returns(Symbol) }
3499
3520
  def type; end
@@ -3534,8 +3555,8 @@ class Prism::GlobalVariableReadNode < Prism::Node
3534
3555
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
3535
3556
  def fields; end
3536
3557
 
3537
- sig { params(inspector: T.untyped).returns(String) }
3538
- def inspect(inspector = nil); end
3558
+ sig { override.returns(String) }
3559
+ def inspect; end
3539
3560
 
3540
3561
  sig { override.returns(Symbol) }
3541
3562
  def type; end
@@ -3576,8 +3597,8 @@ class Prism::GlobalVariableTargetNode < Prism::Node
3576
3597
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
3577
3598
  def fields; end
3578
3599
 
3579
- sig { params(inspector: T.untyped).returns(String) }
3580
- def inspect(inspector = nil); end
3600
+ sig { override.returns(String) }
3601
+ def inspect; end
3581
3602
 
3582
3603
  sig { override.returns(Symbol) }
3583
3604
  def type; end
@@ -3630,8 +3651,8 @@ class Prism::GlobalVariableWriteNode < Prism::Node
3630
3651
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
3631
3652
  def fields; end
3632
3653
 
3633
- sig { params(inspector: T.untyped).returns(String) }
3634
- def inspect(inspector = nil); end
3654
+ sig { override.returns(String) }
3655
+ def inspect; end
3635
3656
 
3636
3657
  sig { override.returns(Symbol) }
3637
3658
  def type; end
@@ -3684,8 +3705,8 @@ class Prism::HashNode < Prism::Node
3684
3705
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
3685
3706
  def fields; end
3686
3707
 
3687
- sig { params(inspector: T.untyped).returns(String) }
3688
- def inspect(inspector = nil); end
3708
+ sig { override.returns(String) }
3709
+ def inspect; end
3689
3710
 
3690
3711
  sig { override.returns(Symbol) }
3691
3712
  def type; end
@@ -3747,20 +3768,23 @@ class Prism::HashPatternNode < Prism::Node
3747
3768
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
3748
3769
  def fields; end
3749
3770
 
3750
- sig { params(inspector: T.untyped).returns(String) }
3751
- def inspect(inspector = nil); end
3771
+ sig { override.returns(String) }
3772
+ def inspect; end
3752
3773
 
3753
3774
  sig { override.returns(Symbol) }
3754
3775
  def type; end
3755
3776
  end
3756
3777
 
3757
- # Represents the use of the `if` keyword, either in the block form or the modifier form.
3778
+ # Represents the use of the `if` keyword, either in the block form or the modifier form, or a ternary expression.
3758
3779
  #
3759
3780
  # bar if foo
3760
3781
  # ^^^^^^^^^^
3761
3782
  #
3762
3783
  # if foo then bar end
3763
3784
  # ^^^^^^^^^^^^^^^^^^^
3785
+ #
3786
+ # foo ? bar : baz
3787
+ # ^^^^^^^^^^^^^^^
3764
3788
  class Prism::IfNode < Prism::Node
3765
3789
  sig { returns(T.nilable(Prism::Location)) }
3766
3790
  def if_keyword_loc; end
@@ -3816,8 +3840,8 @@ class Prism::IfNode < Prism::Node
3816
3840
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
3817
3841
  def fields; end
3818
3842
 
3819
- sig { params(inspector: T.untyped).returns(String) }
3820
- def inspect(inspector = nil); end
3843
+ sig { override.returns(String) }
3844
+ def inspect; end
3821
3845
 
3822
3846
  sig { override.returns(Symbol) }
3823
3847
  def type; end
@@ -3858,8 +3882,8 @@ class Prism::ImaginaryNode < Prism::Node
3858
3882
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
3859
3883
  def fields; end
3860
3884
 
3861
- sig { params(inspector: T.untyped).returns(String) }
3862
- def inspect(inspector = nil); end
3885
+ sig { override.returns(String) }
3886
+ def inspect; end
3863
3887
 
3864
3888
  sig { override.returns(Symbol) }
3865
3889
  def type; end
@@ -3906,8 +3930,8 @@ class Prism::ImplicitNode < Prism::Node
3906
3930
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
3907
3931
  def fields; end
3908
3932
 
3909
- sig { params(inspector: T.untyped).returns(String) }
3910
- def inspect(inspector = nil); end
3933
+ sig { override.returns(String) }
3934
+ def inspect; end
3911
3935
 
3912
3936
  sig { override.returns(Symbol) }
3913
3937
  def type; end
@@ -3954,8 +3978,8 @@ class Prism::ImplicitRestNode < Prism::Node
3954
3978
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
3955
3979
  def fields; end
3956
3980
 
3957
- sig { params(inspector: T.untyped).returns(String) }
3958
- def inspect(inspector = nil); end
3981
+ sig { override.returns(String) }
3982
+ def inspect; end
3959
3983
 
3960
3984
  sig { override.returns(Symbol) }
3961
3985
  def type; end
@@ -4011,8 +4035,8 @@ class Prism::InNode < Prism::Node
4011
4035
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
4012
4036
  def fields; end
4013
4037
 
4014
- sig { params(inspector: T.untyped).returns(String) }
4015
- def inspect(inspector = nil); end
4038
+ sig { override.returns(String) }
4039
+ def inspect; end
4016
4040
 
4017
4041
  sig { override.returns(Symbol) }
4018
4042
  def type; end
@@ -4101,8 +4125,8 @@ class Prism::IndexAndWriteNode < Prism::Node
4101
4125
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
4102
4126
  def fields; end
4103
4127
 
4104
- sig { params(inspector: T.untyped).returns(String) }
4105
- def inspect(inspector = nil); end
4128
+ sig { override.returns(String) }
4129
+ def inspect; end
4106
4130
 
4107
4131
  sig { override.returns(Symbol) }
4108
4132
  def type; end
@@ -4191,8 +4215,8 @@ class Prism::IndexOperatorWriteNode < Prism::Node
4191
4215
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
4192
4216
  def fields; end
4193
4217
 
4194
- sig { params(inspector: T.untyped).returns(String) }
4195
- def inspect(inspector = nil); end
4218
+ sig { override.returns(String) }
4219
+ def inspect; end
4196
4220
 
4197
4221
  sig { override.returns(Symbol) }
4198
4222
  def type; end
@@ -4281,8 +4305,8 @@ class Prism::IndexOrWriteNode < Prism::Node
4281
4305
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
4282
4306
  def fields; end
4283
4307
 
4284
- sig { params(inspector: T.untyped).returns(String) }
4285
- def inspect(inspector = nil); end
4308
+ sig { override.returns(String) }
4309
+ def inspect; end
4286
4310
 
4287
4311
  sig { override.returns(Symbol) }
4288
4312
  def type; end
@@ -4364,8 +4388,8 @@ class Prism::IndexTargetNode < Prism::Node
4364
4388
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
4365
4389
  def fields; end
4366
4390
 
4367
- sig { params(inspector: T.untyped).returns(String) }
4368
- def inspect(inspector = nil); end
4391
+ sig { override.returns(String) }
4392
+ def inspect; end
4369
4393
 
4370
4394
  sig { override.returns(Symbol) }
4371
4395
  def type; end
@@ -4418,8 +4442,8 @@ class Prism::InstanceVariableAndWriteNode < Prism::Node
4418
4442
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
4419
4443
  def fields; end
4420
4444
 
4421
- sig { params(inspector: T.untyped).returns(String) }
4422
- def inspect(inspector = nil); end
4445
+ sig { override.returns(String) }
4446
+ def inspect; end
4423
4447
 
4424
4448
  sig { override.returns(Symbol) }
4425
4449
  def type; end
@@ -4472,8 +4496,8 @@ class Prism::InstanceVariableOperatorWriteNode < Prism::Node
4472
4496
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
4473
4497
  def fields; end
4474
4498
 
4475
- sig { params(inspector: T.untyped).returns(String) }
4476
- def inspect(inspector = nil); end
4499
+ sig { override.returns(String) }
4500
+ def inspect; end
4477
4501
 
4478
4502
  sig { override.returns(Symbol) }
4479
4503
  def type; end
@@ -4526,8 +4550,8 @@ class Prism::InstanceVariableOrWriteNode < Prism::Node
4526
4550
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
4527
4551
  def fields; end
4528
4552
 
4529
- sig { params(inspector: T.untyped).returns(String) }
4530
- def inspect(inspector = nil); end
4553
+ sig { override.returns(String) }
4554
+ def inspect; end
4531
4555
 
4532
4556
  sig { override.returns(Symbol) }
4533
4557
  def type; end
@@ -4568,8 +4592,8 @@ class Prism::InstanceVariableReadNode < Prism::Node
4568
4592
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
4569
4593
  def fields; end
4570
4594
 
4571
- sig { params(inspector: T.untyped).returns(String) }
4572
- def inspect(inspector = nil); end
4595
+ sig { override.returns(String) }
4596
+ def inspect; end
4573
4597
 
4574
4598
  sig { override.returns(Symbol) }
4575
4599
  def type; end
@@ -4610,8 +4634,8 @@ class Prism::InstanceVariableTargetNode < Prism::Node
4610
4634
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
4611
4635
  def fields; end
4612
4636
 
4613
- sig { params(inspector: T.untyped).returns(String) }
4614
- def inspect(inspector = nil); end
4637
+ sig { override.returns(String) }
4638
+ def inspect; end
4615
4639
 
4616
4640
  sig { override.returns(Symbol) }
4617
4641
  def type; end
@@ -4664,8 +4688,8 @@ class Prism::InstanceVariableWriteNode < Prism::Node
4664
4688
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
4665
4689
  def fields; end
4666
4690
 
4667
- sig { params(inspector: T.untyped).returns(String) }
4668
- def inspect(inspector = nil); end
4691
+ sig { override.returns(String) }
4692
+ def inspect; end
4669
4693
 
4670
4694
  sig { override.returns(Symbol) }
4671
4695
  def type; end
@@ -4721,8 +4745,8 @@ class Prism::IntegerNode < Prism::Node
4721
4745
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
4722
4746
  def fields; end
4723
4747
 
4724
- sig { params(inspector: T.untyped).returns(String) }
4725
- def inspect(inspector = nil); end
4748
+ sig { override.returns(String) }
4749
+ def inspect; end
4726
4750
 
4727
4751
  sig { override.returns(Symbol) }
4728
4752
  def type; end
@@ -4811,8 +4835,8 @@ class Prism::InterpolatedMatchLastLineNode < Prism::Node
4811
4835
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
4812
4836
  def fields; end
4813
4837
 
4814
- sig { params(inspector: T.untyped).returns(String) }
4815
- def inspect(inspector = nil); end
4838
+ sig { override.returns(String) }
4839
+ def inspect; end
4816
4840
 
4817
4841
  sig { override.returns(Symbol) }
4818
4842
  def type; end
@@ -4901,8 +4925,8 @@ class Prism::InterpolatedRegularExpressionNode < Prism::Node
4901
4925
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
4902
4926
  def fields; end
4903
4927
 
4904
- sig { params(inspector: T.untyped).returns(String) }
4905
- def inspect(inspector = nil); end
4928
+ sig { override.returns(String) }
4929
+ def inspect; end
4906
4930
 
4907
4931
  sig { override.returns(Symbol) }
4908
4932
  def type; end
@@ -4964,8 +4988,8 @@ class Prism::InterpolatedStringNode < Prism::Node
4964
4988
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
4965
4989
  def fields; end
4966
4990
 
4967
- sig { params(inspector: T.untyped).returns(String) }
4968
- def inspect(inspector = nil); end
4991
+ sig { override.returns(String) }
4992
+ def inspect; end
4969
4993
 
4970
4994
  sig { override.returns(Symbol) }
4971
4995
  def type; end
@@ -5018,8 +5042,8 @@ class Prism::InterpolatedSymbolNode < Prism::Node
5018
5042
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
5019
5043
  def fields; end
5020
5044
 
5021
- sig { params(inspector: T.untyped).returns(String) }
5022
- def inspect(inspector = nil); end
5045
+ sig { override.returns(String) }
5046
+ def inspect; end
5023
5047
 
5024
5048
  sig { override.returns(Symbol) }
5025
5049
  def type; end
@@ -5072,8 +5096,8 @@ class Prism::InterpolatedXStringNode < Prism::Node
5072
5096
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
5073
5097
  def fields; end
5074
5098
 
5075
- sig { params(inspector: T.untyped).returns(String) }
5076
- def inspect(inspector = nil); end
5099
+ sig { override.returns(String) }
5100
+ def inspect; end
5077
5101
 
5078
5102
  sig { override.returns(Symbol) }
5079
5103
  def type; end
@@ -5111,8 +5135,8 @@ class Prism::ItParametersNode < Prism::Node
5111
5135
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
5112
5136
  def fields; end
5113
5137
 
5114
- sig { params(inspector: T.untyped).returns(String) }
5115
- def inspect(inspector = nil); end
5138
+ sig { override.returns(String) }
5139
+ def inspect; end
5116
5140
 
5117
5141
  sig { override.returns(Symbol) }
5118
5142
  def type; end
@@ -5159,8 +5183,8 @@ class Prism::KeywordHashNode < Prism::Node
5159
5183
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
5160
5184
  def fields; end
5161
5185
 
5162
- sig { params(inspector: T.untyped).returns(String) }
5163
- def inspect(inspector = nil); end
5186
+ sig { override.returns(String) }
5187
+ def inspect; end
5164
5188
 
5165
5189
  sig { override.returns(Symbol) }
5166
5190
  def type; end
@@ -5217,8 +5241,8 @@ class Prism::KeywordRestParameterNode < Prism::Node
5217
5241
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
5218
5242
  def fields; end
5219
5243
 
5220
- sig { params(inspector: T.untyped).returns(String) }
5221
- def inspect(inspector = nil); end
5244
+ sig { override.returns(String) }
5245
+ def inspect; end
5222
5246
 
5223
5247
  sig { override.returns(Symbol) }
5224
5248
  def type; end
@@ -5283,8 +5307,8 @@ class Prism::LambdaNode < Prism::Node
5283
5307
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
5284
5308
  def fields; end
5285
5309
 
5286
- sig { params(inspector: T.untyped).returns(String) }
5287
- def inspect(inspector = nil); end
5310
+ sig { override.returns(String) }
5311
+ def inspect; end
5288
5312
 
5289
5313
  sig { override.returns(Symbol) }
5290
5314
  def type; end
@@ -5340,8 +5364,8 @@ class Prism::LocalVariableAndWriteNode < Prism::Node
5340
5364
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
5341
5365
  def fields; end
5342
5366
 
5343
- sig { params(inspector: T.untyped).returns(String) }
5344
- def inspect(inspector = nil); end
5367
+ sig { override.returns(String) }
5368
+ def inspect; end
5345
5369
 
5346
5370
  sig { override.returns(Symbol) }
5347
5371
  def type; end
@@ -5397,8 +5421,8 @@ class Prism::LocalVariableOperatorWriteNode < Prism::Node
5397
5421
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
5398
5422
  def fields; end
5399
5423
 
5400
- sig { params(inspector: T.untyped).returns(String) }
5401
- def inspect(inspector = nil); end
5424
+ sig { override.returns(String) }
5425
+ def inspect; end
5402
5426
 
5403
5427
  sig { override.returns(Symbol) }
5404
5428
  def type; end
@@ -5454,8 +5478,8 @@ class Prism::LocalVariableOrWriteNode < Prism::Node
5454
5478
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
5455
5479
  def fields; end
5456
5480
 
5457
- sig { params(inspector: T.untyped).returns(String) }
5458
- def inspect(inspector = nil); end
5481
+ sig { override.returns(String) }
5482
+ def inspect; end
5459
5483
 
5460
5484
  sig { override.returns(Symbol) }
5461
5485
  def type; end
@@ -5499,8 +5523,8 @@ class Prism::LocalVariableReadNode < Prism::Node
5499
5523
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
5500
5524
  def fields; end
5501
5525
 
5502
- sig { params(inspector: T.untyped).returns(String) }
5503
- def inspect(inspector = nil); end
5526
+ sig { override.returns(String) }
5527
+ def inspect; end
5504
5528
 
5505
5529
  sig { override.returns(Symbol) }
5506
5530
  def type; end
@@ -5544,8 +5568,8 @@ class Prism::LocalVariableTargetNode < Prism::Node
5544
5568
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
5545
5569
  def fields; end
5546
5570
 
5547
- sig { params(inspector: T.untyped).returns(String) }
5548
- def inspect(inspector = nil); end
5571
+ sig { override.returns(String) }
5572
+ def inspect; end
5549
5573
 
5550
5574
  sig { override.returns(Symbol) }
5551
5575
  def type; end
@@ -5601,8 +5625,8 @@ class Prism::LocalVariableWriteNode < Prism::Node
5601
5625
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
5602
5626
  def fields; end
5603
5627
 
5604
- sig { params(inspector: T.untyped).returns(String) }
5605
- def inspect(inspector = nil); end
5628
+ sig { override.returns(String) }
5629
+ def inspect; end
5606
5630
 
5607
5631
  sig { override.returns(Symbol) }
5608
5632
  def type; end
@@ -5697,8 +5721,8 @@ class Prism::MatchLastLineNode < Prism::Node
5697
5721
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
5698
5722
  def fields; end
5699
5723
 
5700
- sig { params(inspector: T.untyped).returns(String) }
5701
- def inspect(inspector = nil); end
5724
+ sig { override.returns(String) }
5725
+ def inspect; end
5702
5726
 
5703
5727
  sig { override.returns(Symbol) }
5704
5728
  def type; end
@@ -5748,8 +5772,8 @@ class Prism::MatchPredicateNode < Prism::Node
5748
5772
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
5749
5773
  def fields; end
5750
5774
 
5751
- sig { params(inspector: T.untyped).returns(String) }
5752
- def inspect(inspector = nil); end
5775
+ sig { override.returns(String) }
5776
+ def inspect; end
5753
5777
 
5754
5778
  sig { override.returns(Symbol) }
5755
5779
  def type; end
@@ -5799,8 +5823,8 @@ class Prism::MatchRequiredNode < Prism::Node
5799
5823
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
5800
5824
  def fields; end
5801
5825
 
5802
- sig { params(inspector: T.untyped).returns(String) }
5803
- def inspect(inspector = nil); end
5826
+ sig { override.returns(String) }
5827
+ def inspect; end
5804
5828
 
5805
5829
  sig { override.returns(Symbol) }
5806
5830
  def type; end
@@ -5844,8 +5868,8 @@ class Prism::MatchWriteNode < Prism::Node
5844
5868
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
5845
5869
  def fields; end
5846
5870
 
5847
- sig { params(inspector: T.untyped).returns(String) }
5848
- def inspect(inspector = nil); end
5871
+ sig { override.returns(String) }
5872
+ def inspect; end
5849
5873
 
5850
5874
  sig { override.returns(Symbol) }
5851
5875
  def type; end
@@ -5880,8 +5904,8 @@ class Prism::MissingNode < Prism::Node
5880
5904
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
5881
5905
  def fields; end
5882
5906
 
5883
- sig { params(inspector: T.untyped).returns(String) }
5884
- def inspect(inspector = nil); end
5907
+ sig { override.returns(String) }
5908
+ def inspect; end
5885
5909
 
5886
5910
  sig { override.returns(Symbol) }
5887
5911
  def type; end
@@ -5943,8 +5967,8 @@ class Prism::ModuleNode < Prism::Node
5943
5967
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
5944
5968
  def fields; end
5945
5969
 
5946
- sig { params(inspector: T.untyped).returns(String) }
5947
- def inspect(inspector = nil); end
5970
+ sig { override.returns(String) }
5971
+ def inspect; end
5948
5972
 
5949
5973
  sig { override.returns(Symbol) }
5950
5974
  def type; end
@@ -6003,8 +6027,8 @@ class Prism::MultiTargetNode < Prism::Node
6003
6027
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
6004
6028
  def fields; end
6005
6029
 
6006
- sig { params(inspector: T.untyped).returns(String) }
6007
- def inspect(inspector = nil); end
6030
+ sig { override.returns(String) }
6031
+ def inspect; end
6008
6032
 
6009
6033
  sig { override.returns(Symbol) }
6010
6034
  def type; end
@@ -6072,8 +6096,8 @@ class Prism::MultiWriteNode < Prism::Node
6072
6096
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
6073
6097
  def fields; end
6074
6098
 
6075
- sig { params(inspector: T.untyped).returns(String) }
6076
- def inspect(inspector = nil); end
6099
+ sig { override.returns(String) }
6100
+ def inspect; end
6077
6101
 
6078
6102
  sig { override.returns(Symbol) }
6079
6103
  def type; end
@@ -6120,8 +6144,8 @@ class Prism::NextNode < Prism::Node
6120
6144
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
6121
6145
  def fields; end
6122
6146
 
6123
- sig { params(inspector: T.untyped).returns(String) }
6124
- def inspect(inspector = nil); end
6147
+ sig { override.returns(String) }
6148
+ def inspect; end
6125
6149
 
6126
6150
  sig { override.returns(Symbol) }
6127
6151
  def type; end
@@ -6159,8 +6183,8 @@ class Prism::NilNode < Prism::Node
6159
6183
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
6160
6184
  def fields; end
6161
6185
 
6162
- sig { params(inspector: T.untyped).returns(String) }
6163
- def inspect(inspector = nil); end
6186
+ sig { override.returns(String) }
6187
+ def inspect; end
6164
6188
 
6165
6189
  sig { override.returns(Symbol) }
6166
6190
  def type; end
@@ -6211,8 +6235,8 @@ class Prism::NoKeywordsParameterNode < Prism::Node
6211
6235
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
6212
6236
  def fields; end
6213
6237
 
6214
- sig { params(inspector: T.untyped).returns(String) }
6215
- def inspect(inspector = nil); end
6238
+ sig { override.returns(String) }
6239
+ def inspect; end
6216
6240
 
6217
6241
  sig { override.returns(Symbol) }
6218
6242
  def type; end
@@ -6253,8 +6277,8 @@ class Prism::NumberedParametersNode < Prism::Node
6253
6277
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
6254
6278
  def fields; end
6255
6279
 
6256
- sig { params(inspector: T.untyped).returns(String) }
6257
- def inspect(inspector = nil); end
6280
+ sig { override.returns(String) }
6281
+ def inspect; end
6258
6282
 
6259
6283
  sig { override.returns(Symbol) }
6260
6284
  def type; end
@@ -6295,8 +6319,8 @@ class Prism::NumberedReferenceReadNode < Prism::Node
6295
6319
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
6296
6320
  def fields; end
6297
6321
 
6298
- sig { params(inspector: T.untyped).returns(String) }
6299
- def inspect(inspector = nil); end
6322
+ sig { override.returns(String) }
6323
+ def inspect; end
6300
6324
 
6301
6325
  sig { override.returns(Symbol) }
6302
6326
  def type; end
@@ -6350,8 +6374,8 @@ class Prism::OptionalKeywordParameterNode < Prism::Node
6350
6374
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
6351
6375
  def fields; end
6352
6376
 
6353
- sig { params(inspector: T.untyped).returns(String) }
6354
- def inspect(inspector = nil); end
6377
+ sig { override.returns(String) }
6378
+ def inspect; end
6355
6379
 
6356
6380
  sig { override.returns(Symbol) }
6357
6381
  def type; end
@@ -6411,8 +6435,8 @@ class Prism::OptionalParameterNode < Prism::Node
6411
6435
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
6412
6436
  def fields; end
6413
6437
 
6414
- sig { params(inspector: T.untyped).returns(String) }
6415
- def inspect(inspector = nil); end
6438
+ sig { override.returns(String) }
6439
+ def inspect; end
6416
6440
 
6417
6441
  sig { override.returns(Symbol) }
6418
6442
  def type; end
@@ -6462,8 +6486,8 @@ class Prism::OrNode < Prism::Node
6462
6486
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
6463
6487
  def fields; end
6464
6488
 
6465
- sig { params(inspector: T.untyped).returns(String) }
6466
- def inspect(inspector = nil); end
6489
+ sig { override.returns(String) }
6490
+ def inspect; end
6467
6491
 
6468
6492
  sig { override.returns(Symbol) }
6469
6493
  def type; end
@@ -6523,8 +6547,8 @@ class Prism::ParametersNode < Prism::Node
6523
6547
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
6524
6548
  def fields; end
6525
6549
 
6526
- sig { params(inspector: T.untyped).returns(String) }
6527
- def inspect(inspector = nil); end
6550
+ sig { override.returns(String) }
6551
+ def inspect; end
6528
6552
 
6529
6553
  sig { override.returns(Symbol) }
6530
6554
  def type; end
@@ -6577,8 +6601,8 @@ class Prism::ParenthesesNode < Prism::Node
6577
6601
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
6578
6602
  def fields; end
6579
6603
 
6580
- sig { params(inspector: T.untyped).returns(String) }
6581
- def inspect(inspector = nil); end
6604
+ sig { override.returns(String) }
6605
+ def inspect; end
6582
6606
 
6583
6607
  sig { override.returns(Symbol) }
6584
6608
  def type; end
@@ -6637,8 +6661,8 @@ class Prism::PinnedExpressionNode < Prism::Node
6637
6661
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
6638
6662
  def fields; end
6639
6663
 
6640
- sig { params(inspector: T.untyped).returns(String) }
6641
- def inspect(inspector = nil); end
6664
+ sig { override.returns(String) }
6665
+ def inspect; end
6642
6666
 
6643
6667
  sig { override.returns(Symbol) }
6644
6668
  def type; end
@@ -6685,8 +6709,8 @@ class Prism::PinnedVariableNode < Prism::Node
6685
6709
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
6686
6710
  def fields; end
6687
6711
 
6688
- sig { params(inspector: T.untyped).returns(String) }
6689
- def inspect(inspector = nil); end
6712
+ sig { override.returns(String) }
6713
+ def inspect; end
6690
6714
 
6691
6715
  sig { override.returns(Symbol) }
6692
6716
  def type; end
@@ -6745,8 +6769,8 @@ class Prism::PostExecutionNode < Prism::Node
6745
6769
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
6746
6770
  def fields; end
6747
6771
 
6748
- sig { params(inspector: T.untyped).returns(String) }
6749
- def inspect(inspector = nil); end
6772
+ sig { override.returns(String) }
6773
+ def inspect; end
6750
6774
 
6751
6775
  sig { override.returns(Symbol) }
6752
6776
  def type; end
@@ -6805,8 +6829,8 @@ class Prism::PreExecutionNode < Prism::Node
6805
6829
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
6806
6830
  def fields; end
6807
6831
 
6808
- sig { params(inspector: T.untyped).returns(String) }
6809
- def inspect(inspector = nil); end
6832
+ sig { override.returns(String) }
6833
+ def inspect; end
6810
6834
 
6811
6835
  sig { override.returns(Symbol) }
6812
6836
  def type; end
@@ -6847,8 +6871,8 @@ class Prism::ProgramNode < Prism::Node
6847
6871
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
6848
6872
  def fields; end
6849
6873
 
6850
- sig { params(inspector: T.untyped).returns(String) }
6851
- def inspect(inspector = nil); end
6874
+ sig { override.returns(String) }
6875
+ def inspect; end
6852
6876
 
6853
6877
  sig { override.returns(Symbol) }
6854
6878
  def type; end
@@ -6907,8 +6931,8 @@ class Prism::RangeNode < Prism::Node
6907
6931
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
6908
6932
  def fields; end
6909
6933
 
6910
- sig { params(inspector: T.untyped).returns(String) }
6911
- def inspect(inspector = nil); end
6934
+ sig { override.returns(String) }
6935
+ def inspect; end
6912
6936
 
6913
6937
  sig { override.returns(Symbol) }
6914
6938
  def type; end
@@ -6949,8 +6973,8 @@ class Prism::RationalNode < Prism::Node
6949
6973
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
6950
6974
  def fields; end
6951
6975
 
6952
- sig { params(inspector: T.untyped).returns(String) }
6953
- def inspect(inspector = nil); end
6976
+ sig { override.returns(String) }
6977
+ def inspect; end
6954
6978
 
6955
6979
  sig { override.returns(Symbol) }
6956
6980
  def type; end
@@ -6988,8 +7012,8 @@ class Prism::RedoNode < Prism::Node
6988
7012
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
6989
7013
  def fields; end
6990
7014
 
6991
- sig { params(inspector: T.untyped).returns(String) }
6992
- def inspect(inspector = nil); end
7015
+ sig { override.returns(String) }
7016
+ def inspect; end
6993
7017
 
6994
7018
  sig { override.returns(Symbol) }
6995
7019
  def type; end
@@ -7084,8 +7108,8 @@ class Prism::RegularExpressionNode < Prism::Node
7084
7108
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
7085
7109
  def fields; end
7086
7110
 
7087
- sig { params(inspector: T.untyped).returns(String) }
7088
- def inspect(inspector = nil); end
7111
+ sig { override.returns(String) }
7112
+ def inspect; end
7089
7113
 
7090
7114
  sig { override.returns(Symbol) }
7091
7115
  def type; end
@@ -7136,8 +7160,8 @@ class Prism::RequiredKeywordParameterNode < Prism::Node
7136
7160
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
7137
7161
  def fields; end
7138
7162
 
7139
- sig { params(inspector: T.untyped).returns(String) }
7140
- def inspect(inspector = nil); end
7163
+ sig { override.returns(String) }
7164
+ def inspect; end
7141
7165
 
7142
7166
  sig { override.returns(Symbol) }
7143
7167
  def type; end
@@ -7185,8 +7209,8 @@ class Prism::RequiredParameterNode < Prism::Node
7185
7209
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
7186
7210
  def fields; end
7187
7211
 
7188
- sig { params(inspector: T.untyped).returns(String) }
7189
- def inspect(inspector = nil); end
7212
+ sig { override.returns(String) }
7213
+ def inspect; end
7190
7214
 
7191
7215
  sig { override.returns(Symbol) }
7192
7216
  def type; end
@@ -7236,8 +7260,8 @@ class Prism::RescueModifierNode < Prism::Node
7236
7260
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
7237
7261
  def fields; end
7238
7262
 
7239
- sig { params(inspector: T.untyped).returns(String) }
7240
- def inspect(inspector = nil); end
7263
+ sig { override.returns(String) }
7264
+ def inspect; end
7241
7265
 
7242
7266
  sig { override.returns(Symbol) }
7243
7267
  def type; end
@@ -7304,8 +7328,8 @@ class Prism::RescueNode < Prism::Node
7304
7328
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
7305
7329
  def fields; end
7306
7330
 
7307
- sig { params(inspector: T.untyped).returns(String) }
7308
- def inspect(inspector = nil); end
7331
+ sig { override.returns(String) }
7332
+ def inspect; end
7309
7333
 
7310
7334
  sig { override.returns(Symbol) }
7311
7335
  def type; end
@@ -7362,8 +7386,8 @@ class Prism::RestParameterNode < Prism::Node
7362
7386
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
7363
7387
  def fields; end
7364
7388
 
7365
- sig { params(inspector: T.untyped).returns(String) }
7366
- def inspect(inspector = nil); end
7389
+ sig { override.returns(String) }
7390
+ def inspect; end
7367
7391
 
7368
7392
  sig { override.returns(Symbol) }
7369
7393
  def type; end
@@ -7401,8 +7425,8 @@ class Prism::RetryNode < Prism::Node
7401
7425
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
7402
7426
  def fields; end
7403
7427
 
7404
- sig { params(inspector: T.untyped).returns(String) }
7405
- def inspect(inspector = nil); end
7428
+ sig { override.returns(String) }
7429
+ def inspect; end
7406
7430
 
7407
7431
  sig { override.returns(Symbol) }
7408
7432
  def type; end
@@ -7413,14 +7437,17 @@ end
7413
7437
  # return 1
7414
7438
  # ^^^^^^^^
7415
7439
  class Prism::ReturnNode < Prism::Node
7440
+ sig { returns(Integer) }
7441
+ def flags; end
7442
+
7416
7443
  sig { returns(Prism::Location) }
7417
7444
  def keyword_loc; end
7418
7445
 
7419
7446
  sig { returns(T.nilable(Prism::ArgumentsNode)) }
7420
7447
  def arguments; end
7421
7448
 
7422
- sig { params(source: Prism::Source, keyword_loc: Prism::Location, arguments: T.nilable(Prism::ArgumentsNode), location: Prism::Location).void }
7423
- def initialize(source, keyword_loc, arguments, location); end
7449
+ sig { params(source: Prism::Source, flags: Integer, keyword_loc: Prism::Location, arguments: T.nilable(Prism::ArgumentsNode), location: Prism::Location).void }
7450
+ def initialize(source, flags, keyword_loc, arguments, location); end
7424
7451
 
7425
7452
  sig { override.params(visitor: Prism::Visitor).returns(T.untyped) }
7426
7453
  def accept(visitor); end
@@ -7437,20 +7464,23 @@ class Prism::ReturnNode < Prism::Node
7437
7464
  sig { override.returns(T::Array[T.any(Prism::Node, Prism::Location)]) }
7438
7465
  def comment_targets; end
7439
7466
 
7440
- sig { params(keyword_loc: Prism::Location, arguments: T.nilable(Prism::ArgumentsNode), location: Prism::Location).returns(Prism::ReturnNode) }
7441
- def copy(keyword_loc: self.keyword_loc, arguments: self.arguments, location: self.location); end
7467
+ sig { params(flags: Integer, keyword_loc: Prism::Location, arguments: T.nilable(Prism::ArgumentsNode), location: Prism::Location).returns(Prism::ReturnNode) }
7468
+ def copy(flags: self.flags, keyword_loc: self.keyword_loc, arguments: self.arguments, location: self.location); end
7442
7469
 
7443
7470
  sig { params(keys: T.nilable(T::Array[Symbol])).returns(T::Hash[Symbol, T.untyped]) }
7444
7471
  def deconstruct_keys(keys); end
7445
7472
 
7473
+ sig { returns(T::Boolean) }
7474
+ def redundant?; end
7475
+
7446
7476
  sig { returns(String) }
7447
7477
  def keyword; end
7448
7478
 
7449
7479
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
7450
7480
  def fields; end
7451
7481
 
7452
- sig { params(inspector: T.untyped).returns(String) }
7453
- def inspect(inspector = nil); end
7482
+ sig { override.returns(String) }
7483
+ def inspect; end
7454
7484
 
7455
7485
  sig { override.returns(Symbol) }
7456
7486
  def type; end
@@ -7488,8 +7518,8 @@ class Prism::SelfNode < Prism::Node
7488
7518
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
7489
7519
  def fields; end
7490
7520
 
7491
- sig { params(inspector: T.untyped).returns(String) }
7492
- def inspect(inspector = nil); end
7521
+ sig { override.returns(String) }
7522
+ def inspect; end
7493
7523
 
7494
7524
  sig { override.returns(Symbol) }
7495
7525
  def type; end
@@ -7543,8 +7573,8 @@ class Prism::ShareableConstantNode < Prism::Node
7543
7573
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
7544
7574
  def fields; end
7545
7575
 
7546
- sig { params(inspector: T.untyped).returns(String) }
7547
- def inspect(inspector = nil); end
7576
+ sig { override.returns(String) }
7577
+ def inspect; end
7548
7578
 
7549
7579
  sig { override.returns(Symbol) }
7550
7580
  def type; end
@@ -7609,8 +7639,8 @@ class Prism::SingletonClassNode < Prism::Node
7609
7639
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
7610
7640
  def fields; end
7611
7641
 
7612
- sig { params(inspector: T.untyped).returns(String) }
7613
- def inspect(inspector = nil); end
7642
+ sig { override.returns(String) }
7643
+ def inspect; end
7614
7644
 
7615
7645
  sig { override.returns(Symbol) }
7616
7646
  def type; end
@@ -7648,8 +7678,8 @@ class Prism::SourceEncodingNode < Prism::Node
7648
7678
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
7649
7679
  def fields; end
7650
7680
 
7651
- sig { params(inspector: T.untyped).returns(String) }
7652
- def inspect(inspector = nil); end
7681
+ sig { override.returns(String) }
7682
+ def inspect; end
7653
7683
 
7654
7684
  sig { override.returns(Symbol) }
7655
7685
  def type; end
@@ -7705,8 +7735,8 @@ class Prism::SourceFileNode < Prism::Node
7705
7735
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
7706
7736
  def fields; end
7707
7737
 
7708
- sig { params(inspector: T.untyped).returns(String) }
7709
- def inspect(inspector = nil); end
7738
+ sig { override.returns(String) }
7739
+ def inspect; end
7710
7740
 
7711
7741
  sig { override.returns(Symbol) }
7712
7742
  def type; end
@@ -7744,8 +7774,8 @@ class Prism::SourceLineNode < Prism::Node
7744
7774
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
7745
7775
  def fields; end
7746
7776
 
7747
- sig { params(inspector: T.untyped).returns(String) }
7748
- def inspect(inspector = nil); end
7777
+ sig { override.returns(String) }
7778
+ def inspect; end
7749
7779
 
7750
7780
  sig { override.returns(Symbol) }
7751
7781
  def type; end
@@ -7792,8 +7822,8 @@ class Prism::SplatNode < Prism::Node
7792
7822
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
7793
7823
  def fields; end
7794
7824
 
7795
- sig { params(inspector: T.untyped).returns(String) }
7796
- def inspect(inspector = nil); end
7825
+ sig { override.returns(String) }
7826
+ def inspect; end
7797
7827
 
7798
7828
  sig { override.returns(Symbol) }
7799
7829
  def type; end
@@ -7834,8 +7864,8 @@ class Prism::StatementsNode < Prism::Node
7834
7864
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
7835
7865
  def fields; end
7836
7866
 
7837
- sig { params(inspector: T.untyped).returns(String) }
7838
- def inspect(inspector = nil); end
7867
+ sig { override.returns(String) }
7868
+ def inspect; end
7839
7869
 
7840
7870
  sig { override.returns(Symbol) }
7841
7871
  def type; end
@@ -7915,8 +7945,8 @@ class Prism::StringNode < Prism::Node
7915
7945
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
7916
7946
  def fields; end
7917
7947
 
7918
- sig { params(inspector: T.untyped).returns(String) }
7919
- def inspect(inspector = nil); end
7948
+ sig { override.returns(String) }
7949
+ def inspect; end
7920
7950
 
7921
7951
  sig { override.returns(Symbol) }
7922
7952
  def type; end
@@ -7981,8 +8011,8 @@ class Prism::SuperNode < Prism::Node
7981
8011
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
7982
8012
  def fields; end
7983
8013
 
7984
- sig { params(inspector: T.untyped).returns(String) }
7985
- def inspect(inspector = nil); end
8014
+ sig { override.returns(String) }
8015
+ def inspect; end
7986
8016
 
7987
8017
  sig { override.returns(Symbol) }
7988
8018
  def type; end
@@ -8056,8 +8086,8 @@ class Prism::SymbolNode < Prism::Node
8056
8086
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
8057
8087
  def fields; end
8058
8088
 
8059
- sig { params(inspector: T.untyped).returns(String) }
8060
- def inspect(inspector = nil); end
8089
+ sig { override.returns(String) }
8090
+ def inspect; end
8061
8091
 
8062
8092
  sig { override.returns(Symbol) }
8063
8093
  def type; end
@@ -8095,8 +8125,8 @@ class Prism::TrueNode < Prism::Node
8095
8125
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
8096
8126
  def fields; end
8097
8127
 
8098
- sig { params(inspector: T.untyped).returns(String) }
8099
- def inspect(inspector = nil); end
8128
+ sig { override.returns(String) }
8129
+ def inspect; end
8100
8130
 
8101
8131
  sig { override.returns(Symbol) }
8102
8132
  def type; end
@@ -8143,8 +8173,8 @@ class Prism::UndefNode < Prism::Node
8143
8173
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
8144
8174
  def fields; end
8145
8175
 
8146
- sig { params(inspector: T.untyped).returns(String) }
8147
- def inspect(inspector = nil); end
8176
+ sig { override.returns(String) }
8177
+ def inspect; end
8148
8178
 
8149
8179
  sig { override.returns(Symbol) }
8150
8180
  def type; end
@@ -8212,8 +8242,8 @@ class Prism::UnlessNode < Prism::Node
8212
8242
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
8213
8243
  def fields; end
8214
8244
 
8215
- sig { params(inspector: T.untyped).returns(String) }
8216
- def inspect(inspector = nil); end
8245
+ sig { override.returns(String) }
8246
+ def inspect; end
8217
8247
 
8218
8248
  sig { override.returns(Symbol) }
8219
8249
  def type; end
@@ -8278,8 +8308,8 @@ class Prism::UntilNode < Prism::Node
8278
8308
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
8279
8309
  def fields; end
8280
8310
 
8281
- sig { params(inspector: T.untyped).returns(String) }
8282
- def inspect(inspector = nil); end
8311
+ sig { override.returns(String) }
8312
+ def inspect; end
8283
8313
 
8284
8314
  sig { override.returns(Symbol) }
8285
8315
  def type; end
@@ -8337,8 +8367,8 @@ class Prism::WhenNode < Prism::Node
8337
8367
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
8338
8368
  def fields; end
8339
8369
 
8340
- sig { params(inspector: T.untyped).returns(String) }
8341
- def inspect(inspector = nil); end
8370
+ sig { override.returns(String) }
8371
+ def inspect; end
8342
8372
 
8343
8373
  sig { override.returns(Symbol) }
8344
8374
  def type; end
@@ -8403,8 +8433,8 @@ class Prism::WhileNode < Prism::Node
8403
8433
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
8404
8434
  def fields; end
8405
8435
 
8406
- sig { params(inspector: T.untyped).returns(String) }
8407
- def inspect(inspector = nil); end
8436
+ sig { override.returns(String) }
8437
+ def inspect; end
8408
8438
 
8409
8439
  sig { override.returns(Symbol) }
8410
8440
  def type; end
@@ -8472,8 +8502,8 @@ class Prism::XStringNode < Prism::Node
8472
8502
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
8473
8503
  def fields; end
8474
8504
 
8475
- sig { params(inspector: T.untyped).returns(String) }
8476
- def inspect(inspector = nil); end
8505
+ sig { override.returns(String) }
8506
+ def inspect; end
8477
8507
 
8478
8508
  sig { override.returns(Symbol) }
8479
8509
  def type; end
@@ -8532,8 +8562,8 @@ class Prism::YieldNode < Prism::Node
8532
8562
  sig { override.returns(T::Array[Prism::Reflection::Field]) }
8533
8563
  def fields; end
8534
8564
 
8535
- sig { params(inspector: T.untyped).returns(String) }
8536
- def inspect(inspector = nil); end
8565
+ sig { override.returns(String) }
8566
+ def inspect; end
8537
8567
 
8538
8568
  sig { override.returns(Symbol) }
8539
8569
  def type; end
@@ -8541,8 +8571,10 @@ end
8541
8571
 
8542
8572
  # Flags for arguments nodes.
8543
8573
  module Prism::ArgumentsNodeFlags
8574
+ # if arguments contain keywords
8575
+ CONTAINS_KEYWORDS = T.let(1 << 0, Integer)
8544
8576
  # if arguments contain keyword splat
8545
- CONTAINS_KEYWORD_SPLAT = T.let(1 << 0, Integer)
8577
+ CONTAINS_KEYWORD_SPLAT = T.let(1 << 1, Integer)
8546
8578
  end
8547
8579
 
8548
8580
  # Flags for array nodes.
@@ -8641,6 +8673,12 @@ module Prism::RegularExpressionFlags
8641
8673
  FORCED_US_ASCII_ENCODING = T.let(1 << 10, Integer)
8642
8674
  end
8643
8675
 
8676
+ # Flags for return nodes.
8677
+ module Prism::ReturnNodeFlags
8678
+ # a return statement that is redundant because it is the last statement in a method
8679
+ REDUNDANT = T.let(1 << 0, Integer)
8680
+ end
8681
+
8644
8682
  # Flags for shareable constant nodes.
8645
8683
  module Prism::ShareableConstantNodeFlags
8646
8684
  # constant writes that should be modified with shareable constant value literal