sorbet-struct-comparable 1.0.0 → 1.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (52) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +47 -51
  3. data/.gitignore +3 -0
  4. data/CHANGELOG.md +13 -0
  5. data/Gemfile +3 -8
  6. data/README.md +2 -2
  7. data/lib/sorbet-struct-comparable/version.rb +1 -1
  8. data/lib/t/struct/acts_as_comparable.rb +17 -12
  9. data/nix/sources.json +14 -0
  10. data/nix/sources.nix +174 -0
  11. data/run_ci.sh +6 -0
  12. data/shell.nix +20 -0
  13. data/sorbet/config +2 -0
  14. data/sorbet/rbi/gems/ast@2.4.2.rbi +54 -0
  15. data/sorbet/rbi/gems/byebug@11.1.3.rbi +1568 -0
  16. data/sorbet/rbi/gems/coderay@1.1.3.rbi +1005 -0
  17. data/sorbet/rbi/gems/diff-lcs@1.4.4.rbi +8 -0
  18. data/sorbet/rbi/gems/docile@1.4.0.rbi +54 -0
  19. data/sorbet/rbi/gems/method_source@1.0.0.rbi +72 -0
  20. data/sorbet/rbi/gems/parser@3.0.2.0.rbi +1188 -0
  21. data/sorbet/rbi/gems/pry-byebug@3.9.0.rbi +461 -0
  22. data/sorbet/rbi/gems/{pry.rbi → pry@0.13.1.rbi} +2308 -1706
  23. data/sorbet/rbi/gems/{rake.rbi → rake@13.0.6.rbi} +575 -424
  24. data/sorbet/rbi/gems/rbi@0.0.6.rbi +1405 -0
  25. data/sorbet/rbi/gems/{rspec-core.rbi → rspec-core@3.10.1.rbi} +2308 -1783
  26. data/sorbet/rbi/gems/{rspec-expectations.rbi → rspec-expectations@3.10.1.rbi} +1149 -698
  27. data/sorbet/rbi/gems/{rspec-mocks.rbi → rspec-mocks@3.10.2.rbi} +1299 -936
  28. data/sorbet/rbi/gems/rspec-support@3.10.2.rbi +509 -0
  29. data/sorbet/rbi/gems/rspec@3.10.0.rbi +38 -0
  30. data/sorbet/rbi/gems/simplecov-html@0.12.3.rbi +89 -0
  31. data/sorbet/rbi/gems/simplecov@0.21.2.rbi +577 -0
  32. data/sorbet/rbi/gems/simplecov_json_formatter@0.1.3.rbi +8 -0
  33. data/sorbet/rbi/gems/spoom@1.1.5.rbi +1241 -0
  34. data/sorbet/rbi/gems/tapioca@0.5.2.rbi +949 -0
  35. data/sorbet/rbi/gems/thor@1.1.0.rbi +839 -0
  36. data/sorbet/rbi/gems/unparser@0.6.0.rbi +8 -0
  37. data/sorbet-struct-comparable.gemspec +1 -1
  38. metadata +38 -30
  39. data/.ruby-version +0 -1
  40. data/sorbet/rbi/gems/byebug.rbi +0 -1041
  41. data/sorbet/rbi/gems/coderay.rbi +0 -92
  42. data/sorbet/rbi/gems/docile.rbi +0 -32
  43. data/sorbet/rbi/gems/listen.rbi +0 -324
  44. data/sorbet/rbi/gems/method_source.rbi +0 -64
  45. data/sorbet/rbi/gems/pry-byebug.rbi +0 -155
  46. data/sorbet/rbi/gems/rspec-support.rbi +0 -280
  47. data/sorbet/rbi/gems/rspec.rbi +0 -15
  48. data/sorbet/rbi/gems/simplecov-html.rbi +0 -35
  49. data/sorbet/rbi/gems/simplecov.rbi +0 -361
  50. data/sorbet/rbi/hidden-definitions/errors.txt +0 -5231
  51. data/sorbet/rbi/hidden-definitions/hidden.rbi +0 -7739
  52. data/sorbet/rbi/todo.rbi +0 -6
