stripe 10.9.0.pre.beta.1 → 10.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (216) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +51 -275
  3. data/Gemfile +3 -0
  4. data/Makefile +7 -0
  5. data/OPENAPI_VERSION +1 -1
  6. data/README.md +0 -11
  7. data/VERSION +1 -1
  8. data/bin/tapioca +27 -0
  9. data/lib/stripe/api_operations/request.rb +1 -2
  10. data/lib/stripe/api_resource.rb +10 -1
  11. data/lib/stripe/api_resource_test_helpers.rb +6 -2
  12. data/lib/stripe/api_version.rb +0 -1
  13. data/lib/stripe/list_object.rb +3 -0
  14. data/lib/stripe/object_types.rb +120 -141
  15. data/lib/stripe/resources/account.rb +6 -4
  16. data/lib/stripe/resources/account_link.rb +3 -0
  17. data/lib/stripe/resources/account_session.rb +3 -0
  18. data/lib/stripe/resources/apple_pay_domain.rb +3 -0
  19. data/lib/stripe/resources/application_fee.rb +3 -0
  20. data/lib/stripe/resources/application_fee_refund.rb +3 -0
  21. data/lib/stripe/resources/apps/secret.rb +3 -0
  22. data/lib/stripe/resources/balance.rb +3 -0
  23. data/lib/stripe/resources/balance_transaction.rb +3 -0
  24. data/lib/stripe/resources/bank_account.rb +3 -0
  25. data/lib/stripe/resources/billing_portal/configuration.rb +3 -0
  26. data/lib/stripe/resources/billing_portal/session.rb +3 -0
  27. data/lib/stripe/resources/capability.rb +3 -0
  28. data/lib/stripe/resources/card.rb +3 -0
  29. data/lib/stripe/resources/cash_balance.rb +3 -0
  30. data/lib/stripe/resources/charge.rb +3 -0
  31. data/lib/stripe/resources/checkout/session.rb +3 -0
  32. data/lib/stripe/resources/climate/order.rb +3 -0
  33. data/lib/stripe/resources/climate/product.rb +3 -0
  34. data/lib/stripe/resources/climate/supplier.rb +3 -0
  35. data/lib/stripe/resources/country_spec.rb +3 -0
  36. data/lib/stripe/resources/coupon.rb +3 -0
  37. data/lib/stripe/resources/credit_note.rb +3 -0
  38. data/lib/stripe/resources/credit_note_line_item.rb +3 -0
  39. data/lib/stripe/resources/customer.rb +7 -13
  40. data/lib/stripe/resources/customer_balance_transaction.rb +3 -0
  41. data/lib/stripe/resources/customer_cash_balance_transaction.rb +3 -0
  42. data/lib/stripe/resources/customer_session.rb +3 -0
  43. data/lib/stripe/resources/discount.rb +3 -0
  44. data/lib/stripe/resources/dispute.rb +3 -0
  45. data/lib/stripe/resources/ephemeral_key.rb +3 -0
  46. data/lib/stripe/resources/event.rb +3 -0
  47. data/lib/stripe/resources/exchange_rate.rb +3 -0
  48. data/lib/stripe/resources/file.rb +6 -0
  49. data/lib/stripe/resources/file_link.rb +3 -0
  50. data/lib/stripe/resources/financial_connections/account.rb +3 -3
  51. data/lib/stripe/resources/financial_connections/account_owner.rb +3 -0
  52. data/lib/stripe/resources/financial_connections/account_ownership.rb +3 -0
  53. data/lib/stripe/resources/financial_connections/session.rb +3 -0
  54. data/lib/stripe/resources/financial_connections/transaction.rb +3 -0
  55. data/lib/stripe/resources/funding_instructions.rb +3 -0
  56. data/lib/stripe/resources/identity/verification_report.rb +3 -0
  57. data/lib/stripe/resources/identity/verification_session.rb +3 -0
  58. data/lib/stripe/resources/invoice.rb +2 -52
  59. data/lib/stripe/resources/invoice_item.rb +3 -0
  60. data/lib/stripe/resources/invoice_line_item.rb +3 -0
  61. data/lib/stripe/resources/issuing/authorization.rb +6 -0
  62. data/lib/stripe/resources/issuing/card.rb +6 -0
  63. data/lib/stripe/resources/issuing/cardholder.rb +3 -0
  64. data/lib/stripe/resources/issuing/dispute.rb +3 -0
  65. data/lib/stripe/resources/issuing/token.rb +3 -0
  66. data/lib/stripe/resources/issuing/transaction.rb +6 -0
  67. data/lib/stripe/resources/line_item.rb +3 -0
  68. data/lib/stripe/resources/login_link.rb +3 -0
  69. data/lib/stripe/resources/mandate.rb +3 -0
  70. data/lib/stripe/resources/payment_intent.rb +5 -4
  71. data/lib/stripe/resources/payment_link.rb +3 -0
  72. data/lib/stripe/resources/payment_method.rb +3 -0
  73. data/lib/stripe/resources/payment_method_configuration.rb +3 -0
  74. data/lib/stripe/resources/payment_method_domain.rb +3 -0
  75. data/lib/stripe/resources/payout.rb +3 -0
  76. data/lib/stripe/resources/person.rb +3 -0
  77. data/lib/stripe/resources/plan.rb +3 -0
  78. data/lib/stripe/resources/price.rb +3 -0
  79. data/lib/stripe/resources/product.rb +3 -0
  80. data/lib/stripe/resources/promotion_code.rb +3 -0
  81. data/lib/stripe/resources/quote.rb +3 -104
  82. data/lib/stripe/resources/radar/early_fraud_warning.rb +3 -0
  83. data/lib/stripe/resources/radar/value_list.rb +3 -0
  84. data/lib/stripe/resources/radar/value_list_item.rb +3 -0
  85. data/lib/stripe/resources/refund.rb +6 -0
  86. data/lib/stripe/resources/reporting/report_run.rb +3 -0
  87. data/lib/stripe/resources/reporting/report_type.rb +3 -0
  88. data/lib/stripe/resources/reversal.rb +3 -0
  89. data/lib/stripe/resources/review.rb +3 -0
  90. data/lib/stripe/resources/setup_attempt.rb +3 -0
  91. data/lib/stripe/resources/setup_intent.rb +3 -0
  92. data/lib/stripe/resources/shipping_rate.rb +3 -0
  93. data/lib/stripe/resources/sigma/scheduled_query_run.rb +3 -0
  94. data/lib/stripe/resources/source.rb +3 -0
  95. data/lib/stripe/resources/source_transaction.rb +3 -0
  96. data/lib/stripe/resources/subscription.rb +3 -0
  97. data/lib/stripe/resources/subscription_item.rb +3 -0
  98. data/lib/stripe/resources/subscription_schedule.rb +2 -19
  99. data/lib/stripe/resources/tax/calculation.rb +3 -0
  100. data/lib/stripe/resources/tax/calculation_line_item.rb +3 -0
  101. data/lib/stripe/resources/tax/registration.rb +3 -0
  102. data/lib/stripe/resources/tax/settings.rb +3 -0
  103. data/lib/stripe/resources/tax/transaction.rb +3 -0
  104. data/lib/stripe/resources/tax/transaction_line_item.rb +3 -0
  105. data/lib/stripe/resources/tax_code.rb +3 -0
  106. data/lib/stripe/resources/tax_id.rb +5 -4
  107. data/lib/stripe/resources/tax_rate.rb +3 -0
  108. data/lib/stripe/resources/terminal/configuration.rb +3 -0
  109. data/lib/stripe/resources/terminal/connection_token.rb +3 -0
  110. data/lib/stripe/resources/terminal/location.rb +3 -0
  111. data/lib/stripe/resources/terminal/reader.rb +6 -60
  112. data/lib/stripe/resources/test_helpers/test_clock.rb +3 -0
  113. data/lib/stripe/resources/token.rb +3 -0
  114. data/lib/stripe/resources/topup.rb +3 -0
  115. data/lib/stripe/resources/transfer.rb +3 -0
  116. data/lib/stripe/resources/treasury/credit_reversal.rb +3 -0
  117. data/lib/stripe/resources/treasury/debit_reversal.rb +3 -0
  118. data/lib/stripe/resources/treasury/financial_account.rb +3 -0
  119. data/lib/stripe/resources/treasury/financial_account_features.rb +3 -0
  120. data/lib/stripe/resources/treasury/inbound_transfer.rb +6 -0
  121. data/lib/stripe/resources/treasury/outbound_payment.rb +6 -0
  122. data/lib/stripe/resources/treasury/outbound_transfer.rb +6 -0
  123. data/lib/stripe/resources/treasury/received_credit.rb +6 -0
  124. data/lib/stripe/resources/treasury/received_debit.rb +6 -0
  125. data/lib/stripe/resources/treasury/transaction.rb +3 -0
  126. data/lib/stripe/resources/treasury/transaction_entry.rb +3 -0
  127. data/lib/stripe/resources/usage_record.rb +3 -0
  128. data/lib/stripe/resources/usage_record_summary.rb +3 -0
  129. data/lib/stripe/resources/webhook_endpoint.rb +3 -0
  130. data/lib/stripe/resources.rb +0 -22
  131. data/lib/stripe/search_result_object.rb +3 -0
  132. data/lib/stripe/singleton_api_resource.rb +1 -1
  133. data/lib/stripe/stripe_client.rb +28 -62
  134. data/lib/stripe/stripe_configuration.rb +1 -2
  135. data/lib/stripe/util.rb +1 -8
  136. data/lib/stripe/version.rb +1 -1
  137. data/lib/stripe.rb +0 -46
  138. data/sorbet/config +4 -0
  139. data/sorbet/rbi/annotations/.gitattributes +1 -0
  140. data/sorbet/rbi/annotations/coveralls_reborn.rbi +3 -0
  141. data/sorbet/rbi/gems/.gitattributes +1 -0
  142. data/sorbet/rbi/gems/addressable@2.8.6.rbi +1993 -0
  143. data/sorbet/rbi/gems/ast@2.4.2.rbi +584 -0
  144. data/sorbet/rbi/gems/byebug@11.1.3.rbi +3606 -0
  145. data/sorbet/rbi/gems/coderay@1.1.3.rbi +3437 -0
  146. data/sorbet/rbi/gems/coveralls_reborn@0.25.0.rbi +8 -0
  147. data/sorbet/rbi/gems/crack@0.4.5.rbi +144 -0
  148. data/sorbet/rbi/gems/docile@1.4.0.rbi +8 -0
  149. data/sorbet/rbi/gems/erubi@1.12.0.rbi +146 -0
  150. data/sorbet/rbi/gems/hashdiff@1.1.0.rbi +352 -0
  151. data/sorbet/rbi/gems/jaro_winkler@1.5.4.rbi +19 -0
  152. data/sorbet/rbi/gems/json@2.7.1.rbi +1561 -0
  153. data/sorbet/rbi/gems/language_server-protocol@3.17.0.3.rbi +14237 -0
  154. data/sorbet/rbi/gems/method_source@1.0.0.rbi +272 -0
  155. data/sorbet/rbi/gems/mocha@1.16.1.rbi +11 -0
  156. data/sorbet/rbi/gems/netrc@0.11.0.rbi +161 -0
  157. data/sorbet/rbi/gems/parallel@1.24.0.rbi +280 -0
  158. data/sorbet/rbi/gems/parser@3.2.2.4.rbi +9454 -0
  159. data/sorbet/rbi/gems/power_assert@2.0.3.rbi +414 -0
  160. data/sorbet/rbi/gems/prettier_print@1.2.1.rbi +951 -0
  161. data/sorbet/rbi/gems/prism@0.19.0.rbi +29883 -0
  162. data/sorbet/rbi/gems/pry-byebug@3.10.1.rbi +1150 -0
  163. data/sorbet/rbi/gems/pry@0.14.2.rbi +10085 -0
  164. data/sorbet/rbi/gems/public_suffix@5.0.4.rbi +931 -0
  165. data/sorbet/rbi/gems/racc@1.7.3.rbi +161 -0
  166. data/sorbet/rbi/gems/rack@3.0.8.rbi +5193 -0
  167. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +402 -0
  168. data/sorbet/rbi/gems/rake@13.1.0.rbi +2884 -0
  169. data/sorbet/rbi/gems/rbi@0.1.6.rbi +2922 -0
  170. data/sorbet/rbi/gems/regexp_parser@2.8.3.rbi +3766 -0
  171. data/sorbet/rbi/gems/rexml@3.2.6.rbi +4887 -0
  172. data/sorbet/rbi/gems/rubocop-ast@1.30.0.rbi +7004 -0
  173. data/sorbet/rbi/gems/rubocop@1.57.2.rbi +56919 -0
  174. data/sorbet/rbi/gems/ruby-progressbar@1.13.0.rbi +1317 -0
  175. data/sorbet/rbi/gems/shoulda-context@2.0.0.rbi +555 -0
  176. data/sorbet/rbi/gems/simplecov-html@0.12.3.rbi +8 -0
  177. data/sorbet/rbi/gems/simplecov@0.21.2.rbi +8 -0
  178. data/sorbet/rbi/gems/simplecov_json_formatter@0.1.4.rbi +8 -0
  179. data/sorbet/rbi/gems/spoom@1.2.4.rbi +3777 -0
  180. data/sorbet/rbi/gems/sync@0.5.0.rbi +8 -0
  181. data/sorbet/rbi/gems/syntax_tree@6.2.0.rbi +23136 -0
  182. data/sorbet/rbi/gems/tapioca@0.11.17.rbi +3503 -0
  183. data/sorbet/rbi/gems/term-ansicolor@1.7.1.rbi +8 -0
  184. data/sorbet/rbi/gems/test-unit@3.6.1.rbi +4403 -0
  185. data/sorbet/rbi/gems/thor@1.3.0.rbi +4345 -0
  186. data/sorbet/rbi/gems/tins@1.32.1.rbi +8 -0
  187. data/sorbet/rbi/gems/unicode-display_width@2.5.0.rbi +65 -0
  188. data/sorbet/rbi/gems/webmock@3.19.1.rbi +1740 -0
  189. data/sorbet/rbi/gems/yard-sorbet@0.8.1.rbi +428 -0
  190. data/sorbet/rbi/gems/yard@0.9.34.rbi +18219 -0
  191. data/sorbet/tapioca/config.yml +13 -0
  192. data/sorbet/tapioca/require.rb +4 -0
  193. metadata +61 -27
  194. data/lib/stripe/request_signing_authenticator.rb +0 -79
  195. data/lib/stripe/resources/account_notice.rb +0 -29
  196. data/lib/stripe/resources/capital/financing_offer.rb +0 -46
  197. data/lib/stripe/resources/capital/financing_summary.rb +0 -12
  198. data/lib/stripe/resources/capital/financing_transaction.rb +0 -24
  199. data/lib/stripe/resources/confirmation_token.rb +0 -13
  200. data/lib/stripe/resources/customer_entitlement.rb +0 -9
  201. data/lib/stripe/resources/customer_entitlement_summary.rb +0 -9
  202. data/lib/stripe/resources/entitlements/event.rb +0 -23
  203. data/lib/stripe/resources/entitlements/feature.rb +0 -35
  204. data/lib/stripe/resources/financial_connections/account_inferred_balance.rb +0 -11
  205. data/lib/stripe/resources/gift_cards/card.rb +0 -56
  206. data/lib/stripe/resources/gift_cards/transaction.rb +0 -90
  207. data/lib/stripe/resources/invoice_payment.rb +0 -9
  208. data/lib/stripe/resources/issuing/credit_underwriting_record.rb +0 -85
  209. data/lib/stripe/resources/issuing/personalization_design.rb +0 -113
  210. data/lib/stripe/resources/issuing/physical_bundle.rb +0 -23
  211. data/lib/stripe/resources/margin.rb +0 -34
  212. data/lib/stripe/resources/order.rb +0 -117
  213. data/lib/stripe/resources/quote_phase.rb +0 -36
  214. data/lib/stripe/resources/quote_preview_invoice.rb +0 -40
  215. data/lib/stripe/resources/quote_preview_subscription_schedule.rb +0 -8
  216. data/lib/stripe/resources/tax/form.rb +0 -46
