sorbet-schema 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. checksums.yaml +7 -0
  2. data/.ruby-version +1 -0
  3. data/.standard.yml +6 -0
  4. data/.tool-versions +1 -0
  5. data/CHANGELOG.md +24 -0
  6. data/CODE_OF_CONDUCT.md +84 -0
  7. data/Gemfile +25 -0
  8. data/Gemfile.lock +147 -0
  9. data/LICENSE.txt +21 -0
  10. data/README.md +43 -0
  11. data/Rakefile +22 -0
  12. data/lib/sorbet-schema/hash_transformer.rb +22 -0
  13. data/lib/sorbet-schema/struct_ext.rb +37 -0
  14. data/lib/sorbet-schema/version.rb +5 -0
  15. data/lib/sorbet-schema.rb +27 -0
  16. data/lib/typed/coercion/coercer.rb +18 -0
  17. data/lib/typed/coercion/coercion_error.rb +7 -0
  18. data/lib/typed/coercion/coercion_not_supported_error.rb +7 -0
  19. data/lib/typed/coercion/float_coercer.rb +21 -0
  20. data/lib/typed/coercion/integer_coercer.rb +21 -0
  21. data/lib/typed/coercion/string_coercer.rb +19 -0
  22. data/lib/typed/coercion/struct_coercer.rb +26 -0
  23. data/lib/typed/coercion.rb +26 -0
  24. data/lib/typed/deserialize_error.rb +6 -0
  25. data/lib/typed/field.rb +28 -0
  26. data/lib/typed/hash_serializer.rb +21 -0
  27. data/lib/typed/json_serializer.rb +28 -0
  28. data/lib/typed/parse_error.rb +12 -0
  29. data/lib/typed/schema.rb +10 -0
  30. data/lib/typed/serializer.rb +61 -0
  31. data/lib/typed/validations/field_type_validator.rb +24 -0
  32. data/lib/typed/validations/field_validator.rb +15 -0
  33. data/lib/typed/validations/multiple_validation_error.rb +16 -0
  34. data/lib/typed/validations/required_field_error.rb +14 -0
  35. data/lib/typed/validations/type_mismatch_error.rb +14 -0
  36. data/lib/typed/validations/validated_value.rb +12 -0
  37. data/lib/typed/validations/validation_error.rb +8 -0
  38. data/lib/typed/validations/validation_results.rb +29 -0
  39. data/lib/typed/validations.rb +8 -0
  40. data/sorbet/config +5 -0
  41. data/sorbet/rbi/annotations/rainbow.rbi +269 -0
  42. data/sorbet/rbi/gems/.gitattributes +1 -0
  43. data/sorbet/rbi/gems/ansi@1.5.0.rbi +687 -0
  44. data/sorbet/rbi/gems/ast@2.4.2.rbi +584 -0
  45. data/sorbet/rbi/gems/builder@3.2.4.rbi +504 -0
  46. data/sorbet/rbi/gems/erubi@1.12.0.rbi +145 -0
  47. data/sorbet/rbi/gems/io-console@0.7.2.rbi +8 -0
  48. data/sorbet/rbi/gems/json@2.7.1.rbi +1553 -0
  49. data/sorbet/rbi/gems/language_server-protocol@3.17.0.3.rbi +14237 -0
  50. data/sorbet/rbi/gems/lint_roller@1.1.0.rbi +239 -0
  51. data/sorbet/rbi/gems/minitest-focus@1.4.0.rbi +91 -0
  52. data/sorbet/rbi/gems/minitest-reporters@1.6.1.rbi +1010 -0
  53. data/sorbet/rbi/gems/minitest@5.22.2.rbi +2233 -0
  54. data/sorbet/rbi/gems/netrc@0.11.0.rbi +158 -0
  55. data/sorbet/rbi/gems/parallel@1.24.0.rbi +280 -0
  56. data/sorbet/rbi/gems/parser@3.3.0.5.rbi +5472 -0
  57. data/sorbet/rbi/gems/prettier_print@1.2.1.rbi +951 -0
  58. data/sorbet/rbi/gems/prism@0.24.0.rbi +31040 -0
  59. data/sorbet/rbi/gems/psych@5.1.2.rbi +1731 -0
  60. data/sorbet/rbi/gems/racc@1.7.3.rbi +157 -0
  61. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +402 -0
  62. data/sorbet/rbi/gems/rake@13.1.0.rbi +3027 -0
  63. data/sorbet/rbi/gems/rbi@0.1.9.rbi +3006 -0
  64. data/sorbet/rbi/gems/regexp_parser@2.9.0.rbi +3771 -0
  65. data/sorbet/rbi/gems/reline@0.4.3.rbi +8 -0
  66. data/sorbet/rbi/gems/rexml@3.2.6.rbi +4781 -0
  67. data/sorbet/rbi/gems/rubocop-ast@1.31.1.rbi +7014 -0
  68. data/sorbet/rbi/gems/rubocop-performance@1.20.2.rbi +8 -0
  69. data/sorbet/rbi/gems/rubocop-sorbet@0.7.7.rbi +8 -0
  70. data/sorbet/rbi/gems/rubocop@1.61.0.rbi +57499 -0
  71. data/sorbet/rbi/gems/ruby-progressbar@1.13.0.rbi +1317 -0
  72. data/sorbet/rbi/gems/sorbet-result@1.1.0.rbi +519 -0
  73. data/sorbet/rbi/gems/sorbet-struct-comparable@1.3.0.rbi +34 -0
  74. data/sorbet/rbi/gems/spoom@1.2.4.rbi +3777 -0
  75. data/sorbet/rbi/gems/standard-custom@1.0.2.rbi +8 -0
  76. data/sorbet/rbi/gems/standard-performance@1.3.1.rbi +80 -0
  77. data/sorbet/rbi/gems/standard-sorbet@0.0.2.rbi +52 -0
  78. data/sorbet/rbi/gems/standard@1.34.0.rbi +850 -0
  79. data/sorbet/rbi/gems/stringio@3.1.0.rbi +8 -0
  80. data/sorbet/rbi/gems/syntax_tree@6.2.0.rbi +23133 -0
  81. data/sorbet/rbi/gems/tapioca@0.12.0.rbi +3499 -0
  82. data/sorbet/rbi/gems/thor@1.3.1.rbi +4351 -0
  83. data/sorbet/rbi/gems/unicode-display_width@2.5.0.rbi +65 -0
  84. data/sorbet/rbi/gems/yard-sorbet@0.8.1.rbi +428 -0
  85. data/sorbet/rbi/gems/yard@0.9.36.rbi +18220 -0
  86. data/sorbet/rbi/gems/zeitwerk@2.6.13.rbi +1003 -0
  87. data/sorbet/tapioca/config.yml +4 -0
  88. data/sorbet/tapioca/require.rb +12 -0
  89. metadata +191 -0
