parlour 5.0.0.beta.4 → 6.0.1

Sign up to get free protection for your applications and to get access to all the features.
data/.travis.yml DELETED
@@ -1,28 +0,0 @@
1
- language: ruby
2
- dist: trusty
3
- before_install:
4
- - gem install bundler
5
- - gem install yard
6
- rvm:
7
- - 2.3
8
- - 2.4
9
- - 2.5
10
- - 2.6
11
- - 2.7
12
- - ruby-head
13
-
14
- jobs:
15
- include:
16
- - stage: deploy documentation
17
- script: yard
18
- deploy:
19
- provider: pages
20
- local_dir: doc
21
- skip_cleanup: true
22
- github_token: $GITHUB_TOKEN
23
- keep_history: true
24
- on:
25
- branch: master
26
- allow_failures:
27
- - rvm: 2.3
28
- - rvm: ruby-head
data/rbi/parlour.rbi DELETED
@@ -1,1856 +0,0 @@
1
- # typed: strong
2
- module Kernel
3
- end
4
-
5
- module Parlour
6
- VERSION = '5.0.0.beta.4'
7
-
8
- class ConflictResolver
9
- extend T::Sig
10
-
11
- sig { params(namespace: RbiGenerator::Namespace, resolver: T.proc.params(
12
- desc: String,
13
- choices: T::Array[RbiGenerator::RbiObject]
14
- ).returns(T.nilable(RbiGenerator::RbiObject))).void }
15
- def resolve_conflicts(namespace, &resolver); end
16
-
17
- sig { params(arr: T::Array[T.untyped]).returns(T.nilable(Symbol)) }
18
- def merge_strategy(arr); end
19
-
20
- sig { params(arr: T::Array[T.untyped]).returns(T::Boolean) }
21
- def all_eql?(arr); end
22
-
23
- sig { params(namespace: RbiGenerator::Namespace, name: T.nilable(String)).void }
24
- def deduplicate_mixins_of_name(namespace, name); end
25
- end
26
-
27
- module Debugging
28
- extend T::Sig
29
-
30
- sig { params(value: T::Boolean).returns(T::Boolean) }
31
- def self.debug_mode=(value); end
32
-
33
- sig { returns(T::Boolean) }
34
- def self.debug_mode?; end
35
-
36
- sig { params(object: T.untyped, message: String).void }
37
- def self.debug_puts(object, message); end
38
-
39
- sig { params(object: T.untyped).returns(String) }
40
- def self.name_for_debug_caller(object); end
41
-
42
- module Tree
43
- extend T::Sig
44
- INDENT_SPACES = 2
45
-
46
- sig { params(message: String).returns(String) }
47
- def self.begin(message); end
48
-
49
- sig { params(message: String).returns(String) }
50
- def self.here(message); end
51
-
52
- sig { params(message: String).returns(String) }
53
- def self.end(message); end
54
-
55
- sig { returns(T.untyped) }
56
- def self.line_prefix; end
57
-
58
- sig { returns(T.untyped) }
59
- def self.text_prefix; end
60
- end
61
- end
62
-
63
- class DetachedRbsGenerator < RbsGenerator
64
- sig { returns(T.untyped) }
65
- def detached!; end
66
-
67
- sig { override.returns(Options) }
68
- def options; end
69
-
70
- sig { override.returns(T.nilable(Plugin)) }
71
- def current_plugin; end
72
-
73
- sig { override.returns(String) }
74
- def rbs; end
75
- end
76
-
77
- class Generator
78
- extend T::Sig
79
-
80
- sig { params(break_params: Integer, tab_size: Integer, sort_namespaces: T::Boolean).void }
81
- def initialize(break_params: 4, tab_size: 2, sort_namespaces: false); end
82
-
83
- sig { returns(Options) }
84
- attr_reader :options
85
-
86
- sig { returns(T.nilable(Plugin)) }
87
- attr_accessor :current_plugin
88
- end
89
-
90
- class Options
91
- extend T::Sig
92
-
93
- sig { params(break_params: Integer, tab_size: Integer, sort_namespaces: T::Boolean).void }
94
- def initialize(break_params:, tab_size:, sort_namespaces:); end
95
-
96
- sig { returns(Integer) }
97
- attr_reader :break_params
98
-
99
- sig { returns(Integer) }
100
- attr_reader :tab_size
101
-
102
- sig { returns(T::Boolean) }
103
- attr_reader :sort_namespaces
104
-
105
- sig { params(level: Integer, str: String).returns(String) }
106
- def indented(level, str); end
107
- end
108
-
109
- class ParseError < StandardError
110
- extend T::Sig
111
-
112
- sig { returns(Parser::Source::Buffer) }
113
- attr_reader :buffer
114
-
115
- sig { returns(Parser::Source::Range) }
116
- attr_reader :range
117
-
118
- sig { params(buffer: T.untyped, range: T.untyped).returns(T.untyped) }
119
- def initialize(buffer, range); end
120
- end
121
-
122
- class Plugin
123
- abstract!
124
-
125
- extend T::Sig
126
- extend T::Helpers
127
-
128
- sig { returns(T::Hash[String, T.class_of(Plugin)]) }
129
- def self.registered_plugins; end
130
-
131
- sig { params(new_plugin: T.class_of(Plugin)).void }
132
- def self.inherited(new_plugin); end
133
-
134
- sig { params(plugins: T::Array[Plugin], generator: RbiGenerator, allow_failure: T::Boolean).void }
135
- def self.run_plugins(plugins, generator, allow_failure: true); end
136
-
137
- sig { params(options: T::Hash[T.untyped, T.untyped]).void }
138
- def initialize(options); end
139
-
140
- sig { abstract.params(root: RbiGenerator::Namespace).void }
141
- def generate(root); end
142
-
143
- sig { returns(T.nilable(String)) }
144
- attr_accessor :strictness
145
- end
146
-
147
- module TypeLoader
148
- extend T::Sig
149
-
150
- sig { params(source: String, filename: T.nilable(String), generator: T.nilable(RbiGenerator)).returns(RbiGenerator::Namespace) }
151
- def self.load_source(source, filename = nil, generator: nil); end
152
-
153
- sig { params(filename: String, generator: T.nilable(RbiGenerator)).returns(RbiGenerator::Namespace) }
154
- def self.load_file(filename, generator: nil); end
155
-
156
- sig do
157
- params(
158
- root: String,
159
- inclusions: T::Array[String],
160
- exclusions: T::Array[String],
161
- generator: T.nilable(RbiGenerator)
162
- ).returns(RbiGenerator::Namespace)
163
- end
164
- def self.load_project(root, inclusions: ['.'], exclusions: [], generator: nil); end
165
- end
166
-
167
- class TypeParser
168
- extend T::Sig
169
-
170
- class NodePath
171
- extend T::Sig
172
-
173
- sig { returns(T::Array[Integer]) }
174
- attr_reader :indices
175
-
176
- sig { params(indices: T::Array[Integer]).void }
177
- def initialize(indices); end
178
-
179
- sig { returns(NodePath) }
180
- def parent; end
181
-
182
- sig { params(index: Integer).returns(NodePath) }
183
- def child(index); end
184
-
185
- sig { params(offset: Integer).returns(NodePath) }
186
- def sibling(offset); end
187
-
188
- sig { params(start: Parser::AST::Node).returns(Parser::AST::Node) }
189
- def traverse(start); end
190
- end
191
-
192
- sig { params(ast: Parser::AST::Node, unknown_node_errors: T::Boolean, generator: T.nilable(RbiGenerator)).void }
193
- def initialize(ast, unknown_node_errors: false, generator: nil); end
194
-
195
- sig { params(filename: String, source: String, generator: T.nilable(RbiGenerator)).returns(TypeParser) }
196
- def self.from_source(filename, source, generator: nil); end
197
-
198
- sig { returns(Parser::AST::Node) }
199
- attr_accessor :ast
200
-
201
- sig { returns(T::Boolean) }
202
- attr_reader :unknown_node_errors
203
-
204
- sig { returns(RbiGenerator) }
205
- attr_accessor :generator
206
-
207
- sig { returns(RbiGenerator::Namespace) }
208
- def parse_all; end
209
-
210
- sig { params(path: NodePath, is_within_eigenclass: T::Boolean).returns(T::Array[RbiGenerator::RbiObject]) }
211
- def parse_path_to_object(path, is_within_eigenclass: false); end
212
-
213
- class IntermediateSig < T::Struct
214
- prop :type_parameters, T.nilable(T::Array[Symbol])
215
- prop :overridable, T::Boolean
216
- prop :override, T::Boolean
217
- prop :abstract, T::Boolean
218
- prop :final, T::Boolean
219
- prop :return_type, T.nilable(String)
220
- prop :params, T.nilable(T::Array[Parser::AST::Node])
221
-
222
- end
223
-
224
- sig { params(path: NodePath).returns(IntermediateSig) }
225
- def parse_sig_into_sig(path); end
226
-
227
- sig { params(path: NodePath, is_within_eigenclass: T::Boolean).returns(T::Array[RbiGenerator::Method]) }
228
- def parse_sig_into_methods(path, is_within_eigenclass: false); end
229
-
230
- sig { params(path: NodePath, is_within_eigenclass: T::Boolean).returns(T::Array[RbiGenerator::Method]) }
231
- def parse_method_into_methods(path, is_within_eigenclass: false); end
232
-
233
- sig { params(str: String).returns(Types::Type) }
234
- def self.parse_single_type(str); end
235
-
236
- sig { params(node: Parser::AST::Node).returns(Types::Type) }
237
- def parse_node_to_type(node); end
238
-
239
- sig { params(msg: String, node: Parser::AST::Node).void }
240
- def warning(msg, node); end
241
-
242
- sig { params(node: T.nilable(Parser::AST::Node)).returns(T::Array[Symbol]) }
243
- def constant_names(node); end
244
-
245
- sig { params(node: Parser::AST::Node).returns(T::Boolean) }
246
- def sig_node?(node); end
247
-
248
- sig { params(path: NodePath).returns(T::Boolean) }
249
- def previous_sibling_sig_node?(path); end
250
-
251
- sig { params(node: T.nilable(Parser::AST::Node)).returns(T.nilable(String)) }
252
- def node_to_s(node); end
253
-
254
- sig { params(node: T.nilable(Parser::AST::Node), modifier: Symbol).returns(T::Boolean) }
255
- def body_has_modifier?(node, modifier); end
256
-
257
- sig { params(node: Parser::AST::Node).returns([T::Array[String], T::Array[String]]) }
258
- def body_includes_and_extends(node); end
259
-
260
- sig { params(desc: String, node: T.any(Parser::AST::Node, NodePath)).returns(T.noreturn) }
261
- def parse_err(desc, node); end
262
-
263
- sig do
264
- type_parameters(:A, :B).params(
265
- a: T::Array[T.type_parameter(:A)],
266
- fa: T.proc.params(item: T.type_parameter(:A)).returns(T.untyped),
267
- b: T::Array[T.type_parameter(:B)],
268
- fb: T.proc.params(item: T.type_parameter(:B)).returns(T.untyped)
269
- ).returns(T::Array[[T.type_parameter(:A), T.type_parameter(:B)]])
270
- end
271
- def zip_by(a, fa, b, fb); end
272
- end
273
-
274
- class TypedObject
275
- abstract!
276
-
277
- extend T::Sig
278
- extend T::Helpers
279
-
280
- sig { params(name: String).void }
281
- def initialize(name); end
282
-
283
- sig { returns(T.nilable(Plugin)) }
284
- attr_reader :generated_by
285
-
286
- sig { returns(String) }
287
- attr_reader :name
288
-
289
- sig { returns(T::Array[String]) }
290
- attr_reader :comments
291
-
292
- sig { params(comment: T.any(String, T::Array[String])).void }
293
- def add_comment(comment); end
294
-
295
- sig { abstract.returns(String) }
296
- def describe; end
297
-
298
- sig { params(indent_level: Integer, options: Options).returns(T::Array[String]) }
299
- def generate_comments(indent_level, options); end
300
- end
301
-
302
- module Types
303
- TypeLike = T.type_alias { T.any(String, Type) }
304
-
305
- class Type
306
- abstract!
307
-
308
- extend T::Sig
309
- extend T::Helpers
310
-
311
- sig { abstract.returns(String) }
312
- def generate_rbi; end
313
-
314
- sig { abstract.returns(String) }
315
- def generate_rbs; end
316
-
317
- sig { params(type_like: TypeLike).returns(Type) }
318
- def self.to_type(type_like); end
319
-
320
- sig { params(type_like: TypeLike).returns(Type) }
321
- def to_type(type_like); end
322
-
323
- sig { returns(T.untyped) }
324
- def hash; end
325
-
326
- sig { abstract.returns(String) }
327
- def describe; end
328
- end
329
-
330
- class Raw < Type
331
- sig { params(str: String).void }
332
- def initialize(str); end
333
-
334
- sig { returns(String) }
335
- attr_reader :str
336
-
337
- sig { params(other: Object).returns(T::Boolean) }
338
- def ==(other); end
339
-
340
- sig { override.returns(String) }
341
- def generate_rbi; end
342
-
343
- sig { override.returns(String) }
344
- def generate_rbs; end
345
-
346
- sig { override.returns(String) }
347
- def describe; end
348
- end
349
-
350
- class Nilable < Type
351
- sig { params(type: TypeLike).void }
352
- def initialize(type); end
353
-
354
- sig { params(other: Object).returns(T::Boolean) }
355
- def ==(other); end
356
-
357
- sig { returns(Type) }
358
- attr_reader :type
359
-
360
- sig { override.returns(String) }
361
- def generate_rbi; end
362
-
363
- sig { override.returns(String) }
364
- def generate_rbs; end
365
-
366
- sig { override.returns(String) }
367
- def describe; end
368
- end
369
-
370
- class Union < Type
371
- sig { params(types: T::Array[TypeLike]).void }
372
- def initialize(types); end
373
-
374
- sig { params(other: Object).returns(T::Boolean) }
375
- def ==(other); end
376
-
377
- sig { returns(T::Array[Type]) }
378
- attr_reader :types
379
-
380
- sig { override.returns(String) }
381
- def generate_rbi; end
382
-
383
- sig { override.returns(String) }
384
- def generate_rbs; end
385
-
386
- sig { override.returns(String) }
387
- def describe; end
388
- end
389
-
390
- class Intersection < Type
391
- sig { params(types: T::Array[TypeLike]).void }
392
- def initialize(types); end
393
-
394
- sig { params(other: Object).returns(T::Boolean) }
395
- def ==(other); end
396
-
397
- sig { returns(T::Array[Type]) }
398
- attr_reader :types
399
-
400
- sig { override.returns(String) }
401
- def generate_rbi; end
402
-
403
- sig { override.returns(String) }
404
- def generate_rbs; end
405
-
406
- sig { override.returns(String) }
407
- def describe; end
408
- end
409
-
410
- class Tuple < Type
411
- sig { params(types: T::Array[TypeLike]).void }
412
- def initialize(types); end
413
-
414
- sig { params(other: Object).returns(T::Boolean) }
415
- def ==(other); end
416
-
417
- sig { returns(T::Array[Type]) }
418
- attr_reader :types
419
-
420
- sig { override.returns(String) }
421
- def generate_rbi; end
422
-
423
- sig { override.returns(String) }
424
- def generate_rbs; end
425
-
426
- sig { override.returns(String) }
427
- def describe; end
428
- end
429
-
430
- class SingleElementCollection < Type
431
- abstract!
432
-
433
- sig { params(element: TypeLike).void }
434
- def initialize(element); end
435
-
436
- sig { returns(Type) }
437
- attr_reader :element
438
-
439
- sig { abstract.returns(String) }
440
- def collection_name; end
441
-
442
- sig { override.returns(String) }
443
- def generate_rbi; end
444
-
445
- sig { override.returns(String) }
446
- def generate_rbs; end
447
-
448
- sig { override.returns(String) }
449
- def describe; end
450
- end
451
-
452
- class Array < SingleElementCollection
453
- sig { override.returns(String) }
454
- def collection_name; end
455
-
456
- sig { params(other: Object).returns(T::Boolean) }
457
- def ==(other); end
458
- end
459
-
460
- class Set < SingleElementCollection
461
- sig { override.returns(String) }
462
- def collection_name; end
463
-
464
- sig { params(other: Object).returns(T::Boolean) }
465
- def ==(other); end
466
- end
467
-
468
- class Range < SingleElementCollection
469
- sig { override.returns(String) }
470
- def collection_name; end
471
-
472
- sig { params(other: Object).returns(T::Boolean) }
473
- def ==(other); end
474
- end
475
-
476
- class Enumerable < SingleElementCollection
477
- sig { override.returns(String) }
478
- def collection_name; end
479
-
480
- sig { params(other: Object).returns(T::Boolean) }
481
- def ==(other); end
482
- end
483
-
484
- class Enumerator < SingleElementCollection
485
- sig { override.returns(String) }
486
- def collection_name; end
487
-
488
- sig { params(other: Object).returns(T::Boolean) }
489
- def ==(other); end
490
- end
491
-
492
- class Hash < Type
493
- sig { params(key: TypeLike, value: TypeLike).void }
494
- def initialize(key, value); end
495
-
496
- sig { params(other: Object).returns(T::Boolean) }
497
- def ==(other); end
498
-
499
- sig { returns(Type) }
500
- attr_reader :key
501
-
502
- sig { returns(Type) }
503
- attr_reader :value
504
-
505
- sig { override.returns(String) }
506
- def generate_rbi; end
507
-
508
- sig { override.returns(String) }
509
- def generate_rbs; end
510
-
511
- sig { override.returns(String) }
512
- def describe; end
513
- end
514
-
515
- class Record < Type
516
- sig { params(keys_to_types: T::Hash[Symbol, TypeLike]).void }
517
- def initialize(keys_to_types); end
518
-
519
- sig { params(other: Object).returns(T::Boolean) }
520
- def ==(other); end
521
-
522
- sig { returns(T::Hash[Symbol, Type]) }
523
- attr_reader :keys_to_types
524
-
525
- sig { override.returns(String) }
526
- def generate_rbi; end
527
-
528
- sig { override.returns(String) }
529
- def generate_rbs; end
530
-
531
- sig { override.returns(String) }
532
- def describe; end
533
- end
534
-
535
- class Class < Type
536
- sig { params(type: TypeLike).void }
537
- def initialize(type); end
538
-
539
- sig { params(other: Object).returns(T::Boolean) }
540
- def ==(other); end
541
-
542
- sig { returns(Type) }
543
- attr_reader :type
544
-
545
- sig { override.returns(String) }
546
- def generate_rbi; end
547
-
548
- sig { override.returns(String) }
549
- def generate_rbs; end
550
-
551
- sig { override.returns(String) }
552
- def describe; end
553
- end
554
-
555
- class Boolean < Type
556
- sig { params(other: Object).returns(T::Boolean) }
557
- def ==(other); end
558
-
559
- sig { override.returns(String) }
560
- def generate_rbi; end
561
-
562
- sig { override.returns(String) }
563
- def generate_rbs; end
564
-
565
- sig { override.returns(String) }
566
- def describe; end
567
- end
568
-
569
- class Self < Type
570
- sig { params(other: Object).returns(T::Boolean) }
571
- def ==(other); end
572
-
573
- sig { override.returns(String) }
574
- def generate_rbi; end
575
-
576
- sig { override.returns(String) }
577
- def generate_rbs; end
578
-
579
- sig { override.returns(String) }
580
- def describe; end
581
- end
582
-
583
- class Untyped < Type
584
- sig { params(other: Object).returns(T::Boolean) }
585
- def ==(other); end
586
-
587
- sig { override.returns(String) }
588
- def generate_rbi; end
589
-
590
- sig { override.returns(String) }
591
- def generate_rbs; end
592
-
593
- sig { override.returns(String) }
594
- def describe; end
595
- end
596
-
597
- class Proc < Type
598
- class Parameter
599
- extend T::Sig
600
-
601
- sig { params(name: String, type: TypeLike, default: T.nilable(String)).void }
602
- def initialize(name, type, default = nil); end
603
-
604
- sig { returns(String) }
605
- attr_reader :name
606
-
607
- sig { returns(Type) }
608
- attr_reader :type
609
-
610
- sig { returns(T.nilable(String)) }
611
- attr_reader :default
612
-
613
- sig { params(other: Object).returns(T::Boolean) }
614
- def ==(other); end
615
- end
616
-
617
- sig { params(parameters: T::Array[Parameter], return_type: T.nilable(TypeLike)).void }
618
- def initialize(parameters, return_type); end
619
-
620
- sig { params(other: Object).returns(T::Boolean) }
621
- def ==(other); end
622
-
623
- sig { returns(T::Array[Parameter]) }
624
- attr_reader :parameters
625
-
626
- sig { returns(T.nilable(Type)) }
627
- attr_reader :return_type
628
-
629
- sig { override.returns(String) }
630
- def generate_rbi; end
631
-
632
- sig { override.returns(String) }
633
- def generate_rbs; end
634
-
635
- sig { override.returns(String) }
636
- def describe; end
637
- end
638
- end
639
-
640
- module Conversion
641
- class Converter
642
- abstract!
643
-
644
- extend T::Sig
645
- extend T::Helpers
646
-
647
- sig { returns(T.untyped) }
648
- def initialize; end
649
-
650
- sig { returns(T::Array[[String, TypedObject]]) }
651
- attr_reader :warnings
652
-
653
- sig { params(msg: String, node: RbiGenerator::RbiObject).void }
654
- def add_warning(msg, node); end
655
- end
656
-
657
- class RbiToRbs < Converter
658
- extend T::Sig
659
-
660
- sig { params(rbs_gen: RbsGenerator).void }
661
- def initialize(rbs_gen); end
662
-
663
- sig { returns(RbsGenerator) }
664
- attr_reader :rbs_gen
665
-
666
- sig { params(from: RbiGenerator::Namespace, to: RbsGenerator::Namespace).void }
667
- def convert_all(from, to); end
668
-
669
- sig { params(node: RbiGenerator::RbiObject, new_parent: RbsGenerator::Namespace).void }
670
- def convert_object(node, new_parent); end
671
- end
672
- end
673
-
674
- class RbiGenerator < Generator
675
- Options = Parlour::Options
676
-
677
- sig { params(hash: T.untyped).returns(T.untyped) }
678
- def initialize(**hash); end
679
-
680
- sig { returns(RbiGenerator::Namespace) }
681
- attr_reader :root
682
-
683
- sig { overridable.params(strictness: String).returns(String) }
684
- def rbi(strictness = 'strong'); end
685
-
686
- class Arbitrary < RbiObject
687
- sig { params(generator: Generator, code: String, block: T.nilable(T.proc.params(x: Arbitrary).void)).void }
688
- def initialize(generator, code: '', &block); end
689
-
690
- sig { returns(String) }
691
- attr_accessor :code
692
-
693
- sig { params(other: Object).returns(T::Boolean) }
694
- def ==(other); end
695
-
696
- sig { override.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
697
- def generate_rbi(indent_level, options); end
698
-
699
- sig { override.params(others: T::Array[RbiGenerator::RbiObject]).returns(T::Boolean) }
700
- def mergeable?(others); end
701
-
702
- sig { override.params(others: T::Array[RbiGenerator::RbiObject]).void }
703
- def merge_into_self(others); end
704
-
705
- sig { override.returns(String) }
706
- def describe; end
707
-
708
- sig { override.void }
709
- def generalize_from_rbi!; end
710
- end
711
-
712
- class Attribute < Method
713
- sig do
714
- params(
715
- generator: Generator,
716
- name: String,
717
- kind: Symbol,
718
- type: Types::TypeLike,
719
- class_attribute: T::Boolean,
720
- block: T.nilable(T.proc.params(x: Attribute).void)
721
- ).void
722
- end
723
- def initialize(generator, name, kind, type, class_attribute: false, &block); end
724
-
725
- sig { returns(Symbol) }
726
- attr_reader :kind
727
-
728
- sig { returns(T::Boolean) }
729
- attr_reader :class_attribute
730
-
731
- sig { returns(Types::TypeLike) }
732
- attr_reader :type
733
-
734
- sig { override.params(other: Object).returns(T::Boolean) }
735
- def ==(other); end
736
-
737
- sig { override.void }
738
- def generalize_from_rbi!; end
739
-
740
- sig { override.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
741
- def generate_definition(indent_level, options); end
742
- end
743
-
744
- class ClassNamespace < Namespace
745
- extend T::Sig
746
-
747
- sig do
748
- params(
749
- generator: Generator,
750
- name: String,
751
- final: T::Boolean,
752
- superclass: T.nilable(String),
753
- abstract: T::Boolean,
754
- block: T.nilable(T.proc.params(x: ClassNamespace).void)
755
- ).void
756
- end
757
- def initialize(generator, name, final, superclass, abstract, &block); end
758
-
759
- sig { override.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
760
- def generate_rbi(indent_level, options); end
761
-
762
- sig { returns(T.nilable(String)) }
763
- attr_reader :superclass
764
-
765
- sig { returns(T::Boolean) }
766
- attr_reader :abstract
767
-
768
- sig { override.params(others: T::Array[RbiGenerator::RbiObject]).returns(T::Boolean) }
769
- def mergeable?(others); end
770
-
771
- sig { override.params(others: T::Array[RbiGenerator::RbiObject]).void }
772
- def merge_into_self(others); end
773
-
774
- sig { override.returns(String) }
775
- def describe; end
776
-
777
- sig { override.void }
778
- def generalize_from_rbi!; end
779
- end
780
-
781
- class Constant < RbiObject
782
- sig do
783
- params(
784
- generator: Generator,
785
- name: String,
786
- value: Types::TypeLike,
787
- eigen_constant: T::Boolean,
788
- block: T.nilable(T.proc.params(x: Constant).void)
789
- ).void
790
- end
791
- def initialize(generator, name: '', value: '', eigen_constant: false, &block); end
792
-
793
- sig { returns(Types::TypeLike) }
794
- attr_reader :value
795
-
796
- sig { returns(T.untyped) }
797
- attr_reader :eigen_constant
798
-
799
- sig { params(other: Object).returns(T::Boolean) }
800
- def ==(other); end
801
-
802
- sig { override.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
803
- def generate_rbi(indent_level, options); end
804
-
805
- sig { override.params(others: T::Array[RbiGenerator::RbiObject]).returns(T::Boolean) }
806
- def mergeable?(others); end
807
-
808
- sig { override.params(others: T::Array[RbiGenerator::RbiObject]).void }
809
- def merge_into_self(others); end
810
-
811
- sig { override.returns(String) }
812
- def describe; end
813
-
814
- sig { override.void }
815
- def generalize_from_rbi!; end
816
- end
817
-
818
- class EnumClassNamespace < ClassNamespace
819
- extend T::Sig
820
-
821
- sig do
822
- params(
823
- generator: Generator,
824
- name: String,
825
- final: T::Boolean,
826
- enums: T::Array[T.any([String, String], String)],
827
- abstract: T::Boolean,
828
- block: T.nilable(T.proc.params(x: EnumClassNamespace).void)
829
- ).void
830
- end
831
- def initialize(generator, name, final, enums, abstract, &block); end
832
-
833
- sig { returns(T::Array[T.any([String, String], String)]) }
834
- attr_reader :enums
835
-
836
- sig { override.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
837
- def generate_body(indent_level, options); end
838
-
839
- sig { override.params(others: T::Array[RbiGenerator::RbiObject]).returns(T::Boolean) }
840
- def mergeable?(others); end
841
-
842
- sig { override.params(others: T::Array[RbiGenerator::RbiObject]).void }
843
- def merge_into_self(others); end
844
-
845
- sig { override.void }
846
- def generalize_from_rbi!; end
847
- end
848
-
849
- class Extend < RbiObject
850
- sig { params(generator: Generator, name: String, block: T.nilable(T.proc.params(x: Extend).void)).void }
851
- def initialize(generator, name: '', &block); end
852
-
853
- sig { params(other: Object).returns(T::Boolean) }
854
- def ==(other); end
855
-
856
- sig { override.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
857
- def generate_rbi(indent_level, options); end
858
-
859
- sig { override.params(others: T::Array[RbiGenerator::RbiObject]).returns(T::Boolean) }
860
- def mergeable?(others); end
861
-
862
- sig { override.params(others: T::Array[RbiGenerator::RbiObject]).void }
863
- def merge_into_self(others); end
864
-
865
- sig { override.returns(String) }
866
- def describe; end
867
-
868
- sig { override.void }
869
- def generalize_from_rbi!; end
870
- end
871
-
872
- class Include < RbiObject
873
- sig { params(generator: Generator, name: String, block: T.nilable(T.proc.params(x: Include).void)).void }
874
- def initialize(generator, name: '', &block); end
875
-
876
- sig { params(other: Object).returns(T::Boolean) }
877
- def ==(other); end
878
-
879
- sig { override.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
880
- def generate_rbi(indent_level, options); end
881
-
882
- sig { override.params(others: T::Array[RbiGenerator::RbiObject]).returns(T::Boolean) }
883
- def mergeable?(others); end
884
-
885
- sig { override.params(others: T::Array[RbiGenerator::RbiObject]).void }
886
- def merge_into_self(others); end
887
-
888
- sig { override.returns(String) }
889
- def describe; end
890
-
891
- sig { override.void }
892
- def generalize_from_rbi!; end
893
- end
894
-
895
- class Method < RbiObject
896
- extend T::Sig
897
-
898
- sig do
899
- params(
900
- generator: Generator,
901
- name: String,
902
- parameters: T::Array[Parameter],
903
- return_type: T.nilable(Types::TypeLike),
904
- abstract: T::Boolean,
905
- implementation: T::Boolean,
906
- override: T::Boolean,
907
- overridable: T::Boolean,
908
- class_method: T::Boolean,
909
- final: T::Boolean,
910
- type_parameters: T.nilable(T::Array[Symbol]),
911
- block: T.nilable(T.proc.params(x: Method).void)
912
- ).void
913
- end
914
- def initialize(generator, name, parameters, return_type = nil, abstract: false, implementation: false, override: false, overridable: false, class_method: false, final: false, type_parameters: nil, &block); end
915
-
916
- sig { overridable.params(other: Object).returns(T::Boolean) }
917
- def ==(other); end
918
-
919
- sig { returns(T::Array[Parameter]) }
920
- attr_reader :parameters
921
-
922
- sig { returns(T.nilable(Types::TypeLike)) }
923
- attr_reader :return_type
924
-
925
- sig { returns(T::Boolean) }
926
- attr_reader :abstract
927
-
928
- sig { returns(T::Boolean) }
929
- attr_reader :implementation
930
-
931
- sig { returns(T::Boolean) }
932
- attr_reader :override
933
-
934
- sig { returns(T::Boolean) }
935
- attr_reader :overridable
936
-
937
- sig { returns(T::Boolean) }
938
- attr_reader :class_method
939
-
940
- sig { returns(T::Boolean) }
941
- attr_reader :final
942
-
943
- sig { returns(T::Array[Symbol]) }
944
- attr_reader :type_parameters
945
-
946
- sig { override.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
947
- def generate_rbi(indent_level, options); end
948
-
949
- sig { override.params(others: T::Array[RbiGenerator::RbiObject]).returns(T::Boolean) }
950
- def mergeable?(others); end
951
-
952
- sig { override.params(others: T::Array[RbiGenerator::RbiObject]).void }
953
- def merge_into_self(others); end
954
-
955
- sig { override.returns(String) }
956
- def describe; end
957
-
958
- sig { override.void }
959
- def generalize_from_rbi!; end
960
-
961
- sig { overridable.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
962
- def generate_definition(indent_level, options); end
963
-
964
- sig { returns(String) }
965
- def qualifiers; end
966
- end
967
-
968
- class ModuleNamespace < Namespace
969
- extend T::Sig
970
-
971
- sig do
972
- params(
973
- generator: Generator,
974
- name: String,
975
- final: T::Boolean,
976
- interface: T::Boolean,
977
- block: T.nilable(T.proc.params(x: ClassNamespace).void)
978
- ).void
979
- end
980
- def initialize(generator, name, final, interface, &block); end
981
-
982
- sig { override.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
983
- def generate_rbi(indent_level, options); end
984
-
985
- sig { returns(T::Boolean) }
986
- attr_reader :interface
987
-
988
- sig { override.params(others: T::Array[RbiGenerator::RbiObject]).returns(T::Boolean) }
989
- def mergeable?(others); end
990
-
991
- sig { override.params(others: T::Array[RbiGenerator::RbiObject]).void }
992
- def merge_into_self(others); end
993
-
994
- sig { override.returns(String) }
995
- def describe; end
996
-
997
- sig { override.void }
998
- def generalize_from_rbi!; end
999
- end
1000
-
1001
- class Namespace < RbiObject
1002
- extend T::Sig
1003
-
1004
- sig { override.overridable.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
1005
- def generate_rbi(indent_level, options); end
1006
-
1007
- sig do
1008
- params(
1009
- generator: Generator,
1010
- name: T.nilable(String),
1011
- final: T::Boolean,
1012
- block: T.nilable(T.proc.params(x: Namespace).void)
1013
- ).void
1014
- end
1015
- def initialize(generator, name = nil, final = false, &block); end
1016
-
1017
- sig { returns(T::Boolean) }
1018
- attr_reader :final
1019
-
1020
- sig { returns(T::Array[RbiObject]) }
1021
- attr_reader :children
1022
-
1023
- sig { returns(T::Array[RbiGenerator::Extend]) }
1024
- def extends; end
1025
-
1026
- sig { returns(T::Array[RbiGenerator::Include]) }
1027
- def includes; end
1028
-
1029
- sig { returns(T::Array[RbiGenerator::TypeAlias]) }
1030
- def aliases; end
1031
-
1032
- sig { returns(T::Array[RbiGenerator::Constant]) }
1033
- def constants; end
1034
-
1035
- sig { params(object: T.untyped, block: T.proc.params(x: Namespace).void).void }
1036
- def path(object, &block); end
1037
-
1038
- sig { params(comment: T.any(String, T::Array[String])).void }
1039
- def add_comment_to_next_child(comment); end
1040
-
1041
- sig do
1042
- params(
1043
- name: String,
1044
- final: T::Boolean,
1045
- superclass: T.nilable(String),
1046
- abstract: T::Boolean,
1047
- block: T.nilable(T.proc.params(x: ClassNamespace).void)
1048
- ).returns(ClassNamespace)
1049
- end
1050
- def create_class(name, final: false, superclass: nil, abstract: false, &block); end
1051
-
1052
- sig do
1053
- params(
1054
- name: String,
1055
- final: T::Boolean,
1056
- enums: T.nilable(T::Array[T.any([String, String], String)]),
1057
- abstract: T::Boolean,
1058
- block: T.nilable(T.proc.params(x: EnumClassNamespace).void)
1059
- ).returns(EnumClassNamespace)
1060
- end
1061
- def create_enum_class(name, final: false, enums: nil, abstract: false, &block); end
1062
-
1063
- sig do
1064
- params(
1065
- name: String,
1066
- final: T::Boolean,
1067
- props: T.nilable(T::Array[StructProp]),
1068
- abstract: T::Boolean,
1069
- block: T.nilable(T.proc.params(x: StructClassNamespace).void)
1070
- ).returns(StructClassNamespace)
1071
- end
1072
- def create_struct_class(name, final: false, props: nil, abstract: false, &block); end
1073
-
1074
- sig do
1075
- params(
1076
- name: String,
1077
- final: T::Boolean,
1078
- interface: T::Boolean,
1079
- block: T.nilable(T.proc.params(x: ClassNamespace).void)
1080
- ).returns(ModuleNamespace)
1081
- end
1082
- def create_module(name, final: false, interface: false, &block); end
1083
-
1084
- sig do
1085
- params(
1086
- name: String,
1087
- parameters: T.nilable(T::Array[Parameter]),
1088
- return_type: T.nilable(Types::TypeLike),
1089
- returns: T.nilable(Types::TypeLike),
1090
- abstract: T::Boolean,
1091
- implementation: T::Boolean,
1092
- override: T::Boolean,
1093
- overridable: T::Boolean,
1094
- class_method: T::Boolean,
1095
- final: T::Boolean,
1096
- type_parameters: T.nilable(T::Array[Symbol]),
1097
- block: T.nilable(T.proc.params(x: Method).void)
1098
- ).returns(Method)
1099
- end
1100
- def create_method(name, parameters: nil, return_type: nil, returns: nil, abstract: false, implementation: false, override: false, overridable: false, class_method: false, final: false, type_parameters: nil, &block); end
1101
-
1102
- sig do
1103
- params(
1104
- name: String,
1105
- kind: Symbol,
1106
- type: Types::TypeLike,
1107
- class_attribute: T::Boolean,
1108
- block: T.nilable(T.proc.params(x: Attribute).void)
1109
- ).returns(Attribute)
1110
- end
1111
- def create_attribute(name, kind:, type:, class_attribute: false, &block); end
1112
-
1113
- sig do
1114
- params(
1115
- name: String,
1116
- type: Types::TypeLike,
1117
- class_attribute: T::Boolean,
1118
- block: T.nilable(T.proc.params(x: Attribute).void)
1119
- ).returns(Attribute)
1120
- end
1121
- def create_attr_reader(name, type:, class_attribute: false, &block); end
1122
-
1123
- sig do
1124
- params(
1125
- name: String,
1126
- type: Types::TypeLike,
1127
- class_attribute: T::Boolean,
1128
- block: T.nilable(T.proc.params(x: Attribute).void)
1129
- ).returns(Attribute)
1130
- end
1131
- def create_attr_writer(name, type:, class_attribute: false, &block); end
1132
-
1133
- sig do
1134
- params(
1135
- name: String,
1136
- type: Types::TypeLike,
1137
- class_attribute: T::Boolean,
1138
- block: T.nilable(T.proc.params(x: Attribute).void)
1139
- ).returns(Attribute)
1140
- end
1141
- def create_attr_accessor(name, type:, class_attribute: false, &block); end
1142
-
1143
- sig { params(code: T.untyped, block: T.untyped).returns(T.untyped) }
1144
- def create_arbitrary(code:, &block); end
1145
-
1146
- sig { params(name: String, block: T.nilable(T.proc.params(x: Extend).void)).returns(RbiGenerator::Extend) }
1147
- def create_extend(name, &block); end
1148
-
1149
- sig { params(extendables: T::Array[String]).returns(T::Array[Extend]) }
1150
- def create_extends(extendables); end
1151
-
1152
- sig { params(name: String, block: T.nilable(T.proc.params(x: Include).void)).returns(Include) }
1153
- def create_include(name, &block); end
1154
-
1155
- sig { params(includables: T::Array[String]).returns(T::Array[Include]) }
1156
- def create_includes(includables); end
1157
-
1158
- sig do
1159
- params(
1160
- name: String,
1161
- value: String,
1162
- eigen_constant: T::Boolean,
1163
- block: T.nilable(T.proc.params(x: Constant).void)
1164
- ).returns(Constant)
1165
- end
1166
- def create_constant(name, value:, eigen_constant: false, &block); end
1167
-
1168
- sig { params(name: String, type: Types::TypeLike, block: T.nilable(T.proc.params(x: TypeAlias).void)).returns(TypeAlias) }
1169
- def create_type_alias(name, type:, &block); end
1170
-
1171
- sig { override.overridable.params(others: T::Array[RbiGenerator::RbiObject]).returns(T::Boolean) }
1172
- def mergeable?(others); end
1173
-
1174
- sig { override.overridable.params(others: T::Array[RbiGenerator::RbiObject]).void }
1175
- def merge_into_self(others); end
1176
-
1177
- sig { override.overridable.returns(String) }
1178
- def describe; end
1179
-
1180
- sig { override.void }
1181
- def generalize_from_rbi!; end
1182
-
1183
- sig { overridable.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
1184
- def generate_body(indent_level, options); end
1185
-
1186
- sig { params(object: RbiObject).void }
1187
- def move_next_comments(object); end
1188
- end
1189
-
1190
- class Parameter
1191
- extend T::Sig
1192
- PREFIXES = {
1193
- normal: '',
1194
- splat: '*',
1195
- double_splat: '**',
1196
- block: '&'
1197
- }.freeze
1198
-
1199
- sig { params(name: String, type: T.nilable(Types::TypeLike), default: T.nilable(String)).void }
1200
- def initialize(name, type: nil, default: nil); end
1201
-
1202
- sig { params(other: Object).returns(T::Boolean) }
1203
- def ==(other); end
1204
-
1205
- sig { returns(String) }
1206
- attr_reader :name
1207
-
1208
- sig { returns(String) }
1209
- def name_without_kind; end
1210
-
1211
- sig { returns(Types::TypeLike) }
1212
- attr_reader :type
1213
-
1214
- sig { returns(T.nilable(String)) }
1215
- attr_reader :default
1216
-
1217
- sig { returns(Symbol) }
1218
- attr_reader :kind
1219
-
1220
- sig { returns(String) }
1221
- def to_def_param; end
1222
-
1223
- sig { returns(String) }
1224
- def to_sig_param; end
1225
-
1226
- sig { void }
1227
- def generalize_from_rbi!; end
1228
- end
1229
-
1230
- class RbiObject < TypedObject
1231
- abstract!
1232
-
1233
- sig { params(generator: Generator, name: String).void }
1234
- def initialize(generator, name); end
1235
-
1236
- sig { returns(Generator) }
1237
- attr_reader :generator
1238
-
1239
- sig { abstract.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
1240
- def generate_rbi(indent_level, options); end
1241
-
1242
- sig { abstract.params(others: T::Array[RbiGenerator::RbiObject]).returns(T::Boolean) }
1243
- def mergeable?(others); end
1244
-
1245
- sig { abstract.params(others: T::Array[RbiGenerator::RbiObject]).void }
1246
- def merge_into_self(others); end
1247
-
1248
- sig { override.overridable.returns(String) }
1249
- def describe; end
1250
-
1251
- sig { abstract.void }
1252
- def generalize_from_rbi!; end
1253
- end
1254
-
1255
- class StructClassNamespace < ClassNamespace
1256
- extend T::Sig
1257
-
1258
- sig do
1259
- params(
1260
- generator: Generator,
1261
- name: String,
1262
- final: T::Boolean,
1263
- props: T::Array[StructProp],
1264
- abstract: T::Boolean,
1265
- block: T.nilable(T.proc.params(x: StructClassNamespace).void)
1266
- ).void
1267
- end
1268
- def initialize(generator, name, final, props, abstract, &block); end
1269
-
1270
- sig { returns(T::Array[StructProp]) }
1271
- attr_reader :props
1272
-
1273
- sig { override.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
1274
- def generate_body(indent_level, options); end
1275
-
1276
- sig { override.params(others: T::Array[RbiGenerator::RbiObject]).returns(T::Boolean) }
1277
- def mergeable?(others); end
1278
-
1279
- sig { override.params(others: T::Array[RbiGenerator::RbiObject]).void }
1280
- def merge_into_self(others); end
1281
-
1282
- sig { override.void }
1283
- def generalize_from_rbi!; end
1284
- end
1285
-
1286
- class StructProp
1287
- extend T::Sig
1288
- EXTRA_PROPERTIES = %i{
1289
- optional enum dont_store foreign default factory immutable array override redaction
1290
- }
1291
-
1292
- sig do
1293
- params(
1294
- name: String,
1295
- type: Types::TypeLike,
1296
- optional: T.nilable(T.any(T::Boolean, Symbol)),
1297
- enum: T.nilable(String),
1298
- dont_store: T.nilable(T::Boolean),
1299
- foreign: T.nilable(String),
1300
- default: T.nilable(String),
1301
- factory: T.nilable(String),
1302
- immutable: T.nilable(T::Boolean),
1303
- array: T.nilable(String),
1304
- override: T.nilable(T::Boolean),
1305
- redaction: T.nilable(String)
1306
- ).void
1307
- end
1308
- def initialize(name, type, optional: nil, enum: nil, dont_store: nil, foreign: nil, default: nil, factory: nil, immutable: nil, array: nil, override: nil, redaction: nil); end
1309
-
1310
- sig { params(other: Object).returns(T::Boolean) }
1311
- def ==(other); end
1312
-
1313
- sig { returns(String) }
1314
- attr_reader :name
1315
-
1316
- sig { returns(Types::TypeLike) }
1317
- attr_reader :type
1318
-
1319
- sig { returns(T.nilable(T.any(T::Boolean, Symbol))) }
1320
- attr_reader :optional
1321
-
1322
- sig { returns(T.nilable(String)) }
1323
- attr_reader :enum
1324
-
1325
- sig { returns(T.nilable(T::Boolean)) }
1326
- attr_reader :dont_store
1327
-
1328
- sig { returns(T.nilable(String)) }
1329
- attr_reader :foreign
1330
-
1331
- sig { returns(T.nilable(String)) }
1332
- attr_reader :default
1333
-
1334
- sig { returns(T.nilable(String)) }
1335
- attr_reader :factory
1336
-
1337
- sig { returns(T.nilable(T::Boolean)) }
1338
- attr_reader :immutable
1339
-
1340
- sig { returns(T.nilable(String)) }
1341
- attr_reader :array
1342
-
1343
- sig { returns(T.nilable(T::Boolean)) }
1344
- attr_reader :override
1345
-
1346
- sig { returns(T.nilable(String)) }
1347
- attr_reader :redaction
1348
-
1349
- sig { returns(String) }
1350
- def to_prop_call; end
1351
-
1352
- sig { void }
1353
- def generalize_from_rbi!; end
1354
- end
1355
-
1356
- class TypeAlias < RbiObject
1357
- sig do
1358
- params(
1359
- generator: Generator,
1360
- name: String,
1361
- type: Types::TypeLike,
1362
- block: T.nilable(T.proc.params(x: TypeAlias).void)
1363
- ).void
1364
- end
1365
- def initialize(generator, name:, type:, &block); end
1366
-
1367
- sig { returns(Types::TypeLike) }
1368
- attr_reader :type
1369
-
1370
- sig { params(other: Object).returns(T::Boolean) }
1371
- def ==(other); end
1372
-
1373
- sig { override.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
1374
- def generate_rbi(indent_level, options); end
1375
-
1376
- sig { override.params(others: T::Array[RbiGenerator::RbiObject]).returns(T::Boolean) }
1377
- def mergeable?(others); end
1378
-
1379
- sig { override.params(others: T::Array[RbiGenerator::RbiObject]).void }
1380
- def merge_into_self(others); end
1381
-
1382
- sig { override.returns(String) }
1383
- def describe; end
1384
-
1385
- sig { override.void }
1386
- def generalize_from_rbi!; end
1387
- end
1388
- end
1389
-
1390
- class RbsGenerator < Generator
1391
- sig { params(hash: T.untyped).returns(T.untyped) }
1392
- def initialize(**hash); end
1393
-
1394
- sig { returns(RbsGenerator::Namespace) }
1395
- attr_reader :root
1396
-
1397
- sig { overridable.returns(String) }
1398
- def rbs; end
1399
-
1400
- class Arbitrary < RbsObject
1401
- sig { params(generator: Generator, code: String, block: T.nilable(T.proc.params(x: Arbitrary).void)).void }
1402
- def initialize(generator, code: '', &block); end
1403
-
1404
- sig { returns(String) }
1405
- attr_accessor :code
1406
-
1407
- sig { params(other: Object).returns(T::Boolean) }
1408
- def ==(other); end
1409
-
1410
- sig { override.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
1411
- def generate_rbs(indent_level, options); end
1412
-
1413
- sig { override.params(others: T::Array[RbsGenerator::RbsObject]).returns(T::Boolean) }
1414
- def mergeable?(others); end
1415
-
1416
- sig { override.params(others: T::Array[RbsGenerator::RbsObject]).void }
1417
- def merge_into_self(others); end
1418
-
1419
- sig { override.returns(String) }
1420
- def describe; end
1421
- end
1422
-
1423
- class Attribute < RbsGenerator::Method
1424
- extend T::Sig
1425
-
1426
- sig do
1427
- params(
1428
- generator: Generator,
1429
- name: String,
1430
- kind: Symbol,
1431
- type: Types::TypeLike,
1432
- block: T.nilable(T.proc.params(x: Attribute).void)
1433
- ).void
1434
- end
1435
- def initialize(generator, name, kind, type, &block); end
1436
-
1437
- sig { returns(Symbol) }
1438
- attr_reader :kind
1439
-
1440
- sig { returns(Types::TypeLike) }
1441
- attr_reader :type
1442
-
1443
- sig { override.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
1444
- def generate_rbs(indent_level, options); end
1445
-
1446
- sig { override.params(other: Object).returns(T::Boolean) }
1447
- def ==(other); end
1448
- end
1449
-
1450
- class Block
1451
- extend T::Sig
1452
-
1453
- sig { params(type: Types::Proc, required: T::Boolean).void }
1454
- def initialize(type, required); end
1455
-
1456
- sig { overridable.params(other: Object).returns(T::Boolean) }
1457
- def ==(other); end
1458
-
1459
- sig { returns(Types::Proc) }
1460
- attr_reader :type
1461
-
1462
- sig { returns(T::Boolean) }
1463
- attr_reader :required
1464
-
1465
- sig { params(options: Options).returns(T::Array[String]) }
1466
- def generate_rbs(options); end
1467
- end
1468
-
1469
- class ClassNamespace < Namespace
1470
- extend T::Sig
1471
-
1472
- sig do
1473
- params(
1474
- generator: Generator,
1475
- name: String,
1476
- superclass: T.nilable(Types::TypeLike),
1477
- block: T.nilable(T.proc.params(x: ClassNamespace).void)
1478
- ).void
1479
- end
1480
- def initialize(generator, name, superclass, &block); end
1481
-
1482
- sig { override.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
1483
- def generate_rbs(indent_level, options); end
1484
-
1485
- sig { returns(T.nilable(Types::TypeLike)) }
1486
- attr_reader :superclass
1487
-
1488
- sig { override.params(others: T::Array[RbsGenerator::RbsObject]).returns(T::Boolean) }
1489
- def mergeable?(others); end
1490
-
1491
- sig { override.params(others: T::Array[RbsGenerator::RbsObject]).void }
1492
- def merge_into_self(others); end
1493
-
1494
- sig { override.returns(String) }
1495
- def describe; end
1496
- end
1497
-
1498
- class Constant < RbsObject
1499
- sig do
1500
- params(
1501
- generator: Generator,
1502
- name: String,
1503
- type: Types::TypeLike,
1504
- block: T.nilable(T.proc.params(x: Constant).void)
1505
- ).void
1506
- end
1507
- def initialize(generator, name, type:, &block); end
1508
-
1509
- sig { returns(Types::TypeLike) }
1510
- attr_reader :type
1511
-
1512
- sig { params(other: Object).returns(T::Boolean) }
1513
- def ==(other); end
1514
-
1515
- sig { override.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
1516
- def generate_rbs(indent_level, options); end
1517
-
1518
- sig { override.params(others: T::Array[RbsGenerator::RbsObject]).returns(T::Boolean) }
1519
- def mergeable?(others); end
1520
-
1521
- sig { override.params(others: T::Array[RbsGenerator::RbsObject]).void }
1522
- def merge_into_self(others); end
1523
-
1524
- sig { override.returns(String) }
1525
- def describe; end
1526
- end
1527
-
1528
- class Extend < RbsObject
1529
- sig { params(generator: Generator, type: Types::TypeLike, block: T.nilable(T.proc.params(x: Extend).void)).void }
1530
- def initialize(generator, type:, &block); end
1531
-
1532
- sig { params(other: Object).returns(T::Boolean) }
1533
- def ==(other); end
1534
-
1535
- sig { returns(Types::TypeLike) }
1536
- attr_reader :type
1537
-
1538
- sig { override.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
1539
- def generate_rbs(indent_level, options); end
1540
-
1541
- sig { override.params(others: T::Array[RbsGenerator::RbsObject]).returns(T::Boolean) }
1542
- def mergeable?(others); end
1543
-
1544
- sig { override.params(others: T::Array[RbsGenerator::RbsObject]).void }
1545
- def merge_into_self(others); end
1546
-
1547
- sig { override.returns(String) }
1548
- def describe; end
1549
- end
1550
-
1551
- class Include < RbsObject
1552
- sig { params(generator: Generator, type: Types::TypeLike, block: T.nilable(T.proc.params(x: Include).void)).void }
1553
- def initialize(generator, type:, &block); end
1554
-
1555
- sig { params(other: Object).returns(T::Boolean) }
1556
- def ==(other); end
1557
-
1558
- sig { returns(Types::TypeLike) }
1559
- attr_reader :type
1560
-
1561
- sig { override.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
1562
- def generate_rbs(indent_level, options); end
1563
-
1564
- sig { override.params(others: T::Array[RbsGenerator::RbsObject]).returns(T::Boolean) }
1565
- def mergeable?(others); end
1566
-
1567
- sig { override.params(others: T::Array[RbsGenerator::RbsObject]).void }
1568
- def merge_into_self(others); end
1569
-
1570
- sig { override.returns(String) }
1571
- def describe; end
1572
- end
1573
-
1574
- class InterfaceNamespace < Namespace
1575
- extend T::Sig
1576
-
1577
- sig { override.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
1578
- def generate_rbs(indent_level, options); end
1579
-
1580
- sig { override.returns(String) }
1581
- def describe; end
1582
- end
1583
-
1584
- class Method < RbsObject
1585
- extend T::Sig
1586
-
1587
- sig do
1588
- params(
1589
- generator: Generator,
1590
- name: String,
1591
- signatures: T::Array[MethodSignature],
1592
- class_method: T::Boolean,
1593
- block: T.nilable(T.proc.params(x: Method).void)
1594
- ).void
1595
- end
1596
- def initialize(generator, name, signatures, class_method: false, &block); end
1597
-
1598
- sig { overridable.params(other: Object).returns(T::Boolean) }
1599
- def ==(other); end
1600
-
1601
- sig { returns(T::Array[MethodSignature]) }
1602
- attr_reader :signatures
1603
-
1604
- sig { returns(T::Boolean) }
1605
- attr_reader :class_method
1606
-
1607
- sig { override.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
1608
- def generate_rbs(indent_level, options); end
1609
-
1610
- sig { override.params(others: T::Array[RbsGenerator::RbsObject]).returns(T::Boolean) }
1611
- def mergeable?(others); end
1612
-
1613
- sig { override.params(others: T::Array[RbsGenerator::RbsObject]).void }
1614
- def merge_into_self(others); end
1615
-
1616
- sig { override.returns(String) }
1617
- def describe; end
1618
- end
1619
-
1620
- class MethodSignature
1621
- extend T::Sig
1622
-
1623
- sig do
1624
- params(
1625
- parameters: T::Array[Parameter],
1626
- return_type: T.nilable(Types::TypeLike),
1627
- block: T.nilable(Block),
1628
- type_parameters: T.nilable(T::Array[Symbol])
1629
- ).void
1630
- end
1631
- def initialize(parameters, return_type = nil, block: nil, type_parameters: nil); end
1632
-
1633
- sig { overridable.params(other: Object).returns(T::Boolean) }
1634
- def ==(other); end
1635
-
1636
- sig { returns(T::Array[Parameter]) }
1637
- attr_reader :parameters
1638
-
1639
- sig { returns(T.nilable(Types::TypeLike)) }
1640
- attr_reader :return_type
1641
-
1642
- sig { returns(T.nilable(Block)) }
1643
- attr_reader :block
1644
-
1645
- sig { returns(T::Array[Symbol]) }
1646
- attr_reader :type_parameters
1647
-
1648
- sig { params(options: Options).returns(T::Array[String]) }
1649
- def generate_rbs(options); end
1650
- end
1651
-
1652
- class ModuleNamespace < Namespace
1653
- extend T::Sig
1654
-
1655
- sig { override.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
1656
- def generate_rbs(indent_level, options); end
1657
-
1658
- sig { override.returns(String) }
1659
- def describe; end
1660
- end
1661
-
1662
- class Namespace < RbsObject
1663
- extend T::Sig
1664
-
1665
- sig { override.overridable.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
1666
- def generate_rbs(indent_level, options); end
1667
-
1668
- sig { params(generator: Generator, name: T.nilable(String), block: T.nilable(T.proc.params(x: Namespace).void)).void }
1669
- def initialize(generator, name = nil, &block); end
1670
-
1671
- sig { returns(T::Array[RbsObject]) }
1672
- attr_reader :children
1673
-
1674
- sig { returns(T::Array[RbsGenerator::Extend]) }
1675
- def extends; end
1676
-
1677
- sig { returns(T::Array[RbsGenerator::Include]) }
1678
- def includes; end
1679
-
1680
- sig { returns(T::Array[RbsGenerator::TypeAlias]) }
1681
- def aliases; end
1682
-
1683
- sig { returns(T::Array[RbsGenerator::Constant]) }
1684
- def constants; end
1685
-
1686
- sig { params(object: T.untyped, block: T.proc.params(x: Namespace).void).void }
1687
- def path(object, &block); end
1688
-
1689
- sig { params(comment: T.any(String, T::Array[String])).void }
1690
- def add_comment_to_next_child(comment); end
1691
-
1692
- sig { params(name: String, superclass: T.nilable(Types::TypeLike), block: T.nilable(T.proc.params(x: ClassNamespace).void)).returns(ClassNamespace) }
1693
- def create_class(name, superclass: nil, &block); end
1694
-
1695
- sig { params(name: String, block: T.nilable(T.proc.params(x: Namespace).void)).returns(ModuleNamespace) }
1696
- def create_module(name, &block); end
1697
-
1698
- sig { params(name: String, block: T.nilable(T.proc.params(x: Namespace).void)).returns(InterfaceNamespace) }
1699
- def create_interface(name, &block); end
1700
-
1701
- sig do
1702
- params(
1703
- name: String,
1704
- signatures: T.nilable(T::Array[MethodSignature]),
1705
- class_method: T::Boolean,
1706
- block: T.nilable(T.proc.params(x: Method).void)
1707
- ).returns(Method)
1708
- end
1709
- def create_method(name, signatures = nil, class_method: false, &block); end
1710
-
1711
- sig do
1712
- params(
1713
- name: String,
1714
- kind: Symbol,
1715
- type: Types::TypeLike,
1716
- block: T.nilable(T.proc.params(x: Attribute).void)
1717
- ).returns(Attribute)
1718
- end
1719
- def create_attribute(name, kind:, type:, &block); end
1720
-
1721
- sig { params(name: String, type: Types::TypeLike, block: T.nilable(T.proc.params(x: Attribute).void)).returns(Attribute) }
1722
- def create_attr_reader(name, type:, &block); end
1723
-
1724
- sig { params(name: String, type: Types::TypeLike, block: T.nilable(T.proc.params(x: Attribute).void)).returns(Attribute) }
1725
- def create_attr_writer(name, type:, &block); end
1726
-
1727
- sig { params(name: String, type: Types::TypeLike, block: T.nilable(T.proc.params(x: Attribute).void)).returns(Attribute) }
1728
- def create_attr_accessor(name, type:, &block); end
1729
-
1730
- sig { params(code: T.untyped, block: T.untyped).returns(T.untyped) }
1731
- def create_arbitrary(code:, &block); end
1732
-
1733
- sig { params(type: Types::TypeLike, block: T.nilable(T.proc.params(x: Extend).void)).returns(RbsGenerator::Extend) }
1734
- def create_extend(type, &block); end
1735
-
1736
- sig { params(extendables: T::Array[Types::TypeLike]).returns(T::Array[Extend]) }
1737
- def create_extends(extendables); end
1738
-
1739
- sig { params(type: Types::TypeLike, block: T.nilable(T.proc.params(x: Include).void)).returns(Include) }
1740
- def create_include(type, &block); end
1741
-
1742
- sig { params(includables: T::Array[Types::TypeLike]).returns(T::Array[Include]) }
1743
- def create_includes(includables); end
1744
-
1745
- sig { params(name: String, type: Types::TypeLike, block: T.nilable(T.proc.params(x: Constant).void)).returns(Constant) }
1746
- def create_constant(name, type:, &block); end
1747
-
1748
- sig { params(name: String, type: Types::TypeLike, block: T.nilable(T.proc.params(x: TypeAlias).void)).returns(TypeAlias) }
1749
- def create_type_alias(name, type:, &block); end
1750
-
1751
- sig { override.overridable.params(others: T::Array[RbsGenerator::RbsObject]).returns(T::Boolean) }
1752
- def mergeable?(others); end
1753
-
1754
- sig { override.overridable.params(others: T::Array[RbsGenerator::RbsObject]).void }
1755
- def merge_into_self(others); end
1756
-
1757
- sig { override.overridable.returns(String) }
1758
- def describe; end
1759
-
1760
- sig { overridable.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
1761
- def generate_body(indent_level, options); end
1762
-
1763
- sig { params(object: RbsObject).void }
1764
- def move_next_comments(object); end
1765
- end
1766
-
1767
- class Parameter
1768
- extend T::Sig
1769
- RBS_KEYWORDS = [
1770
- 'type', 'interface', 'out', 'in', 'instance', 'extension', 'top', 'bot',
1771
- 'self', 'nil', 'void'
1772
- ]
1773
- PREFIXES = {
1774
- normal: '',
1775
- splat: '*',
1776
- double_splat: '**',
1777
- }.freeze
1778
-
1779
- sig { params(name: String, type: T.nilable(Types::TypeLike), required: T::Boolean).void }
1780
- def initialize(name, type: nil, required: true); end
1781
-
1782
- sig { params(other: Object).returns(T::Boolean) }
1783
- def ==(other); end
1784
-
1785
- sig { returns(String) }
1786
- attr_reader :name
1787
-
1788
- sig { returns(String) }
1789
- def name_without_kind; end
1790
-
1791
- sig { returns(Types::TypeLike) }
1792
- attr_reader :type
1793
-
1794
- sig { returns(T::Boolean) }
1795
- attr_reader :required
1796
-
1797
- sig { returns(Symbol) }
1798
- attr_reader :kind
1799
-
1800
- sig { returns(String) }
1801
- def to_rbs_param; end
1802
- end
1803
-
1804
- class RbsObject < TypedObject
1805
- abstract!
1806
-
1807
- sig { params(generator: Generator, name: String).void }
1808
- def initialize(generator, name); end
1809
-
1810
- sig { returns(Generator) }
1811
- attr_reader :generator
1812
-
1813
- sig { abstract.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
1814
- def generate_rbs(indent_level, options); end
1815
-
1816
- sig { abstract.params(others: T::Array[RbsGenerator::RbsObject]).returns(T::Boolean) }
1817
- def mergeable?(others); end
1818
-
1819
- sig { abstract.params(others: T::Array[RbsGenerator::RbsObject]).void }
1820
- def merge_into_self(others); end
1821
-
1822
- sig { override.overridable.returns(String) }
1823
- def describe; end
1824
- end
1825
-
1826
- class TypeAlias < RbsObject
1827
- sig do
1828
- params(
1829
- generator: Generator,
1830
- name: String,
1831
- type: Types::TypeLike,
1832
- block: T.nilable(T.proc.params(x: TypeAlias).void)
1833
- ).void
1834
- end
1835
- def initialize(generator, name:, type:, &block); end
1836
-
1837
- sig { returns(Types::TypeLike) }
1838
- attr_reader :type
1839
-
1840
- sig { params(other: Object).returns(T::Boolean) }
1841
- def ==(other); end
1842
-
1843
- sig { override.params(indent_level: Integer, options: Options).returns(T::Array[String]) }
1844
- def generate_rbs(indent_level, options); end
1845
-
1846
- sig { override.params(others: T::Array[RbsGenerator::RbsObject]).returns(T::Boolean) }
1847
- def mergeable?(others); end
1848
-
1849
- sig { override.params(others: T::Array[RbsGenerator::RbsObject]).void }
1850
- def merge_into_self(others); end
1851
-
1852
- sig { override.returns(String) }
1853
- def describe; end
1854
- end
1855
- end
1856
- end