@@ -0,0 +1,2922 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `rbi` gem.
5
+ # Please instead update this file by running `bin/tapioca gem rbi`.
6
+
7
+ # source://rbi//lib/rbi/loc.rb#4
8
+ module RBI; end
9
+
10
+ # source://rbi//lib/rbi/model.rb#968
11
+ class RBI::Arg < ::RBI::Node
12
+ # source://rbi//lib/rbi/model.rb#980
13
+ sig { params(value: ::String, loc: T.nilable(::RBI::Loc)).void }
14
+ def initialize(value, loc: T.unsafe(nil)); end
15
+
16
+ # source://rbi//lib/rbi/model.rb#986
17
+ sig { params(other: T.nilable(::Object)).returns(T::Boolean) }
18
+ def ==(other); end
19
+
20
+ # source://rbi//lib/rbi/printer.rb#613
21
+ sig { override.params(v: ::RBI::Printer).void }
22
+ def accept_printer(v); end
23
+
24
+ # source://rbi//lib/rbi/model.rb#991
25
+ sig { returns(::String) }
26
+ def to_s; end
27
+
28
+ # source://rbi//lib/rbi/model.rb#972
29
+ sig { returns(::String) }
30
+ def value; end
31
+ end
32
+
33
+ # Attributes
34
+ #
35
+ # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
36
+ #
37
+ # source://rbi//lib/rbi/model.rb#349
38
+ class RBI::Attr < ::RBI::NodeWithComments
39
+ include ::RBI::Indexable
40
+
41
+ abstract!
42
+
43
+ # source://rbi//lib/rbi/model.rb#374
44
+ sig do
45
+ params(
46
+ name: ::Symbol,
47
+ names: T::Array[::Symbol],
48
+ visibility: ::RBI::Visibility,
49
+ sigs: T::Array[::RBI::Sig],
50
+ loc: T.nilable(::RBI::Loc),
51
+ comments: T::Array[::RBI::Comment]
52
+ ).void
53
+ end
54
+ def initialize(name, names, visibility: T.unsafe(nil), sigs: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil)); end
55
+
56
+ # source://rbi//lib/rbi/printer.rb#348
57
+ sig { override.params(v: ::RBI::Printer).void }
58
+ def accept_printer(v); end
59
+
60
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#412
61
+ sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
62
+ def compatible_with?(other); end
63
+
64
+ # @abstract
65
+ #
66
+ # source://rbi//lib/rbi/model.rb#382
67
+ sig { abstract.returns(T::Array[::String]) }
68
+ def fully_qualified_names; end
69
+
70
+ # source://rbi//lib/rbi/index.rb#113
71
+ sig { override.returns(T::Array[::String]) }
72
+ def index_ids; end
73
+
74
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#420
75
+ sig { override.params(other: ::RBI::Node).void }
76
+ def merge_with(other); end
77
+
78
+ # source://rbi//lib/rbi/model.rb#356
79
+ sig { returns(T::Array[::Symbol]) }
80
+ def names; end
81
+
82
+ # source://rbi//lib/rbi/printer.rb#375
83
+ sig { override.returns(T::Boolean) }
84
+ def oneline?; end
85
+
86
+ # source://rbi//lib/rbi/model.rb#362
87
+ sig { returns(T::Array[::RBI::Sig]) }
88
+ def sigs; end
89
+
90
+ # source://rbi//lib/rbi/model.rb#359
91
+ sig { returns(::RBI::Visibility) }
92
+ def visibility; end
93
+
94
+ # @return [Visibility]
95
+ #
96
+ # source://rbi//lib/rbi/model.rb#359
97
+ def visibility=(_arg0); end
98
+ end
99
+
100
+ # source://rbi//lib/rbi/model.rb#385
101
+ class RBI::AttrAccessor < ::RBI::Attr
102
+ # source://rbi//lib/rbi/model.rb#399
103
+ sig do
104
+ params(
105
+ name: ::Symbol,
106
+ names: ::Symbol,
107
+ visibility: ::RBI::Visibility,
108
+ sigs: T::Array[::RBI::Sig],
109
+ loc: T.nilable(::RBI::Loc),
110
+ comments: T::Array[::RBI::Comment],
111
+ block: T.nilable(T.proc.params(node: ::RBI::AttrAccessor).void)
112
+ ).void
113
+ end
114
+ def initialize(name, *names, visibility: T.unsafe(nil), sigs: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
115
+
116
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#452
117
+ sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
118
+ def compatible_with?(other); end
119
+
120
+ # source://rbi//lib/rbi/model.rb#405
121
+ sig { override.returns(T::Array[::String]) }
122
+ def fully_qualified_names; end
123
+
124
+ # source://rbi//lib/rbi/model.rb#411
125
+ sig { override.returns(::String) }
126
+ def to_s; end
127
+ end
128
+
129
+ # source://rbi//lib/rbi/model.rb#417
130
+ class RBI::AttrReader < ::RBI::Attr
131
+ # source://rbi//lib/rbi/model.rb#431
132
+ sig do
133
+ params(
134
+ name: ::Symbol,
135
+ names: ::Symbol,
136
+ visibility: ::RBI::Visibility,
137
+ sigs: T::Array[::RBI::Sig],
138
+ loc: T.nilable(::RBI::Loc),
139
+ comments: T::Array[::RBI::Comment],
140
+ block: T.nilable(T.proc.params(node: ::RBI::AttrReader).void)
141
+ ).void
142
+ end
143
+ def initialize(name, *names, visibility: T.unsafe(nil), sigs: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
144
+
145
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#434
146
+ sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
147
+ def compatible_with?(other); end
148
+
149
+ # source://rbi//lib/rbi/model.rb#437
150
+ sig { override.returns(T::Array[::String]) }
151
+ def fully_qualified_names; end
152
+
153
+ # source://rbi//lib/rbi/model.rb#443
154
+ sig { override.returns(::String) }
155
+ def to_s; end
156
+ end
157
+
158
+ # source://rbi//lib/rbi/model.rb#449
159
+ class RBI::AttrWriter < ::RBI::Attr
160
+ # source://rbi//lib/rbi/model.rb#463
161
+ sig do
162
+ params(
163
+ name: ::Symbol,
164
+ names: ::Symbol,
165
+ visibility: ::RBI::Visibility,
166
+ sigs: T::Array[::RBI::Sig],
167
+ loc: T.nilable(::RBI::Loc),
168
+ comments: T::Array[::RBI::Comment],
169
+ block: T.nilable(T.proc.params(node: ::RBI::AttrWriter).void)
170
+ ).void
171
+ end
172
+ def initialize(name, *names, visibility: T.unsafe(nil), sigs: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
173
+
174
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#443
175
+ sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
176
+ def compatible_with?(other); end
177
+
178
+ # source://rbi//lib/rbi/model.rb#469
179
+ sig { override.returns(T::Array[::String]) }
180
+ def fully_qualified_names; end
181
+
182
+ # source://rbi//lib/rbi/model.rb#475
183
+ sig { override.returns(::String) }
184
+ def to_s; end
185
+ end
186
+
187
+ # An arbitrary blank line that can be added both in trees and comments
188
+ #
189
+ # source://rbi//lib/rbi/model.rb#74
190
+ class RBI::BlankLine < ::RBI::Comment
191
+ # source://rbi//lib/rbi/model.rb#78
192
+ sig { params(loc: T.nilable(::RBI::Loc)).void }
193
+ def initialize(loc: T.unsafe(nil)); end
194
+
195
+ # source://rbi//lib/rbi/printer.rb#217
196
+ sig { override.params(v: ::RBI::Printer).void }
197
+ def accept_printer(v); end
198
+ end
199
+
200
+ # source://rbi//lib/rbi/model.rb#741
201
+ class RBI::BlockParam < ::RBI::Param
202
+ # source://rbi//lib/rbi/model.rb#752
203
+ sig do
204
+ params(
205
+ name: ::String,
206
+ loc: T.nilable(::RBI::Loc),
207
+ comments: T::Array[::RBI::Comment],
208
+ block: T.nilable(T.proc.params(node: ::RBI::BlockParam).void)
209
+ ).void
210
+ end
211
+ def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
212
+
213
+ # source://rbi//lib/rbi/model.rb#763
214
+ sig { params(other: T.nilable(::Object)).returns(T::Boolean) }
215
+ def ==(other); end
216
+
217
+ # source://rbi//lib/rbi/printer.rb#543
218
+ sig { override.params(v: ::RBI::Printer).void }
219
+ def accept_printer(v); end
220
+
221
+ # source://rbi//lib/rbi/printer.rb#548
222
+ sig { override.params(v: ::RBI::Printer, last: T::Boolean).void }
223
+ def print_comment_leading_space(v, last:); end
224
+
225
+ # source://rbi//lib/rbi/model.rb#758
226
+ sig { override.returns(::String) }
227
+ def to_s; end
228
+ end
229
+
230
+ # source://rbi//lib/rbi/model.rb#218
231
+ class RBI::Class < ::RBI::Scope
232
+ # source://rbi//lib/rbi/model.rb#236
233
+ sig do
234
+ params(
235
+ name: ::String,
236
+ superclass_name: T.nilable(::String),
237
+ loc: T.nilable(::RBI::Loc),
238
+ comments: T::Array[::RBI::Comment],
239
+ block: T.nilable(T.proc.params(node: ::RBI::Class).void)
240
+ ).void
241
+ end
242
+ def initialize(name, superclass_name: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
243
+
244
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#376
245
+ sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
246
+ def compatible_with?(other); end
247
+
248
+ # source://rbi//lib/rbi/model.rb#244
249
+ sig { override.returns(::String) }
250
+ def fully_qualified_name; end
251
+
252
+ # source://rbi//lib/rbi/model.rb#222
253
+ sig { returns(::String) }
254
+ def name; end
255
+
256
+ # @return [String]
257
+ #
258
+ # source://rbi//lib/rbi/model.rb#222
259
+ def name=(_arg0); end
260
+
261
+ # source://rbi//lib/rbi/printer.rb#284
262
+ sig { override.params(v: ::RBI::Printer).void }
263
+ def print_header(v); end
264
+
265
+ # source://rbi//lib/rbi/model.rb#225
266
+ sig { returns(T.nilable(::String)) }
267
+ def superclass_name; end
268
+
269
+ # @return [String, nil]
270
+ #
271
+ # source://rbi//lib/rbi/model.rb#225
272
+ def superclass_name=(_arg0); end
273
+ end
274
+
275
+ # source://rbi//lib/rbi/model.rb#53
276
+ class RBI::Comment < ::RBI::Node
277
+ # source://rbi//lib/rbi/model.rb#60
278
+ sig { params(text: ::String, loc: T.nilable(::RBI::Loc)).void }
279
+ def initialize(text, loc: T.unsafe(nil)); end
280
+
281
+ # source://rbi//lib/rbi/model.rb#66
282
+ sig { params(other: ::Object).returns(T::Boolean) }
283
+ def ==(other); end
284
+
285
+ # source://rbi//lib/rbi/printer.rb#197
286
+ sig { override.params(v: ::RBI::Printer).void }
287
+ def accept_printer(v); end
288
+
289
+ # source://rbi//lib/rbi/model.rb#57
290
+ sig { returns(::String) }
291
+ def text; end
292
+
293
+ # @return [String]
294
+ #
295
+ # source://rbi//lib/rbi/model.rb#57
296
+ def text=(_arg0); end
297
+ end
298
+
299
+ # A tree showing incompatibles nodes
300
+ #
301
+ # Is rendered as a merge conflict between `left` and` right`:
302
+ # ~~~rb
303
+ # class Foo
304
+ # <<<<<<< left
305
+ # def m1; end
306
+ # def m2(a); end
307
+ # =======
308
+ # def m1(a); end
309
+ # def m2; end
310
+ # >>>>>>> right
311
+ # end
312
+ # ~~~
313
+ #
314
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#589
315
+ class RBI::ConflictTree < ::RBI::Tree
316
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#596
317
+ sig { params(left_name: ::String, right_name: ::String).void }
318
+ def initialize(left_name: T.unsafe(nil), right_name: T.unsafe(nil)); end
319
+
320
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#607
321
+ sig { override.params(v: ::RBI::Printer).void }
322
+ def accept_printer(v); end
323
+
324
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#593
325
+ sig { returns(::RBI::Tree) }
326
+ def left; end
327
+
328
+ # @return [Tree]
329
+ #
330
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#593
331
+ def right; end
332
+ end
333
+
334
+ # Consts
335
+ #
336
+ # source://rbi//lib/rbi/model.rb#312
337
+ class RBI::Const < ::RBI::NodeWithComments
338
+ include ::RBI::Indexable
339
+
340
+ # source://rbi//lib/rbi/model.rb#327
341
+ sig do
342
+ params(
343
+ name: ::String,
344
+ value: ::String,
345
+ loc: T.nilable(::RBI::Loc),
346
+ comments: T::Array[::RBI::Comment],
347
+ block: T.nilable(T.proc.params(node: ::RBI::Const).void)
348
+ ).void
349
+ end
350
+ def initialize(name, value, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
351
+
352
+ # source://rbi//lib/rbi/printer.rb#335
353
+ sig { override.params(v: ::RBI::Printer).void }
354
+ def accept_printer(v); end
355
+
356
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#403
357
+ sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
358
+ def compatible_with?(other); end
359
+
360
+ # source://rbi//lib/rbi/model.rb#335
361
+ sig { returns(::String) }
362
+ def fully_qualified_name; end
363
+
364
+ # source://rbi//lib/rbi/index.rb#103
365
+ sig { override.returns(T::Array[::String]) }
366
+ def index_ids; end
367
+
368
+ # source://rbi//lib/rbi/model.rb#316
369
+ sig { returns(::String) }
370
+ def name; end
371
+
372
+ # source://rbi//lib/rbi/model.rb#342
373
+ sig { override.returns(::String) }
374
+ def to_s; end
375
+
376
+ # @return [String]
377
+ #
378
+ # source://rbi//lib/rbi/model.rb#316
379
+ def value; end
380
+ end
381
+
382
+ # source://rbi//lib/rbi/model.rb#816
383
+ class RBI::Extend < ::RBI::Mixin
384
+ include ::RBI::Indexable
385
+
386
+ # source://rbi//lib/rbi/model.rb#828
387
+ sig do
388
+ params(
389
+ name: ::String,
390
+ names: ::String,
391
+ loc: T.nilable(::RBI::Loc),
392
+ comments: T::Array[::RBI::Comment],
393
+ block: T.nilable(T.proc.params(node: ::RBI::Extend).void)
394
+ ).void
395
+ end
396
+ def initialize(name, *names, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
397
+
398
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#502
399
+ sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
400
+ def compatible_with?(other); end
401
+
402
+ # source://rbi//lib/rbi/index.rb#143
403
+ sig { override.returns(T::Array[::String]) }
404
+ def index_ids; end
405
+
406
+ # source://rbi//lib/rbi/model.rb#834
407
+ sig { override.returns(::String) }
408
+ def to_s; end
409
+ end
410
+
411
+ # source://rbi//lib/rbi/model.rb#137
412
+ class RBI::File
413
+ # source://rbi//lib/rbi/model.rb#156
414
+ sig do
415
+ params(
416
+ strictness: T.nilable(::String),
417
+ comments: T::Array[::RBI::Comment],
418
+ block: T.nilable(T.proc.params(file: ::RBI::File).void)
419
+ ).void
420
+ end
421
+ def initialize(strictness: T.unsafe(nil), comments: T.unsafe(nil), &block); end
422
+
423
+ # source://rbi//lib/rbi/model.rb#164
424
+ sig { params(node: ::RBI::Node).void }
425
+ def <<(node); end
426
+
427
+ # source://rbi//lib/rbi/printer.rb#105
428
+ sig { params(v: ::RBI::Printer).void }
429
+ def accept_printer(v); end
430
+
431
+ # source://rbi//lib/rbi/model.rb#147
432
+ sig { returns(T::Array[::RBI::Comment]) }
433
+ def comments; end
434
+
435
+ # @return [Array<Comment>]
436
+ #
437
+ # source://rbi//lib/rbi/model.rb#147
438
+ def comments=(_arg0); end
439
+
440
+ # source://rbi//lib/rbi/model.rb#169
441
+ sig { returns(T::Boolean) }
442
+ def empty?; end
443
+
444
+ # source://rbi//lib/rbi/printer.rb#129
445
+ sig do
446
+ params(
447
+ out: T.any(::IO, ::StringIO),
448
+ indent: ::Integer,
449
+ print_locs: T::Boolean,
450
+ max_line_length: T.nilable(::Integer)
451
+ ).void
452
+ end
453
+ def print(out: T.unsafe(nil), indent: T.unsafe(nil), print_locs: T.unsafe(nil), max_line_length: T.unsafe(nil)); end
454
+
455
+ # source://rbi//lib/rbi/model.rb#141
456
+ sig { returns(::RBI::Tree) }
457
+ def root; end
458
+
459
+ # @return [Tree]
460
+ #
461
+ # source://rbi//lib/rbi/model.rb#141
462
+ def root=(_arg0); end
463
+
464
+ # source://rbi//lib/rbi/model.rb#144
465
+ sig { returns(T.nilable(::String)) }
466
+ def strictness; end
467
+
468
+ # @return [String, nil]
469
+ #
470
+ # source://rbi//lib/rbi/model.rb#144
471
+ def strictness=(_arg0); end
472
+
473
+ # source://rbi//lib/rbi/printer.rb#135
474
+ sig { params(indent: ::Integer, print_locs: T::Boolean, max_line_length: T.nilable(::Integer)).returns(::String) }
475
+ def string(indent: T.unsafe(nil), print_locs: T.unsafe(nil), max_line_length: T.unsafe(nil)); end
476
+ end
477
+
478
+ # source://rbi//lib/rbi/formatter.rb#5
479
+ class RBI::Formatter
480
+ # source://rbi//lib/rbi/formatter.rb#36
481
+ sig do
482
+ params(
483
+ add_sig_templates: T::Boolean,
484
+ group_nodes: T::Boolean,
485
+ max_line_length: T.nilable(::Integer),
486
+ nest_singleton_methods: T::Boolean,
487
+ nest_non_public_methods: T::Boolean,
488
+ sort_nodes: T::Boolean
489
+ ).void
490
+ end
491
+ def initialize(add_sig_templates: T.unsafe(nil), group_nodes: T.unsafe(nil), max_line_length: T.unsafe(nil), nest_singleton_methods: T.unsafe(nil), nest_non_public_methods: T.unsafe(nil), sort_nodes: T.unsafe(nil)); end
492
+
493
+ # source://rbi//lib/rbi/formatter.rb#15
494
+ sig { params(add_sig_templates: T::Boolean).returns(T::Boolean) }
495
+ def add_sig_templates=(add_sig_templates); end
496
+
497
+ # source://rbi//lib/rbi/formatter.rb#59
498
+ sig { params(file: ::RBI::File).void }
499
+ def format_file(file); end
500
+
501
+ # source://rbi//lib/rbi/formatter.rb#64
502
+ sig { params(tree: ::RBI::Tree).void }
503
+ def format_tree(tree); end
504
+
505
+ # source://rbi//lib/rbi/formatter.rb#18
506
+ sig { params(group_nodes: T::Boolean).returns(T::Boolean) }
507
+ def group_nodes=(group_nodes); end
508
+
509
+ # source://rbi//lib/rbi/formatter.rb#24
510
+ sig { returns(T.nilable(::Integer)) }
511
+ def max_line_length; end
512
+
513
+ # @return [Integer, nil]
514
+ #
515
+ # source://rbi//lib/rbi/formatter.rb#24
516
+ def max_line_length=(_arg0); end
517
+
518
+ # source://rbi//lib/rbi/formatter.rb#21
519
+ sig { params(nest_non_public_methods: T::Boolean).returns(T::Boolean) }
520
+ def nest_non_public_methods=(nest_non_public_methods); end
521
+
522
+ # source://rbi//lib/rbi/formatter.rb#12
523
+ sig { params(nest_singleton_methods: T::Boolean).returns(T::Boolean) }
524
+ def nest_singleton_methods=(nest_singleton_methods); end
525
+
526
+ # source://rbi//lib/rbi/formatter.rb#53
527
+ sig { params(file: ::RBI::File).returns(::String) }
528
+ def print_file(file); end
529
+
530
+ # source://rbi//lib/rbi/formatter.rb#9
531
+ sig { params(sort_nodes: T::Boolean).returns(T::Boolean) }
532
+ def sort_nodes=(sort_nodes); end
533
+ end
534
+
535
+ # source://rbi//lib/rbi/rewriters/group_nodes.rb#88
536
+ class RBI::Group < ::RBI::Tree
537
+ # source://rbi//lib/rbi/rewriters/group_nodes.rb#95
538
+ sig { params(kind: ::RBI::Group::Kind).void }
539
+ def initialize(kind); end
540
+
541
+ # source://rbi//lib/rbi/printer.rb#838
542
+ sig { override.params(v: ::RBI::Printer).void }
543
+ def accept_printer(v); end
544
+
545
+ # source://rbi//lib/rbi/rewriters/group_nodes.rb#92
546
+ sig { returns(::RBI::Group::Kind) }
547
+ def kind; end
548
+ end
549
+
550
+ # source://rbi//lib/rbi/rewriters/group_nodes.rb#100
551
+ class RBI::Group::Kind < ::T::Enum
552
+ enums do
553
+ Mixins = new
554
+ RequiredAncestors = new
555
+ Helpers = new
556
+ TypeMembers = new
557
+ MixesInClassMethods = new
558
+ Sends = new
559
+ Attrs = new
560
+ TStructFields = new
561
+ TEnums = new
562
+ Inits = new
563
+ Methods = new
564
+ SingletonClasses = new
565
+ Consts = new
566
+ end
567
+ end
568
+
569
+ # Sorbet's misc.
570
+ #
571
+ # source://rbi//lib/rbi/model.rb#1294
572
+ class RBI::Helper < ::RBI::NodeWithComments
573
+ include ::RBI::Indexable
574
+
575
+ # source://rbi//lib/rbi/model.rb#1308
576
+ sig do
577
+ params(
578
+ name: ::String,
579
+ loc: T.nilable(::RBI::Loc),
580
+ comments: T::Array[::RBI::Comment],
581
+ block: T.nilable(T.proc.params(node: ::RBI::Helper).void)
582
+ ).void
583
+ end
584
+ def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
585
+
586
+ # source://rbi//lib/rbi/printer.rb#825
587
+ sig { override.params(v: ::RBI::Printer).void }
588
+ def accept_printer(v); end
589
+
590
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#520
591
+ sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
592
+ def compatible_with?(other); end
593
+
594
+ # source://rbi//lib/rbi/index.rb#173
595
+ sig { override.returns(T::Array[::String]) }
596
+ def index_ids; end
597
+
598
+ # source://rbi//lib/rbi/model.rb#1298
599
+ sig { returns(::String) }
600
+ def name; end
601
+
602
+ # source://rbi//lib/rbi/model.rb#1315
603
+ sig { override.returns(::String) }
604
+ def to_s; end
605
+ end
606
+
607
+ # source://rbi//lib/rbi/model.rb#793
608
+ class RBI::Include < ::RBI::Mixin
609
+ include ::RBI::Indexable
610
+
611
+ # source://rbi//lib/rbi/model.rb#805
612
+ sig do
613
+ params(
614
+ name: ::String,
615
+ names: ::String,
616
+ loc: T.nilable(::RBI::Loc),
617
+ comments: T::Array[::RBI::Comment],
618
+ block: T.nilable(T.proc.params(node: ::RBI::Include).void)
619
+ ).void
620
+ end
621
+ def initialize(name, *names, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
622
+
623
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#493
624
+ sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
625
+ def compatible_with?(other); end
626
+
627
+ # source://rbi//lib/rbi/index.rb#133
628
+ sig { override.returns(T::Array[::String]) }
629
+ def index_ids; end
630
+
631
+ # source://rbi//lib/rbi/model.rb#811
632
+ sig { override.returns(::String) }
633
+ def to_s; end
634
+ end
635
+
636
+ # source://rbi//lib/rbi/index.rb#5
637
+ class RBI::Index < ::RBI::Visitor
638
+ # source://rbi//lib/rbi/index.rb#21
639
+ sig { void }
640
+ def initialize; end
641
+
642
+ # source://rbi//lib/rbi/index.rb#32
643
+ sig { params(id: ::String).returns(T::Array[::RBI::Node]) }
644
+ def [](id); end
645
+
646
+ # source://rbi//lib/rbi/index.rb#37
647
+ sig { params(nodes: ::RBI::Node).void }
648
+ def index(*nodes); end
649
+
650
+ # source://rbi//lib/rbi/index.rb#27
651
+ sig { returns(T::Array[::String]) }
652
+ def keys; end
653
+
654
+ # source://rbi//lib/rbi/index.rb#42
655
+ sig { override.params(node: T.nilable(::RBI::Node)).void }
656
+ def visit(node); end
657
+
658
+ private
659
+
660
+ # source://rbi//lib/rbi/index.rb#59
661
+ sig { params(node: T.all(::RBI::Indexable, ::RBI::Node)).void }
662
+ def index_node(node); end
663
+
664
+ class << self
665
+ # source://rbi//lib/rbi/index.rb#13
666
+ sig { params(node: ::RBI::Node).returns(::RBI::Index) }
667
+ def index(*node); end
668
+ end
669
+ end
670
+
671
+ # A Node that can be refered to by a unique ID inside an index
672
+ #
673
+ # @abstract Subclasses must implement the `abstract` methods below.
674
+ #
675
+ # source://rbi//lib/rbi/index.rb#74
676
+ module RBI::Indexable
677
+ interface!
678
+
679
+ # Unique IDs that refer to this node.
680
+ #
681
+ # Some nodes can have multiple ids, for example an attribute accessor matches the ID of the
682
+ # getter and the setter.
683
+ #
684
+ # @abstract
685
+ #
686
+ # source://rbi//lib/rbi/index.rb#85
687
+ sig { abstract.returns(T::Array[::String]) }
688
+ def index_ids; end
689
+ end
690
+
691
+ # source://rbi//lib/rbi/model.rb#996
692
+ class RBI::KwArg < ::RBI::Arg
693
+ # source://rbi//lib/rbi/model.rb#1009
694
+ sig { params(keyword: ::String, value: ::String, loc: T.nilable(::RBI::Loc)).void }
695
+ def initialize(keyword, value, loc: T.unsafe(nil)); end
696
+
697
+ # source://rbi//lib/rbi/model.rb#1015
698
+ sig { params(other: T.nilable(::Object)).returns(T::Boolean) }
699
+ def ==(other); end
700
+
701
+ # source://rbi//lib/rbi/printer.rb#622
702
+ sig { override.params(v: ::RBI::Printer).void }
703
+ def accept_printer(v); end
704
+
705
+ # source://rbi//lib/rbi/model.rb#1000
706
+ sig { returns(::String) }
707
+ def keyword; end
708
+
709
+ # source://rbi//lib/rbi/model.rb#1020
710
+ sig { returns(::String) }
711
+ def to_s; end
712
+ end
713
+
714
+ # source://rbi//lib/rbi/model.rb#682
715
+ class RBI::KwOptParam < ::RBI::Param
716
+ # source://rbi//lib/rbi/model.rb#697
717
+ sig do
718
+ params(
719
+ name: ::String,
720
+ value: ::String,
721
+ loc: T.nilable(::RBI::Loc),
722
+ comments: T::Array[::RBI::Comment],
723
+ block: T.nilable(T.proc.params(node: ::RBI::KwOptParam).void)
724
+ ).void
725
+ end
726
+ def initialize(name, value, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
727
+
728
+ # source://rbi//lib/rbi/model.rb#709
729
+ sig { params(other: T.nilable(::Object)).returns(T::Boolean) }
730
+ def ==(other); end
731
+
732
+ # source://rbi//lib/rbi/printer.rb#513
733
+ sig { override.params(v: ::RBI::Printer).void }
734
+ def accept_printer(v); end
735
+
736
+ # source://rbi//lib/rbi/printer.rb#518
737
+ sig { override.params(v: ::RBI::Printer, last: T::Boolean).void }
738
+ def print_comment_leading_space(v, last:); end
739
+
740
+ # source://rbi//lib/rbi/model.rb#704
741
+ sig { override.returns(::String) }
742
+ def to_s; end
743
+
744
+ # source://rbi//lib/rbi/model.rb#686
745
+ sig { returns(::String) }
746
+ def value; end
747
+ end
748
+
749
+ # source://rbi//lib/rbi/model.rb#655
750
+ class RBI::KwParam < ::RBI::Param
751
+ # source://rbi//lib/rbi/model.rb#666
752
+ sig do
753
+ params(
754
+ name: ::String,
755
+ loc: T.nilable(::RBI::Loc),
756
+ comments: T::Array[::RBI::Comment],
757
+ block: T.nilable(T.proc.params(node: ::RBI::KwParam).void)
758
+ ).void
759
+ end
760
+ def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
761
+
762
+ # source://rbi//lib/rbi/model.rb#677
763
+ sig { params(other: T.nilable(::Object)).returns(T::Boolean) }
764
+ def ==(other); end
765
+
766
+ # source://rbi//lib/rbi/printer.rb#498
767
+ sig { override.params(v: ::RBI::Printer).void }
768
+ def accept_printer(v); end
769
+
770
+ # source://rbi//lib/rbi/printer.rb#503
771
+ sig { override.params(v: ::RBI::Printer, last: T::Boolean).void }
772
+ def print_comment_leading_space(v, last:); end
773
+
774
+ # source://rbi//lib/rbi/model.rb#672
775
+ sig { override.returns(::String) }
776
+ def to_s; end
777
+ end
778
+
779
+ # source://rbi//lib/rbi/model.rb#714
780
+ class RBI::KwRestParam < ::RBI::Param
781
+ # source://rbi//lib/rbi/model.rb#725
782
+ sig do
783
+ params(
784
+ name: ::String,
785
+ loc: T.nilable(::RBI::Loc),
786
+ comments: T::Array[::RBI::Comment],
787
+ block: T.nilable(T.proc.params(node: ::RBI::KwRestParam).void)
788
+ ).void
789
+ end
790
+ def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
791
+
792
+ # source://rbi//lib/rbi/model.rb#736
793
+ sig { params(other: T.nilable(::Object)).returns(T::Boolean) }
794
+ def ==(other); end
795
+
796
+ # source://rbi//lib/rbi/printer.rb#528
797
+ sig { override.params(v: ::RBI::Printer).void }
798
+ def accept_printer(v); end
799
+
800
+ # source://rbi//lib/rbi/printer.rb#533
801
+ sig { override.params(v: ::RBI::Printer, last: T::Boolean).void }
802
+ def print_comment_leading_space(v, last:); end
803
+
804
+ # source://rbi//lib/rbi/model.rb#731
805
+ sig { override.returns(::String) }
806
+ def to_s; end
807
+ end
808
+
809
+ # source://rbi//lib/rbi/loc.rb#5
810
+ class RBI::Loc
811
+ # source://rbi//lib/rbi/loc.rb#38
812
+ sig do
813
+ params(
814
+ file: T.nilable(::String),
815
+ begin_line: T.nilable(::Integer),
816
+ end_line: T.nilable(::Integer),
817
+ begin_column: T.nilable(::Integer),
818
+ end_column: T.nilable(::Integer)
819
+ ).void
820
+ end
821
+ def initialize(file: T.unsafe(nil), begin_line: T.unsafe(nil), end_line: T.unsafe(nil), begin_column: T.unsafe(nil), end_column: T.unsafe(nil)); end
822
+
823
+ # @return [Integer, nil]
824
+ #
825
+ # source://rbi//lib/rbi/loc.rb#27
826
+ def begin_column; end
827
+
828
+ # source://rbi//lib/rbi/loc.rb#27
829
+ sig { returns(T.nilable(::Integer)) }
830
+ def begin_line; end
831
+
832
+ # @return [Integer, nil]
833
+ #
834
+ # source://rbi//lib/rbi/loc.rb#27
835
+ def end_column; end
836
+
837
+ # @return [Integer, nil]
838
+ #
839
+ # source://rbi//lib/rbi/loc.rb#27
840
+ def end_line; end
841
+
842
+ # source://rbi//lib/rbi/loc.rb#24
843
+ sig { returns(T.nilable(::String)) }
844
+ def file; end
845
+
846
+ # source://rbi//lib/rbi/loc.rb#56
847
+ sig { returns(T.nilable(::String)) }
848
+ def source; end
849
+
850
+ # source://rbi//lib/rbi/loc.rb#47
851
+ sig { returns(::String) }
852
+ def to_s; end
853
+
854
+ class << self
855
+ # source://rbi//lib/rbi/loc.rb#12
856
+ sig { params(file: ::String, prism_location: ::Prism::Location).returns(::RBI::Loc) }
857
+ def from_prism(file, prism_location); end
858
+ end
859
+ end
860
+
861
+ # A tree that _might_ contain conflicts
862
+ #
863
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#330
864
+ class RBI::MergeTree < ::RBI::Tree
865
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#344
866
+ sig do
867
+ params(
868
+ loc: T.nilable(::RBI::Loc),
869
+ comments: T::Array[::RBI::Comment],
870
+ conflicts: T::Array[::RBI::Rewriters::Merge::Conflict],
871
+ block: T.nilable(T.proc.params(node: ::RBI::Tree).void)
872
+ ).void
873
+ end
874
+ def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), conflicts: T.unsafe(nil), &block); end
875
+
876
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#334
877
+ sig { returns(T::Array[::RBI::Rewriters::Merge::Conflict]) }
878
+ def conflicts; end
879
+ end
880
+
881
+ # Methods and args
882
+ #
883
+ # source://rbi//lib/rbi/model.rb#483
884
+ class RBI::Method < ::RBI::NodeWithComments
885
+ include ::RBI::Indexable
886
+
887
+ # source://rbi//lib/rbi/model.rb#513
888
+ sig do
889
+ params(
890
+ name: ::String,
891
+ params: T::Array[::RBI::Param],
892
+ is_singleton: T::Boolean,
893
+ visibility: ::RBI::Visibility,
894
+ sigs: T::Array[::RBI::Sig],
895
+ loc: T.nilable(::RBI::Loc),
896
+ comments: T::Array[::RBI::Comment],
897
+ block: T.nilable(T.proc.params(node: ::RBI::Method).void)
898
+ ).void
899
+ end
900
+ def initialize(name, params: T.unsafe(nil), is_singleton: T.unsafe(nil), visibility: T.unsafe(nil), sigs: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
901
+
902
+ # source://rbi//lib/rbi/model.rb#533
903
+ sig { params(param: ::RBI::Param).void }
904
+ def <<(param); end
905
+
906
+ # source://rbi//lib/rbi/printer.rb#384
907
+ sig { override.params(v: ::RBI::Printer).void }
908
+ def accept_printer(v); end
909
+
910
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#461
911
+ sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
912
+ def compatible_with?(other); end
913
+
914
+ # source://rbi//lib/rbi/model.rb#538
915
+ sig { returns(::String) }
916
+ def fully_qualified_name; end
917
+
918
+ # source://rbi//lib/rbi/index.rb#123
919
+ sig { override.returns(T::Array[::String]) }
920
+ def index_ids; end
921
+
922
+ # source://rbi//lib/rbi/printer.rb#437
923
+ sig { returns(T::Boolean) }
924
+ def inline_params?; end
925
+
926
+ # source://rbi//lib/rbi/model.rb#493
927
+ sig { returns(T::Boolean) }
928
+ def is_singleton; end
929
+
930
+ # @return [Boolean]
931
+ #
932
+ # source://rbi//lib/rbi/model.rb#493
933
+ def is_singleton=(_arg0); end
934
+
935
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#470
936
+ sig { override.params(other: ::RBI::Node).void }
937
+ def merge_with(other); end
938
+
939
+ # source://rbi//lib/rbi/model.rb#487
940
+ sig { returns(::String) }
941
+ def name; end
942
+
943
+ # @return [String]
944
+ #
945
+ # source://rbi//lib/rbi/model.rb#487
946
+ def name=(_arg0); end
947
+
948
+ # source://rbi//lib/rbi/printer.rb#432
949
+ sig { override.returns(T::Boolean) }
950
+ def oneline?; end
951
+
952
+ # source://rbi//lib/rbi/model.rb#490
953
+ sig { returns(T::Array[::RBI::Param]) }
954
+ def params; end
955
+
956
+ # source://rbi//lib/rbi/model.rb#499
957
+ sig { returns(T::Array[::RBI::Sig]) }
958
+ def sigs; end
959
+
960
+ # @return [Array<Sig>]
961
+ #
962
+ # source://rbi//lib/rbi/model.rb#499
963
+ def sigs=(_arg0); end
964
+
965
+ # source://rbi//lib/rbi/model.rb#547
966
+ sig { override.returns(::String) }
967
+ def to_s; end
968
+
969
+ # source://rbi//lib/rbi/model.rb#496
970
+ sig { returns(::RBI::Visibility) }
971
+ def visibility; end
972
+
973
+ # @return [Visibility]
974
+ #
975
+ # source://rbi//lib/rbi/model.rb#496
976
+ def visibility=(_arg0); end
977
+ end
978
+
979
+ # source://rbi//lib/rbi/model.rb#1355
980
+ class RBI::MixesInClassMethods < ::RBI::Mixin
981
+ include ::RBI::Indexable
982
+
983
+ # source://rbi//lib/rbi/model.rb#1367
984
+ sig do
985
+ params(
986
+ name: ::String,
987
+ names: ::String,
988
+ loc: T.nilable(::RBI::Loc),
989
+ comments: T::Array[::RBI::Comment],
990
+ block: T.nilable(T.proc.params(node: ::RBI::MixesInClassMethods).void)
991
+ ).void
992
+ end
993
+ def initialize(name, *names, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
994
+
995
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#511
996
+ sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
997
+ def compatible_with?(other); end
998
+
999
+ # source://rbi//lib/rbi/index.rb#153
1000
+ sig { override.returns(T::Array[::String]) }
1001
+ def index_ids; end
1002
+
1003
+ # source://rbi//lib/rbi/model.rb#1373
1004
+ sig { override.returns(::String) }
1005
+ def to_s; end
1006
+ end
1007
+
1008
+ # Mixins
1009
+ #
1010
+ # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
1011
+ #
1012
+ # source://rbi//lib/rbi/model.rb#770
1013
+ class RBI::Mixin < ::RBI::NodeWithComments
1014
+ abstract!
1015
+
1016
+ # source://rbi//lib/rbi/model.rb#787
1017
+ sig do
1018
+ params(
1019
+ name: ::String,
1020
+ names: T::Array[::String],
1021
+ loc: T.nilable(::RBI::Loc),
1022
+ comments: T::Array[::RBI::Comment]
1023
+ ).void
1024
+ end
1025
+ def initialize(name, names, loc: T.unsafe(nil), comments: T.unsafe(nil)); end
1026
+
1027
+ # source://rbi//lib/rbi/printer.rb#558
1028
+ sig { override.params(v: ::RBI::Printer).void }
1029
+ def accept_printer(v); end
1030
+
1031
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#484
1032
+ sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
1033
+ def compatible_with?(other); end
1034
+
1035
+ # source://rbi//lib/rbi/model.rb#777
1036
+ sig { returns(T::Array[::String]) }
1037
+ def names; end
1038
+ end
1039
+
1040
+ # source://rbi//lib/rbi/model.rb#190
1041
+ class RBI::Module < ::RBI::Scope
1042
+ # source://rbi//lib/rbi/model.rb#204
1043
+ sig do
1044
+ params(
1045
+ name: ::String,
1046
+ loc: T.nilable(::RBI::Loc),
1047
+ comments: T::Array[::RBI::Comment],
1048
+ block: T.nilable(T.proc.params(node: ::RBI::Module).void)
1049
+ ).void
1050
+ end
1051
+ def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
1052
+
1053
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#385
1054
+ sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
1055
+ def compatible_with?(other); end
1056
+
1057
+ # source://rbi//lib/rbi/model.rb#211
1058
+ sig { override.returns(::String) }
1059
+ def fully_qualified_name; end
1060
+
1061
+ # source://rbi//lib/rbi/model.rb#194
1062
+ sig { returns(::String) }
1063
+ def name; end
1064
+
1065
+ # @return [String]
1066
+ #
1067
+ # source://rbi//lib/rbi/model.rb#194
1068
+ def name=(_arg0); end
1069
+
1070
+ # source://rbi//lib/rbi/printer.rb#270
1071
+ sig { override.params(v: ::RBI::Printer).void }
1072
+ def print_header(v); end
1073
+ end
1074
+
1075
+ # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
1076
+ #
1077
+ # source://rbi//lib/rbi/model.rb#5
1078
+ class RBI::Node
1079
+ abstract!
1080
+
1081
+ # source://rbi//lib/rbi/model.rb#18
1082
+ sig { params(loc: T.nilable(::RBI::Loc)).void }
1083
+ def initialize(loc: T.unsafe(nil)); end
1084
+
1085
+ # @abstract
1086
+ #
1087
+ # source://rbi//lib/rbi/printer.rb#146
1088
+ sig { abstract.params(v: ::RBI::Printer).void }
1089
+ def accept_printer(v); end
1090
+
1091
+ # Can `self` and `_other` be merged into a single definition?
1092
+ #
1093
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#287
1094
+ sig { params(_other: ::RBI::Node).returns(T::Boolean) }
1095
+ def compatible_with?(_other); end
1096
+
1097
+ # source://rbi//lib/rbi/model.rb#24
1098
+ sig { void }
1099
+ def detach; end
1100
+
1101
+ # source://rbi//lib/rbi/rewriters/group_nodes.rb#48
1102
+ sig { returns(::RBI::Group::Kind) }
1103
+ def group_kind; end
1104
+
1105
+ # source://rbi//lib/rbi/model.rb#15
1106
+ sig { returns(T.nilable(::RBI::Loc)) }
1107
+ def loc; end
1108
+
1109
+ # @return [Loc, nil]
1110
+ #
1111
+ # source://rbi//lib/rbi/model.rb#15
1112
+ def loc=(_arg0); end
1113
+
1114
+ # Merge `self` and `other` into a single definition
1115
+ #
1116
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#293
1117
+ sig { params(other: ::RBI::Node).void }
1118
+ def merge_with(other); end
1119
+
1120
+ # source://rbi//lib/rbi/printer.rb#179
1121
+ sig { returns(T::Boolean) }
1122
+ def oneline?; end
1123
+
1124
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#296
1125
+ sig { returns(T.nilable(::RBI::ConflictTree)) }
1126
+ def parent_conflict_tree; end
1127
+
1128
+ # source://rbi//lib/rbi/model.rb#46
1129
+ sig { returns(T.nilable(::RBI::Scope)) }
1130
+ def parent_scope; end
1131
+
1132
+ # source://rbi//lib/rbi/model.rb#12
1133
+ sig { returns(T.nilable(::RBI::Tree)) }
1134
+ def parent_tree; end
1135
+
1136
+ # @return [Tree, nil]
1137
+ #
1138
+ # source://rbi//lib/rbi/model.rb#12
1139
+ def parent_tree=(_arg0); end
1140
+
1141
+ # source://rbi//lib/rbi/printer.rb#156
1142
+ sig do
1143
+ params(
1144
+ out: T.any(::IO, ::StringIO),
1145
+ indent: ::Integer,
1146
+ print_locs: T::Boolean,
1147
+ max_line_length: T.nilable(::Integer)
1148
+ ).void
1149
+ end
1150
+ def print(out: T.unsafe(nil), indent: T.unsafe(nil), print_locs: T.unsafe(nil), max_line_length: T.unsafe(nil)); end
1151
+
1152
+ # source://rbi//lib/rbi/printer.rb#169
1153
+ sig { params(v: ::RBI::Printer).void }
1154
+ def print_blank_line_before(v); end
1155
+
1156
+ # source://rbi//lib/rbi/model.rb#33
1157
+ sig { params(node: ::RBI::Node).void }
1158
+ def replace(node); end
1159
+
1160
+ # source://rbi//lib/rbi/printer.rb#162
1161
+ sig { params(indent: ::Integer, print_locs: T::Boolean, max_line_length: T.nilable(::Integer)).returns(::String) }
1162
+ def string(indent: T.unsafe(nil), print_locs: T.unsafe(nil), max_line_length: T.unsafe(nil)); end
1163
+ end
1164
+
1165
+ # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
1166
+ #
1167
+ # source://rbi//lib/rbi/model.rb#83
1168
+ class RBI::NodeWithComments < ::RBI::Node
1169
+ abstract!
1170
+
1171
+ # source://rbi//lib/rbi/model.rb#93
1172
+ sig { params(loc: T.nilable(::RBI::Loc), comments: T::Array[::RBI::Comment]).void }
1173
+ def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil)); end
1174
+
1175
+ # source://rbi//lib/rbi/model.rb#99
1176
+ sig { returns(T::Array[::String]) }
1177
+ def annotations; end
1178
+
1179
+ # source://rbi//lib/rbi/model.rb#90
1180
+ sig { returns(T::Array[::RBI::Comment]) }
1181
+ def comments; end
1182
+
1183
+ # @return [Array<Comment>]
1184
+ #
1185
+ # source://rbi//lib/rbi/model.rb#90
1186
+ def comments=(_arg0); end
1187
+
1188
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#311
1189
+ sig { override.params(other: ::RBI::Node).void }
1190
+ def merge_with(other); end
1191
+
1192
+ # source://rbi//lib/rbi/printer.rb#188
1193
+ sig { override.returns(T::Boolean) }
1194
+ def oneline?; end
1195
+ end
1196
+
1197
+ # source://rbi//lib/rbi/model.rb#601
1198
+ class RBI::OptParam < ::RBI::Param
1199
+ # source://rbi//lib/rbi/model.rb#616
1200
+ sig do
1201
+ params(
1202
+ name: ::String,
1203
+ value: ::String,
1204
+ loc: T.nilable(::RBI::Loc),
1205
+ comments: T::Array[::RBI::Comment],
1206
+ block: T.nilable(T.proc.params(node: ::RBI::OptParam).void)
1207
+ ).void
1208
+ end
1209
+ def initialize(name, value, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
1210
+
1211
+ # source://rbi//lib/rbi/model.rb#623
1212
+ sig { params(other: T.nilable(::Object)).returns(T::Boolean) }
1213
+ def ==(other); end
1214
+
1215
+ # source://rbi//lib/rbi/printer.rb#468
1216
+ sig { override.params(v: ::RBI::Printer).void }
1217
+ def accept_printer(v); end
1218
+
1219
+ # source://rbi//lib/rbi/printer.rb#473
1220
+ sig { override.params(v: ::RBI::Printer, last: T::Boolean).void }
1221
+ def print_comment_leading_space(v, last:); end
1222
+
1223
+ # source://rbi//lib/rbi/model.rb#605
1224
+ sig { returns(::String) }
1225
+ def value; end
1226
+ end
1227
+
1228
+ # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
1229
+ #
1230
+ # source://rbi//lib/rbi/model.rb#552
1231
+ class RBI::Param < ::RBI::NodeWithComments
1232
+ abstract!
1233
+
1234
+ # source://rbi//lib/rbi/model.rb#568
1235
+ sig { params(name: ::String, loc: T.nilable(::RBI::Loc), comments: T::Array[::RBI::Comment]).void }
1236
+ def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil)); end
1237
+
1238
+ # source://rbi//lib/rbi/printer.rb#446
1239
+ sig { override.params(v: ::RBI::Printer).void }
1240
+ def accept_printer(v); end
1241
+
1242
+ # source://rbi//lib/rbi/printer.rb#459
1243
+ sig { returns(T::Array[::String]) }
1244
+ def comments_lines; end
1245
+
1246
+ # source://rbi//lib/rbi/model.rb#559
1247
+ sig { returns(::String) }
1248
+ def name; end
1249
+
1250
+ # source://rbi//lib/rbi/printer.rb#451
1251
+ sig { params(v: ::RBI::Printer, last: T::Boolean).void }
1252
+ def print_comment_leading_space(v, last:); end
1253
+
1254
+ # source://rbi//lib/rbi/model.rb#574
1255
+ sig { override.returns(::String) }
1256
+ def to_s; end
1257
+ end
1258
+
1259
+ # source://rbi//lib/rbi/parser.rb#7
1260
+ class RBI::ParseError < ::StandardError
1261
+ # source://rbi//lib/rbi/parser.rb#14
1262
+ sig { params(message: ::String, location: ::RBI::Loc).void }
1263
+ def initialize(message, location); end
1264
+
1265
+ # source://rbi//lib/rbi/parser.rb#11
1266
+ sig { returns(::RBI::Loc) }
1267
+ def location; end
1268
+ end
1269
+
1270
+ # source://rbi//lib/rbi/parser.rb#53
1271
+ class RBI::Parser
1272
+ # source://rbi//lib/rbi/parser.rb#88
1273
+ sig { params(path: ::String).returns(::RBI::Tree) }
1274
+ def parse_file(path); end
1275
+
1276
+ # source://rbi//lib/rbi/parser.rb#83
1277
+ sig { params(string: ::String).returns(::RBI::Tree) }
1278
+ def parse_string(string); end
1279
+
1280
+ private
1281
+
1282
+ # source://rbi//lib/rbi/parser.rb#95
1283
+ sig { params(source: ::String, file: ::String).returns(::RBI::Tree) }
1284
+ def parse(source, file:); end
1285
+
1286
+ class << self
1287
+ # source://rbi//lib/rbi/parser.rb#65
1288
+ sig { params(path: ::String).returns(::RBI::Tree) }
1289
+ def parse_file(path); end
1290
+
1291
+ # source://rbi//lib/rbi/parser.rb#70
1292
+ sig { params(paths: T::Array[::String]).returns(T::Array[::RBI::Tree]) }
1293
+ def parse_files(paths); end
1294
+
1295
+ # source://rbi//lib/rbi/parser.rb#60
1296
+ sig { params(string: ::String).returns(::RBI::Tree) }
1297
+ def parse_string(string); end
1298
+
1299
+ # source://rbi//lib/rbi/parser.rb#76
1300
+ sig { params(strings: T::Array[::String]).returns(T::Array[::RBI::Tree]) }
1301
+ def parse_strings(strings); end
1302
+ end
1303
+ end
1304
+
1305
+ # source://rbi//lib/rbi/parser.rb#791
1306
+ class RBI::Parser::SigBuilder < ::RBI::Parser::Visitor
1307
+ # source://rbi//lib/rbi/parser.rb#798
1308
+ sig { params(content: ::String, file: ::String).void }
1309
+ def initialize(content, file:); end
1310
+
1311
+ # source://rbi//lib/rbi/parser.rb#795
1312
+ sig { returns(::RBI::Sig) }
1313
+ def current; end
1314
+
1315
+ # source://rbi//lib/rbi/parser.rb#850
1316
+ sig { override.params(node: ::Prism::AssocNode).void }
1317
+ def visit_assoc_node(node); end
1318
+
1319
+ # source://rbi//lib/rbi/parser.rb#805
1320
+ sig { override.params(node: ::Prism::CallNode).void }
1321
+ def visit_call_node(node); end
1322
+ end
1323
+
1324
+ # source://rbi//lib/rbi/parser.rb#153
1325
+ class RBI::Parser::TreeBuilder < ::RBI::Parser::Visitor
1326
+ # source://rbi//lib/rbi/parser.rb#163
1327
+ sig { params(source: ::String, comments: T::Array[::Prism::Comment], file: ::String).void }
1328
+ def initialize(source, comments:, file:); end
1329
+
1330
+ # source://rbi//lib/rbi/parser.rb#160
1331
+ sig { returns(T.nilable(::Prism::Node)) }
1332
+ def last_node; end
1333
+
1334
+ # source://rbi//lib/rbi/parser.rb#157
1335
+ sig { returns(::RBI::Tree) }
1336
+ def tree; end
1337
+
1338
+ # source://rbi//lib/rbi/parser.rb#299
1339
+ sig { params(node: ::Prism::CallNode).void }
1340
+ def visit_call_node(node); end
1341
+
1342
+ # source://rbi//lib/rbi/parser.rb#176
1343
+ sig { override.params(node: ::Prism::ClassNode).void }
1344
+ def visit_class_node(node); end
1345
+
1346
+ # source://rbi//lib/rbi/parser.rb#208
1347
+ sig { params(node: T.any(::Prism::ConstantPathWriteNode, ::Prism::ConstantWriteNode)).void }
1348
+ def visit_constant_assign(node); end
1349
+
1350
+ # source://rbi//lib/rbi/parser.rb#201
1351
+ sig { override.params(node: ::Prism::ConstantPathWriteNode).void }
1352
+ def visit_constant_path_write_node(node); end
1353
+
1354
+ # source://rbi//lib/rbi/parser.rb#194
1355
+ sig { override.params(node: ::Prism::ConstantWriteNode).void }
1356
+ def visit_constant_write_node(node); end
1357
+
1358
+ # source://rbi//lib/rbi/parser.rb#241
1359
+ sig { override.params(node: ::Prism::DefNode).void }
1360
+ def visit_def_node(node); end
1361
+
1362
+ # source://rbi//lib/rbi/parser.rb#255
1363
+ sig { override.params(node: ::Prism::ModuleNode).void }
1364
+ def visit_module_node(node); end
1365
+
1366
+ # source://rbi//lib/rbi/parser.rb#272
1367
+ sig { override.params(node: ::Prism::ProgramNode).void }
1368
+ def visit_program_node(node); end
1369
+
1370
+ # source://rbi//lib/rbi/parser.rb#283
1371
+ sig { override.params(node: ::Prism::SingletonClassNode).void }
1372
+ def visit_singleton_class_node(node); end
1373
+
1374
+ private
1375
+
1376
+ # Collect all the remaining comments within a node
1377
+ #
1378
+ # source://rbi//lib/rbi/parser.rb#467
1379
+ sig { params(node: ::Prism::Node).void }
1380
+ def collect_dangling_comments(node); end
1381
+
1382
+ # Collect all the remaining comments after visiting the tree
1383
+ #
1384
+ # source://rbi//lib/rbi/parser.rb#485
1385
+ sig { void }
1386
+ def collect_orphan_comments; end
1387
+
1388
+ # source://rbi//lib/rbi/parser.rb#508
1389
+ sig { returns(::RBI::Tree) }
1390
+ def current_scope; end
1391
+
1392
+ # source://rbi//lib/rbi/parser.rb#513
1393
+ sig { returns(T::Array[::RBI::Sig]) }
1394
+ def current_sigs; end
1395
+
1396
+ # source://rbi//lib/rbi/parser.rb#520
1397
+ sig { returns(T::Array[::RBI::Comment]) }
1398
+ def current_sigs_comments; end
1399
+
1400
+ # source://rbi//lib/rbi/parser.rb#527
1401
+ sig { params(node: ::Prism::Node).returns(T::Array[::RBI::Comment]) }
1402
+ def node_comments(node); end
1403
+
1404
+ # source://rbi//lib/rbi/parser.rb#545
1405
+ sig { params(node: ::Prism::Comment).returns(::RBI::Comment) }
1406
+ def parse_comment(node); end
1407
+
1408
+ # source://rbi//lib/rbi/parser.rb#574
1409
+ sig { params(node: T.nilable(::Prism::Node)).returns(T::Array[::RBI::Param]) }
1410
+ def parse_params(node); end
1411
+
1412
+ # source://rbi//lib/rbi/parser.rb#550
1413
+ sig { params(node: T.nilable(::Prism::Node)).returns(T::Array[::RBI::Arg]) }
1414
+ def parse_send_args(node); end
1415
+
1416
+ # source://rbi//lib/rbi/parser.rb#648
1417
+ sig { params(node: ::Prism::CallNode).returns(::RBI::Sig) }
1418
+ def parse_sig(node); end
1419
+
1420
+ # source://rbi//lib/rbi/parser.rb#658
1421
+ sig do
1422
+ params(
1423
+ node: T.any(::Prism::ConstantPathWriteNode, ::Prism::ConstantWriteNode)
1424
+ ).returns(T.nilable(::RBI::Struct))
1425
+ end
1426
+ def parse_struct(node); end
1427
+
1428
+ # source://rbi//lib/rbi/parser.rb#708
1429
+ sig { params(send: ::Prism::CallNode).void }
1430
+ def parse_tstruct_field(send); end
1431
+
1432
+ # source://rbi//lib/rbi/parser.rb#745
1433
+ sig { params(name: ::String, node: ::Prism::Node).returns(::RBI::Visibility) }
1434
+ def parse_visibility(name, node); end
1435
+
1436
+ # source://rbi//lib/rbi/parser.rb#759
1437
+ sig { void }
1438
+ def separate_header_comments; end
1439
+
1440
+ # source://rbi//lib/rbi/parser.rb#769
1441
+ sig { void }
1442
+ def set_root_tree_loc; end
1443
+
1444
+ # source://rbi//lib/rbi/parser.rb#783
1445
+ sig { params(node: T.nilable(::Prism::Node)).returns(T::Boolean) }
1446
+ def type_variable_definition?(node); end
1447
+ end
1448
+
1449
+ # source://rbi//lib/rbi/parser.rb#122
1450
+ class RBI::Parser::Visitor < ::Prism::Visitor
1451
+ # source://rbi//lib/rbi/parser.rb#126
1452
+ sig { params(source: ::String, file: ::String).void }
1453
+ def initialize(source, file:); end
1454
+
1455
+ private
1456
+
1457
+ # source://rbi//lib/rbi/parser.rb#136
1458
+ sig { params(node: ::Prism::Node).returns(::RBI::Loc) }
1459
+ def node_loc(node); end
1460
+
1461
+ # source://rbi//lib/rbi/parser.rb#141
1462
+ sig { params(node: T.nilable(::Prism::Node)).returns(T.nilable(::String)) }
1463
+ def node_string(node); end
1464
+
1465
+ # source://rbi//lib/rbi/parser.rb#148
1466
+ sig { params(node: ::Prism::Node).returns(::String) }
1467
+ def node_string!(node); end
1468
+ end
1469
+
1470
+ # source://rbi//lib/rbi/printer.rb#5
1471
+ class RBI::Printer < ::RBI::Visitor
1472
+ # source://rbi//lib/rbi/printer.rb#28
1473
+ sig do
1474
+ params(
1475
+ out: T.any(::IO, ::StringIO),
1476
+ indent: ::Integer,
1477
+ print_locs: T::Boolean,
1478
+ max_line_length: T.nilable(::Integer)
1479
+ ).void
1480
+ end
1481
+ def initialize(out: T.unsafe(nil), indent: T.unsafe(nil), print_locs: T.unsafe(nil), max_line_length: T.unsafe(nil)); end
1482
+
1483
+ # source://rbi//lib/rbi/printer.rb#15
1484
+ sig { returns(::Integer) }
1485
+ def current_indent; end
1486
+
1487
+ # source://rbi//lib/rbi/printer.rb#46
1488
+ sig { void }
1489
+ def dedent; end
1490
+
1491
+ # @return [Boolean]
1492
+ #
1493
+ # source://rbi//lib/rbi/printer.rb#9
1494
+ def in_visibility_group; end
1495
+
1496
+ # @return [Boolean]
1497
+ #
1498
+ # source://rbi//lib/rbi/printer.rb#9
1499
+ def in_visibility_group=(_arg0); end
1500
+
1501
+ # Printing
1502
+ #
1503
+ # source://rbi//lib/rbi/printer.rb#41
1504
+ sig { void }
1505
+ def indent; end
1506
+
1507
+ # source://rbi//lib/rbi/printer.rb#18
1508
+ sig { returns(T.nilable(::Integer)) }
1509
+ def max_line_length; end
1510
+
1511
+ # source://rbi//lib/rbi/printer.rb#12
1512
+ sig { returns(T.nilable(::RBI::Node)) }
1513
+ def previous_node; end
1514
+
1515
+ # Print a string without indentation nor `\n` at the end.
1516
+ #
1517
+ # source://rbi//lib/rbi/printer.rb#52
1518
+ sig { params(string: ::String).void }
1519
+ def print(string); end
1520
+
1521
+ # source://rbi//lib/rbi/printer.rb#9
1522
+ sig { returns(T::Boolean) }
1523
+ def print_locs; end
1524
+
1525
+ # @return [Boolean]
1526
+ #
1527
+ # source://rbi//lib/rbi/printer.rb#9
1528
+ def print_locs=(_arg0); end
1529
+
1530
+ # Print a string with indentation and `\n` at the end.
1531
+ #
1532
+ # source://rbi//lib/rbi/printer.rb#72
1533
+ sig { params(string: ::String).void }
1534
+ def printl(string); end
1535
+
1536
+ # Print a string without indentation but with a `\n` at the end.
1537
+ #
1538
+ # source://rbi//lib/rbi/printer.rb#58
1539
+ sig { params(string: T.nilable(::String)).void }
1540
+ def printn(string = T.unsafe(nil)); end
1541
+
1542
+ # Print a string with indentation but without a `\n` at the end.
1543
+ #
1544
+ # source://rbi//lib/rbi/printer.rb#65
1545
+ sig { params(string: T.nilable(::String)).void }
1546
+ def printt(string = T.unsafe(nil)); end
1547
+
1548
+ # source://rbi//lib/rbi/printer.rb#83
1549
+ sig { override.params(node: T.nilable(::RBI::Node)).void }
1550
+ def visit(node); end
1551
+
1552
+ # source://rbi//lib/rbi/printer.rb#90
1553
+ sig { override.params(nodes: T::Array[::RBI::Node]).void }
1554
+ def visit_all(nodes); end
1555
+
1556
+ # source://rbi//lib/rbi/printer.rb#78
1557
+ sig { params(file: ::RBI::File).void }
1558
+ def visit_file(file); end
1559
+ end
1560
+
1561
+ # source://rbi//lib/rbi/model.rb#909
1562
+ class RBI::Private < ::RBI::Visibility
1563
+ # source://rbi//lib/rbi/model.rb#919
1564
+ sig do
1565
+ params(
1566
+ loc: T.nilable(::RBI::Loc),
1567
+ comments: T::Array[::RBI::Comment],
1568
+ block: T.nilable(T.proc.params(node: ::RBI::Private).void)
1569
+ ).void
1570
+ end
1571
+ def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
1572
+ end
1573
+
1574
+ # source://rbi//lib/rbi/model.rb#893
1575
+ class RBI::Protected < ::RBI::Visibility
1576
+ # source://rbi//lib/rbi/model.rb#903
1577
+ sig do
1578
+ params(
1579
+ loc: T.nilable(::RBI::Loc),
1580
+ comments: T::Array[::RBI::Comment],
1581
+ block: T.nilable(T.proc.params(node: ::RBI::Protected).void)
1582
+ ).void
1583
+ end
1584
+ def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
1585
+ end
1586
+
1587
+ # source://rbi//lib/rbi/model.rb#877
1588
+ class RBI::Public < ::RBI::Visibility
1589
+ # source://rbi//lib/rbi/model.rb#887
1590
+ sig do
1591
+ params(
1592
+ loc: T.nilable(::RBI::Loc),
1593
+ comments: T::Array[::RBI::Comment],
1594
+ block: T.nilable(T.proc.params(node: ::RBI::Public).void)
1595
+ ).void
1596
+ end
1597
+ def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
1598
+ end
1599
+
1600
+ # source://rbi//lib/rbi/model.rb#579
1601
+ class RBI::ReqParam < ::RBI::Param
1602
+ # source://rbi//lib/rbi/model.rb#590
1603
+ sig do
1604
+ params(
1605
+ name: ::String,
1606
+ loc: T.nilable(::RBI::Loc),
1607
+ comments: T::Array[::RBI::Comment],
1608
+ block: T.nilable(T.proc.params(node: ::RBI::ReqParam).void)
1609
+ ).void
1610
+ end
1611
+ def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
1612
+
1613
+ # source://rbi//lib/rbi/model.rb#596
1614
+ sig { params(other: T.nilable(::Object)).returns(T::Boolean) }
1615
+ def ==(other); end
1616
+ end
1617
+
1618
+ # source://rbi//lib/rbi/model.rb#1378
1619
+ class RBI::RequiresAncestor < ::RBI::NodeWithComments
1620
+ include ::RBI::Indexable
1621
+
1622
+ # source://rbi//lib/rbi/model.rb#1391
1623
+ sig { params(name: ::String, loc: T.nilable(::RBI::Loc), comments: T::Array[::RBI::Comment]).void }
1624
+ def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil)); end
1625
+
1626
+ # source://rbi//lib/rbi/printer.rb#870
1627
+ sig { override.params(v: ::RBI::Printer).void }
1628
+ def accept_printer(v); end
1629
+
1630
+ # source://rbi//lib/rbi/index.rb#163
1631
+ sig { override.returns(T::Array[::String]) }
1632
+ def index_ids; end
1633
+
1634
+ # source://rbi//lib/rbi/model.rb#1382
1635
+ sig { returns(::String) }
1636
+ def name; end
1637
+
1638
+ # source://rbi//lib/rbi/model.rb#1397
1639
+ sig { override.returns(::String) }
1640
+ def to_s; end
1641
+ end
1642
+
1643
+ # source://rbi//lib/rbi/model.rb#628
1644
+ class RBI::RestParam < ::RBI::Param
1645
+ # source://rbi//lib/rbi/model.rb#639
1646
+ sig do
1647
+ params(
1648
+ name: ::String,
1649
+ loc: T.nilable(::RBI::Loc),
1650
+ comments: T::Array[::RBI::Comment],
1651
+ block: T.nilable(T.proc.params(node: ::RBI::RestParam).void)
1652
+ ).void
1653
+ end
1654
+ def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
1655
+
1656
+ # source://rbi//lib/rbi/model.rb#650
1657
+ sig { params(other: T.nilable(::Object)).returns(T::Boolean) }
1658
+ def ==(other); end
1659
+
1660
+ # source://rbi//lib/rbi/printer.rb#483
1661
+ sig { override.params(v: ::RBI::Printer).void }
1662
+ def accept_printer(v); end
1663
+
1664
+ # source://rbi//lib/rbi/printer.rb#488
1665
+ sig { override.params(v: ::RBI::Printer, last: T::Boolean).void }
1666
+ def print_comment_leading_space(v, last:); end
1667
+
1668
+ # source://rbi//lib/rbi/model.rb#645
1669
+ sig { override.returns(::String) }
1670
+ def to_s; end
1671
+ end
1672
+
1673
+ # source://rbi//lib/rbi/rewriters/add_sig_templates.rb#5
1674
+ module RBI::Rewriters; end
1675
+
1676
+ # source://rbi//lib/rbi/rewriters/add_sig_templates.rb#6
1677
+ class RBI::Rewriters::AddSigTemplates < ::RBI::Visitor
1678
+ # source://rbi//lib/rbi/rewriters/add_sig_templates.rb#10
1679
+ sig { params(with_todo_comment: T::Boolean).void }
1680
+ def initialize(with_todo_comment: T.unsafe(nil)); end
1681
+
1682
+ # source://rbi//lib/rbi/rewriters/add_sig_templates.rb#16
1683
+ sig { override.params(node: T.nilable(::RBI::Node)).void }
1684
+ def visit(node); end
1685
+
1686
+ private
1687
+
1688
+ # source://rbi//lib/rbi/rewriters/add_sig_templates.rb#30
1689
+ sig { params(attr: ::RBI::Attr).void }
1690
+ def add_attr_sig(attr); end
1691
+
1692
+ # source://rbi//lib/rbi/rewriters/add_sig_templates.rb#45
1693
+ sig { params(method: ::RBI::Method).void }
1694
+ def add_method_sig(method); end
1695
+
1696
+ # source://rbi//lib/rbi/rewriters/add_sig_templates.rb#56
1697
+ sig { params(node: ::RBI::NodeWithComments).void }
1698
+ def add_todo_comment(node); end
1699
+ end
1700
+
1701
+ # source://rbi//lib/rbi/rewriters/annotate.rb#6
1702
+ class RBI::Rewriters::Annotate < ::RBI::Visitor
1703
+ # source://rbi//lib/rbi/rewriters/annotate.rb#10
1704
+ sig { params(annotation: ::String, annotate_scopes: T::Boolean, annotate_properties: T::Boolean).void }
1705
+ def initialize(annotation, annotate_scopes: T.unsafe(nil), annotate_properties: T.unsafe(nil)); end
1706
+
1707
+ # source://rbi//lib/rbi/rewriters/annotate.rb#18
1708
+ sig { override.params(node: T.nilable(::RBI::Node)).void }
1709
+ def visit(node); end
1710
+
1711
+ private
1712
+
1713
+ # source://rbi//lib/rbi/rewriters/annotate.rb#31
1714
+ sig { params(node: ::RBI::NodeWithComments).void }
1715
+ def annotate_node(node); end
1716
+
1717
+ # source://rbi//lib/rbi/rewriters/annotate.rb#38
1718
+ sig { params(node: ::RBI::Node).returns(T::Boolean) }
1719
+ def root?(node); end
1720
+ end
1721
+
1722
+ # source://rbi//lib/rbi/rewriters/deannotate.rb#6
1723
+ class RBI::Rewriters::Deannotate < ::RBI::Visitor
1724
+ # source://rbi//lib/rbi/rewriters/deannotate.rb#10
1725
+ sig { params(annotation: ::String).void }
1726
+ def initialize(annotation); end
1727
+
1728
+ # source://rbi//lib/rbi/rewriters/deannotate.rb#16
1729
+ sig { override.params(node: T.nilable(::RBI::Node)).void }
1730
+ def visit(node); end
1731
+
1732
+ private
1733
+
1734
+ # source://rbi//lib/rbi/rewriters/deannotate.rb#27
1735
+ sig { params(node: ::RBI::NodeWithComments).void }
1736
+ def deannotate_node(node); end
1737
+ end
1738
+
1739
+ # source://rbi//lib/rbi/rewriters/group_nodes.rb#6
1740
+ class RBI::Rewriters::GroupNodes < ::RBI::Visitor
1741
+ # source://rbi//lib/rbi/rewriters/group_nodes.rb#10
1742
+ sig { override.params(node: T.nilable(::RBI::Node)).void }
1743
+ def visit(node); end
1744
+ end
1745
+
1746
+ # Merge two RBI trees together
1747
+ #
1748
+ # Be this `Tree`:
1749
+ # ~~~rb
1750
+ # class Foo
1751
+ # attr_accessor :a
1752
+ # def m; end
1753
+ # C = 10
1754
+ # end
1755
+ # ~~~
1756
+ #
1757
+ # Merged with this one:
1758
+ # ~~~rb
1759
+ # class Foo
1760
+ # attr_reader :a
1761
+ # def m(x); end
1762
+ # C = 10
1763
+ # end
1764
+ # ~~~
1765
+ #
1766
+ # Compatible definitions are merged together while incompatible definitions are moved into a `ConflictTree`:
1767
+ # ~~~rb
1768
+ # class Foo
1769
+ # <<<<<<< left
1770
+ # attr_accessor :a
1771
+ # def m; end
1772
+ # =======
1773
+ # attr_reader :a
1774
+ # def m(x); end
1775
+ # >>>>>>> right
1776
+ # C = 10
1777
+ # end
1778
+ # ~~~
1779
+ #
1780
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#39
1781
+ class RBI::Rewriters::Merge
1782
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#70
1783
+ sig { params(left_name: ::String, right_name: ::String, keep: ::RBI::Rewriters::Merge::Keep).void }
1784
+ def initialize(left_name: T.unsafe(nil), right_name: T.unsafe(nil), keep: T.unsafe(nil)); end
1785
+
1786
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#79
1787
+ sig { params(tree: ::RBI::Tree).void }
1788
+ def merge(tree); end
1789
+
1790
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#67
1791
+ sig { returns(::RBI::MergeTree) }
1792
+ def tree; end
1793
+
1794
+ class << self
1795
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#54
1796
+ sig do
1797
+ params(
1798
+ left: ::RBI::Tree,
1799
+ right: ::RBI::Tree,
1800
+ left_name: ::String,
1801
+ right_name: ::String,
1802
+ keep: ::RBI::Rewriters::Merge::Keep
1803
+ ).returns(::RBI::MergeTree)
1804
+ end
1805
+ def merge_trees(left, right, left_name: T.unsafe(nil), right_name: T.unsafe(nil), keep: T.unsafe(nil)); end
1806
+ end
1807
+ end
1808
+
1809
+ # Used for logging / error displaying purpose
1810
+ #
1811
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#86
1812
+ class RBI::Rewriters::Merge::Conflict < ::T::Struct
1813
+ const :left, ::RBI::Node
1814
+ const :right, ::RBI::Node
1815
+ const :left_name, ::String
1816
+ const :right_name, ::String
1817
+
1818
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#95
1819
+ sig { returns(::String) }
1820
+ def to_s; end
1821
+
1822
+ class << self
1823
+ # source://sorbet-runtime/0.5.11218/lib/types/struct.rb#13
1824
+ def inherited(s); end
1825
+ end
1826
+ end
1827
+
1828
+ # Merge adjacent conflict trees
1829
+ #
1830
+ # Transform this:
1831
+ # ~~~rb
1832
+ # class Foo
1833
+ # <<<<<<< left
1834
+ # def m1; end
1835
+ # =======
1836
+ # def m1(a); end
1837
+ # >>>>>>> right
1838
+ # <<<<<<< left
1839
+ # def m2(a); end
1840
+ # =======
1841
+ # def m2; end
1842
+ # >>>>>>> right
1843
+ # end
1844
+ # ~~~
1845
+ #
1846
+ # Into this:
1847
+ # ~~~rb
1848
+ # class Foo
1849
+ # <<<<<<< left
1850
+ # def m1; end
1851
+ # def m2(a); end
1852
+ # =======
1853
+ # def m1(a); end
1854
+ # def m2; end
1855
+ # >>>>>>> right
1856
+ # end
1857
+ # ~~~
1858
+ #
1859
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#245
1860
+ class RBI::Rewriters::Merge::ConflictTreeMerger < ::RBI::Visitor
1861
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#247
1862
+ sig { override.params(node: T.nilable(::RBI::Node)).void }
1863
+ def visit(node); end
1864
+
1865
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#252
1866
+ sig { override.params(nodes: T::Array[::RBI::Node]).void }
1867
+ def visit_all(nodes); end
1868
+
1869
+ private
1870
+
1871
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#273
1872
+ sig { params(left: ::RBI::Tree, right: ::RBI::Tree).void }
1873
+ def merge_conflict_trees(left, right); end
1874
+ end
1875
+
1876
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#42
1877
+ class RBI::Rewriters::Merge::Keep < ::T::Enum
1878
+ enums do
1879
+ NONE = new
1880
+ LEFT = new
1881
+ RIGHT = new
1882
+ end
1883
+ end
1884
+
1885
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#100
1886
+ class RBI::Rewriters::Merge::TreeMerger < ::RBI::Visitor
1887
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#107
1888
+ sig do
1889
+ params(
1890
+ output: ::RBI::Tree,
1891
+ left_name: ::String,
1892
+ right_name: ::String,
1893
+ keep: ::RBI::Rewriters::Merge::Keep
1894
+ ).void
1895
+ end
1896
+ def initialize(output, left_name: T.unsafe(nil), right_name: T.unsafe(nil), keep: T.unsafe(nil)); end
1897
+
1898
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#104
1899
+ sig { returns(T::Array[::RBI::Rewriters::Merge::Conflict]) }
1900
+ def conflicts; end
1901
+
1902
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#119
1903
+ sig { override.params(node: T.nilable(::RBI::Node)).void }
1904
+ def visit(node); end
1905
+
1906
+ private
1907
+
1908
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#168
1909
+ sig { returns(::RBI::Tree) }
1910
+ def current_scope; end
1911
+
1912
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#185
1913
+ sig { params(left: ::RBI::Scope, right: ::RBI::Scope).void }
1914
+ def make_conflict_scope(left, right); end
1915
+
1916
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#192
1917
+ sig { params(left: ::RBI::Node, right: ::RBI::Node).void }
1918
+ def make_conflict_tree(left, right); end
1919
+
1920
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#173
1921
+ sig { params(node: ::RBI::Node).returns(T.nilable(::RBI::Node)) }
1922
+ def previous_definition(node); end
1923
+
1924
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#204
1925
+ sig { params(left: ::RBI::Scope, right: ::RBI::Scope).returns(::RBI::Scope) }
1926
+ def replace_scope_header(left, right); end
1927
+ end
1928
+
1929
+ # source://rbi//lib/rbi/rewriters/nest_non_public_methods.rb#6
1930
+ class RBI::Rewriters::NestNonPublicMethods < ::RBI::Visitor
1931
+ # source://rbi//lib/rbi/rewriters/nest_non_public_methods.rb#10
1932
+ sig { override.params(node: T.nilable(::RBI::Node)).void }
1933
+ def visit(node); end
1934
+ end
1935
+
1936
+ # source://rbi//lib/rbi/rewriters/nest_singleton_methods.rb#6
1937
+ class RBI::Rewriters::NestSingletonMethods < ::RBI::Visitor
1938
+ # source://rbi//lib/rbi/rewriters/nest_singleton_methods.rb#10
1939
+ sig { override.params(node: T.nilable(::RBI::Node)).void }
1940
+ def visit(node); end
1941
+ end
1942
+
1943
+ # Remove all definitions existing in the index from the current tree
1944
+ #
1945
+ # Let's create an `Index` from two different `Tree`s:
1946
+ # ~~~rb
1947
+ # tree1 = Parse.parse_string(<<~RBI)
1948
+ # class Foo
1949
+ # def foo; end
1950
+ # end
1951
+ # RBI
1952
+ #
1953
+ # tree2 = Parse.parse_string(<<~RBI)
1954
+ # FOO = 10
1955
+ # RBI
1956
+ #
1957
+ # index = Index.index(tree1, tree2)
1958
+ # ~~~
1959
+ #
1960
+ # We can use `RemoveKnownDefinitions` to remove the definitions found in the `index` from the `Tree` to clean:
1961
+ # ~~~rb
1962
+ # tree_to_clean = Parser.parse_string(<<~RBI)
1963
+ # class Foo
1964
+ # def foo; end
1965
+ # def bar; end
1966
+ # end
1967
+ # FOO = 10
1968
+ # BAR = 42
1969
+ # RBI
1970
+ #
1971
+ # cleaned_tree, operations = RemoveKnownDefinitions.remove(tree_to_clean, index)
1972
+ #
1973
+ # assert_equal(<<~RBI, cleaned_tree)
1974
+ # class Foo
1975
+ # def bar; end
1976
+ # end
1977
+ # BAR = 42
1978
+ # RBI
1979
+ #
1980
+ # assert_equal(<<~OPERATIONS, operations.join("\n"))
1981
+ # Deleted ::Foo#foo at -:2:2-2-16 (duplicate from -:2:2-2:16)
1982
+ # Deleted ::FOO at -:5:0-5:8 (duplicate from -:1:0-1:8)
1983
+ # OPERATIONS
1984
+ # ~~~
1985
+ #
1986
+ # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#48
1987
+ class RBI::Rewriters::RemoveKnownDefinitions < ::RBI::Visitor
1988
+ # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#55
1989
+ sig { params(index: ::RBI::Index).void }
1990
+ def initialize(index); end
1991
+
1992
+ # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#52
1993
+ sig { returns(T::Array[::RBI::Rewriters::RemoveKnownDefinitions::Operation]) }
1994
+ def operations; end
1995
+
1996
+ # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#83
1997
+ sig { override.params(node: T.nilable(::RBI::Node)).void }
1998
+ def visit(node); end
1999
+
2000
+ # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#78
2001
+ sig { params(nodes: T::Array[::RBI::Node]).void }
2002
+ def visit_all(nodes); end
2003
+
2004
+ private
2005
+
2006
+ # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#111
2007
+ sig { params(node: ::RBI::Node, previous: ::RBI::Node).returns(T::Boolean) }
2008
+ def can_delete_node?(node, previous); end
2009
+
2010
+ # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#129
2011
+ sig { params(node: ::RBI::Node, previous: ::RBI::Node).void }
2012
+ def delete_node(node, previous); end
2013
+
2014
+ # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#102
2015
+ sig { params(node: ::RBI::Indexable).returns(T.nilable(::RBI::Node)) }
2016
+ def previous_definition_for(node); end
2017
+
2018
+ class << self
2019
+ # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#70
2020
+ sig do
2021
+ params(
2022
+ tree: ::RBI::Tree,
2023
+ index: ::RBI::Index
2024
+ ).returns([::RBI::Tree, T::Array[::RBI::Rewriters::RemoveKnownDefinitions::Operation]])
2025
+ end
2026
+ def remove(tree, index); end
2027
+ end
2028
+ end
2029
+
2030
+ # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#134
2031
+ class RBI::Rewriters::RemoveKnownDefinitions::Operation < ::T::Struct
2032
+ const :deleted_node, ::RBI::Node
2033
+ const :duplicate_of, ::RBI::Node
2034
+
2035
+ # source://rbi//lib/rbi/rewriters/remove_known_definitions.rb#141
2036
+ sig { returns(::String) }
2037
+ def to_s; end
2038
+
2039
+ class << self
2040
+ # source://sorbet-runtime/0.5.11218/lib/types/struct.rb#13
2041
+ def inherited(s); end
2042
+ end
2043
+ end
2044
+
2045
+ # source://rbi//lib/rbi/rewriters/sort_nodes.rb#6
2046
+ class RBI::Rewriters::SortNodes < ::RBI::Visitor
2047
+ # source://rbi//lib/rbi/rewriters/sort_nodes.rb#10
2048
+ sig { override.params(node: T.nilable(::RBI::Node)).void }
2049
+ def visit(node); end
2050
+
2051
+ private
2052
+
2053
+ # source://rbi//lib/rbi/rewriters/sort_nodes.rb#73
2054
+ sig { params(kind: ::RBI::Group::Kind).returns(::Integer) }
2055
+ def group_rank(kind); end
2056
+
2057
+ # source://rbi//lib/rbi/rewriters/sort_nodes.rb#94
2058
+ sig { params(node: ::RBI::Node).returns(T.nilable(::String)) }
2059
+ def node_name(node); end
2060
+
2061
+ # source://rbi//lib/rbi/rewriters/sort_nodes.rb#45
2062
+ sig { params(node: ::RBI::Node).returns(::Integer) }
2063
+ def node_rank(node); end
2064
+
2065
+ # source://rbi//lib/rbi/rewriters/sort_nodes.rb#106
2066
+ sig { params(node: ::RBI::Node).void }
2067
+ def sort_node_names!(node); end
2068
+ end
2069
+
2070
+ # Scopes
2071
+ #
2072
+ # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
2073
+ #
2074
+ # source://rbi//lib/rbi/model.rb#176
2075
+ class RBI::Scope < ::RBI::Tree
2076
+ include ::RBI::Indexable
2077
+
2078
+ abstract!
2079
+
2080
+ # source://rbi//lib/rbi/printer.rb#242
2081
+ sig { override.params(v: ::RBI::Printer).void }
2082
+ def accept_printer(v); end
2083
+
2084
+ # Duplicate `self` scope without its body
2085
+ #
2086
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#356
2087
+ sig { returns(T.self_type) }
2088
+ def dup_empty; end
2089
+
2090
+ # @abstract
2091
+ #
2092
+ # source://rbi//lib/rbi/model.rb#182
2093
+ sig { abstract.returns(::String) }
2094
+ def fully_qualified_name; end
2095
+
2096
+ # source://rbi//lib/rbi/index.rb#93
2097
+ sig { override.returns(T::Array[::String]) }
2098
+ def index_ids; end
2099
+
2100
+ # source://rbi//lib/rbi/printer.rb#256
2101
+ sig { params(v: ::RBI::Printer).void }
2102
+ def print_body(v); end
2103
+
2104
+ # @abstract
2105
+ #
2106
+ # source://rbi//lib/rbi/printer.rb#253
2107
+ sig { abstract.params(v: ::RBI::Printer).void }
2108
+ def print_header(v); end
2109
+
2110
+ # source://rbi//lib/rbi/model.rb#185
2111
+ sig { override.returns(::String) }
2112
+ def to_s; end
2113
+ end
2114
+
2115
+ # A conflict between two scope headers
2116
+ #
2117
+ # Is rendered as a merge conflict between `left` and` right` for scope definitions:
2118
+ # ~~~rb
2119
+ # <<<<<<< left
2120
+ # class Foo
2121
+ # =======
2122
+ # module Foo
2123
+ # >>>>>>> right
2124
+ # def m1; end
2125
+ # end
2126
+ # ~~~
2127
+ #
2128
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#628
2129
+ class RBI::ScopeConflict < ::RBI::Tree
2130
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#642
2131
+ sig { params(left: ::RBI::Scope, right: ::RBI::Scope, left_name: ::String, right_name: ::String).void }
2132
+ def initialize(left:, right:, left_name: T.unsafe(nil), right_name: T.unsafe(nil)); end
2133
+
2134
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#651
2135
+ sig { override.params(v: ::RBI::Printer).void }
2136
+ def accept_printer(v); end
2137
+
2138
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#632
2139
+ sig { returns(::RBI::Scope) }
2140
+ def left; end
2141
+
2142
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#667
2143
+ sig { override.returns(T::Boolean) }
2144
+ def oneline?; end
2145
+
2146
+ # @return [Scope]
2147
+ #
2148
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#632
2149
+ def right; end
2150
+ end
2151
+
2152
+ # Sends
2153
+ #
2154
+ # source://rbi//lib/rbi/model.rb#927
2155
+ class RBI::Send < ::RBI::NodeWithComments
2156
+ include ::RBI::Indexable
2157
+
2158
+ # source://rbi//lib/rbi/model.rb#945
2159
+ sig do
2160
+ params(
2161
+ method: ::String,
2162
+ args: T::Array[::RBI::Arg],
2163
+ loc: T.nilable(::RBI::Loc),
2164
+ comments: T::Array[::RBI::Comment],
2165
+ block: T.nilable(T.proc.params(node: ::RBI::Send).void)
2166
+ ).void
2167
+ end
2168
+ def initialize(method, args = T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
2169
+
2170
+ # source://rbi//lib/rbi/model.rb#953
2171
+ sig { params(arg: ::RBI::Arg).void }
2172
+ def <<(arg); end
2173
+
2174
+ # source://rbi//lib/rbi/model.rb#958
2175
+ sig { params(other: T.nilable(::Object)).returns(T::Boolean) }
2176
+ def ==(other); end
2177
+
2178
+ # source://rbi//lib/rbi/printer.rb#592
2179
+ sig { override.params(v: ::RBI::Printer).void }
2180
+ def accept_printer(v); end
2181
+
2182
+ # source://rbi//lib/rbi/model.rb#934
2183
+ sig { returns(T::Array[::RBI::Arg]) }
2184
+ def args; end
2185
+
2186
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#529
2187
+ sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
2188
+ def compatible_with?(other); end
2189
+
2190
+ # source://rbi//lib/rbi/index.rb#193
2191
+ sig { override.returns(T::Array[::String]) }
2192
+ def index_ids; end
2193
+
2194
+ # source://rbi//lib/rbi/model.rb#931
2195
+ sig { returns(::String) }
2196
+ def method; end
2197
+
2198
+ # source://rbi//lib/rbi/model.rb#963
2199
+ sig { returns(::String) }
2200
+ def to_s; end
2201
+ end
2202
+
2203
+ # Sorbet's sigs
2204
+ #
2205
+ # source://rbi//lib/rbi/model.rb#1027
2206
+ class RBI::Sig < ::RBI::Node
2207
+ # source://rbi//lib/rbi/model.rb#1059
2208
+ sig do
2209
+ params(
2210
+ params: T::Array[::RBI::SigParam],
2211
+ return_type: T.nilable(::String),
2212
+ is_abstract: T::Boolean,
2213
+ is_override: T::Boolean,
2214
+ is_overridable: T::Boolean,
2215
+ is_final: T::Boolean,
2216
+ type_params: T::Array[::String],
2217
+ checked: T.nilable(::Symbol),
2218
+ loc: T.nilable(::RBI::Loc),
2219
+ block: T.nilable(T.proc.params(node: ::RBI::Sig).void)
2220
+ ).void
2221
+ end
2222
+ def initialize(params: T.unsafe(nil), return_type: T.unsafe(nil), is_abstract: T.unsafe(nil), is_override: T.unsafe(nil), is_overridable: T.unsafe(nil), is_final: T.unsafe(nil), type_params: T.unsafe(nil), checked: T.unsafe(nil), loc: T.unsafe(nil), &block); end
2223
+
2224
+ # source://rbi//lib/rbi/model.rb#1084
2225
+ sig { params(param: ::RBI::SigParam).void }
2226
+ def <<(param); end
2227
+
2228
+ # source://rbi//lib/rbi/model.rb#1089
2229
+ sig { params(other: ::Object).returns(T::Boolean) }
2230
+ def ==(other); end
2231
+
2232
+ # source://rbi//lib/rbi/printer.rb#633
2233
+ sig { override.params(v: ::RBI::Printer).void }
2234
+ def accept_printer(v); end
2235
+
2236
+ # source://rbi//lib/rbi/model.rb#1043
2237
+ sig { returns(T.nilable(::Symbol)) }
2238
+ def checked; end
2239
+
2240
+ # @return [Symbol, nil]
2241
+ #
2242
+ # source://rbi//lib/rbi/model.rb#1043
2243
+ def checked=(_arg0); end
2244
+
2245
+ # source://rbi//lib/rbi/printer.rb#656
2246
+ sig { returns(T::Boolean) }
2247
+ def inline_params?; end
2248
+
2249
+ # source://rbi//lib/rbi/model.rb#1037
2250
+ sig { returns(T::Boolean) }
2251
+ def is_abstract; end
2252
+
2253
+ # @return [Boolean]
2254
+ #
2255
+ # source://rbi//lib/rbi/model.rb#1037
2256
+ def is_abstract=(_arg0); end
2257
+
2258
+ # @return [Boolean]
2259
+ #
2260
+ # source://rbi//lib/rbi/model.rb#1037
2261
+ def is_final; end
2262
+
2263
+ # @return [Boolean]
2264
+ #
2265
+ # source://rbi//lib/rbi/model.rb#1037
2266
+ def is_final=(_arg0); end
2267
+
2268
+ # @return [Boolean]
2269
+ #
2270
+ # source://rbi//lib/rbi/model.rb#1037
2271
+ def is_overridable; end
2272
+
2273
+ # @return [Boolean]
2274
+ #
2275
+ # source://rbi//lib/rbi/model.rb#1037
2276
+ def is_overridable=(_arg0); end
2277
+
2278
+ # @return [Boolean]
2279
+ #
2280
+ # source://rbi//lib/rbi/model.rb#1037
2281
+ def is_override; end
2282
+
2283
+ # @return [Boolean]
2284
+ #
2285
+ # source://rbi//lib/rbi/model.rb#1037
2286
+ def is_override=(_arg0); end
2287
+
2288
+ # source://rbi//lib/rbi/printer.rb#651
2289
+ sig { override.returns(T::Boolean) }
2290
+ def oneline?; end
2291
+
2292
+ # source://rbi//lib/rbi/model.rb#1031
2293
+ sig { returns(T::Array[::RBI::SigParam]) }
2294
+ def params; end
2295
+
2296
+ # source://rbi//lib/rbi/model.rb#1034
2297
+ sig { returns(T.nilable(::String)) }
2298
+ def return_type; end
2299
+
2300
+ # @return [String, nil]
2301
+ #
2302
+ # source://rbi//lib/rbi/model.rb#1034
2303
+ def return_type=(_arg0); end
2304
+
2305
+ # source://rbi//lib/rbi/model.rb#1040
2306
+ sig { returns(T::Array[::String]) }
2307
+ def type_params; end
2308
+
2309
+ private
2310
+
2311
+ # source://rbi//lib/rbi/printer.rb#698
2312
+ sig { params(v: ::RBI::Printer).void }
2313
+ def print_as_block(v); end
2314
+
2315
+ # source://rbi//lib/rbi/printer.rb#674
2316
+ sig { params(v: ::RBI::Printer).void }
2317
+ def print_as_line(v); end
2318
+
2319
+ # source://rbi//lib/rbi/printer.rb#663
2320
+ sig { returns(T::Array[::String]) }
2321
+ def sig_modifiers; end
2322
+ end
2323
+
2324
+ # source://rbi//lib/rbi/model.rb#1098
2325
+ class RBI::SigParam < ::RBI::NodeWithComments
2326
+ # source://rbi//lib/rbi/model.rb#1113
2327
+ sig do
2328
+ params(
2329
+ name: ::String,
2330
+ type: ::String,
2331
+ loc: T.nilable(::RBI::Loc),
2332
+ comments: T::Array[::RBI::Comment],
2333
+ block: T.nilable(T.proc.params(node: ::RBI::SigParam).void)
2334
+ ).void
2335
+ end
2336
+ def initialize(name, type, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
2337
+
2338
+ # source://rbi//lib/rbi/model.rb#1121
2339
+ sig { params(other: ::Object).returns(T::Boolean) }
2340
+ def ==(other); end
2341
+
2342
+ # source://rbi//lib/rbi/printer.rb#751
2343
+ sig { override.params(v: ::RBI::Printer).void }
2344
+ def accept_printer(v); end
2345
+
2346
+ # source://rbi//lib/rbi/printer.rb#764
2347
+ sig { returns(T::Array[::String]) }
2348
+ def comments_lines; end
2349
+
2350
+ # source://rbi//lib/rbi/model.rb#1102
2351
+ sig { returns(::String) }
2352
+ def name; end
2353
+
2354
+ # source://rbi//lib/rbi/printer.rb#756
2355
+ sig { params(v: ::RBI::Printer, last: T::Boolean).void }
2356
+ def print_comment_leading_space(v, last:); end
2357
+
2358
+ # @return [String]
2359
+ #
2360
+ # source://rbi//lib/rbi/model.rb#1102
2361
+ def type; end
2362
+ end
2363
+
2364
+ # source://rbi//lib/rbi/model.rb#251
2365
+ class RBI::SingletonClass < ::RBI::Scope
2366
+ # source://rbi//lib/rbi/model.rb#261
2367
+ sig do
2368
+ params(
2369
+ loc: T.nilable(::RBI::Loc),
2370
+ comments: T::Array[::RBI::Comment],
2371
+ block: T.nilable(T.proc.params(node: ::RBI::SingletonClass).void)
2372
+ ).void
2373
+ end
2374
+ def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
2375
+
2376
+ # source://rbi//lib/rbi/model.rb#267
2377
+ sig { override.returns(::String) }
2378
+ def fully_qualified_name; end
2379
+
2380
+ # source://rbi//lib/rbi/printer.rb#321
2381
+ sig { override.params(v: ::RBI::Printer).void }
2382
+ def print_header(v); end
2383
+ end
2384
+
2385
+ # source://rbi//lib/rbi/model.rb#272
2386
+ class RBI::Struct < ::RBI::Scope
2387
+ # source://rbi//lib/rbi/model.rb#294
2388
+ sig do
2389
+ params(
2390
+ name: ::String,
2391
+ members: T::Array[::Symbol],
2392
+ keyword_init: T::Boolean,
2393
+ loc: T.nilable(::RBI::Loc),
2394
+ comments: T::Array[::RBI::Comment],
2395
+ block: T.nilable(T.proc.params(struct: ::RBI::Struct).void)
2396
+ ).void
2397
+ end
2398
+ def initialize(name, members: T.unsafe(nil), keyword_init: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
2399
+
2400
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#394
2401
+ sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
2402
+ def compatible_with?(other); end
2403
+
2404
+ # source://rbi//lib/rbi/model.rb#303
2405
+ sig { override.returns(::String) }
2406
+ def fully_qualified_name; end
2407
+
2408
+ # source://rbi//lib/rbi/model.rb#282
2409
+ sig { returns(T::Boolean) }
2410
+ def keyword_init; end
2411
+
2412
+ # @return [Boolean]
2413
+ #
2414
+ # source://rbi//lib/rbi/model.rb#282
2415
+ def keyword_init=(_arg0); end
2416
+
2417
+ # source://rbi//lib/rbi/model.rb#279
2418
+ sig { returns(T::Array[::Symbol]) }
2419
+ def members; end
2420
+
2421
+ # @return [Array<Symbol>]
2422
+ #
2423
+ # source://rbi//lib/rbi/model.rb#279
2424
+ def members=(_arg0); end
2425
+
2426
+ # source://rbi//lib/rbi/model.rb#276
2427
+ sig { returns(::String) }
2428
+ def name; end
2429
+
2430
+ # @return [String]
2431
+ #
2432
+ # source://rbi//lib/rbi/model.rb#276
2433
+ def name=(_arg0); end
2434
+
2435
+ # source://rbi//lib/rbi/printer.rb#300
2436
+ sig { override.params(v: ::RBI::Printer).void }
2437
+ def print_header(v); end
2438
+ end
2439
+
2440
+ # Sorbet's T::Enum
2441
+ #
2442
+ # source://rbi//lib/rbi/model.rb#1239
2443
+ class RBI::TEnum < ::RBI::Class
2444
+ # source://rbi//lib/rbi/model.rb#1250
2445
+ sig do
2446
+ params(
2447
+ name: ::String,
2448
+ loc: T.nilable(::RBI::Loc),
2449
+ comments: T::Array[::RBI::Comment],
2450
+ block: T.nilable(T.proc.params(klass: ::RBI::TEnum).void)
2451
+ ).void
2452
+ end
2453
+ def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
2454
+ end
2455
+
2456
+ # source://rbi//lib/rbi/model.rb#1256
2457
+ class RBI::TEnumBlock < ::RBI::NodeWithComments
2458
+ include ::RBI::Indexable
2459
+
2460
+ # source://rbi//lib/rbi/model.rb#1270
2461
+ sig do
2462
+ params(
2463
+ names: T::Array[::String],
2464
+ loc: T.nilable(::RBI::Loc),
2465
+ comments: T::Array[::RBI::Comment],
2466
+ block: T.nilable(T.proc.params(node: ::RBI::TEnumBlock).void)
2467
+ ).void
2468
+ end
2469
+ def initialize(names = T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
2470
+
2471
+ # source://rbi//lib/rbi/model.rb#1282
2472
+ sig { params(name: ::String).void }
2473
+ def <<(name); end
2474
+
2475
+ # source://rbi//lib/rbi/printer.rb#795
2476
+ sig { override.params(v: ::RBI::Printer).void }
2477
+ def accept_printer(v); end
2478
+
2479
+ # source://rbi//lib/rbi/model.rb#1277
2480
+ sig { returns(T::Boolean) }
2481
+ def empty?; end
2482
+
2483
+ # source://rbi//lib/rbi/index.rb#223
2484
+ sig { override.returns(T::Array[::String]) }
2485
+ def index_ids; end
2486
+
2487
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#556
2488
+ sig { override.params(other: ::RBI::Node).void }
2489
+ def merge_with(other); end
2490
+
2491
+ # source://rbi//lib/rbi/model.rb#1260
2492
+ sig { returns(T::Array[::String]) }
2493
+ def names; end
2494
+
2495
+ # source://rbi//lib/rbi/model.rb#1287
2496
+ sig { override.returns(::String) }
2497
+ def to_s; end
2498
+ end
2499
+
2500
+ # Sorbet's T::Struct
2501
+ #
2502
+ # source://rbi//lib/rbi/model.rb#1128
2503
+ class RBI::TStruct < ::RBI::Class
2504
+ # source://rbi//lib/rbi/model.rb#1139
2505
+ sig do
2506
+ params(
2507
+ name: ::String,
2508
+ loc: T.nilable(::RBI::Loc),
2509
+ comments: T::Array[::RBI::Comment],
2510
+ block: T.nilable(T.proc.params(klass: ::RBI::TStruct).void)
2511
+ ).void
2512
+ end
2513
+ def initialize(name, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
2514
+ end
2515
+
2516
+ # source://rbi//lib/rbi/model.rb#1177
2517
+ class RBI::TStructConst < ::RBI::TStructField
2518
+ include ::RBI::Indexable
2519
+
2520
+ # source://rbi//lib/rbi/model.rb#1190
2521
+ sig do
2522
+ params(
2523
+ name: ::String,
2524
+ type: ::String,
2525
+ default: T.nilable(::String),
2526
+ loc: T.nilable(::RBI::Loc),
2527
+ comments: T::Array[::RBI::Comment],
2528
+ block: T.nilable(T.proc.params(node: ::RBI::TStructConst).void)
2529
+ ).void
2530
+ end
2531
+ def initialize(name, type, default: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
2532
+
2533
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#547
2534
+ sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
2535
+ def compatible_with?(other); end
2536
+
2537
+ # source://rbi//lib/rbi/model.rb#1196
2538
+ sig { override.returns(T::Array[::String]) }
2539
+ def fully_qualified_names; end
2540
+
2541
+ # source://rbi//lib/rbi/index.rb#203
2542
+ sig { override.returns(T::Array[::String]) }
2543
+ def index_ids; end
2544
+
2545
+ # source://rbi//lib/rbi/model.rb#1202
2546
+ sig { override.returns(::String) }
2547
+ def to_s; end
2548
+ end
2549
+
2550
+ # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
2551
+ #
2552
+ # source://rbi//lib/rbi/model.rb#1145
2553
+ class RBI::TStructField < ::RBI::NodeWithComments
2554
+ abstract!
2555
+
2556
+ # source://rbi//lib/rbi/model.rb#1166
2557
+ sig do
2558
+ params(
2559
+ name: ::String,
2560
+ type: ::String,
2561
+ default: T.nilable(::String),
2562
+ loc: T.nilable(::RBI::Loc),
2563
+ comments: T::Array[::RBI::Comment]
2564
+ ).void
2565
+ end
2566
+ def initialize(name, type, default: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil)); end
2567
+
2568
+ # source://rbi//lib/rbi/printer.rb#773
2569
+ sig { override.params(v: ::RBI::Printer).void }
2570
+ def accept_printer(v); end
2571
+
2572
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#538
2573
+ sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
2574
+ def compatible_with?(other); end
2575
+
2576
+ # source://rbi//lib/rbi/model.rb#1155
2577
+ sig { returns(T.nilable(::String)) }
2578
+ def default; end
2579
+
2580
+ # @return [String, nil]
2581
+ #
2582
+ # source://rbi//lib/rbi/model.rb#1155
2583
+ def default=(_arg0); end
2584
+
2585
+ # @abstract
2586
+ #
2587
+ # source://rbi//lib/rbi/model.rb#1174
2588
+ sig { abstract.returns(T::Array[::String]) }
2589
+ def fully_qualified_names; end
2590
+
2591
+ # source://rbi//lib/rbi/model.rb#1152
2592
+ sig { returns(::String) }
2593
+ def name; end
2594
+
2595
+ # @return [String]
2596
+ #
2597
+ # source://rbi//lib/rbi/model.rb#1152
2598
+ def name=(_arg0); end
2599
+
2600
+ # @return [String]
2601
+ #
2602
+ # source://rbi//lib/rbi/model.rb#1152
2603
+ def type; end
2604
+
2605
+ # @return [String]
2606
+ #
2607
+ # source://rbi//lib/rbi/model.rb#1152
2608
+ def type=(_arg0); end
2609
+ end
2610
+
2611
+ # source://rbi//lib/rbi/model.rb#1207
2612
+ class RBI::TStructProp < ::RBI::TStructField
2613
+ include ::RBI::Indexable
2614
+
2615
+ # source://rbi//lib/rbi/model.rb#1220
2616
+ sig do
2617
+ params(
2618
+ name: ::String,
2619
+ type: ::String,
2620
+ default: T.nilable(::String),
2621
+ loc: T.nilable(::RBI::Loc),
2622
+ comments: T::Array[::RBI::Comment],
2623
+ block: T.nilable(T.proc.params(node: ::RBI::TStructProp).void)
2624
+ ).void
2625
+ end
2626
+ def initialize(name, type, default: T.unsafe(nil), loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
2627
+
2628
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#570
2629
+ sig { override.params(other: ::RBI::Node).returns(T::Boolean) }
2630
+ def compatible_with?(other); end
2631
+
2632
+ # source://rbi//lib/rbi/model.rb#1226
2633
+ sig { override.returns(T::Array[::String]) }
2634
+ def fully_qualified_names; end
2635
+
2636
+ # source://rbi//lib/rbi/index.rb#213
2637
+ sig { override.returns(T::Array[::String]) }
2638
+ def index_ids; end
2639
+
2640
+ # source://rbi//lib/rbi/model.rb#1232
2641
+ sig { override.returns(::String) }
2642
+ def to_s; end
2643
+ end
2644
+
2645
+ # source://rbi//lib/rbi/model.rb#106
2646
+ class RBI::Tree < ::RBI::NodeWithComments
2647
+ # source://rbi//lib/rbi/model.rb#119
2648
+ sig do
2649
+ params(
2650
+ loc: T.nilable(::RBI::Loc),
2651
+ comments: T::Array[::RBI::Comment],
2652
+ block: T.nilable(T.proc.params(node: ::RBI::Tree).void)
2653
+ ).void
2654
+ end
2655
+ def initialize(loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
2656
+
2657
+ # source://rbi//lib/rbi/model.rb#126
2658
+ sig { params(node: ::RBI::Node).void }
2659
+ def <<(node); end
2660
+
2661
+ # source://rbi//lib/rbi/printer.rb#226
2662
+ sig { override.params(v: ::RBI::Printer).void }
2663
+ def accept_printer(v); end
2664
+
2665
+ # source://rbi//lib/rbi/rewriters/add_sig_templates.rb#66
2666
+ sig { params(with_todo_comment: T::Boolean).void }
2667
+ def add_sig_templates!(with_todo_comment: T.unsafe(nil)); end
2668
+
2669
+ # source://rbi//lib/rbi/rewriters/annotate.rb#49
2670
+ sig { params(annotation: ::String, annotate_scopes: T::Boolean, annotate_properties: T::Boolean).void }
2671
+ def annotate!(annotation, annotate_scopes: T.unsafe(nil), annotate_properties: T.unsafe(nil)); end
2672
+
2673
+ # source://tapioca/0.11.17/lib/tapioca/rbi_ext/model.rb#38
2674
+ sig do
2675
+ params(
2676
+ name: ::String,
2677
+ superclass_name: T.nilable(::String),
2678
+ block: T.nilable(T.proc.params(scope: ::RBI::Scope).void)
2679
+ ).returns(::RBI::Scope)
2680
+ end
2681
+ def create_class(name, superclass_name: T.unsafe(nil), &block); end
2682
+
2683
+ # source://tapioca/0.11.17/lib/tapioca/rbi_ext/model.rb#45
2684
+ sig { params(name: ::String, value: ::String).void }
2685
+ def create_constant(name, value:); end
2686
+
2687
+ # source://tapioca/0.11.17/lib/tapioca/rbi_ext/model.rb#55
2688
+ sig { params(name: ::String).void }
2689
+ def create_extend(name); end
2690
+
2691
+ # source://tapioca/0.11.17/lib/tapioca/rbi_ext/model.rb#50
2692
+ sig { params(name: ::String).void }
2693
+ def create_include(name); end
2694
+
2695
+ # source://tapioca/0.11.17/lib/tapioca/rbi_ext/model.rb#89
2696
+ sig do
2697
+ params(
2698
+ name: ::String,
2699
+ parameters: T::Array[::RBI::TypedParam],
2700
+ return_type: ::String,
2701
+ class_method: T::Boolean,
2702
+ visibility: ::RBI::Visibility,
2703
+ comments: T::Array[::RBI::Comment]
2704
+ ).void
2705
+ end
2706
+ def create_method(name, parameters: T.unsafe(nil), return_type: T.unsafe(nil), class_method: T.unsafe(nil), visibility: T.unsafe(nil), comments: T.unsafe(nil)); end
2707
+
2708
+ # source://tapioca/0.11.17/lib/tapioca/rbi_ext/model.rb#60
2709
+ sig { params(name: ::String).void }
2710
+ def create_mixes_in_class_methods(name); end
2711
+
2712
+ # source://tapioca/0.11.17/lib/tapioca/rbi_ext/model.rb#25
2713
+ sig { params(name: ::String, block: T.nilable(T.proc.params(scope: ::RBI::Scope).void)).returns(::RBI::Scope) }
2714
+ def create_module(name, &block); end
2715
+
2716
+ # source://tapioca/0.11.17/lib/tapioca/rbi_ext/model.rb#9
2717
+ sig { params(constant: ::Module, block: T.nilable(T.proc.params(scope: ::RBI::Scope).void)).returns(::RBI::Scope) }
2718
+ def create_path(constant, &block); end
2719
+
2720
+ # source://tapioca/0.11.17/lib/tapioca/rbi_ext/model.rb#74
2721
+ sig do
2722
+ params(
2723
+ name: ::String,
2724
+ type: ::String,
2725
+ variance: ::Symbol,
2726
+ fixed: T.nilable(::String),
2727
+ upper: T.nilable(::String),
2728
+ lower: T.nilable(::String)
2729
+ ).void
2730
+ end
2731
+ def create_type_variable(name, type:, variance: T.unsafe(nil), fixed: T.unsafe(nil), upper: T.unsafe(nil), lower: T.unsafe(nil)); end
2732
+
2733
+ # source://rbi//lib/rbi/rewriters/deannotate.rb#41
2734
+ sig { params(annotation: ::String).void }
2735
+ def deannotate!(annotation); end
2736
+
2737
+ # source://rbi//lib/rbi/model.rb#132
2738
+ sig { returns(T::Boolean) }
2739
+ def empty?; end
2740
+
2741
+ # source://rbi//lib/rbi/rewriters/group_nodes.rb#38
2742
+ sig { void }
2743
+ def group_nodes!; end
2744
+
2745
+ # source://rbi//lib/rbi/index.rb#68
2746
+ sig { returns(::RBI::Index) }
2747
+ def index; end
2748
+
2749
+ # source://rbi//lib/rbi/rewriters/merge_trees.rb#324
2750
+ sig do
2751
+ params(
2752
+ other: ::RBI::Tree,
2753
+ left_name: ::String,
2754
+ right_name: ::String,
2755
+ keep: ::RBI::Rewriters::Merge::Keep
2756
+ ).returns(::RBI::MergeTree)
2757
+ end
2758
+ def merge(other, left_name: T.unsafe(nil), right_name: T.unsafe(nil), keep: T.unsafe(nil)); end
2759
+
2760
+ # source://rbi//lib/rbi/rewriters/nest_non_public_methods.rb#46
2761
+ sig { void }
2762
+ def nest_non_public_methods!; end
2763
+
2764
+ # source://rbi//lib/rbi/rewriters/nest_singleton_methods.rb#36
2765
+ sig { void }
2766
+ def nest_singleton_methods!; end
2767
+
2768
+ # source://rbi//lib/rbi/model.rb#110
2769
+ sig { returns(T::Array[::RBI::Node]) }
2770
+ def nodes; end
2771
+
2772
+ # source://rbi//lib/rbi/printer.rb#233
2773
+ sig { override.returns(T::Boolean) }
2774
+ def oneline?; end
2775
+
2776
+ # source://rbi//lib/rbi/rewriters/sort_nodes.rb#119
2777
+ sig { void }
2778
+ def sort_nodes!; end
2779
+
2780
+ private
2781
+
2782
+ # source://tapioca/0.11.17/lib/tapioca/rbi_ext/model.rb#116
2783
+ sig { params(node: ::RBI::Node).returns(::RBI::Node) }
2784
+ def create_node(node); end
2785
+
2786
+ # source://tapioca/0.11.17/lib/tapioca/rbi_ext/model.rb#111
2787
+ sig { returns(T::Hash[::String, ::RBI::Node]) }
2788
+ def nodes_cache; end
2789
+ end
2790
+
2791
+ # source://rbi//lib/rbi/model.rb#1320
2792
+ class RBI::TypeMember < ::RBI::NodeWithComments
2793
+ include ::RBI::Indexable
2794
+
2795
+ # source://rbi//lib/rbi/model.rb#1335
2796
+ sig do
2797
+ params(
2798
+ name: ::String,
2799
+ value: ::String,
2800
+ loc: T.nilable(::RBI::Loc),
2801
+ comments: T::Array[::RBI::Comment],
2802
+ block: T.nilable(T.proc.params(node: ::RBI::TypeMember).void)
2803
+ ).void
2804
+ end
2805
+ def initialize(name, value, loc: T.unsafe(nil), comments: T.unsafe(nil), &block); end
2806
+
2807
+ # source://rbi//lib/rbi/printer.rb#812
2808
+ sig { override.params(v: ::RBI::Printer).void }
2809
+ def accept_printer(v); end
2810
+
2811
+ # source://rbi//lib/rbi/model.rb#1343
2812
+ sig { returns(::String) }
2813
+ def fully_qualified_name; end
2814
+
2815
+ # source://rbi//lib/rbi/index.rb#183
2816
+ sig { override.returns(T::Array[::String]) }
2817
+ def index_ids; end
2818
+
2819
+ # source://rbi//lib/rbi/model.rb#1324
2820
+ sig { returns(::String) }
2821
+ def name; end
2822
+
2823
+ # source://rbi//lib/rbi/model.rb#1350
2824
+ sig { override.returns(::String) }
2825
+ def to_s; end
2826
+
2827
+ # @return [String]
2828
+ #
2829
+ # source://rbi//lib/rbi/model.rb#1324
2830
+ def value; end
2831
+ end
2832
+
2833
+ # source://rbi//lib/rbi/parser.rb#20
2834
+ class RBI::UnexpectedParserError < ::StandardError
2835
+ # source://rbi//lib/rbi/parser.rb#27
2836
+ sig { params(parent_exception: ::Exception, last_location: ::RBI::Loc).void }
2837
+ def initialize(parent_exception, last_location); end
2838
+
2839
+ # source://rbi//lib/rbi/parser.rb#24
2840
+ sig { returns(::RBI::Loc) }
2841
+ def last_location; end
2842
+
2843
+ # source://rbi//lib/rbi/parser.rb#34
2844
+ sig { params(io: T.any(::IO, ::StringIO)).void }
2845
+ def print_debug(io: T.unsafe(nil)); end
2846
+ end
2847
+
2848
+ # source://rbi//lib/rbi/version.rb#5
2849
+ RBI::VERSION = T.let(T.unsafe(nil), String)
2850
+
2851
+ # Visibility
2852
+ #
2853
+ # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
2854
+ #
2855
+ # source://rbi//lib/rbi/model.rb#841
2856
+ class RBI::Visibility < ::RBI::NodeWithComments
2857
+ abstract!
2858
+
2859
+ # source://rbi//lib/rbi/model.rb#851
2860
+ sig { params(visibility: ::Symbol, loc: T.nilable(::RBI::Loc), comments: T::Array[::RBI::Comment]).void }
2861
+ def initialize(visibility, loc: T.unsafe(nil), comments: T.unsafe(nil)); end
2862
+
2863
+ # source://rbi//lib/rbi/model.rb#857
2864
+ sig { params(other: ::RBI::Visibility).returns(T::Boolean) }
2865
+ def ==(other); end
2866
+
2867
+ # source://rbi//lib/rbi/printer.rb#579
2868
+ sig { override.params(v: ::RBI::Printer).void }
2869
+ def accept_printer(v); end
2870
+
2871
+ # source://rbi//lib/rbi/model.rb#872
2872
+ sig { returns(T::Boolean) }
2873
+ def private?; end
2874
+
2875
+ # source://rbi//lib/rbi/model.rb#867
2876
+ sig { returns(T::Boolean) }
2877
+ def protected?; end
2878
+
2879
+ # source://rbi//lib/rbi/model.rb#862
2880
+ sig { returns(T::Boolean) }
2881
+ def public?; end
2882
+
2883
+ # source://rbi//lib/rbi/model.rb#848
2884
+ sig { returns(::Symbol) }
2885
+ def visibility; end
2886
+ end
2887
+
2888
+ # source://rbi//lib/rbi/rewriters/nest_non_public_methods.rb#52
2889
+ class RBI::VisibilityGroup < ::RBI::Tree
2890
+ # source://rbi//lib/rbi/rewriters/nest_non_public_methods.rb#59
2891
+ sig { params(visibility: ::RBI::Visibility).void }
2892
+ def initialize(visibility); end
2893
+
2894
+ # source://rbi//lib/rbi/printer.rb#848
2895
+ sig { override.params(v: ::RBI::Printer).void }
2896
+ def accept_printer(v); end
2897
+
2898
+ # source://rbi//lib/rbi/printer.rb#861
2899
+ sig { override.returns(T::Boolean) }
2900
+ def oneline?; end
2901
+
2902
+ # source://rbi//lib/rbi/rewriters/nest_non_public_methods.rb#56
2903
+ sig { returns(::RBI::Visibility) }
2904
+ def visibility; end
2905
+ end
2906
+
2907
+ # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
2908
+ #
2909
+ # source://rbi//lib/rbi/visitor.rb#5
2910
+ class RBI::Visitor
2911
+ abstract!
2912
+
2913
+ # @abstract
2914
+ #
2915
+ # source://rbi//lib/rbi/visitor.rb#12
2916
+ sig { abstract.params(node: T.nilable(::RBI::Node)).void }
2917
+ def visit(node); end
2918
+
2919
+ # source://rbi//lib/rbi/visitor.rb#15
2920
+ sig { params(nodes: T::Array[::RBI::Node]).void }
2921
+ def visit_all(nodes); end
2922
+ end