@@ -0,0 +1,519 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `sorbet-result` gem.
5
+ # Please instead update this file by running `bin/tapioca gem sorbet-result`.
6
+
7
+ # source://sorbet-result//lib/minitest/result_assertions.rb#6
8
+ module Minitest
9
+ class << self
10
+ # source://minitest/5.22.2/lib/minitest.rb#197
11
+ def __run(reporter, options); end
12
+
13
+ # source://minitest/5.22.2/lib/minitest.rb#97
14
+ def after_run(&block); end
15
+
16
+ # source://minitest/5.22.2/lib/minitest.rb#19
17
+ def allow_fork; end
18
+
19
+ # source://minitest/5.22.2/lib/minitest.rb#19
20
+ def allow_fork=(_arg0); end
21
+
22
+ # source://minitest/5.22.2/lib/minitest.rb#69
23
+ def autorun; end
24
+
25
+ # source://minitest/5.22.2/lib/minitest.rb#19
26
+ def backtrace_filter; end
27
+
28
+ # source://minitest/5.22.2/lib/minitest.rb#19
29
+ def backtrace_filter=(_arg0); end
30
+
31
+ # source://minitest/5.22.2/lib/minitest.rb#18
32
+ def cattr_accessor(name); end
33
+
34
+ # source://minitest/5.22.2/lib/minitest.rb#1146
35
+ def clock_time; end
36
+
37
+ # source://minitest/5.22.2/lib/minitest.rb#177
38
+ def empty_run!(options); end
39
+
40
+ # source://minitest/5.22.2/lib/minitest.rb#19
41
+ def extensions; end
42
+
43
+ # source://minitest/5.22.2/lib/minitest.rb#19
44
+ def extensions=(_arg0); end
45
+
46
+ # source://minitest/5.22.2/lib/minitest.rb#292
47
+ def filter_backtrace(bt); end
48
+
49
+ # source://minitest/5.22.2/lib/minitest.rb#19
50
+ def info_signal; end
51
+
52
+ # source://minitest/5.22.2/lib/minitest.rb#19
53
+ def info_signal=(_arg0); end
54
+
55
+ # source://minitest/5.22.2/lib/minitest.rb#101
56
+ def init_plugins(options); end
57
+
58
+ # source://minitest/5.22.2/lib/minitest.rb#108
59
+ def load_plugins; end
60
+
61
+ # source://minitest/5.22.2/lib/minitest.rb#19
62
+ def parallel_executor; end
63
+
64
+ # source://minitest/5.22.2/lib/minitest.rb#19
65
+ def parallel_executor=(_arg0); end
66
+
67
+ # source://minitest/5.22.2/lib/minitest.rb#210
68
+ def process_args(args = T.unsafe(nil)); end
69
+
70
+ # source://minitest/5.22.2/lib/minitest.rb#19
71
+ def reporter; end
72
+
73
+ # source://minitest/5.22.2/lib/minitest.rb#19
74
+ def reporter=(_arg0); end
75
+
76
+ # source://minitest/5.22.2/lib/minitest.rb#143
77
+ def run(args = T.unsafe(nil)); end
78
+
79
+ # source://minitest/5.22.2/lib/minitest.rb#1137
80
+ def run_one_method(klass, method_name); end
81
+
82
+ # source://minitest/5.22.2/lib/minitest.rb#19
83
+ def seed; end
84
+
85
+ # source://minitest/5.22.2/lib/minitest.rb#19
86
+ def seed=(_arg0); end
87
+ end
88
+ end
89
+
90
+ # source://sorbet-result//lib/minitest/result_assertions.rb#7
91
+ module Minitest::Assertions
92
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#188
93
+ def _synchronize; end
94
+
95
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#201
96
+ def _where; end
97
+
98
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#178
99
+ def assert(test, msg = T.unsafe(nil)); end
100
+
101
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#195
102
+ def assert_empty(obj, msg = T.unsafe(nil)); end
103
+
104
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#221
105
+ def assert_equal(exp, act, msg = T.unsafe(nil)); end
106
+
107
+ # Fails unless exp is equal to error
108
+ #
109
+ # source://sorbet-result//lib/minitest/result_assertions.rb#24
110
+ def assert_error(exp, result); end
111
+
112
+ # Fails unless Result is a Failure
113
+ #
114
+ # source://sorbet-result//lib/minitest/result_assertions.rb#14
115
+ def assert_failure(result); end
116
+
117
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#242
118
+ def assert_in_delta(exp, act, delta = T.unsafe(nil), msg = T.unsafe(nil)); end
119
+
120
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#254
121
+ def assert_in_epsilon(exp, act, epsilon = T.unsafe(nil), msg = T.unsafe(nil)); end
122
+
123
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#261
124
+ def assert_includes(collection, obj, msg = T.unsafe(nil)); end
125
+
126
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#272
127
+ def assert_instance_of(cls, obj, msg = T.unsafe(nil)); end
128
+
129
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#283
130
+ def assert_kind_of(cls, obj, msg = T.unsafe(nil)); end
131
+
132
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#293
133
+ def assert_match(matcher, obj, msg = T.unsafe(nil)); end
134
+
135
+ # source://minitest/5.22.2/lib/minitest/mock.rb#250
136
+ def assert_mock(mock); end
137
+
138
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#305
139
+ def assert_nil(obj, msg = T.unsafe(nil)); end
140
+
141
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#315
142
+ def assert_operator(o1, op, o2 = T.unsafe(nil), msg = T.unsafe(nil)); end
143
+
144
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#333
145
+ def assert_output(stdout = T.unsafe(nil), stderr = T.unsafe(nil)); end
146
+
147
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#357
148
+ def assert_path_exists(path, msg = T.unsafe(nil)); end
149
+
150
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#376
151
+ def assert_pattern; end
152
+
153
+ # Fails unless exp is equal to payload
154
+ #
155
+ # source://sorbet-result//lib/minitest/result_assertions.rb#19
156
+ def assert_payload(exp, result); end
157
+
158
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#397
159
+ def assert_predicate(o1, op, msg = T.unsafe(nil)); end
160
+
161
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#424
162
+ def assert_raises(*exp); end
163
+
164
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#456
165
+ def assert_respond_to(obj, meth, msg = T.unsafe(nil), include_all: T.unsafe(nil)); end
166
+
167
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#466
168
+ def assert_same(exp, act, msg = T.unsafe(nil)); end
169
+
170
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#479
171
+ def assert_send(send_ary, m = T.unsafe(nil)); end
172
+
173
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#493
174
+ def assert_silent; end
175
+
176
+ # Fails unless Result is a Success
177
+ #
178
+ # source://sorbet-result//lib/minitest/result_assertions.rb#9
179
+ def assert_success(result); end
180
+
181
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#502
182
+ def assert_throws(sym, msg = T.unsafe(nil)); end
183
+
184
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#543
185
+ def capture_io; end
186
+
187
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#576
188
+ def capture_subprocess_io; end
189
+
190
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#59
191
+ def diff(exp, act); end
192
+
193
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#608
194
+ def exception_details(e, msg); end
195
+
196
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#624
197
+ def fail_after(y, m, d, msg); end
198
+
199
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#631
200
+ def flunk(msg = T.unsafe(nil)); end
201
+
202
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#639
203
+ def message(msg = T.unsafe(nil), ending = T.unsafe(nil), &default); end
204
+
205
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#129
206
+ def mu_pp(obj); end
207
+
208
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#152
209
+ def mu_pp_for_diff(obj); end
210
+
211
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#650
212
+ def pass(_msg = T.unsafe(nil)); end
213
+
214
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#657
215
+ def refute(test, msg = T.unsafe(nil)); end
216
+
217
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#665
218
+ def refute_empty(obj, msg = T.unsafe(nil)); end
219
+
220
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#676
221
+ def refute_equal(exp, act, msg = T.unsafe(nil)); end
222
+
223
+ # Fails if exp is equal to error
224
+ #
225
+ # source://sorbet-result//lib/minitest/result_assertions.rb#44
226
+ def refute_error(exp, result); end
227
+
228
+ # Fails if Result is a Failure
229
+ #
230
+ # source://sorbet-result//lib/minitest/result_assertions.rb#34
231
+ def refute_failure(result); end
232
+
233
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#688
234
+ def refute_in_delta(exp, act, delta = T.unsafe(nil), msg = T.unsafe(nil)); end
235
+
236
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#700
237
+ def refute_in_epsilon(a, b, epsilon = T.unsafe(nil), msg = T.unsafe(nil)); end
238
+
239
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#707
240
+ def refute_includes(collection, obj, msg = T.unsafe(nil)); end
241
+
242
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#718
243
+ def refute_instance_of(cls, obj, msg = T.unsafe(nil)); end
244
+
245
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#728
246
+ def refute_kind_of(cls, obj, msg = T.unsafe(nil)); end
247
+
248
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#736
249
+ def refute_match(matcher, obj, msg = T.unsafe(nil)); end
250
+
251
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#746
252
+ def refute_nil(obj, msg = T.unsafe(nil)); end
253
+
254
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#781
255
+ def refute_operator(o1, op, o2 = T.unsafe(nil), msg = T.unsafe(nil)); end
256
+
257
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#790
258
+ def refute_path_exists(path, msg = T.unsafe(nil)); end
259
+
260
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#763
261
+ def refute_pattern; end
262
+
263
+ # Fails if exp is equal to payload
264
+ #
265
+ # source://sorbet-result//lib/minitest/result_assertions.rb#39
266
+ def refute_payload(exp, result); end
267
+
268
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#804
269
+ def refute_predicate(o1, op, msg = T.unsafe(nil)); end
270
+
271
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#813
272
+ def refute_respond_to(obj, meth, msg = T.unsafe(nil), include_all: T.unsafe(nil)); end
273
+
274
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#822
275
+ def refute_same(exp, act, msg = T.unsafe(nil)); end
276
+
277
+ # Fails if Result is a Success
278
+ #
279
+ # source://sorbet-result//lib/minitest/result_assertions.rb#29
280
+ def refute_success(result); end
281
+
282
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#835
283
+ def skip(msg = T.unsafe(nil), _ignored = T.unsafe(nil)); end
284
+
285
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#847
286
+ def skip_until(y, m, d, msg); end
287
+
288
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#856
289
+ def skipped?; end
290
+
291
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#104
292
+ def things_to_diff(exp, act); end
293
+
294
+ class << self
295
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#29
296
+ def diff; end
297
+
298
+ # source://minitest/5.22.2/lib/minitest/assertions.rb#47
299
+ def diff=(o); end
300
+ end
301
+ end
302
+
303
+ # source://sorbet-result//lib/typed/no_error_on_success_error.rb#4
304
+ module Typed; end
305
+
306
+ # source://sorbet-result//lib/typed/result.rb#138
307
+ class Typed::Failure < ::Typed::Result
308
+ extend T::Generic
309
+
310
+ Payload = type_member { { fixed: T.noreturn } }
311
+ Error = type_member
312
+
313
+ # source://sorbet-result//lib/typed/result.rb#163
314
+ sig { params(error: Error).void }
315
+ def initialize(error); end
316
+
317
+ # source://sorbet-result//lib/typed/result.rb#189
318
+ sig do
319
+ override
320
+ .type_parameters(:U, :T)
321
+ .params(
322
+ _block: T.proc.params(arg0: Payload).returns(Typed::Result[T.type_parameter(:U), T.type_parameter(:T)])
323
+ ).returns(Typed::Result[T.type_parameter(:U), Error])
324
+ end
325
+ def and_then(&_block); end
326
+
327
+ # source://sorbet-result//lib/typed/result.rb#146
328
+ sig { override.returns(Error) }
329
+ def error; end
330
+
331
+ # source://sorbet-result//lib/typed/result.rb#174
332
+ sig { override.returns(T::Boolean) }
333
+ def failure?; end
334
+
335
+ # source://sorbet-result//lib/typed/result.rb#198
336
+ sig { override.params(block: T.proc.params(arg0: Error).void).returns(T.self_type) }
337
+ def on_error(&block); end
338
+
339
+ # @raise [NoPayloadOnFailureError]
340
+ #
341
+ # source://sorbet-result//lib/typed/result.rb#179
342
+ sig { override.returns(T.noreturn) }
343
+ def payload; end
344
+
345
+ # source://sorbet-result//lib/typed/result.rb#209
346
+ sig do
347
+ override
348
+ .type_parameters(:Fallback)
349
+ .params(
350
+ value: T.type_parameter(:Fallback)
351
+ ).returns(T.any(Payload, T.type_parameter(:Fallback)))
352
+ end
353
+ def payload_or(value); end
354
+
355
+ # source://sorbet-result//lib/typed/result.rb#169
356
+ sig { override.returns(T::Boolean) }
357
+ def success?; end
358
+
359
+ class << self
360
+ # source://sorbet-result//lib/typed/result.rb#158
361
+ sig { returns(Typed::Failure[::NilClass]) }
362
+ def blank; end
363
+
364
+ # source://sorbet-result//lib/typed/result.rb#153
365
+ sig { type_parameters(:T).params(error: T.type_parameter(:T)).returns(Typed::Failure[T.type_parameter(:T)]) }
366
+ def new(error); end
367
+ end
368
+ end
369
+
370
+ # Error when user attempts to access payload from a Failure Result.
371
+ #
372
+ # source://sorbet-result//lib/typed/no_error_on_success_error.rb#6
373
+ class Typed::NoErrorOnSuccessError < ::StandardError
374
+ # source://sorbet-result//lib/typed/no_error_on_success_error.rb#10
375
+ sig { void }
376
+ def initialize; end
377
+ end
378
+
379
+ # Error when user attempts to access payload from a Failure Result.
380
+ #
381
+ # source://sorbet-result//lib/typed/no_payload_on_failure_error.rb#6
382
+ class Typed::NoPayloadOnFailureError < ::StandardError
383
+ # source://sorbet-result//lib/typed/no_payload_on_failure_error.rb#10
384
+ sig { void }
385
+ def initialize; end
386
+ end
387
+
388
+ # A monad representing either a success or a failure. Contains payload and error information as well.
389
+ #
390
+ # @abstract It cannot be directly instantiated. Subclasses must implement the `abstract` methods below.
391
+ #
392
+ # source://sorbet-result//lib/typed/result.rb#9
393
+ class Typed::Result
394
+ extend T::Generic
395
+
396
+ abstract!
397
+ sealed!
398
+
399
+ Payload = type_member(:out)
400
+ Error = type_member(:out)
401
+
402
+ # @abstract
403
+ #
404
+ # source://sorbet-result//lib/typed/result.rb#42
405
+ sig do
406
+ abstract
407
+ .type_parameters(:U, :T)
408
+ .params(
409
+ _block: T.proc.params(arg0: Payload).returns(Typed::Result[T.type_parameter(:U), T.type_parameter(:T)])
410
+ ).returns(T.any(Typed::Result[T.type_parameter(:U), Error], Typed::Result[T.type_parameter(:U), T.type_parameter(:T)]))
411
+ end
412
+ def and_then(&_block); end
413
+
414
+ # @abstract
415
+ #
416
+ # source://sorbet-result//lib/typed/result.rb#33
417
+ sig { abstract.returns(Error) }
418
+ def error; end
419
+
420
+ # @abstract
421
+ #
422
+ # source://sorbet-result//lib/typed/result.rb#25
423
+ sig { abstract.returns(T::Boolean) }
424
+ def failure?; end
425
+
426
+ # @abstract
427
+ #
428
+ # source://sorbet-result//lib/typed/result.rb#50
429
+ sig { abstract.params(block: T.proc.params(arg0: Error).void).returns(T.self_type) }
430
+ def on_error(&block); end
431
+
432
+ # @abstract
433
+ #
434
+ # source://sorbet-result//lib/typed/result.rb#29
435
+ sig { abstract.returns(Payload) }
436
+ def payload; end
437
+
438
+ # @abstract
439
+ #
440
+ # source://sorbet-result//lib/typed/result.rb#59
441
+ sig do
442
+ abstract
443
+ .type_parameters(:Fallback)
444
+ .params(
445
+ value: T.type_parameter(:Fallback)
446
+ ).returns(T.any(Payload, T.type_parameter(:Fallback)))
447
+ end
448
+ def payload_or(value); end
449
+
450
+ # @abstract
451
+ #
452
+ # source://sorbet-result//lib/typed/result.rb#21
453
+ sig { abstract.returns(T::Boolean) }
454
+ def success?; end
455
+ end
456
+
457
+ # source://sorbet-result//lib/typed/result.rb#63
458
+ class Typed::Success < ::Typed::Result
459
+ extend T::Generic
460
+
461
+ Payload = type_member
462
+ Error = type_member { { fixed: T.noreturn } }
463
+
464
+ # source://sorbet-result//lib/typed/result.rb#88
465
+ sig { params(payload: Payload).void }
466
+ def initialize(payload); end
467
+
468
+ # source://sorbet-result//lib/typed/result.rb#114
469
+ sig do
470
+ override
471
+ .type_parameters(:U, :T)
472
+ .params(
473
+ block: T.proc.params(arg0: Payload).returns(Typed::Result[T.type_parameter(:U), T.type_parameter(:T)])
474
+ ).returns(Typed::Result[T.type_parameter(:U), T.type_parameter(:T)])
475
+ end
476
+ def and_then(&block); end
477
+
478
+ # @raise [NoErrorOnSuccessError]
479
+ #
480
+ # source://sorbet-result//lib/typed/result.rb#104
481
+ sig { override.returns(T.noreturn) }
482
+ def error; end
483
+
484
+ # source://sorbet-result//lib/typed/result.rb#99
485
+ sig { override.returns(T::Boolean) }
486
+ def failure?; end
487
+
488
+ # source://sorbet-result//lib/typed/result.rb#123
489
+ sig { override.params(_block: T.proc.params(arg0: Error).void).returns(T.self_type) }
490
+ def on_error(&_block); end
491
+
492
+ # source://sorbet-result//lib/typed/result.rb#71
493
+ sig { override.returns(Payload) }
494
+ def payload; end
495
+
496
+ # source://sorbet-result//lib/typed/result.rb#133
497
+ sig do
498
+ override
499
+ .type_parameters(:Fallback)
500
+ .params(
501
+ _value: T.type_parameter(:Fallback)
502
+ ).returns(T.any(Payload, T.type_parameter(:Fallback)))
503
+ end
504
+ def payload_or(_value); end
505
+
506
+ # source://sorbet-result//lib/typed/result.rb#94
507
+ sig { override.returns(T::Boolean) }
508
+ def success?; end
509
+
510
+ class << self
511
+ # source://sorbet-result//lib/typed/result.rb#83
512
+ sig { returns(Typed::Success[::NilClass]) }
513
+ def blank; end
514
+
515
+ # source://sorbet-result//lib/typed/result.rb#78
516
+ sig { type_parameters(:T).params(payload: T.type_parameter(:T)).returns(Typed::Success[T.type_parameter(:T)]) }
517
+ def new(payload); end
518
+ end
519
+ end
@@ -0,0 +1,34 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `sorbet-struct-comparable` gem.
5
+ # Please instead update this file by running `bin/tapioca gem sorbet-struct-comparable`.
6
+
7
+ # source://sorbet-struct-comparable//lib/sorbet-struct-comparable/version.rb#4
8
+ module SorbetStructComparable; end
9
+
10
+ # source://sorbet-struct-comparable//lib/sorbet-struct-comparable/version.rb#5
11
+ SorbetStructComparable::VERSION = T.let(T.unsafe(nil), String)
12
+
13
+ # source://sorbet-struct-comparable//lib/t/struct/acts_as_comparable.rb#6
14
+ module T::Struct::ActsAsComparable
15
+ include ::Comparable
16
+
17
+ # source://sorbet-struct-comparable//lib/t/struct/acts_as_comparable.rb#14
18
+ sig { params(other: ::Object).returns(T.nilable(::Integer)) }
19
+ def <=>(other); end
20
+
21
+ # source://sorbet-struct-comparable//lib/t/struct/acts_as_comparable.rb#26
22
+ sig { params(other: ::Object).returns(T::Boolean) }
23
+ def eql?(other); end
24
+
25
+ # source://sorbet-struct-comparable//lib/t/struct/acts_as_comparable.rb#31
26
+ sig { returns(::Integer) }
27
+ def hash; end
28
+ end
29
+
30
+ # source://sorbet-struct-comparable//lib/t/struct/acts_as_comparable.rb#10
31
+ T::Struct::ActsAsComparable::EQUAL = T.let(T.unsafe(nil), Integer)
32
+
33
+ # source://sorbet-struct-comparable//lib/t/struct/acts_as_comparable.rb#11
34
+ T::Struct::ActsAsComparable::NOT_COMPARABLE = T.let(T.unsafe(nil), T.untyped)