@@ -0,0 +1,1241 @@
1
+ # DO NOT EDIT MANUALLY
2
+ # This is an autogenerated file for types exported from the `spoom` gem.
3
+ # Please instead update this file by running `bin/tapioca gem spoom`.
4
+
5
+ # typed: true
6
+
7
+ module Spoom
8
+ class << self
9
+ sig { params(cmd: String, arg: String, path: String, capture_err: T::Boolean).returns([String, T::Boolean]) }
10
+ def exec(cmd, *arg, path: T.unsafe(nil), capture_err: T.unsafe(nil)); end
11
+ end
12
+ end
13
+
14
+ module Spoom::Cli; end
15
+
16
+ class Spoom::Cli::Bump < ::Thor
17
+ include ::Spoom::Colorize
18
+ include ::Spoom::Cli::Helper
19
+
20
+ sig { params(directory: String).void }
21
+ def bump(directory = T.unsafe(nil)); end
22
+
23
+ def config_files(path: T.unsafe(nil)); end
24
+ def help(command = T.unsafe(nil), subcommand = T.unsafe(nil)); end
25
+ def print_changes(files, command:, from: T.unsafe(nil), to: T.unsafe(nil), dry: T.unsafe(nil), path: T.unsafe(nil)); end
26
+ def undo_changes(files, from_strictness); end
27
+ end
28
+
29
+ class Spoom::Cli::Config < ::Thor
30
+ include ::Spoom::Colorize
31
+ include ::Spoom::Cli::Helper
32
+
33
+ def help(command = T.unsafe(nil), subcommand = T.unsafe(nil)); end
34
+ def show; end
35
+ end
36
+
37
+ class Spoom::Cli::Coverage < ::Thor
38
+ include ::Spoom::Colorize
39
+ include ::Spoom::Cli::Helper
40
+
41
+ def bundle_install(path, sha); end
42
+ def help(command = T.unsafe(nil), subcommand = T.unsafe(nil)); end
43
+ def message_no_data(file); end
44
+ def open(file = T.unsafe(nil)); end
45
+ def parse_time(string, option); end
46
+ def report; end
47
+ def snapshot; end
48
+ def timeline; end
49
+ end
50
+
51
+ Spoom::Cli::Coverage::DATA_DIR = T.let(T.unsafe(nil), String)
52
+
53
+ module Spoom::Cli::Helper
54
+ include ::Spoom::Colorize
55
+
56
+ sig { params(string: String).returns(String) }
57
+ def blue(string); end
58
+
59
+ sig { returns(T::Boolean) }
60
+ def color?; end
61
+
62
+ sig { params(string: String, color: Spoom::Color).returns(String) }
63
+ def colorize(string, *color); end
64
+
65
+ sig { returns(String) }
66
+ def exec_path; end
67
+
68
+ sig { params(string: String).returns(String) }
69
+ def gray(string); end
70
+
71
+ sig { params(string: String).returns(String) }
72
+ def green(string); end
73
+
74
+ sig { params(string: String).returns(String) }
75
+ def highlight(string); end
76
+
77
+ sig { void }
78
+ def in_sorbet_project!; end
79
+
80
+ sig { returns(T::Boolean) }
81
+ def in_sorbet_project?; end
82
+
83
+ sig { params(string: String).returns(String) }
84
+ def red(string); end
85
+
86
+ sig { params(message: String).void }
87
+ def say(message); end
88
+
89
+ sig { params(message: String, status: T.nilable(String), nl: T::Boolean).void }
90
+ def say_error(message, status: T.unsafe(nil), nl: T.unsafe(nil)); end
91
+
92
+ sig { returns(Spoom::Sorbet::Config) }
93
+ def sorbet_config; end
94
+
95
+ sig { returns(String) }
96
+ def sorbet_config_file; end
97
+
98
+ sig { params(string: String).returns(String) }
99
+ def yellow(string); end
100
+ end
101
+
102
+ class Spoom::Cli::LSP < ::Thor
103
+ include ::Spoom::Colorize
104
+ include ::Spoom::Cli::Helper
105
+
106
+ def defs(file, line, col); end
107
+ def find(query); end
108
+ def help(command = T.unsafe(nil), subcommand = T.unsafe(nil)); end
109
+ def hover(file, line, col); end
110
+ def list; end
111
+ def lsp_client; end
112
+ def refs(file, line, col); end
113
+ def run(&block); end
114
+ def show; end
115
+ def sigs(file, line, col); end
116
+ def symbol_printer; end
117
+ def symbols(file); end
118
+ def to_uri(path); end
119
+ def types(file, line, col); end
120
+ end
121
+
122
+ class Spoom::Cli::Main < ::Thor
123
+ include ::Spoom::Colorize
124
+ include ::Spoom::Cli::Helper
125
+
126
+ def __print_version; end
127
+ def bump(*args); end
128
+ def config(*args); end
129
+ def coverage(*args); end
130
+ def files; end
131
+ def lsp(*args); end
132
+ def tc(*args); end
133
+
134
+ class << self
135
+ def exit_on_failure?; end
136
+ end
137
+ end
138
+
139
+ class Spoom::Cli::Run < ::Thor
140
+ include ::Spoom::Colorize
141
+ include ::Spoom::Cli::Helper
142
+
143
+ def colorize_message(message); end
144
+ def format_error(error, format); end
145
+ def help(command = T.unsafe(nil), subcommand = T.unsafe(nil)); end
146
+ def tc(*arg); end
147
+ end
148
+
149
+ Spoom::Cli::Run::DEFAULT_FORMAT = T.let(T.unsafe(nil), String)
150
+ Spoom::Cli::Run::SORT_CODE = T.let(T.unsafe(nil), String)
151
+ Spoom::Cli::Run::SORT_ENUM = T.let(T.unsafe(nil), Array)
152
+ Spoom::Cli::Run::SORT_LOC = T.let(T.unsafe(nil), String)
153
+
154
+ class Spoom::Color < ::T::Enum
155
+ enums do
156
+ CLEAR = new
157
+ BOLD = new
158
+ BLACK = new
159
+ RED = new
160
+ GREEN = new
161
+ YELLOW = new
162
+ BLUE = new
163
+ MAGENTA = new
164
+ CYAN = new
165
+ WHITE = new
166
+ LIGHT_BLACK = new
167
+ LIGHT_RED = new
168
+ LIGHT_GREEN = new
169
+ LIGHT_YELLOW = new
170
+ LIGHT_BLUE = new
171
+ LIGHT_MAGENTA = new
172
+ LIGHT_CYAN = new
173
+ LIGHT_WHITE = new
174
+ end
175
+
176
+ sig { returns(String) }
177
+ def ansi_code; end
178
+ end
179
+
180
+ module Spoom::Colorize
181
+ sig { params(string: String, color: Spoom::Color).returns(String) }
182
+ def set_color(string, *color); end
183
+ end
184
+
185
+ module Spoom::Coverage
186
+ class << self
187
+ sig { params(snapshots: T::Array[Spoom::Coverage::Snapshot], palette: Spoom::Coverage::D3::ColorPalette, path: String).returns(Spoom::Coverage::Report) }
188
+ def report(snapshots, palette:, path: T.unsafe(nil)); end
189
+
190
+ sig { params(path: String).returns(Spoom::FileTree) }
191
+ def sigils_tree(path: T.unsafe(nil)); end
192
+
193
+ sig { params(path: String, rbi: T::Boolean, sorbet_bin: T.nilable(String)).returns(Spoom::Coverage::Snapshot) }
194
+ def snapshot(path: T.unsafe(nil), rbi: T.unsafe(nil), sorbet_bin: T.unsafe(nil)); end
195
+
196
+ sig { params(path: String).returns(Spoom::Sorbet::Config) }
197
+ def sorbet_config(path: T.unsafe(nil)); end
198
+ end
199
+ end
200
+
201
+ module Spoom::Coverage::Cards; end
202
+
203
+ class Spoom::Coverage::Cards::Card < ::Spoom::Coverage::Template
204
+ sig { params(template: String, title: T.nilable(String), body: T.nilable(String)).void }
205
+ def initialize(template: T.unsafe(nil), title: T.unsafe(nil), body: T.unsafe(nil)); end
206
+
207
+ def body; end
208
+
209
+ sig { returns(T.nilable(String)) }
210
+ def title; end
211
+ end
212
+
213
+ Spoom::Coverage::Cards::Card::TEMPLATE = T.let(T.unsafe(nil), String)
214
+
215
+ class Spoom::Coverage::Cards::Erb < ::Spoom::Coverage::Cards::Card
216
+ abstract!
217
+
218
+ sig { void }
219
+ def initialize; end
220
+
221
+ sig { abstract.returns(String) }
222
+ def erb; end
223
+
224
+ sig { override.returns(String) }
225
+ def html; end
226
+ end
227
+
228
+ class Spoom::Coverage::Cards::Map < ::Spoom::Coverage::Cards::Card
229
+ sig { params(sigils_tree: Spoom::FileTree, title: String).void }
230
+ def initialize(sigils_tree:, title: T.unsafe(nil)); end
231
+ end
232
+
233
+ class Spoom::Coverage::Cards::Snapshot < ::Spoom::Coverage::Cards::Card
234
+ sig { params(snapshot: Spoom::Coverage::Snapshot, title: String).void }
235
+ def initialize(snapshot:, title: T.unsafe(nil)); end
236
+
237
+ sig { returns(Spoom::Coverage::D3::Pie::Calls) }
238
+ def pie_calls; end
239
+
240
+ sig { returns(Spoom::Coverage::D3::Pie::Sigils) }
241
+ def pie_sigils; end
242
+
243
+ sig { returns(Spoom::Coverage::D3::Pie::Sigs) }
244
+ def pie_sigs; end
245
+
246
+ sig { returns(Spoom::Coverage::Snapshot) }
247
+ def snapshot; end
248
+ end
249
+
250
+ Spoom::Coverage::Cards::Snapshot::TEMPLATE = T.let(T.unsafe(nil), String)
251
+
252
+ class Spoom::Coverage::Cards::SorbetIntro < ::Spoom::Coverage::Cards::Erb
253
+ sig { params(sorbet_intro_commit: T.nilable(String), sorbet_intro_date: T.nilable(Time)).void }
254
+ def initialize(sorbet_intro_commit: T.unsafe(nil), sorbet_intro_date: T.unsafe(nil)); end
255
+
256
+ sig { override.returns(String) }
257
+ def erb; end
258
+ end
259
+
260
+ class Spoom::Coverage::Cards::Timeline < ::Spoom::Coverage::Cards::Card
261
+ sig { params(title: String, timeline: Spoom::Coverage::D3::Timeline).void }
262
+ def initialize(title:, timeline:); end
263
+ end
264
+
265
+ class Spoom::Coverage::Cards::Timeline::Calls < ::Spoom::Coverage::Cards::Timeline
266
+ sig { params(snapshots: T::Array[Spoom::Coverage::Snapshot], title: String).void }
267
+ def initialize(snapshots:, title: T.unsafe(nil)); end
268
+ end
269
+
270
+ class Spoom::Coverage::Cards::Timeline::RBIs < ::Spoom::Coverage::Cards::Timeline
271
+ sig { params(snapshots: T::Array[Spoom::Coverage::Snapshot], title: String).void }
272
+ def initialize(snapshots:, title: T.unsafe(nil)); end
273
+ end
274
+
275
+ class Spoom::Coverage::Cards::Timeline::Runtimes < ::Spoom::Coverage::Cards::Timeline
276
+ sig { params(snapshots: T::Array[Spoom::Coverage::Snapshot], title: String).void }
277
+ def initialize(snapshots:, title: T.unsafe(nil)); end
278
+ end
279
+
280
+ class Spoom::Coverage::Cards::Timeline::Sigils < ::Spoom::Coverage::Cards::Timeline
281
+ sig { params(snapshots: T::Array[Spoom::Coverage::Snapshot], title: String).void }
282
+ def initialize(snapshots:, title: T.unsafe(nil)); end
283
+ end
284
+
285
+ class Spoom::Coverage::Cards::Timeline::Sigs < ::Spoom::Coverage::Cards::Timeline
286
+ sig { params(snapshots: T::Array[Spoom::Coverage::Snapshot], title: String).void }
287
+ def initialize(snapshots:, title: T.unsafe(nil)); end
288
+ end
289
+
290
+ class Spoom::Coverage::Cards::Timeline::Versions < ::Spoom::Coverage::Cards::Timeline
291
+ sig { params(snapshots: T::Array[Spoom::Coverage::Snapshot], title: String).void }
292
+ def initialize(snapshots:, title: T.unsafe(nil)); end
293
+ end
294
+
295
+ module Spoom::Coverage::D3
296
+ class << self
297
+ sig { params(palette: Spoom::Coverage::D3::ColorPalette).returns(String) }
298
+ def header_script(palette); end
299
+
300
+ sig { returns(String) }
301
+ def header_style; end
302
+ end
303
+ end
304
+
305
+ class Spoom::Coverage::D3::Base
306
+ abstract!
307
+
308
+ sig { params(id: String, data: T.untyped).void }
309
+ def initialize(id, data); end
310
+
311
+ sig { returns(String) }
312
+ def html; end
313
+
314
+ sig { returns(String) }
315
+ def id; end
316
+
317
+ sig { abstract.returns(String) }
318
+ def script; end
319
+
320
+ sig { returns(String) }
321
+ def tooltip; end
322
+
323
+ class << self
324
+ sig { returns(String) }
325
+ def header_script; end
326
+
327
+ sig { returns(String) }
328
+ def header_style; end
329
+ end
330
+ end
331
+
332
+ Spoom::Coverage::D3::COLOR_FALSE = T.let(T.unsafe(nil), String)
333
+ Spoom::Coverage::D3::COLOR_IGNORE = T.let(T.unsafe(nil), String)
334
+ Spoom::Coverage::D3::COLOR_STRICT = T.let(T.unsafe(nil), String)
335
+ Spoom::Coverage::D3::COLOR_STRONG = T.let(T.unsafe(nil), String)
336
+ Spoom::Coverage::D3::COLOR_TRUE = T.let(T.unsafe(nil), String)
337
+
338
+ class Spoom::Coverage::D3::CircleMap < ::Spoom::Coverage::D3::Base
339
+ sig { override.returns(String) }
340
+ def script; end
341
+
342
+ class << self
343
+ sig { returns(String) }
344
+ def header_script; end
345
+
346
+ sig { returns(String) }
347
+ def header_style; end
348
+ end
349
+ end
350
+
351
+ class Spoom::Coverage::D3::CircleMap::Sigils < ::Spoom::Coverage::D3::CircleMap
352
+ sig { params(id: String, sigils_tree: Spoom::FileTree).void }
353
+ def initialize(id, sigils_tree); end
354
+
355
+ sig { params(node: Spoom::FileTree::Node).returns(Float) }
356
+ def tree_node_score(node); end
357
+
358
+ sig { params(node: Spoom::FileTree::Node).returns(T.nilable(String)) }
359
+ def tree_node_strictness(node); end
360
+
361
+ sig { params(node: Spoom::FileTree::Node).returns(T::Hash[Symbol, T.untyped]) }
362
+ def tree_node_to_json(node); end
363
+ end
364
+
365
+ class Spoom::Coverage::D3::ColorPalette < ::T::Struct
366
+ prop :false, String
367
+ prop :ignore, String
368
+ prop :strict, String
369
+ prop :strong, String
370
+ prop :true, String
371
+
372
+ class << self
373
+ def inherited(s); end
374
+ end
375
+ end
376
+
377
+ class Spoom::Coverage::D3::Pie < ::Spoom::Coverage::D3::Base
378
+ abstract!
379
+
380
+ sig { params(id: String, title: String, data: T.untyped).void }
381
+ def initialize(id, title, data); end
382
+
383
+ sig { override.returns(String) }
384
+ def script; end
385
+
386
+ class << self
387
+ sig { returns(String) }
388
+ def header_script; end
389
+
390
+ sig { returns(String) }
391
+ def header_style; end
392
+ end
393
+ end
394
+
395
+ class Spoom::Coverage::D3::Pie::Calls < ::Spoom::Coverage::D3::Pie
396
+ sig { params(id: String, title: String, snapshot: Spoom::Coverage::Snapshot).void }
397
+ def initialize(id, title, snapshot); end
398
+
399
+ sig { override.returns(String) }
400
+ def tooltip; end
401
+ end
402
+
403
+ class Spoom::Coverage::D3::Pie::Sigils < ::Spoom::Coverage::D3::Pie
404
+ sig { params(id: String, title: String, snapshot: Spoom::Coverage::Snapshot).void }
405
+ def initialize(id, title, snapshot); end
406
+
407
+ sig { override.returns(String) }
408
+ def tooltip; end
409
+ end
410
+
411
+ class Spoom::Coverage::D3::Pie::Sigs < ::Spoom::Coverage::D3::Pie
412
+ sig { params(id: String, title: String, snapshot: Spoom::Coverage::Snapshot).void }
413
+ def initialize(id, title, snapshot); end
414
+
415
+ sig { override.returns(String) }
416
+ def tooltip; end
417
+ end
418
+
419
+ class Spoom::Coverage::D3::Timeline < ::Spoom::Coverage::D3::Base
420
+ abstract!
421
+
422
+ sig { params(id: String, data: T.untyped, keys: T::Array[String]).void }
423
+ def initialize(id, data, keys); end
424
+
425
+ sig { params(y: String, color: String, curve: String).returns(String) }
426
+ def area(y:, color: T.unsafe(nil), curve: T.unsafe(nil)); end
427
+
428
+ sig { params(y: String, color: String, curve: String).returns(String) }
429
+ def line(y:, color: T.unsafe(nil), curve: T.unsafe(nil)); end
430
+
431
+ sig { abstract.returns(String) }
432
+ def plot; end
433
+
434
+ sig { params(y: String).returns(String) }
435
+ def points(y:); end
436
+
437
+ sig { override.returns(String) }
438
+ def script; end
439
+
440
+ sig { returns(String) }
441
+ def x_scale; end
442
+
443
+ sig { returns(String) }
444
+ def x_ticks; end
445
+
446
+ sig { params(min: String, max: String, ticks: String).returns(String) }
447
+ def y_scale(min:, max:, ticks:); end
448
+
449
+ sig { params(ticks: String, format: String, padding: Integer).returns(String) }
450
+ def y_ticks(ticks:, format:, padding:); end
451
+
452
+ class << self
453
+ sig { returns(String) }
454
+ def header_script; end
455
+
456
+ sig { returns(String) }
457
+ def header_style; end
458
+ end
459
+ end
460
+
461
+ class Spoom::Coverage::D3::Timeline::Calls < ::Spoom::Coverage::D3::Timeline::Stacked
462
+ sig { params(id: String, snapshots: T::Array[Spoom::Coverage::Snapshot]).void }
463
+ def initialize(id, snapshots); end
464
+
465
+ sig { override.returns(String) }
466
+ def tooltip; end
467
+ end
468
+
469
+ class Spoom::Coverage::D3::Timeline::RBIs < ::Spoom::Coverage::D3::Timeline::Stacked
470
+ sig { params(id: String, snapshots: T::Array[Spoom::Coverage::Snapshot]).void }
471
+ def initialize(id, snapshots); end
472
+
473
+ sig { override.params(y: String, color: String, curve: String).returns(String) }
474
+ def line(y:, color: T.unsafe(nil), curve: T.unsafe(nil)); end
475
+
476
+ sig { override.returns(String) }
477
+ def plot; end
478
+
479
+ sig { override.returns(String) }
480
+ def script; end
481
+
482
+ sig { override.returns(String) }
483
+ def tooltip; end
484
+ end
485
+
486
+ class Spoom::Coverage::D3::Timeline::Runtimes < ::Spoom::Coverage::D3::Timeline
487
+ sig { params(id: String, snapshots: T::Array[Spoom::Coverage::Snapshot]).void }
488
+ def initialize(id, snapshots); end
489
+
490
+ sig { override.returns(String) }
491
+ def plot; end
492
+
493
+ sig { override.returns(String) }
494
+ def tooltip; end
495
+ end
496
+
497
+ class Spoom::Coverage::D3::Timeline::Sigils < ::Spoom::Coverage::D3::Timeline::Stacked
498
+ sig { params(id: String, snapshots: T::Array[Spoom::Coverage::Snapshot]).void }
499
+ def initialize(id, snapshots); end
500
+
501
+ sig { override.returns(String) }
502
+ def tooltip; end
503
+ end
504
+
505
+ class Spoom::Coverage::D3::Timeline::Sigs < ::Spoom::Coverage::D3::Timeline::Stacked
506
+ sig { params(id: String, snapshots: T::Array[Spoom::Coverage::Snapshot]).void }
507
+ def initialize(id, snapshots); end
508
+
509
+ sig { override.returns(String) }
510
+ def tooltip; end
511
+ end
512
+
513
+ class Spoom::Coverage::D3::Timeline::Stacked < ::Spoom::Coverage::D3::Timeline
514
+ abstract!
515
+
516
+ def initialize(*args, &blk); end
517
+
518
+ sig { override.params(y: String, color: String, curve: String).returns(String) }
519
+ def line(y:, color: T.unsafe(nil), curve: T.unsafe(nil)); end
520
+
521
+ sig { override.returns(String) }
522
+ def plot; end
523
+
524
+ sig { override.returns(String) }
525
+ def script; end
526
+ end
527
+
528
+ class Spoom::Coverage::D3::Timeline::Versions < ::Spoom::Coverage::D3::Timeline
529
+ sig { params(id: String, snapshots: T::Array[Spoom::Coverage::Snapshot]).void }
530
+ def initialize(id, snapshots); end
531
+
532
+ sig { override.returns(String) }
533
+ def plot; end
534
+
535
+ sig { override.returns(String) }
536
+ def tooltip; end
537
+ end
538
+
539
+ class Spoom::Coverage::Page < ::Spoom::Coverage::Template
540
+ abstract!
541
+
542
+ sig { params(title: String, palette: Spoom::Coverage::D3::ColorPalette, template: String).void }
543
+ def initialize(title:, palette:, template: T.unsafe(nil)); end
544
+
545
+ sig { returns(String) }
546
+ def body_html; end
547
+
548
+ sig { abstract.returns(T::Array[Spoom::Coverage::Cards::Card]) }
549
+ def cards; end
550
+
551
+ sig { returns(String) }
552
+ def footer_html; end
553
+
554
+ sig { returns(String) }
555
+ def header_html; end
556
+
557
+ sig { returns(String) }
558
+ def header_script; end
559
+
560
+ sig { returns(String) }
561
+ def header_style; end
562
+
563
+ sig { returns(Spoom::Coverage::D3::ColorPalette) }
564
+ def palette; end
565
+
566
+ sig { returns(String) }
567
+ def title; end
568
+ end
569
+
570
+ Spoom::Coverage::Page::TEMPLATE = T.let(T.unsafe(nil), String)
571
+
572
+ class Spoom::Coverage::Report < ::Spoom::Coverage::Page
573
+ sig { params(project_name: String, palette: Spoom::Coverage::D3::ColorPalette, snapshots: T::Array[Spoom::Coverage::Snapshot], sigils_tree: Spoom::FileTree, sorbet_intro_commit: T.nilable(String), sorbet_intro_date: T.nilable(Time)).void }
574
+ def initialize(project_name:, palette:, snapshots:, sigils_tree:, sorbet_intro_commit: T.unsafe(nil), sorbet_intro_date: T.unsafe(nil)); end
575
+
576
+ sig { override.returns(T::Array[Spoom::Coverage::Cards::Card]) }
577
+ def cards; end
578
+
579
+ sig { override.returns(String) }
580
+ def header_html; end
581
+
582
+ sig { returns(String) }
583
+ def project_name; end
584
+
585
+ sig { returns(Spoom::FileTree) }
586
+ def sigils_tree; end
587
+
588
+ sig { returns(T::Array[Spoom::Coverage::Snapshot]) }
589
+ def snapshots; end
590
+
591
+ sig { returns(T.nilable(String)) }
592
+ def sorbet_intro_commit; end
593
+
594
+ sig { returns(T.nilable(Time)) }
595
+ def sorbet_intro_date; end
596
+ end
597
+
598
+ class Spoom::Coverage::Snapshot < ::T::Struct
599
+ prop :calls_typed, Integer, default: T.unsafe(nil)
600
+ prop :calls_untyped, Integer, default: T.unsafe(nil)
601
+ prop :classes, Integer, default: T.unsafe(nil)
602
+ prop :commit_sha, T.nilable(String), default: T.unsafe(nil)
603
+ prop :commit_timestamp, T.nilable(Integer), default: T.unsafe(nil)
604
+ prop :duration, Integer, default: T.unsafe(nil)
605
+ prop :files, Integer, default: T.unsafe(nil)
606
+ prop :methods_with_sig, Integer, default: T.unsafe(nil)
607
+ prop :methods_without_sig, Integer, default: T.unsafe(nil)
608
+ prop :modules, Integer, default: T.unsafe(nil)
609
+ prop :rbi_files, Integer, default: T.unsafe(nil)
610
+ prop :sigils, T::Hash[String, Integer], default: T.unsafe(nil)
611
+ prop :singleton_classes, Integer, default: T.unsafe(nil)
612
+ prop :timestamp, Integer, default: T.unsafe(nil)
613
+ prop :version_runtime, T.nilable(String), default: T.unsafe(nil)
614
+ prop :version_static, T.nilable(String), default: T.unsafe(nil)
615
+
616
+ sig { params(out: T.any(IO, StringIO), colors: T::Boolean, indent_level: Integer).void }
617
+ def print(out: T.unsafe(nil), colors: T.unsafe(nil), indent_level: T.unsafe(nil)); end
618
+
619
+ sig { params(arg: T.untyped).returns(String) }
620
+ def to_json(*arg); end
621
+
622
+ class << self
623
+ sig { params(json: String).returns(Spoom::Coverage::Snapshot) }
624
+ def from_json(json); end
625
+
626
+ sig { params(obj: T::Hash[String, T.untyped]).returns(Spoom::Coverage::Snapshot) }
627
+ def from_obj(obj); end
628
+
629
+ def inherited(s); end
630
+ end
631
+ end
632
+
633
+ Spoom::Coverage::Snapshot::STRICTNESSES = T.let(T.unsafe(nil), Array)
634
+
635
+ class Spoom::Coverage::SnapshotPrinter < ::Spoom::Printer
636
+ sig { params(snapshot: Spoom::Coverage::Snapshot).void }
637
+ def print_snapshot(snapshot); end
638
+
639
+ private
640
+
641
+ sig { params(value: T.nilable(Integer), total: T.nilable(Integer)).returns(String) }
642
+ def percent(value, total); end
643
+
644
+ sig { params(hash: T::Hash[String, Integer], total: Integer).void }
645
+ def print_map(hash, total); end
646
+ end
647
+
648
+ class Spoom::Coverage::Template
649
+ abstract!
650
+
651
+ sig { params(template: String).void }
652
+ def initialize(template:); end
653
+
654
+ sig { returns(String) }
655
+ def erb; end
656
+
657
+ sig { returns(Binding) }
658
+ def get_binding; end
659
+
660
+ sig { returns(String) }
661
+ def html; end
662
+ end
663
+
664
+ class Spoom::Error < ::StandardError; end
665
+
666
+ class Spoom::FileTree
667
+ sig { params(paths: T::Enumerable[String], strip_prefix: T.nilable(String)).void }
668
+ def initialize(paths = T.unsafe(nil), strip_prefix: T.unsafe(nil)); end
669
+
670
+ sig { params(path: String).returns(Spoom::FileTree::Node) }
671
+ def add_path(path); end
672
+
673
+ sig { params(paths: T::Enumerable[String]).void }
674
+ def add_paths(paths); end
675
+
676
+ sig { returns(T::Array[Spoom::FileTree::Node]) }
677
+ def nodes; end
678
+
679
+ sig { returns(T::Array[String]) }
680
+ def paths; end
681
+
682
+ sig { params(out: T.any(IO, StringIO), show_strictness: T::Boolean, colors: T::Boolean, indent_level: Integer).void }
683
+ def print(out: T.unsafe(nil), show_strictness: T.unsafe(nil), colors: T.unsafe(nil), indent_level: T.unsafe(nil)); end
684
+
685
+ sig { returns(T::Array[Spoom::FileTree::Node]) }
686
+ def roots; end
687
+
688
+ sig { returns(T.nilable(String)) }
689
+ def strip_prefix; end
690
+
691
+ private
692
+
693
+ sig { params(node: Spoom::FileTree::Node, collected_nodes: T::Array[Spoom::FileTree::Node]).returns(T::Array[Spoom::FileTree::Node]) }
694
+ def collect_nodes(node, collected_nodes = T.unsafe(nil)); end
695
+ end
696
+
697
+ class Spoom::FileTree::Node < ::T::Struct
698
+ const :children, T::Hash[String, Spoom::FileTree::Node], default: T.unsafe(nil)
699
+ const :name, String
700
+ const :parent, T.nilable(Spoom::FileTree::Node)
701
+
702
+ sig { returns(String) }
703
+ def path; end
704
+
705
+ class << self
706
+ def inherited(s); end
707
+ end
708
+ end
709
+
710
+ class Spoom::FileTree::TreePrinter < ::Spoom::Printer
711
+ sig { params(tree: Spoom::FileTree, out: T.any(IO, StringIO), show_strictness: T::Boolean, colors: T::Boolean, indent_level: Integer).void }
712
+ def initialize(tree:, out: T.unsafe(nil), show_strictness: T.unsafe(nil), colors: T.unsafe(nil), indent_level: T.unsafe(nil)); end
713
+
714
+ sig { params(node: Spoom::FileTree::Node).void }
715
+ def print_node(node); end
716
+
717
+ sig { params(nodes: T::Array[Spoom::FileTree::Node]).void }
718
+ def print_nodes(nodes); end
719
+
720
+ sig { void }
721
+ def print_tree; end
722
+
723
+ sig { returns(Spoom::FileTree) }
724
+ def tree; end
725
+
726
+ private
727
+
728
+ sig { params(node: Spoom::FileTree::Node).returns(T.nilable(String)) }
729
+ def node_strictness(node); end
730
+
731
+ sig { params(strictness: T.nilable(String)).returns(Spoom::Color) }
732
+ def strictness_color(strictness); end
733
+ end
734
+
735
+ module Spoom::Git
736
+ class << self
737
+ sig { params(arg: String, path: String).returns([String, String, T::Boolean]) }
738
+ def checkout(*arg, path: T.unsafe(nil)); end
739
+
740
+ sig { params(sha: String, path: String).returns(T.nilable(Time)) }
741
+ def commit_time(sha, path: T.unsafe(nil)); end
742
+
743
+ sig { params(sha: String, path: String).returns(T.nilable(Integer)) }
744
+ def commit_timestamp(sha, path: T.unsafe(nil)); end
745
+
746
+ sig { params(path: String).returns(T.nilable(String)) }
747
+ def current_branch(path: T.unsafe(nil)); end
748
+
749
+ sig { params(arg: String, path: String).returns([String, String, T::Boolean]) }
750
+ def diff(*arg, path: T.unsafe(nil)); end
751
+
752
+ sig { params(timestamp: String).returns(Time) }
753
+ def epoch_to_time(timestamp); end
754
+
755
+ sig { params(command: String, arg: String, path: String).returns([String, String, T::Boolean]) }
756
+ def exec(command, *arg, path: T.unsafe(nil)); end
757
+
758
+ sig { params(path: String).returns(T.nilable(String)) }
759
+ def last_commit(path: T.unsafe(nil)); end
760
+
761
+ sig { params(arg: String, path: String).returns([String, String, T::Boolean]) }
762
+ def log(*arg, path: T.unsafe(nil)); end
763
+
764
+ sig { params(arg: String, path: String).returns([String, String, T::Boolean]) }
765
+ def rev_parse(*arg, path: T.unsafe(nil)); end
766
+
767
+ sig { params(arg: String, path: String).returns([String, String, T::Boolean]) }
768
+ def show(*arg, path: T.unsafe(nil)); end
769
+
770
+ sig { params(path: String).returns(T.nilable(String)) }
771
+ def sorbet_intro_commit(path: T.unsafe(nil)); end
772
+
773
+ sig { params(path: String).returns(T.nilable(String)) }
774
+ def sorbet_removal_commit(path: T.unsafe(nil)); end
775
+
776
+ sig { params(path: String).returns(T::Boolean) }
777
+ def workdir_clean?(path: T.unsafe(nil)); end
778
+ end
779
+ end
780
+
781
+ module Spoom::LSP; end
782
+
783
+ class Spoom::LSP::Client
784
+ def initialize(sorbet_bin, *sorbet_args, path: T.unsafe(nil)); end
785
+
786
+ def close; end
787
+ def definitions(uri, line, column); end
788
+ def document_symbols(uri); end
789
+ def hover(uri, line, column); end
790
+ def next_id; end
791
+ def open(workspace_path); end
792
+ def read; end
793
+ def read_raw; end
794
+ def references(uri, line, column, include_decl = T.unsafe(nil)); end
795
+ def send(message); end
796
+ def send_raw(json_string); end
797
+ def signatures(uri, line, column); end
798
+ def symbols(query); end
799
+ def type_definitions(uri, line, column); end
800
+ end
801
+
802
+ class Spoom::LSP::Diagnostic < ::T::Struct
803
+ include ::Spoom::LSP::PrintableSymbol
804
+
805
+ const :code, Integer
806
+ const :informations, Object
807
+ const :message, String
808
+ const :range, Spoom::LSP::Range
809
+
810
+ sig { override.params(printer: Spoom::LSP::SymbolPrinter).void }
811
+ def accept_printer(printer); end
812
+
813
+ def to_s; end
814
+
815
+ class << self
816
+ def from_json(json); end
817
+ def inherited(s); end
818
+ end
819
+ end
820
+
821
+ class Spoom::LSP::DocumentSymbol < ::T::Struct
822
+ include ::Spoom::LSP::PrintableSymbol
823
+
824
+ const :children, T::Array[Spoom::LSP::DocumentSymbol]
825
+ const :detail, T.nilable(String)
826
+ const :kind, Integer
827
+ const :location, T.nilable(Spoom::LSP::Location)
828
+ const :name, String
829
+ const :range, T.nilable(Spoom::LSP::Range)
830
+
831
+ sig { override.params(printer: Spoom::LSP::SymbolPrinter).void }
832
+ def accept_printer(printer); end
833
+
834
+ def kind_string; end
835
+ def to_s; end
836
+
837
+ class << self
838
+ def from_json(json); end
839
+ def inherited(s); end
840
+ end
841
+ end
842
+
843
+ Spoom::LSP::DocumentSymbol::SYMBOL_KINDS = T.let(T.unsafe(nil), Hash)
844
+ class Spoom::LSP::Error < ::StandardError; end
845
+ class Spoom::LSP::Error::AlreadyOpen < ::Spoom::LSP::Error; end
846
+ class Spoom::LSP::Error::BadHeaders < ::Spoom::LSP::Error; end
847
+
848
+ class Spoom::LSP::Error::Diagnostics < ::Spoom::LSP::Error
849
+ def initialize(uri, diagnostics); end
850
+
851
+ def diagnostics; end
852
+ def uri; end
853
+
854
+ class << self
855
+ def from_json(json); end
856
+ end
857
+ end
858
+
859
+ class Spoom::LSP::Hover < ::T::Struct
860
+ include ::Spoom::LSP::PrintableSymbol
861
+
862
+ const :contents, String
863
+ const :range, T.nilable(T::Range[T.untyped])
864
+
865
+ sig { override.params(printer: Spoom::LSP::SymbolPrinter).void }
866
+ def accept_printer(printer); end
867
+
868
+ def to_s; end
869
+
870
+ class << self
871
+ def from_json(json); end
872
+ def inherited(s); end
873
+ end
874
+ end
875
+
876
+ class Spoom::LSP::Location < ::T::Struct
877
+ include ::Spoom::LSP::PrintableSymbol
878
+
879
+ const :range, Spoom::LSP::Range
880
+ const :uri, String
881
+
882
+ sig { override.params(printer: Spoom::LSP::SymbolPrinter).void }
883
+ def accept_printer(printer); end
884
+
885
+ def to_s; end
886
+
887
+ class << self
888
+ def from_json(json); end
889
+ def inherited(s); end
890
+ end
891
+ end
892
+
893
+ class Spoom::LSP::Message
894
+ def initialize; end
895
+
896
+ def as_json; end
897
+ def jsonrpc; end
898
+ def to_json(*args); end
899
+ end
900
+
901
+ class Spoom::LSP::Notification < ::Spoom::LSP::Message
902
+ def initialize(method, params); end
903
+
904
+ def method; end
905
+ def params; end
906
+ end
907
+
908
+ class Spoom::LSP::Position < ::T::Struct
909
+ include ::Spoom::LSP::PrintableSymbol
910
+
911
+ const :char, Integer
912
+ const :line, Integer
913
+
914
+ sig { override.params(printer: Spoom::LSP::SymbolPrinter).void }
915
+ def accept_printer(printer); end
916
+
917
+ def to_s; end
918
+
919
+ class << self
920
+ def from_json(json); end
921
+ def inherited(s); end
922
+ end
923
+ end
924
+
925
+ module Spoom::LSP::PrintableSymbol
926
+ interface!
927
+
928
+ sig { abstract.params(printer: Spoom::LSP::SymbolPrinter).void }
929
+ def accept_printer(printer); end
930
+ end
931
+
932
+ class Spoom::LSP::Range < ::T::Struct
933
+ include ::Spoom::LSP::PrintableSymbol
934
+
935
+ const :end, Spoom::LSP::Position
936
+ const :start, Spoom::LSP::Position
937
+
938
+ sig { override.params(printer: Spoom::LSP::SymbolPrinter).void }
939
+ def accept_printer(printer); end
940
+
941
+ def to_s; end
942
+
943
+ class << self
944
+ def from_json(json); end
945
+ def inherited(s); end
946
+ end
947
+ end
948
+
949
+ class Spoom::LSP::Request < ::Spoom::LSP::Message
950
+ def initialize(id, method, params); end
951
+
952
+ def id; end
953
+ def method; end
954
+ def params; end
955
+ end
956
+
957
+ class Spoom::LSP::ResponseError < ::Spoom::LSP::Error
958
+ def initialize(code, message, data); end
959
+
960
+ def code; end
961
+ def data; end
962
+ def message; end
963
+
964
+ class << self
965
+ def from_json(json); end
966
+ end
967
+ end
968
+
969
+ class Spoom::LSP::SignatureHelp < ::T::Struct
970
+ include ::Spoom::LSP::PrintableSymbol
971
+
972
+ const :doc, Object
973
+ const :label, T.nilable(String)
974
+ const :params, T::Array[T.untyped]
975
+
976
+ sig { override.params(printer: Spoom::LSP::SymbolPrinter).void }
977
+ def accept_printer(printer); end
978
+
979
+ def to_s; end
980
+
981
+ class << self
982
+ def from_json(json); end
983
+ def inherited(s); end
984
+ end
985
+ end
986
+
987
+ class Spoom::LSP::SymbolPrinter < ::Spoom::Printer
988
+ sig { params(out: T.any(IO, StringIO), colors: T::Boolean, indent_level: Integer, prefix: T.nilable(String)).void }
989
+ def initialize(out: T.unsafe(nil), colors: T.unsafe(nil), indent_level: T.unsafe(nil), prefix: T.unsafe(nil)); end
990
+
991
+ sig { params(uri: String).returns(String) }
992
+ def clean_uri(uri); end
993
+
994
+ def prefix; end
995
+ def prefix=(_arg0); end
996
+
997
+ sig { params(objects: T::Array[Spoom::LSP::PrintableSymbol]).void }
998
+ def print_list(objects); end
999
+
1000
+ sig { params(object: T.nilable(Spoom::LSP::PrintableSymbol)).void }
1001
+ def print_object(object); end
1002
+
1003
+ sig { params(objects: T::Array[Spoom::LSP::PrintableSymbol]).void }
1004
+ def print_objects(objects); end
1005
+
1006
+ def seen; end
1007
+ def seen=(_arg0); end
1008
+ end
1009
+
1010
+ class Spoom::Printer
1011
+ include ::Spoom::Colorize
1012
+
1013
+ abstract!
1014
+
1015
+ sig { params(out: T.any(IO, StringIO), colors: T::Boolean, indent_level: Integer).void }
1016
+ def initialize(out: T.unsafe(nil), colors: T.unsafe(nil), indent_level: T.unsafe(nil)); end
1017
+
1018
+ sig { params(string: String, color: Spoom::Color).returns(String) }
1019
+ def colorize(string, *color); end
1020
+
1021
+ sig { void }
1022
+ def dedent; end
1023
+
1024
+ sig { void }
1025
+ def indent; end
1026
+
1027
+ sig { returns(T.any(IO, StringIO)) }
1028
+ def out; end
1029
+
1030
+ def out=(_arg0); end
1031
+
1032
+ sig { params(string: T.nilable(String)).void }
1033
+ def print(string); end
1034
+
1035
+ sig { params(string: T.nilable(String), color: Spoom::Color).void }
1036
+ def print_colored(string, *color); end
1037
+
1038
+ sig { params(string: T.nilable(String)).void }
1039
+ def printl(string); end
1040
+
1041
+ sig { void }
1042
+ def printn; end
1043
+
1044
+ sig { void }
1045
+ def printt; end
1046
+ end
1047
+
1048
+ Spoom::SPOOM_PATH = T.let(T.unsafe(nil), String)
1049
+
1050
+ module Spoom::Sorbet
1051
+ class << self
1052
+ sig { params(arg: String, path: String, capture_err: T::Boolean, sorbet_bin: T.nilable(String)).returns([String, T::Boolean]) }
1053
+ def srb(*arg, path: T.unsafe(nil), capture_err: T.unsafe(nil), sorbet_bin: T.unsafe(nil)); end
1054
+
1055
+ sig { params(config: Spoom::Sorbet::Config, path: String).returns(T::Array[String]) }
1056
+ def srb_files(config, path: T.unsafe(nil)); end
1057
+
1058
+ sig { params(arg: String, path: String, capture_err: T::Boolean, sorbet_bin: T.nilable(String)).returns(T.nilable(T::Hash[String, Integer])) }
1059
+ def srb_metrics(*arg, path: T.unsafe(nil), capture_err: T.unsafe(nil), sorbet_bin: T.unsafe(nil)); end
1060
+
1061
+ sig { params(arg: String, path: String, capture_err: T::Boolean, sorbet_bin: T.nilable(String)).returns([String, T::Boolean]) }
1062
+ def srb_tc(*arg, path: T.unsafe(nil), capture_err: T.unsafe(nil), sorbet_bin: T.unsafe(nil)); end
1063
+
1064
+ sig { params(arg: String, path: String, capture_err: T::Boolean, sorbet_bin: T.nilable(String)).returns(T.nilable(String)) }
1065
+ def srb_version(*arg, path: T.unsafe(nil), capture_err: T.unsafe(nil), sorbet_bin: T.unsafe(nil)); end
1066
+
1067
+ sig { params(gem: String, path: String).returns(T.nilable(String)) }
1068
+ def version_from_gemfile_lock(gem: T.unsafe(nil), path: T.unsafe(nil)); end
1069
+ end
1070
+ end
1071
+
1072
+ Spoom::Sorbet::BIN_PATH = T.let(T.unsafe(nil), String)
1073
+ Spoom::Sorbet::CONFIG_PATH = T.let(T.unsafe(nil), String)
1074
+
1075
+ class Spoom::Sorbet::Config
1076
+ sig { void }
1077
+ def initialize; end
1078
+
1079
+ def allowed_extensions; end
1080
+
1081
+ sig { returns(Spoom::Sorbet::Config) }
1082
+ def copy; end
1083
+
1084
+ def ignore; end
1085
+
1086
+ sig { returns(T::Boolean) }
1087
+ def no_stdlib; end
1088
+
1089
+ def no_stdlib=(_arg0); end
1090
+
1091
+ sig { returns(String) }
1092
+ def options_string; end
1093
+
1094
+ sig { returns(T::Array[String]) }
1095
+ def paths; end
1096
+
1097
+ class << self
1098
+ sig { params(sorbet_config_path: String).returns(Spoom::Sorbet::Config) }
1099
+ def parse_file(sorbet_config_path); end
1100
+
1101
+ sig { params(sorbet_config: String).returns(Spoom::Sorbet::Config) }
1102
+ def parse_string(sorbet_config); end
1103
+
1104
+ private
1105
+
1106
+ sig { params(line: String).returns(String) }
1107
+ def parse_option(line); end
1108
+ end
1109
+ end
1110
+
1111
+ module Spoom::Sorbet::Errors
1112
+ class << self
1113
+ sig { params(errors: T::Array[Spoom::Sorbet::Errors::Error]).returns(T::Array[Spoom::Sorbet::Errors::Error]) }
1114
+ def sort_errors_by_code(errors); end
1115
+ end
1116
+ end
1117
+
1118
+ class Spoom::Sorbet::Errors::Error
1119
+ include ::Comparable
1120
+
1121
+ sig { params(file: T.nilable(String), line: T.nilable(Integer), message: T.nilable(String), code: T.nilable(Integer), more: T::Array[String]).void }
1122
+ def initialize(file, line, message, code, more = T.unsafe(nil)); end
1123
+
1124
+ sig { params(other: T.untyped).returns(Integer) }
1125
+ def <=>(other); end
1126
+
1127
+ def code; end
1128
+
1129
+ sig { returns(T.nilable(String)) }
1130
+ def file; end
1131
+
1132
+ sig { returns(T.nilable(Integer)) }
1133
+ def line; end
1134
+
1135
+ def message; end
1136
+
1137
+ sig { returns(T::Array[String]) }
1138
+ def more; end
1139
+
1140
+ sig { returns(String) }
1141
+ def to_s; end
1142
+ end
1143
+
1144
+ class Spoom::Sorbet::Errors::Parser
1145
+ sig { void }
1146
+ def initialize; end
1147
+
1148
+ sig { params(output: String).returns(T::Array[Spoom::Sorbet::Errors::Error]) }
1149
+ def parse(output); end
1150
+
1151
+ private
1152
+
1153
+ sig { params(line: String).void }
1154
+ def append_error(line); end
1155
+
1156
+ sig { void }
1157
+ def close_error; end
1158
+
1159
+ sig { params(line: String).returns(T.nilable(Spoom::Sorbet::Errors::Error)) }
1160
+ def match_error_line(line); end
1161
+
1162
+ sig { params(error: Spoom::Sorbet::Errors::Error).void }
1163
+ def open_error(error); end
1164
+
1165
+ class << self
1166
+ sig { params(output: String).returns(T::Array[Spoom::Sorbet::Errors::Error]) }
1167
+ def parse_string(output); end
1168
+ end
1169
+ end
1170
+
1171
+ Spoom::Sorbet::Errors::Parser::ERROR_LINE_MATCH_REGEX = T.let(T.unsafe(nil), Regexp)
1172
+ Spoom::Sorbet::Errors::Parser::HEADER = T.let(T.unsafe(nil), Array)
1173
+ Spoom::Sorbet::GEM_PATH = T.let(T.unsafe(nil), String)
1174
+
1175
+ module Spoom::Sorbet::MetricsParser
1176
+ class << self
1177
+ sig { params(path: String, prefix: String).returns(T::Hash[String, Integer]) }
1178
+ def parse_file(path, prefix = T.unsafe(nil)); end
1179
+
1180
+ sig { params(obj: T::Hash[String, T.untyped], prefix: String).returns(T::Hash[String, Integer]) }
1181
+ def parse_hash(obj, prefix = T.unsafe(nil)); end
1182
+
1183
+ sig { params(string: String, prefix: String).returns(T::Hash[String, Integer]) }
1184
+ def parse_string(string, prefix = T.unsafe(nil)); end
1185
+ end
1186
+ end
1187
+
1188
+ Spoom::Sorbet::MetricsParser::DEFAULT_PREFIX = T.let(T.unsafe(nil), String)
1189
+
1190
+ module Spoom::Sorbet::Sigils
1191
+ class << self
1192
+ sig { params(path: T.any(Pathname, String), new_strictness: String).returns(T::Boolean) }
1193
+ def change_sigil_in_file(path, new_strictness); end
1194
+
1195
+ sig { params(path_list: T::Array[String], new_strictness: String).returns(T::Array[String]) }
1196
+ def change_sigil_in_files(path_list, new_strictness); end
1197
+
1198
+ sig { params(path: T.any(Pathname, String)).returns(T.nilable(String)) }
1199
+ def file_strictness(path); end
1200
+
1201
+ sig { params(directory: T.any(Pathname, String), strictness: String, extension: String).returns(T::Array[String]) }
1202
+ def files_with_sigil_strictness(directory, strictness, extension: T.unsafe(nil)); end
1203
+
1204
+ sig { params(strictness: String).returns(String) }
1205
+ def sigil_string(strictness); end
1206
+
1207
+ sig { params(content: String).returns(T.nilable(String)) }
1208
+ def strictness_in_content(content); end
1209
+
1210
+ sig { params(content: String, new_strictness: String).returns(String) }
1211
+ def update_sigil(content, new_strictness); end
1212
+
1213
+ sig { params(strictness: String).returns(T::Boolean) }
1214
+ def valid_strictness?(strictness); end
1215
+ end
1216
+ end
1217
+
1218
+ Spoom::Sorbet::Sigils::SIGIL_REGEXP = T.let(T.unsafe(nil), Regexp)
1219
+ Spoom::Sorbet::Sigils::STRICTNESS_FALSE = T.let(T.unsafe(nil), String)
1220
+ Spoom::Sorbet::Sigils::STRICTNESS_IGNORE = T.let(T.unsafe(nil), String)
1221
+ Spoom::Sorbet::Sigils::STRICTNESS_INTERNAL = T.let(T.unsafe(nil), String)
1222
+ Spoom::Sorbet::Sigils::STRICTNESS_STRICT = T.let(T.unsafe(nil), String)
1223
+ Spoom::Sorbet::Sigils::STRICTNESS_STRONG = T.let(T.unsafe(nil), String)
1224
+ Spoom::Sorbet::Sigils::STRICTNESS_TRUE = T.let(T.unsafe(nil), String)
1225
+ Spoom::Sorbet::Sigils::VALID_STRICTNESS = T.let(T.unsafe(nil), Array)
1226
+
1227
+ class Spoom::Timeline
1228
+ sig { params(from: Time, to: Time, path: String).void }
1229
+ def initialize(from, to, path: T.unsafe(nil)); end
1230
+
1231
+ sig { params(dates: T::Array[Time]).returns(T::Array[String]) }
1232
+ def commits_for_dates(dates); end
1233
+
1234
+ sig { returns(T::Array[Time]) }
1235
+ def months; end
1236
+
1237
+ sig { returns(T::Array[String]) }
1238
+ def ticks; end
1239
+ end
1240
+
1241
+ Spoom::VERSION = T.let(T.unsafe(nil), String)