shotgrid_api_ruby 0.1.3.1 → 0.2.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (159) hide show
  1. checksums.yaml +4 -4
  2. data/.github/ISSUE_TEMPLATE/bug_report.md +38 -0
  3. data/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
  4. data/.github/workflows/test_and_publish.yml +4 -1
  5. data/.github/workflows/test_only.yml +5 -1
  6. data/.gitignore +3 -2
  7. data/.overcommit.yml +9 -0
  8. data/.rubocop.yml +2 -0
  9. data/.ruby-version +1 -1
  10. data/CHANGELOG.md +31 -3
  11. data/CODE_OF_CONDUCT.md +128 -0
  12. data/Gemfile +18 -0
  13. data/Gemfile.lock +264 -0
  14. data/Guardfile +2 -2
  15. data/bin/generate_and_add_documentation +1 -0
  16. data/bin/generate_sorbet_coverage +3 -0
  17. data/bin/prettirun +1 -1
  18. data/bin/sorbet_check +1 -0
  19. data/bin/tapioca +29 -0
  20. data/docs/ShotgridApiRuby/Auth/Validator.html +319 -0
  21. data/docs/ShotgridApiRuby/Auth.html +1079 -0
  22. data/docs/ShotgridApiRuby/Client.html +933 -0
  23. data/docs/ShotgridApiRuby/Entities/Params/TooComplexFiltersError.html +124 -0
  24. data/docs/ShotgridApiRuby/Entities/Params.html +1377 -0
  25. data/docs/ShotgridApiRuby/Entities/Schema.html +646 -0
  26. data/docs/ShotgridApiRuby/Entities/Summarize/Summary.html +401 -0
  27. data/docs/ShotgridApiRuby/Entities/Summarize.html +775 -0
  28. data/docs/ShotgridApiRuby/Entities.html +2461 -0
  29. data/docs/ShotgridApiRuby/Entity.html +935 -0
  30. data/docs/ShotgridApiRuby/Preferences.html +417 -0
  31. data/docs/ShotgridApiRuby/ServerInfo.html +415 -0
  32. data/docs/ShotgridApiRuby/ShotgridCallError.html +328 -0
  33. data/docs/ShotgridApiRuby/Types.html +136 -0
  34. data/docs/ShotgridApiRuby.html +307 -0
  35. data/docs/_index.html +253 -0
  36. data/docs/class_list.html +51 -0
  37. data/docs/css/common.css +1 -0
  38. data/docs/css/full_list.css +58 -0
  39. data/docs/css/style.css +497 -0
  40. data/docs/file.README.html +578 -0
  41. data/docs/file_list.html +56 -0
  42. data/docs/frames.html +17 -0
  43. data/docs/index.html +578 -0
  44. data/docs/js/app.js +314 -0
  45. data/docs/js/full_list.js +216 -0
  46. data/docs/js/jquery.js +4 -0
  47. data/docs/method_list.html +643 -0
  48. data/docs/top-level-namespace.html +110 -0
  49. data/lib/shotgrid_api_ruby/auth.rb +89 -33
  50. data/lib/shotgrid_api_ruby/client.rb +50 -7
  51. data/lib/shotgrid_api_ruby/entities/params.rb +304 -65
  52. data/lib/shotgrid_api_ruby/entities/schema.rb +18 -3
  53. data/lib/shotgrid_api_ruby/entities/summarize.rb +39 -7
  54. data/lib/shotgrid_api_ruby/entities.rb +118 -29
  55. data/lib/shotgrid_api_ruby/entity.rb +29 -12
  56. data/lib/shotgrid_api_ruby/preferences.rb +7 -1
  57. data/lib/shotgrid_api_ruby/server_info.rb +7 -1
  58. data/lib/shotgrid_api_ruby/shotgrid_call_error.rb +5 -1
  59. data/lib/shotgrid_api_ruby/types/auth_type.rb +23 -0
  60. data/lib/shotgrid_api_ruby/version.rb +2 -1
  61. data/lib/shotgrid_api_ruby.rb +20 -2
  62. data/shotgrid_api_ruby.gemspec +4 -11
  63. data/sorbet/config +6 -0
  64. data/sorbet/rbi/faraday.rbi +20 -0
  65. data/sorbet/rbi/gems/activesupport@6.1.4.1.rbi +3770 -0
  66. data/sorbet/rbi/gems/ast@2.4.2.rbi +54 -0
  67. data/sorbet/rbi/gems/backport@1.2.0.rbi +8 -0
  68. data/sorbet/rbi/gems/benchmark@0.1.1.rbi +65 -0
  69. data/sorbet/rbi/gems/bundler-audit@0.8.0.rbi +8 -0
  70. data/sorbet/rbi/gems/byebug@11.1.3.rbi +1569 -0
  71. data/sorbet/rbi/gems/childprocess@4.1.0.rbi +8 -0
  72. data/sorbet/rbi/gems/coderay@1.1.3.rbi +1005 -0
  73. data/sorbet/rbi/gems/colorize@0.8.1.rbi +39 -0
  74. data/sorbet/rbi/gems/commander@4.6.0.rbi +8 -0
  75. data/sorbet/rbi/gems/concurrent-ruby@1.1.9.rbi +2403 -0
  76. data/sorbet/rbi/gems/diff-lcs@1.4.4.rbi +8 -0
  77. data/sorbet/rbi/gems/docile@1.4.0.rbi +54 -0
  78. data/sorbet/rbi/gems/dotenv@2.7.6.rbi +88 -0
  79. data/sorbet/rbi/gems/e2mmap@0.1.0.rbi +8 -0
  80. data/sorbet/rbi/gems/faker@2.19.0.rbi +2513 -0
  81. data/sorbet/rbi/gems/faraday-em_http@1.0.0.rbi +101 -0
  82. data/sorbet/rbi/gems/faraday-em_synchrony@1.0.0.rbi +78 -0
  83. data/sorbet/rbi/gems/faraday-excon@1.1.0.rbi +77 -0
  84. data/sorbet/rbi/gems/faraday-httpclient@1.0.1.rbi +73 -0
  85. data/sorbet/rbi/gems/faraday-net_http@1.0.1.rbi +82 -0
  86. data/sorbet/rbi/gems/faraday-net_http_persistent@1.2.0.rbi +72 -0
  87. data/sorbet/rbi/gems/faraday-patron@1.0.0.rbi +74 -0
  88. data/sorbet/rbi/gems/faraday-rack@1.0.0.rbi +73 -0
  89. data/sorbet/rbi/gems/faraday@1.7.0.rbi +783 -0
  90. data/sorbet/rbi/gems/ffi@1.15.3.rbi +8 -0
  91. data/sorbet/rbi/gems/formatador@0.3.0.rbi +8 -0
  92. data/sorbet/rbi/gems/guard-compat@1.2.1.rbi +8 -0
  93. data/sorbet/rbi/gems/guard-rspec@4.7.3.rbi +8 -0
  94. data/sorbet/rbi/gems/guard@2.18.0.rbi +8 -0
  95. data/sorbet/rbi/gems/haml@5.2.2.rbi +8 -0
  96. data/sorbet/rbi/gems/highline@2.0.3.rbi +8 -0
  97. data/sorbet/rbi/gems/i18n@1.8.10.rbi +584 -0
  98. data/sorbet/rbi/gems/iniparse@1.5.0.rbi +8 -0
  99. data/sorbet/rbi/gems/jaro_winkler@1.5.4.rbi +8 -0
  100. data/sorbet/rbi/gems/kramdown-parser-gfm@1.1.0.rbi +8 -0
  101. data/sorbet/rbi/gems/kramdown@2.3.1.rbi +8 -0
  102. data/sorbet/rbi/gems/listen@3.7.0.rbi +476 -0
  103. data/sorbet/rbi/gems/lumberjack@1.2.8.rbi +8 -0
  104. data/sorbet/rbi/gems/method_source@1.0.0.rbi +72 -0
  105. data/sorbet/rbi/gems/minitest@5.14.4.rbi +344 -0
  106. data/sorbet/rbi/gems/multipart-post@2.1.1.rbi +69 -0
  107. data/sorbet/rbi/gems/nenv@0.3.0.rbi +8 -0
  108. data/sorbet/rbi/gems/nokogiri@1.12.3.rbi +8 -0
  109. data/sorbet/rbi/gems/notiffany@0.1.3.rbi +8 -0
  110. data/sorbet/rbi/gems/overcommit@0.58.0.rbi +8 -0
  111. data/sorbet/rbi/gems/parallel@1.20.1.rbi +8 -0
  112. data/sorbet/rbi/gems/parlour@6.0.1.rbi +1610 -0
  113. data/sorbet/rbi/gems/parser@3.0.2.0.rbi +1731 -0
  114. data/sorbet/rbi/gems/prettier@1.6.1.rbi +8 -0
  115. data/sorbet/rbi/gems/pry-byebug@3.9.0.rbi +461 -0
  116. data/sorbet/rbi/gems/pry@0.13.1.rbi +2553 -0
  117. data/sorbet/rbi/gems/racc@1.5.2.rbi +47 -0
  118. data/sorbet/rbi/gems/rainbow@3.0.0.rbi +153 -0
  119. data/sorbet/rbi/gems/rake@13.0.6.rbi +807 -0
  120. data/sorbet/rbi/gems/rb-fsevent@0.11.0.rbi +8 -0
  121. data/sorbet/rbi/gems/rb-inotify@0.10.1.rbi +8 -0
  122. data/sorbet/rbi/gems/regexp_parser@2.1.1.rbi +8 -0
  123. data/sorbet/rbi/gems/reverse_markdown@2.0.0.rbi +8 -0
  124. data/sorbet/rbi/gems/rexml@3.2.5.rbi +672 -0
  125. data/sorbet/rbi/gems/rspec-core@3.10.1.rbi +2500 -0
  126. data/sorbet/rbi/gems/rspec-expectations@3.10.1.rbi +1574 -0
  127. data/sorbet/rbi/gems/rspec-mocks@3.10.2.rbi +1462 -0
  128. data/sorbet/rbi/gems/rspec-support@3.10.2.rbi +510 -0
  129. data/sorbet/rbi/gems/rspec@3.10.0.rbi +39 -0
  130. data/sorbet/rbi/gems/rspec_in_context@1.1.0.3.rbi +196 -0
  131. data/sorbet/rbi/gems/rubocop-ast@1.11.0.rbi +8 -0
  132. data/sorbet/rbi/gems/rubocop-faker@1.1.0.rbi +8 -0
  133. data/sorbet/rbi/gems/rubocop-performance@1.11.5.rbi +8 -0
  134. data/sorbet/rbi/gems/rubocop-sorbet@0.6.2.rbi +8 -0
  135. data/sorbet/rbi/gems/rubocop@1.20.0.rbi +8 -0
  136. data/sorbet/rbi/gems/ruby-progressbar@1.11.0.rbi +8 -0
  137. data/sorbet/rbi/gems/ruby2_keywords@0.0.5.rbi +8 -0
  138. data/sorbet/rbi/gems/shellany@0.0.1.rbi +8 -0
  139. data/sorbet/rbi/gems/simplecov-html@0.12.3.rbi +89 -0
  140. data/sorbet/rbi/gems/simplecov@0.21.2.rbi +577 -0
  141. data/sorbet/rbi/gems/simplecov_json_formatter@0.1.3.rbi +8 -0
  142. data/sorbet/rbi/gems/solargraph@0.43.0.rbi +8 -0
  143. data/sorbet/rbi/gems/spoom@1.1.2.rbi +1204 -0
  144. data/sorbet/rbi/gems/tapioca@0.4.25.rbi +1239 -0
  145. data/sorbet/rbi/gems/temple@0.8.2.rbi +8 -0
  146. data/sorbet/rbi/gems/thor@1.1.0.rbi +838 -0
  147. data/sorbet/rbi/gems/tilt@2.0.10.rbi +8 -0
  148. data/sorbet/rbi/gems/timecop@0.9.4.rbi +82 -0
  149. data/sorbet/rbi/gems/tzinfo@2.0.4.rbi +857 -0
  150. data/sorbet/rbi/gems/unicode-display_width@2.0.0.rbi +8 -0
  151. data/sorbet/rbi/gems/unparser@0.6.0.rbi +8 -0
  152. data/sorbet/rbi/gems/vcr@6.0.0.rbi +782 -0
  153. data/sorbet/rbi/gems/yard-sorbet@0.5.3.rbi +8 -0
  154. data/sorbet/rbi/gems/yard@0.9.26.rbi +8 -0
  155. data/sorbet/rbi/gems/zeitwerk@2.4.2.rbi +173 -0
  156. data/sorbet/tapioca/config +0 -0
  157. data/sorbet/tapioca/require.rb +5 -0
  158. data/yarn.lock +3 -3
  159. metadata +157 -138
@@ -0,0 +1,1610 @@
1
+ # DO NOT EDIT MANUALLY
2
+ # This is an autogenerated file for types exported from the `parlour` gem.
3
+ # Please instead update this file by running `bin/tapioca sync`.
4
+
5
+ # typed: true
6
+
7
+ module Parlour; end
8
+
9
+ class Parlour::ConflictResolver
10
+ sig { params(namespace: Parlour::RbiGenerator::Namespace, resolver: T.proc.params(desc: String, choices: T::Array[Parlour::RbiGenerator::RbiObject]).returns(T.nilable(Parlour::RbiGenerator::RbiObject))).void }
11
+ def resolve_conflicts(namespace, &resolver); end
12
+
13
+ private
14
+
15
+ sig { params(arr: T::Array[T.untyped]).returns(T::Boolean) }
16
+ def all_eql?(arr); end
17
+
18
+ sig { params(namespace: Parlour::RbiGenerator::Namespace, name: T.nilable(String)).void }
19
+ def deduplicate_mixins_of_name(namespace, name); end
20
+
21
+ sig { params(arr: T::Array[T.untyped]).returns(T.nilable(Symbol)) }
22
+ def merge_strategy(arr); end
23
+ end
24
+
25
+ module Parlour::Conversion; end
26
+
27
+ class Parlour::Conversion::Converter
28
+ abstract!
29
+
30
+ def initialize; end
31
+
32
+ sig { params(msg: String, node: Parlour::RbiGenerator::RbiObject).void }
33
+ def add_warning(msg, node); end
34
+
35
+ sig { returns(T::Array[[String, Parlour::TypedObject]]) }
36
+ def warnings; end
37
+ end
38
+
39
+ class Parlour::Conversion::RbiToRbs < ::Parlour::Conversion::Converter
40
+ sig { params(rbs_gen: Parlour::RbsGenerator).void }
41
+ def initialize(rbs_gen); end
42
+
43
+ sig { params(from: Parlour::RbiGenerator::Namespace, to: Parlour::RbsGenerator::Namespace).void }
44
+ def convert_all(from, to); end
45
+
46
+ sig { params(node: Parlour::RbiGenerator::RbiObject, new_parent: Parlour::RbsGenerator::Namespace).void }
47
+ def convert_object(node, new_parent); end
48
+
49
+ sig { returns(Parlour::RbsGenerator) }
50
+ def rbs_gen; end
51
+ end
52
+
53
+ module Parlour::Debugging
54
+ class << self
55
+ sig { params(value: T::Boolean).returns(T::Boolean) }
56
+ def debug_mode=(value); end
57
+
58
+ sig { returns(T::Boolean) }
59
+ def debug_mode?; end
60
+
61
+ sig { params(object: T.untyped, message: String).void }
62
+ def debug_puts(object, message); end
63
+
64
+ sig { params(object: T.untyped).returns(String) }
65
+ def name_for_debug_caller(object); end
66
+ end
67
+ end
68
+
69
+ module Parlour::Debugging::Tree
70
+ class << self
71
+ sig { params(message: String).returns(String) }
72
+ def begin(message); end
73
+
74
+ sig { params(message: String).returns(String) }
75
+ def end(message); end
76
+
77
+ sig { params(message: String).returns(String) }
78
+ def here(message); end
79
+
80
+ def line_prefix; end
81
+ def text_prefix; end
82
+ end
83
+ end
84
+
85
+ Parlour::Debugging::Tree::INDENT_SPACES = T.let(T.unsafe(nil), Integer)
86
+
87
+ class Parlour::DetachedRbiGenerator < ::Parlour::RbiGenerator
88
+ sig { override.returns(T.nilable(Parlour::Plugin)) }
89
+ def current_plugin; end
90
+
91
+ sig { returns(T.untyped) }
92
+ def detached!; end
93
+
94
+ sig { override.returns(Parlour::Options) }
95
+ def options; end
96
+
97
+ sig { override.params(strictness: String).returns(String) }
98
+ def rbi(strictness = T.unsafe(nil)); end
99
+ end
100
+
101
+ class Parlour::DetachedRbsGenerator < ::Parlour::RbsGenerator
102
+ sig { override.returns(T.nilable(Parlour::Plugin)) }
103
+ def current_plugin; end
104
+
105
+ sig { returns(T.untyped) }
106
+ def detached!; end
107
+
108
+ sig { override.returns(Parlour::Options) }
109
+ def options; end
110
+
111
+ sig { override.returns(String) }
112
+ def rbs; end
113
+ end
114
+
115
+ class Parlour::Generator
116
+ sig { params(break_params: Integer, tab_size: Integer, sort_namespaces: T::Boolean).void }
117
+ def initialize(break_params: T.unsafe(nil), tab_size: T.unsafe(nil), sort_namespaces: T.unsafe(nil)); end
118
+
119
+ sig { overridable.returns(T.nilable(Parlour::Plugin)) }
120
+ def current_plugin; end
121
+
122
+ def current_plugin=(_arg0); end
123
+
124
+ sig { overridable.returns(Parlour::Options) }
125
+ def options; end
126
+ end
127
+
128
+ class Parlour::Options
129
+ sig { params(break_params: Integer, tab_size: Integer, sort_namespaces: T::Boolean).void }
130
+ def initialize(break_params:, tab_size:, sort_namespaces:); end
131
+
132
+ sig { returns(Integer) }
133
+ def break_params; end
134
+
135
+ sig { params(level: Integer, str: String).returns(String) }
136
+ def indented(level, str); end
137
+
138
+ sig { returns(T::Boolean) }
139
+ def sort_namespaces; end
140
+
141
+ sig { returns(Integer) }
142
+ def tab_size; end
143
+ end
144
+
145
+ class Parlour::ParseError < ::StandardError
146
+ def initialize(buffer, range); end
147
+
148
+ sig { returns(Parser::Source::Buffer) }
149
+ def buffer; end
150
+
151
+ sig { returns(Parser::Source::Range) }
152
+ def range; end
153
+ end
154
+
155
+ class Parlour::Plugin
156
+ abstract!
157
+
158
+ sig { params(options: T::Hash[T.untyped, T.untyped]).void }
159
+ def initialize(options); end
160
+
161
+ sig { abstract.params(root: Parlour::RbiGenerator::Namespace).void }
162
+ def generate(root); end
163
+
164
+ sig { returns(T.nilable(String)) }
165
+ def strictness; end
166
+
167
+ def strictness=(_arg0); end
168
+
169
+ class << self
170
+ sig { params(new_plugin: T.class_of(Parlour::Plugin)).void }
171
+ def inherited(new_plugin); end
172
+
173
+ sig { returns(T::Hash[String, T.class_of(Parlour::Plugin)]) }
174
+ def registered_plugins; end
175
+
176
+ sig { params(plugins: T::Array[Parlour::Plugin], generator: Parlour::RbiGenerator, allow_failure: T::Boolean).void }
177
+ def run_plugins(plugins, generator, allow_failure: T.unsafe(nil)); end
178
+ end
179
+ end
180
+
181
+ class Parlour::RbiGenerator < ::Parlour::Generator
182
+ def initialize(**hash); end
183
+
184
+ sig { overridable.params(strictness: String).returns(String) }
185
+ def rbi(strictness = T.unsafe(nil)); end
186
+
187
+ sig { overridable.returns(Parlour::RbiGenerator::Namespace) }
188
+ def root; end
189
+ end
190
+
191
+ class Parlour::RbiGenerator::Arbitrary < ::Parlour::RbiGenerator::RbiObject
192
+ sig { params(generator: Parlour::Generator, code: String, block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::Arbitrary).void)).void }
193
+ def initialize(generator, code: T.unsafe(nil), &block); end
194
+
195
+ sig { params(other: Object).returns(T::Boolean) }
196
+ def ==(other); end
197
+
198
+ sig { returns(String) }
199
+ def code; end
200
+
201
+ def code=(_arg0); end
202
+
203
+ sig { override.returns(String) }
204
+ def describe; end
205
+
206
+ sig { override.void }
207
+ def generalize_from_rbi!; end
208
+
209
+ sig { override.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
210
+ def generate_rbi(indent_level, options); end
211
+
212
+ sig { override.params(others: T::Array[Parlour::RbiGenerator::RbiObject]).void }
213
+ def merge_into_self(others); end
214
+
215
+ sig { override.params(others: T::Array[Parlour::RbiGenerator::RbiObject]).returns(T::Boolean) }
216
+ def mergeable?(others); end
217
+ end
218
+
219
+ class Parlour::RbiGenerator::Attribute < ::Parlour::RbiGenerator::Method
220
+ sig { params(generator: Parlour::Generator, name: String, kind: Symbol, type: T.any(Parlour::Types::Type, String), class_attribute: T::Boolean, block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::Attribute).void)).void }
221
+ def initialize(generator, name, kind, type, class_attribute: T.unsafe(nil), &block); end
222
+
223
+ sig { override.params(other: Object).returns(T::Boolean) }
224
+ def ==(other); end
225
+
226
+ sig { returns(T::Boolean) }
227
+ def class_attribute; end
228
+
229
+ sig { override.void }
230
+ def generalize_from_rbi!; end
231
+
232
+ sig { returns(Symbol) }
233
+ def kind; end
234
+
235
+ sig { returns(T.any(Parlour::Types::Type, String)) }
236
+ def type; end
237
+
238
+ private
239
+
240
+ sig { override.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
241
+ def generate_definition(indent_level, options); end
242
+ end
243
+
244
+ class Parlour::RbiGenerator::ClassNamespace < ::Parlour::RbiGenerator::Namespace
245
+ sig { params(generator: Parlour::Generator, name: String, final: T::Boolean, sealed: T::Boolean, superclass: T.nilable(String), abstract: T::Boolean, block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::ClassNamespace).void)).void }
246
+ def initialize(generator, name, final, sealed, superclass, abstract, &block); end
247
+
248
+ sig { returns(T::Boolean) }
249
+ def abstract; end
250
+
251
+ sig { override.returns(String) }
252
+ def describe; end
253
+
254
+ sig { override.void }
255
+ def generalize_from_rbi!; end
256
+
257
+ sig { override.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
258
+ def generate_rbi(indent_level, options); end
259
+
260
+ sig { override.params(others: T::Array[Parlour::RbiGenerator::RbiObject]).void }
261
+ def merge_into_self(others); end
262
+
263
+ sig { override.params(others: T::Array[Parlour::RbiGenerator::RbiObject]).returns(T::Boolean) }
264
+ def mergeable?(others); end
265
+
266
+ sig { returns(T.nilable(String)) }
267
+ def superclass; end
268
+ end
269
+
270
+ class Parlour::RbiGenerator::Constant < ::Parlour::RbiGenerator::RbiObject
271
+ sig { params(generator: Parlour::Generator, name: String, value: T.any(Parlour::Types::Type, String), eigen_constant: T::Boolean, block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::Constant).void)).void }
272
+ def initialize(generator, name: T.unsafe(nil), value: T.unsafe(nil), eigen_constant: T.unsafe(nil), &block); end
273
+
274
+ sig { params(other: Object).returns(T::Boolean) }
275
+ def ==(other); end
276
+
277
+ sig { override.returns(String) }
278
+ def describe; end
279
+
280
+ def eigen_constant; end
281
+
282
+ sig { override.void }
283
+ def generalize_from_rbi!; end
284
+
285
+ sig { override.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
286
+ def generate_rbi(indent_level, options); end
287
+
288
+ sig { override.params(others: T::Array[Parlour::RbiGenerator::RbiObject]).void }
289
+ def merge_into_self(others); end
290
+
291
+ sig { override.params(others: T::Array[Parlour::RbiGenerator::RbiObject]).returns(T::Boolean) }
292
+ def mergeable?(others); end
293
+
294
+ sig { returns(T.any(Parlour::Types::Type, String)) }
295
+ def value; end
296
+ end
297
+
298
+ class Parlour::RbiGenerator::EnumClassNamespace < ::Parlour::RbiGenerator::ClassNamespace
299
+ sig { params(generator: Parlour::Generator, name: String, final: T::Boolean, sealed: T::Boolean, enums: T::Array[T.any(String, [String, String])], abstract: T::Boolean, block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::EnumClassNamespace).void)).void }
300
+ def initialize(generator, name, final, sealed, enums, abstract, &block); end
301
+
302
+ sig { returns(T::Array[T.any(String, [String, String])]) }
303
+ def enums; end
304
+
305
+ sig { override.void }
306
+ def generalize_from_rbi!; end
307
+
308
+ sig { override.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
309
+ def generate_body(indent_level, options); end
310
+
311
+ sig { override.params(others: T::Array[Parlour::RbiGenerator::RbiObject]).void }
312
+ def merge_into_self(others); end
313
+
314
+ sig { override.params(others: T::Array[Parlour::RbiGenerator::RbiObject]).returns(T::Boolean) }
315
+ def mergeable?(others); end
316
+ end
317
+
318
+ class Parlour::RbiGenerator::Extend < ::Parlour::RbiGenerator::RbiObject
319
+ sig { params(generator: Parlour::Generator, name: String, block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::Extend).void)).void }
320
+ def initialize(generator, name: T.unsafe(nil), &block); end
321
+
322
+ sig { params(other: Object).returns(T::Boolean) }
323
+ def ==(other); end
324
+
325
+ sig { override.returns(String) }
326
+ def describe; end
327
+
328
+ sig { override.void }
329
+ def generalize_from_rbi!; end
330
+
331
+ sig { override.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
332
+ def generate_rbi(indent_level, options); end
333
+
334
+ sig { override.params(others: T::Array[Parlour::RbiGenerator::RbiObject]).void }
335
+ def merge_into_self(others); end
336
+
337
+ sig { override.params(others: T::Array[Parlour::RbiGenerator::RbiObject]).returns(T::Boolean) }
338
+ def mergeable?(others); end
339
+ end
340
+
341
+ class Parlour::RbiGenerator::Include < ::Parlour::RbiGenerator::RbiObject
342
+ sig { params(generator: Parlour::Generator, name: String, block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::Include).void)).void }
343
+ def initialize(generator, name: T.unsafe(nil), &block); end
344
+
345
+ sig { params(other: Object).returns(T::Boolean) }
346
+ def ==(other); end
347
+
348
+ sig { override.returns(String) }
349
+ def describe; end
350
+
351
+ sig { override.void }
352
+ def generalize_from_rbi!; end
353
+
354
+ sig { override.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
355
+ def generate_rbi(indent_level, options); end
356
+
357
+ sig { override.params(others: T::Array[Parlour::RbiGenerator::RbiObject]).void }
358
+ def merge_into_self(others); end
359
+
360
+ sig { override.params(others: T::Array[Parlour::RbiGenerator::RbiObject]).returns(T::Boolean) }
361
+ def mergeable?(others); end
362
+ end
363
+
364
+ class Parlour::RbiGenerator::Method < ::Parlour::RbiGenerator::RbiObject
365
+ sig { params(generator: Parlour::Generator, name: String, parameters: T::Array[Parlour::RbiGenerator::Parameter], return_type: T.nilable(T.any(Parlour::Types::Type, String)), abstract: T::Boolean, implementation: T::Boolean, override: T::Boolean, overridable: T::Boolean, class_method: T::Boolean, final: T::Boolean, type_parameters: T.nilable(T::Array[Symbol]), block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::Method).void)).void }
366
+ def initialize(generator, name, parameters, return_type = T.unsafe(nil), abstract: T.unsafe(nil), implementation: T.unsafe(nil), override: T.unsafe(nil), overridable: T.unsafe(nil), class_method: T.unsafe(nil), final: T.unsafe(nil), type_parameters: T.unsafe(nil), &block); end
367
+
368
+ sig { overridable.params(other: Object).returns(T::Boolean) }
369
+ def ==(other); end
370
+
371
+ sig { returns(T::Boolean) }
372
+ def abstract; end
373
+
374
+ sig { returns(T::Boolean) }
375
+ def class_method; end
376
+
377
+ sig { override.returns(String) }
378
+ def describe; end
379
+
380
+ sig { returns(T::Boolean) }
381
+ def final; end
382
+
383
+ sig { override.void }
384
+ def generalize_from_rbi!; end
385
+
386
+ sig { override.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
387
+ def generate_rbi(indent_level, options); end
388
+
389
+ sig { returns(T::Boolean) }
390
+ def implementation; end
391
+
392
+ sig { override.params(others: T::Array[Parlour::RbiGenerator::RbiObject]).void }
393
+ def merge_into_self(others); end
394
+
395
+ sig { override.params(others: T::Array[Parlour::RbiGenerator::RbiObject]).returns(T::Boolean) }
396
+ def mergeable?(others); end
397
+
398
+ sig { returns(T::Boolean) }
399
+ def overridable; end
400
+
401
+ sig { returns(T::Boolean) }
402
+ def override; end
403
+
404
+ sig { returns(T::Array[Parlour::RbiGenerator::Parameter]) }
405
+ def parameters; end
406
+
407
+ sig { returns(T.nilable(T.any(Parlour::Types::Type, String))) }
408
+ def return_type; end
409
+
410
+ sig { returns(T::Array[Symbol]) }
411
+ def type_parameters; end
412
+
413
+ private
414
+
415
+ sig { overridable.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
416
+ def generate_definition(indent_level, options); end
417
+
418
+ sig { returns(String) }
419
+ def qualifiers; end
420
+ end
421
+
422
+ class Parlour::RbiGenerator::ModuleNamespace < ::Parlour::RbiGenerator::Namespace
423
+ sig { params(generator: Parlour::Generator, name: String, final: T::Boolean, sealed: T::Boolean, interface: T::Boolean, abstract: T::Boolean, block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::ClassNamespace).void)).void }
424
+ def initialize(generator, name, final, sealed, interface, abstract, &block); end
425
+
426
+ sig { returns(T::Boolean) }
427
+ def abstract; end
428
+
429
+ sig { override.returns(String) }
430
+ def describe; end
431
+
432
+ sig { override.void }
433
+ def generalize_from_rbi!; end
434
+
435
+ sig { override.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
436
+ def generate_rbi(indent_level, options); end
437
+
438
+ sig { returns(T::Boolean) }
439
+ def interface; end
440
+
441
+ sig { override.params(others: T::Array[Parlour::RbiGenerator::RbiObject]).void }
442
+ def merge_into_self(others); end
443
+
444
+ sig { override.params(others: T::Array[Parlour::RbiGenerator::RbiObject]).returns(T::Boolean) }
445
+ def mergeable?(others); end
446
+ end
447
+
448
+ class Parlour::RbiGenerator::Namespace < ::Parlour::RbiGenerator::RbiObject
449
+ sig { params(generator: Parlour::Generator, name: T.nilable(String), final: T::Boolean, sealed: T::Boolean, block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::Namespace).void)).void }
450
+ def initialize(generator, name = T.unsafe(nil), final = T.unsafe(nil), sealed = T.unsafe(nil), &block); end
451
+
452
+ sig { params(comment: T.any(String, T::Array[String])).void }
453
+ def add_comment_to_next_child(comment); end
454
+
455
+ sig { returns(T::Array[Parlour::RbiGenerator::TypeAlias]) }
456
+ def aliases; end
457
+
458
+ sig { returns(T::Array[Parlour::RbiGenerator::RbiObject]) }
459
+ def children; end
460
+
461
+ sig { returns(T::Array[Parlour::RbiGenerator::Constant]) }
462
+ def constants; end
463
+
464
+ def create_arbitrary(code:, &block); end
465
+ def create_attr(*args, &blk); end
466
+
467
+ sig { params(name: String, type: T.any(Parlour::Types::Type, String), class_attribute: T::Boolean, block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::Attribute).void)).returns(Parlour::RbiGenerator::Attribute) }
468
+ def create_attr_accessor(name, type:, class_attribute: T.unsafe(nil), &block); end
469
+
470
+ sig { params(name: String, type: T.any(Parlour::Types::Type, String), class_attribute: T::Boolean, block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::Attribute).void)).returns(Parlour::RbiGenerator::Attribute) }
471
+ def create_attr_reader(name, type:, class_attribute: T.unsafe(nil), &block); end
472
+
473
+ sig { params(name: String, type: T.any(Parlour::Types::Type, String), class_attribute: T::Boolean, block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::Attribute).void)).returns(Parlour::RbiGenerator::Attribute) }
474
+ def create_attr_writer(name, type:, class_attribute: T.unsafe(nil), &block); end
475
+
476
+ sig { params(name: String, kind: Symbol, type: T.any(Parlour::Types::Type, String), class_attribute: T::Boolean, block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::Attribute).void)).returns(Parlour::RbiGenerator::Attribute) }
477
+ def create_attribute(name, kind:, type:, class_attribute: T.unsafe(nil), &block); end
478
+
479
+ sig { params(name: String, final: T::Boolean, sealed: T::Boolean, superclass: T.nilable(String), abstract: T::Boolean, block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::ClassNamespace).void)).returns(Parlour::RbiGenerator::ClassNamespace) }
480
+ def create_class(name, final: T.unsafe(nil), sealed: T.unsafe(nil), superclass: T.unsafe(nil), abstract: T.unsafe(nil), &block); end
481
+
482
+ sig { params(name: String, value: String, eigen_constant: T::Boolean, block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::Constant).void)).returns(Parlour::RbiGenerator::Constant) }
483
+ def create_constant(name, value:, eigen_constant: T.unsafe(nil), &block); end
484
+
485
+ sig { params(name: String, final: T::Boolean, sealed: T::Boolean, enums: T.nilable(T::Array[T.any(String, [String, String])]), abstract: T::Boolean, block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::EnumClassNamespace).void)).returns(Parlour::RbiGenerator::EnumClassNamespace) }
486
+ def create_enum_class(name, final: T.unsafe(nil), sealed: T.unsafe(nil), enums: T.unsafe(nil), abstract: T.unsafe(nil), &block); end
487
+
488
+ sig { params(name: String, block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::Extend).void)).returns(Parlour::RbiGenerator::Extend) }
489
+ def create_extend(name, &block); end
490
+
491
+ sig { params(extendables: T::Array[String]).returns(T::Array[Parlour::RbiGenerator::Extend]) }
492
+ def create_extends(extendables); end
493
+
494
+ sig { params(name: String, block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::Include).void)).returns(Parlour::RbiGenerator::Include) }
495
+ def create_include(name, &block); end
496
+
497
+ sig { params(includables: T::Array[String]).returns(T::Array[Parlour::RbiGenerator::Include]) }
498
+ def create_includes(includables); end
499
+
500
+ sig { params(name: String, parameters: T.nilable(T::Array[Parlour::RbiGenerator::Parameter]), return_type: T.nilable(T.any(Parlour::Types::Type, String)), returns: T.nilable(T.any(Parlour::Types::Type, String)), abstract: T::Boolean, implementation: T::Boolean, override: T::Boolean, overridable: T::Boolean, class_method: T::Boolean, final: T::Boolean, type_parameters: T.nilable(T::Array[Symbol]), block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::Method).void)).returns(Parlour::RbiGenerator::Method) }
501
+ def create_method(name, parameters: T.unsafe(nil), return_type: T.unsafe(nil), returns: T.unsafe(nil), abstract: T.unsafe(nil), implementation: T.unsafe(nil), override: T.unsafe(nil), overridable: T.unsafe(nil), class_method: T.unsafe(nil), final: T.unsafe(nil), type_parameters: T.unsafe(nil), &block); end
502
+
503
+ sig { params(name: String, final: T::Boolean, sealed: T::Boolean, interface: T::Boolean, abstract: T::Boolean, block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::ClassNamespace).void)).returns(Parlour::RbiGenerator::ModuleNamespace) }
504
+ def create_module(name, final: T.unsafe(nil), sealed: T.unsafe(nil), interface: T.unsafe(nil), abstract: T.unsafe(nil), &block); end
505
+
506
+ sig { params(name: String, final: T::Boolean, sealed: T::Boolean, props: T.nilable(T::Array[Parlour::RbiGenerator::StructProp]), abstract: T::Boolean, block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::StructClassNamespace).void)).returns(Parlour::RbiGenerator::StructClassNamespace) }
507
+ def create_struct_class(name, final: T.unsafe(nil), sealed: T.unsafe(nil), props: T.unsafe(nil), abstract: T.unsafe(nil), &block); end
508
+
509
+ sig { params(name: String, type: T.any(Parlour::Types::Type, String), block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::TypeAlias).void)).returns(Parlour::RbiGenerator::TypeAlias) }
510
+ def create_type_alias(name, type:, &block); end
511
+
512
+ sig { override.overridable.returns(String) }
513
+ def describe; end
514
+
515
+ sig { returns(T::Array[Parlour::RbiGenerator::Extend]) }
516
+ def extends; end
517
+
518
+ sig { returns(T::Boolean) }
519
+ def final; end
520
+
521
+ sig { override.void }
522
+ def generalize_from_rbi!; end
523
+
524
+ sig { override.overridable.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
525
+ def generate_rbi(indent_level, options); end
526
+
527
+ sig { returns(T::Array[Parlour::RbiGenerator::Include]) }
528
+ def includes; end
529
+
530
+ sig { override.overridable.params(others: T::Array[Parlour::RbiGenerator::RbiObject]).void }
531
+ def merge_into_self(others); end
532
+
533
+ sig { override.overridable.params(others: T::Array[Parlour::RbiGenerator::RbiObject]).returns(T::Boolean) }
534
+ def mergeable?(others); end
535
+
536
+ sig { params(constant: Module, block: T.proc.params(x: Parlour::RbiGenerator::Namespace).void).void }
537
+ def path(constant, &block); end
538
+
539
+ sig { returns(T::Boolean) }
540
+ def sealed; end
541
+
542
+ def type_aliases(*args, &blk); end
543
+
544
+ private
545
+
546
+ sig { overridable.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
547
+ def generate_body(indent_level, options); end
548
+
549
+ sig { params(object: Parlour::RbiGenerator::RbiObject).void }
550
+ def move_next_comments(object); end
551
+ end
552
+
553
+ Parlour::RbiGenerator::Options = Parlour::Options
554
+
555
+ class Parlour::RbiGenerator::Parameter
556
+ sig { params(name: String, type: T.nilable(T.any(Parlour::Types::Type, String)), default: T.nilable(String)).void }
557
+ def initialize(name, type: T.unsafe(nil), default: T.unsafe(nil)); end
558
+
559
+ sig { params(other: Object).returns(T::Boolean) }
560
+ def ==(other); end
561
+
562
+ sig { returns(T.nilable(String)) }
563
+ def default; end
564
+
565
+ sig { void }
566
+ def generalize_from_rbi!; end
567
+
568
+ sig { returns(Symbol) }
569
+ def kind; end
570
+
571
+ sig { returns(String) }
572
+ def name; end
573
+
574
+ sig { returns(String) }
575
+ def name_without_kind; end
576
+
577
+ sig { returns(String) }
578
+ def to_def_param; end
579
+
580
+ sig { returns(String) }
581
+ def to_sig_param; end
582
+
583
+ sig { returns(T.any(Parlour::Types::Type, String)) }
584
+ def type; end
585
+ end
586
+
587
+ Parlour::RbiGenerator::Parameter::PREFIXES = T.let(T.unsafe(nil), Hash)
588
+
589
+ class Parlour::RbiGenerator::RbiObject < ::Parlour::TypedObject
590
+ abstract!
591
+
592
+ sig { params(generator: Parlour::Generator, name: String).void }
593
+ def initialize(generator, name); end
594
+
595
+ sig { override.overridable.returns(String) }
596
+ def describe; end
597
+
598
+ sig { abstract.void }
599
+ def generalize_from_rbi!; end
600
+
601
+ sig { abstract.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
602
+ def generate_rbi(indent_level, options); end
603
+
604
+ sig { returns(Parlour::Generator) }
605
+ def generator; end
606
+
607
+ sig { abstract.params(others: T::Array[Parlour::RbiGenerator::RbiObject]).void }
608
+ def merge_into_self(others); end
609
+
610
+ sig { abstract.params(others: T::Array[Parlour::RbiGenerator::RbiObject]).returns(T::Boolean) }
611
+ def mergeable?(others); end
612
+ end
613
+
614
+ class Parlour::RbiGenerator::StructClassNamespace < ::Parlour::RbiGenerator::ClassNamespace
615
+ sig { params(generator: Parlour::Generator, name: String, final: T::Boolean, sealed: T::Boolean, props: T::Array[Parlour::RbiGenerator::StructProp], abstract: T::Boolean, block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::StructClassNamespace).void)).void }
616
+ def initialize(generator, name, final, sealed, props, abstract, &block); end
617
+
618
+ sig { override.void }
619
+ def generalize_from_rbi!; end
620
+
621
+ sig { override.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
622
+ def generate_body(indent_level, options); end
623
+
624
+ sig { override.params(others: T::Array[Parlour::RbiGenerator::RbiObject]).void }
625
+ def merge_into_self(others); end
626
+
627
+ sig { override.params(others: T::Array[Parlour::RbiGenerator::RbiObject]).returns(T::Boolean) }
628
+ def mergeable?(others); end
629
+
630
+ sig { returns(T::Array[Parlour::RbiGenerator::StructProp]) }
631
+ def props; end
632
+ end
633
+
634
+ class Parlour::RbiGenerator::StructProp
635
+ sig { params(name: String, type: T.any(Parlour::Types::Type, String), optional: T.nilable(T.any(Symbol, T::Boolean)), enum: T.nilable(String), dont_store: T.nilable(T::Boolean), foreign: T.nilable(String), default: T.nilable(String), factory: T.nilable(String), immutable: T.nilable(T::Boolean), array: T.nilable(String), override: T.nilable(T::Boolean), redaction: T.nilable(String)).void }
636
+ def initialize(name, type, optional: T.unsafe(nil), enum: T.unsafe(nil), dont_store: T.unsafe(nil), foreign: T.unsafe(nil), default: T.unsafe(nil), factory: T.unsafe(nil), immutable: T.unsafe(nil), array: T.unsafe(nil), override: T.unsafe(nil), redaction: T.unsafe(nil)); end
637
+
638
+ sig { params(other: Object).returns(T::Boolean) }
639
+ def ==(other); end
640
+
641
+ sig { returns(T.nilable(String)) }
642
+ def array; end
643
+
644
+ sig { returns(T.nilable(String)) }
645
+ def default; end
646
+
647
+ sig { returns(T.nilable(T::Boolean)) }
648
+ def dont_store; end
649
+
650
+ sig { returns(T.nilable(String)) }
651
+ def enum; end
652
+
653
+ sig { returns(T.nilable(String)) }
654
+ def factory; end
655
+
656
+ sig { returns(T.nilable(String)) }
657
+ def foreign; end
658
+
659
+ sig { void }
660
+ def generalize_from_rbi!; end
661
+
662
+ sig { returns(T.nilable(T::Boolean)) }
663
+ def immutable; end
664
+
665
+ sig { returns(String) }
666
+ def name; end
667
+
668
+ sig { returns(T.nilable(T.any(Symbol, T::Boolean))) }
669
+ def optional; end
670
+
671
+ sig { returns(T.nilable(T::Boolean)) }
672
+ def override; end
673
+
674
+ sig { returns(T.nilable(String)) }
675
+ def redaction; end
676
+
677
+ sig { returns(String) }
678
+ def to_prop_call; end
679
+
680
+ sig { returns(T.any(Parlour::Types::Type, String)) }
681
+ def type; end
682
+ end
683
+
684
+ Parlour::RbiGenerator::StructProp::EXTRA_PROPERTIES = T.let(T.unsafe(nil), Array)
685
+
686
+ class Parlour::RbiGenerator::TypeAlias < ::Parlour::RbiGenerator::RbiObject
687
+ sig { params(generator: Parlour::Generator, name: String, type: T.any(Parlour::Types::Type, String), block: T.nilable(T.proc.params(x: Parlour::RbiGenerator::TypeAlias).void)).void }
688
+ def initialize(generator, name:, type:, &block); end
689
+
690
+ sig { params(other: Object).returns(T::Boolean) }
691
+ def ==(other); end
692
+
693
+ sig { override.returns(String) }
694
+ def describe; end
695
+
696
+ sig { override.void }
697
+ def generalize_from_rbi!; end
698
+
699
+ sig { override.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
700
+ def generate_rbi(indent_level, options); end
701
+
702
+ sig { override.params(others: T::Array[Parlour::RbiGenerator::RbiObject]).void }
703
+ def merge_into_self(others); end
704
+
705
+ sig { override.params(others: T::Array[Parlour::RbiGenerator::RbiObject]).returns(T::Boolean) }
706
+ def mergeable?(others); end
707
+
708
+ sig { returns(T.any(Parlour::Types::Type, String)) }
709
+ def type; end
710
+ end
711
+
712
+ class Parlour::RbsGenerator < ::Parlour::Generator
713
+ def initialize(**hash); end
714
+
715
+ sig { overridable.returns(String) }
716
+ def rbs; end
717
+
718
+ sig { overridable.returns(Parlour::RbsGenerator::Namespace) }
719
+ def root; end
720
+ end
721
+
722
+ class Parlour::RbsGenerator::Arbitrary < ::Parlour::RbsGenerator::RbsObject
723
+ sig { params(generator: Parlour::Generator, code: String, block: T.nilable(T.proc.params(x: Parlour::RbsGenerator::Arbitrary).void)).void }
724
+ def initialize(generator, code: T.unsafe(nil), &block); end
725
+
726
+ sig { params(other: Object).returns(T::Boolean) }
727
+ def ==(other); end
728
+
729
+ sig { returns(String) }
730
+ def code; end
731
+
732
+ def code=(_arg0); end
733
+
734
+ sig { override.returns(String) }
735
+ def describe; end
736
+
737
+ sig { override.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
738
+ def generate_rbs(indent_level, options); end
739
+
740
+ sig { override.params(others: T::Array[Parlour::RbsGenerator::RbsObject]).void }
741
+ def merge_into_self(others); end
742
+
743
+ sig { override.params(others: T::Array[Parlour::RbsGenerator::RbsObject]).returns(T::Boolean) }
744
+ def mergeable?(others); end
745
+ end
746
+
747
+ class Parlour::RbsGenerator::Attribute < ::Parlour::RbsGenerator::Method
748
+ sig { params(generator: Parlour::Generator, name: String, kind: Symbol, type: T.any(Parlour::Types::Type, String), block: T.nilable(T.proc.params(x: Parlour::RbsGenerator::Attribute).void)).void }
749
+ def initialize(generator, name, kind, type, &block); end
750
+
751
+ sig { override.params(other: Object).returns(T::Boolean) }
752
+ def ==(other); end
753
+
754
+ sig { override.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
755
+ def generate_rbs(indent_level, options); end
756
+
757
+ sig { returns(Symbol) }
758
+ def kind; end
759
+
760
+ sig { returns(T.any(Parlour::Types::Type, String)) }
761
+ def type; end
762
+ end
763
+
764
+ class Parlour::RbsGenerator::Block
765
+ sig { params(type: Parlour::Types::Proc, required: T::Boolean).void }
766
+ def initialize(type, required); end
767
+
768
+ sig { overridable.params(other: Object).returns(T::Boolean) }
769
+ def ==(other); end
770
+
771
+ sig { params(options: Parlour::Options).returns(T::Array[String]) }
772
+ def generate_rbs(options); end
773
+
774
+ sig { returns(T::Boolean) }
775
+ def required; end
776
+
777
+ sig { returns(Parlour::Types::Proc) }
778
+ def type; end
779
+ end
780
+
781
+ class Parlour::RbsGenerator::ClassNamespace < ::Parlour::RbsGenerator::Namespace
782
+ sig { params(generator: Parlour::Generator, name: String, superclass: T.nilable(T.any(Parlour::Types::Type, String)), block: T.nilable(T.proc.params(x: Parlour::RbsGenerator::ClassNamespace).void)).void }
783
+ def initialize(generator, name, superclass, &block); end
784
+
785
+ sig { override.returns(String) }
786
+ def describe; end
787
+
788
+ sig { override.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
789
+ def generate_rbs(indent_level, options); end
790
+
791
+ sig { override.params(others: T::Array[Parlour::RbsGenerator::RbsObject]).void }
792
+ def merge_into_self(others); end
793
+
794
+ sig { override.params(others: T::Array[Parlour::RbsGenerator::RbsObject]).returns(T::Boolean) }
795
+ def mergeable?(others); end
796
+
797
+ sig { returns(T.nilable(T.any(Parlour::Types::Type, String))) }
798
+ def superclass; end
799
+ end
800
+
801
+ class Parlour::RbsGenerator::Constant < ::Parlour::RbsGenerator::RbsObject
802
+ sig { params(generator: Parlour::Generator, name: String, type: T.any(Parlour::Types::Type, String), block: T.nilable(T.proc.params(x: Parlour::RbsGenerator::Constant).void)).void }
803
+ def initialize(generator, name, type:, &block); end
804
+
805
+ sig { params(other: Object).returns(T::Boolean) }
806
+ def ==(other); end
807
+
808
+ sig { override.returns(String) }
809
+ def describe; end
810
+
811
+ sig { override.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
812
+ def generate_rbs(indent_level, options); end
813
+
814
+ sig { override.params(others: T::Array[Parlour::RbsGenerator::RbsObject]).void }
815
+ def merge_into_self(others); end
816
+
817
+ sig { override.params(others: T::Array[Parlour::RbsGenerator::RbsObject]).returns(T::Boolean) }
818
+ def mergeable?(others); end
819
+
820
+ sig { returns(T.any(Parlour::Types::Type, String)) }
821
+ def type; end
822
+ end
823
+
824
+ class Parlour::RbsGenerator::Extend < ::Parlour::RbsGenerator::RbsObject
825
+ sig { params(generator: Parlour::Generator, type: T.any(Parlour::Types::Type, String), block: T.nilable(T.proc.params(x: Parlour::RbsGenerator::Extend).void)).void }
826
+ def initialize(generator, type:, &block); end
827
+
828
+ sig { params(other: Object).returns(T::Boolean) }
829
+ def ==(other); end
830
+
831
+ sig { override.returns(String) }
832
+ def describe; end
833
+
834
+ sig { override.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
835
+ def generate_rbs(indent_level, options); end
836
+
837
+ sig { override.params(others: T::Array[Parlour::RbsGenerator::RbsObject]).void }
838
+ def merge_into_self(others); end
839
+
840
+ sig { override.params(others: T::Array[Parlour::RbsGenerator::RbsObject]).returns(T::Boolean) }
841
+ def mergeable?(others); end
842
+
843
+ sig { returns(T.any(Parlour::Types::Type, String)) }
844
+ def type; end
845
+ end
846
+
847
+ class Parlour::RbsGenerator::Include < ::Parlour::RbsGenerator::RbsObject
848
+ sig { params(generator: Parlour::Generator, type: T.any(Parlour::Types::Type, String), block: T.nilable(T.proc.params(x: Parlour::RbsGenerator::Include).void)).void }
849
+ def initialize(generator, type:, &block); end
850
+
851
+ sig { params(other: Object).returns(T::Boolean) }
852
+ def ==(other); end
853
+
854
+ sig { override.returns(String) }
855
+ def describe; end
856
+
857
+ sig { override.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
858
+ def generate_rbs(indent_level, options); end
859
+
860
+ sig { override.params(others: T::Array[Parlour::RbsGenerator::RbsObject]).void }
861
+ def merge_into_self(others); end
862
+
863
+ sig { override.params(others: T::Array[Parlour::RbsGenerator::RbsObject]).returns(T::Boolean) }
864
+ def mergeable?(others); end
865
+
866
+ sig { returns(T.any(Parlour::Types::Type, String)) }
867
+ def type; end
868
+ end
869
+
870
+ class Parlour::RbsGenerator::InterfaceNamespace < ::Parlour::RbsGenerator::Namespace
871
+ sig { override.returns(String) }
872
+ def describe; end
873
+
874
+ sig { override.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
875
+ def generate_rbs(indent_level, options); end
876
+ end
877
+
878
+ class Parlour::RbsGenerator::Method < ::Parlour::RbsGenerator::RbsObject
879
+ sig { params(generator: Parlour::Generator, name: String, signatures: T::Array[Parlour::RbsGenerator::MethodSignature], class_method: T::Boolean, block: T.nilable(T.proc.params(x: Parlour::RbsGenerator::Method).void)).void }
880
+ def initialize(generator, name, signatures, class_method: T.unsafe(nil), &block); end
881
+
882
+ sig { overridable.params(other: Object).returns(T::Boolean) }
883
+ def ==(other); end
884
+
885
+ sig { returns(T::Boolean) }
886
+ def class_method; end
887
+
888
+ sig { override.returns(String) }
889
+ def describe; end
890
+
891
+ sig { override.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
892
+ def generate_rbs(indent_level, options); end
893
+
894
+ sig { override.params(others: T::Array[Parlour::RbsGenerator::RbsObject]).void }
895
+ def merge_into_self(others); end
896
+
897
+ sig { override.params(others: T::Array[Parlour::RbsGenerator::RbsObject]).returns(T::Boolean) }
898
+ def mergeable?(others); end
899
+
900
+ sig { returns(T::Array[Parlour::RbsGenerator::MethodSignature]) }
901
+ def signatures; end
902
+ end
903
+
904
+ class Parlour::RbsGenerator::MethodSignature
905
+ sig { params(parameters: T::Array[Parlour::RbsGenerator::Parameter], return_type: T.nilable(T.any(Parlour::Types::Type, String)), block: T.nilable(Parlour::RbsGenerator::Block), type_parameters: T.nilable(T::Array[Symbol])).void }
906
+ def initialize(parameters, return_type = T.unsafe(nil), block: T.unsafe(nil), type_parameters: T.unsafe(nil)); end
907
+
908
+ sig { overridable.params(other: Object).returns(T::Boolean) }
909
+ def ==(other); end
910
+
911
+ sig { returns(T.nilable(Parlour::RbsGenerator::Block)) }
912
+ def block; end
913
+
914
+ sig { params(options: Parlour::Options).returns(T::Array[String]) }
915
+ def generate_rbs(options); end
916
+
917
+ sig { returns(T::Array[Parlour::RbsGenerator::Parameter]) }
918
+ def parameters; end
919
+
920
+ sig { returns(T.nilable(T.any(Parlour::Types::Type, String))) }
921
+ def return_type; end
922
+
923
+ sig { returns(T::Array[Symbol]) }
924
+ def type_parameters; end
925
+ end
926
+
927
+ class Parlour::RbsGenerator::ModuleNamespace < ::Parlour::RbsGenerator::Namespace
928
+ sig { override.returns(String) }
929
+ def describe; end
930
+
931
+ sig { override.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
932
+ def generate_rbs(indent_level, options); end
933
+ end
934
+
935
+ class Parlour::RbsGenerator::Namespace < ::Parlour::RbsGenerator::RbsObject
936
+ sig { params(generator: Parlour::Generator, name: T.nilable(String), block: T.nilable(T.proc.params(x: Parlour::RbsGenerator::Namespace).void)).void }
937
+ def initialize(generator, name = T.unsafe(nil), &block); end
938
+
939
+ sig { params(comment: T.any(String, T::Array[String])).void }
940
+ def add_comment_to_next_child(comment); end
941
+
942
+ sig { returns(T::Array[Parlour::RbsGenerator::TypeAlias]) }
943
+ def aliases; end
944
+
945
+ sig { returns(T::Array[Parlour::RbsGenerator::RbsObject]) }
946
+ def children; end
947
+
948
+ sig { returns(T::Array[Parlour::RbsGenerator::Constant]) }
949
+ def constants; end
950
+
951
+ def create_arbitrary(code:, &block); end
952
+ def create_attr(*args, &blk); end
953
+
954
+ sig { params(name: String, type: T.any(Parlour::Types::Type, String), block: T.nilable(T.proc.params(x: Parlour::RbsGenerator::Attribute).void)).returns(Parlour::RbsGenerator::Attribute) }
955
+ def create_attr_accessor(name, type:, &block); end
956
+
957
+ sig { params(name: String, type: T.any(Parlour::Types::Type, String), block: T.nilable(T.proc.params(x: Parlour::RbsGenerator::Attribute).void)).returns(Parlour::RbsGenerator::Attribute) }
958
+ def create_attr_reader(name, type:, &block); end
959
+
960
+ sig { params(name: String, type: T.any(Parlour::Types::Type, String), block: T.nilable(T.proc.params(x: Parlour::RbsGenerator::Attribute).void)).returns(Parlour::RbsGenerator::Attribute) }
961
+ def create_attr_writer(name, type:, &block); end
962
+
963
+ sig { params(name: String, kind: Symbol, type: T.any(Parlour::Types::Type, String), block: T.nilable(T.proc.params(x: Parlour::RbsGenerator::Attribute).void)).returns(Parlour::RbsGenerator::Attribute) }
964
+ def create_attribute(name, kind:, type:, &block); end
965
+
966
+ sig { params(name: String, superclass: T.nilable(T.any(Parlour::Types::Type, String)), block: T.nilable(T.proc.params(x: Parlour::RbsGenerator::ClassNamespace).void)).returns(Parlour::RbsGenerator::ClassNamespace) }
967
+ def create_class(name, superclass: T.unsafe(nil), &block); end
968
+
969
+ sig { params(name: String, type: T.any(Parlour::Types::Type, String), block: T.nilable(T.proc.params(x: Parlour::RbsGenerator::Constant).void)).returns(Parlour::RbsGenerator::Constant) }
970
+ def create_constant(name, type:, &block); end
971
+
972
+ sig { params(type: T.any(Parlour::Types::Type, String), block: T.nilable(T.proc.params(x: Parlour::RbsGenerator::Extend).void)).returns(Parlour::RbsGenerator::Extend) }
973
+ def create_extend(type, &block); end
974
+
975
+ sig { params(extendables: T::Array[T.any(Parlour::Types::Type, String)]).returns(T::Array[Parlour::RbsGenerator::Extend]) }
976
+ def create_extends(extendables); end
977
+
978
+ sig { params(type: T.any(Parlour::Types::Type, String), block: T.nilable(T.proc.params(x: Parlour::RbsGenerator::Include).void)).returns(Parlour::RbsGenerator::Include) }
979
+ def create_include(type, &block); end
980
+
981
+ sig { params(includables: T::Array[T.any(Parlour::Types::Type, String)]).returns(T::Array[Parlour::RbsGenerator::Include]) }
982
+ def create_includes(includables); end
983
+
984
+ sig { params(name: String, block: T.nilable(T.proc.params(x: Parlour::RbsGenerator::Namespace).void)).returns(Parlour::RbsGenerator::InterfaceNamespace) }
985
+ def create_interface(name, &block); end
986
+
987
+ sig { params(name: String, signatures: T.nilable(T::Array[Parlour::RbsGenerator::MethodSignature]), class_method: T::Boolean, block: T.nilable(T.proc.params(x: Parlour::RbsGenerator::Method).void)).returns(Parlour::RbsGenerator::Method) }
988
+ def create_method(name, signatures = T.unsafe(nil), class_method: T.unsafe(nil), &block); end
989
+
990
+ sig { params(name: String, block: T.nilable(T.proc.params(x: Parlour::RbsGenerator::Namespace).void)).returns(Parlour::RbsGenerator::ModuleNamespace) }
991
+ def create_module(name, &block); end
992
+
993
+ sig { params(name: String, type: T.any(Parlour::Types::Type, String), block: T.nilable(T.proc.params(x: Parlour::RbsGenerator::TypeAlias).void)).returns(Parlour::RbsGenerator::TypeAlias) }
994
+ def create_type_alias(name, type:, &block); end
995
+
996
+ sig { override.overridable.returns(String) }
997
+ def describe; end
998
+
999
+ sig { returns(T::Array[Parlour::RbsGenerator::Extend]) }
1000
+ def extends; end
1001
+
1002
+ sig { override.overridable.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
1003
+ def generate_rbs(indent_level, options); end
1004
+
1005
+ sig { returns(T::Array[Parlour::RbsGenerator::Include]) }
1006
+ def includes; end
1007
+
1008
+ sig { override.overridable.params(others: T::Array[Parlour::RbsGenerator::RbsObject]).void }
1009
+ def merge_into_self(others); end
1010
+
1011
+ sig { override.overridable.params(others: T::Array[Parlour::RbsGenerator::RbsObject]).returns(T::Boolean) }
1012
+ def mergeable?(others); end
1013
+
1014
+ sig { params(object: T.untyped, block: T.proc.params(x: Parlour::RbsGenerator::Namespace).void).void }
1015
+ def path(object, &block); end
1016
+
1017
+ def type_aliases(*args, &blk); end
1018
+
1019
+ private
1020
+
1021
+ sig { overridable.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
1022
+ def generate_body(indent_level, options); end
1023
+
1024
+ sig { params(object: Parlour::RbsGenerator::RbsObject).void }
1025
+ def move_next_comments(object); end
1026
+ end
1027
+
1028
+ class Parlour::RbsGenerator::Parameter
1029
+ sig { params(name: String, type: T.nilable(T.any(Parlour::Types::Type, String)), required: T::Boolean).void }
1030
+ def initialize(name, type: T.unsafe(nil), required: T.unsafe(nil)); end
1031
+
1032
+ sig { params(other: Object).returns(T::Boolean) }
1033
+ def ==(other); end
1034
+
1035
+ sig { returns(Symbol) }
1036
+ def kind; end
1037
+
1038
+ sig { returns(String) }
1039
+ def name; end
1040
+
1041
+ sig { returns(String) }
1042
+ def name_without_kind; end
1043
+
1044
+ sig { returns(T::Boolean) }
1045
+ def required; end
1046
+
1047
+ sig { returns(String) }
1048
+ def to_rbs_param; end
1049
+
1050
+ sig { returns(T.any(Parlour::Types::Type, String)) }
1051
+ def type; end
1052
+ end
1053
+
1054
+ Parlour::RbsGenerator::Parameter::PREFIXES = T.let(T.unsafe(nil), Hash)
1055
+ Parlour::RbsGenerator::Parameter::RBS_KEYWORDS = T.let(T.unsafe(nil), Array)
1056
+
1057
+ class Parlour::RbsGenerator::RbsObject < ::Parlour::TypedObject
1058
+ abstract!
1059
+
1060
+ sig { params(generator: Parlour::Generator, name: String).void }
1061
+ def initialize(generator, name); end
1062
+
1063
+ sig { override.overridable.returns(String) }
1064
+ def describe; end
1065
+
1066
+ sig { abstract.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
1067
+ def generate_rbs(indent_level, options); end
1068
+
1069
+ sig { returns(Parlour::Generator) }
1070
+ def generator; end
1071
+
1072
+ sig { abstract.params(others: T::Array[Parlour::RbsGenerator::RbsObject]).void }
1073
+ def merge_into_self(others); end
1074
+
1075
+ sig { abstract.params(others: T::Array[Parlour::RbsGenerator::RbsObject]).returns(T::Boolean) }
1076
+ def mergeable?(others); end
1077
+ end
1078
+
1079
+ class Parlour::RbsGenerator::TypeAlias < ::Parlour::RbsGenerator::RbsObject
1080
+ sig { params(generator: Parlour::Generator, name: String, type: T.any(Parlour::Types::Type, String), block: T.nilable(T.proc.params(x: Parlour::RbsGenerator::TypeAlias).void)).void }
1081
+ def initialize(generator, name:, type:, &block); end
1082
+
1083
+ sig { params(other: Object).returns(T::Boolean) }
1084
+ def ==(other); end
1085
+
1086
+ sig { override.returns(String) }
1087
+ def describe; end
1088
+
1089
+ sig { override.params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
1090
+ def generate_rbs(indent_level, options); end
1091
+
1092
+ sig { override.params(others: T::Array[Parlour::RbsGenerator::RbsObject]).void }
1093
+ def merge_into_self(others); end
1094
+
1095
+ sig { override.params(others: T::Array[Parlour::RbsGenerator::RbsObject]).returns(T::Boolean) }
1096
+ def mergeable?(others); end
1097
+
1098
+ sig { returns(T.any(Parlour::Types::Type, String)) }
1099
+ def type; end
1100
+ end
1101
+
1102
+ module Parlour::TypeLoader
1103
+ class << self
1104
+ sig { params(filename: String, generator: T.nilable(Parlour::RbiGenerator)).returns(Parlour::RbiGenerator::Namespace) }
1105
+ def load_file(filename, generator: T.unsafe(nil)); end
1106
+
1107
+ sig { params(root: String, inclusions: T::Array[String], exclusions: T::Array[String], generator: T.nilable(Parlour::RbiGenerator)).returns(Parlour::RbiGenerator::Namespace) }
1108
+ def load_project(root, inclusions: T.unsafe(nil), exclusions: T.unsafe(nil), generator: T.unsafe(nil)); end
1109
+
1110
+ sig { params(source: String, filename: T.nilable(String), generator: T.nilable(Parlour::RbiGenerator)).returns(Parlour::RbiGenerator::Namespace) }
1111
+ def load_source(source, filename = T.unsafe(nil), generator: T.unsafe(nil)); end
1112
+ end
1113
+ end
1114
+
1115
+ class Parlour::TypeParser
1116
+ sig { params(ast: Parser::AST::Node, unknown_node_errors: T::Boolean, generator: T.nilable(Parlour::RbiGenerator)).void }
1117
+ def initialize(ast, unknown_node_errors: T.unsafe(nil), generator: T.unsafe(nil)); end
1118
+
1119
+ sig { returns(Parser::AST::Node) }
1120
+ def ast; end
1121
+
1122
+ def ast=(_arg0); end
1123
+
1124
+ sig { returns(Parlour::RbiGenerator) }
1125
+ def generator; end
1126
+
1127
+ def generator=(_arg0); end
1128
+
1129
+ sig { returns(Parlour::RbiGenerator::Namespace) }
1130
+ def parse_all; end
1131
+
1132
+ sig { params(path: Parlour::TypeParser::NodePath, is_within_eigenclass: T::Boolean).returns(T::Array[Parlour::RbiGenerator::Method]) }
1133
+ def parse_method_into_methods(path, is_within_eigenclass: T.unsafe(nil)); end
1134
+
1135
+ sig { params(node: Parser::AST::Node).returns(Parlour::Types::Type) }
1136
+ def parse_node_to_type(node); end
1137
+
1138
+ sig { params(path: Parlour::TypeParser::NodePath, is_within_eigenclass: T::Boolean).returns(T::Array[Parlour::RbiGenerator::RbiObject]) }
1139
+ def parse_path_to_object(path, is_within_eigenclass: T.unsafe(nil)); end
1140
+
1141
+ sig { params(path: Parlour::TypeParser::NodePath, is_within_eigenclass: T::Boolean).returns(T::Array[Parlour::RbiGenerator::Method]) }
1142
+ def parse_sig_into_methods(path, is_within_eigenclass: T.unsafe(nil)); end
1143
+
1144
+ sig { params(path: Parlour::TypeParser::NodePath).returns(Parlour::TypeParser::IntermediateSig) }
1145
+ def parse_sig_into_sig(path); end
1146
+
1147
+ sig { returns(T::Boolean) }
1148
+ def unknown_node_errors; end
1149
+
1150
+ protected
1151
+
1152
+ sig { params(node: T.nilable(Parser::AST::Node), modifier: Symbol).returns(T::Boolean) }
1153
+ def body_has_modifier?(node, modifier); end
1154
+
1155
+ sig { params(node: Parser::AST::Node).returns([T::Array[String], T::Array[String]]) }
1156
+ def body_includes_and_extends(node); end
1157
+
1158
+ sig { params(node: T.nilable(Parser::AST::Node)).returns(T::Array[Symbol]) }
1159
+ def constant_names(node); end
1160
+
1161
+ sig { params(node: T.nilable(Parser::AST::Node)).returns(T.nilable(String)) }
1162
+ def node_to_s(node); end
1163
+
1164
+ sig { params(desc: String, node: T.any(Parlour::TypeParser::NodePath, Parser::AST::Node)).returns(T.noreturn) }
1165
+ def parse_err(desc, node); end
1166
+
1167
+ sig { params(path: Parlour::TypeParser::NodePath).returns(T::Boolean) }
1168
+ def previous_sibling_sig_node?(path); end
1169
+
1170
+ sig { params(node: Parser::AST::Node).returns(T::Boolean) }
1171
+ def sig_node?(node); end
1172
+
1173
+ sig { params(msg: String, node: Parser::AST::Node).void }
1174
+ def warning(msg, node); end
1175
+
1176
+ sig { type_parameters(:A, :B).params(a: T::Array[T.type_parameter(:A)], fa: T.proc.params(item: T.type_parameter(:A)).returns(T.untyped), b: T::Array[T.type_parameter(:B)], fb: T.proc.params(item: T.type_parameter(:B)).returns(T.untyped)).returns(T::Array[[T.type_parameter(:A), T.type_parameter(:B)]]) }
1177
+ def zip_by(a, fa, b, fb); end
1178
+
1179
+ class << self
1180
+ sig { params(filename: String, source: String, generator: T.nilable(Parlour::RbiGenerator)).returns(Parlour::TypeParser) }
1181
+ def from_source(filename, source, generator: T.unsafe(nil)); end
1182
+
1183
+ sig { params(str: String).returns(Parlour::Types::Type) }
1184
+ def parse_single_type(str); end
1185
+ end
1186
+ end
1187
+
1188
+ class Parlour::TypeParser::IntermediateSig < ::T::Struct
1189
+ prop :abstract, T::Boolean
1190
+ prop :final, T::Boolean
1191
+ prop :overridable, T::Boolean
1192
+ prop :override, T::Boolean
1193
+ prop :params, T.nilable(T::Array[Parser::AST::Node])
1194
+ prop :return_type, T.nilable(String)
1195
+ prop :type_parameters, T.nilable(T::Array[Symbol])
1196
+
1197
+ class << self
1198
+ def inherited(s); end
1199
+ end
1200
+ end
1201
+
1202
+ class Parlour::TypeParser::NodePath
1203
+ sig { params(indices: T::Array[Integer]).void }
1204
+ def initialize(indices); end
1205
+
1206
+ sig { params(index: Integer).returns(Parlour::TypeParser::NodePath) }
1207
+ def child(index); end
1208
+
1209
+ sig { returns(T::Array[Integer]) }
1210
+ def indices; end
1211
+
1212
+ sig { returns(Parlour::TypeParser::NodePath) }
1213
+ def parent; end
1214
+
1215
+ sig { params(offset: Integer).returns(Parlour::TypeParser::NodePath) }
1216
+ def sibling(offset); end
1217
+
1218
+ sig { params(start: Parser::AST::Node).returns(Parser::AST::Node) }
1219
+ def traverse(start); end
1220
+ end
1221
+
1222
+ class Parlour::TypedObject
1223
+ abstract!
1224
+
1225
+ sig { params(name: String).void }
1226
+ def initialize(name); end
1227
+
1228
+ sig { params(comment: T.any(String, T::Array[String])).void }
1229
+ def add_comment(comment); end
1230
+
1231
+ def add_comments(*args, &blk); end
1232
+
1233
+ sig { returns(T::Array[String]) }
1234
+ def comments; end
1235
+
1236
+ sig { abstract.returns(String) }
1237
+ def describe; end
1238
+
1239
+ sig { returns(T.nilable(Parlour::Plugin)) }
1240
+ def generated_by; end
1241
+
1242
+ sig { returns(String) }
1243
+ def name; end
1244
+
1245
+ protected
1246
+
1247
+ sig { params(indent_level: Integer, options: Parlour::Options).returns(T::Array[String]) }
1248
+ def generate_comments(indent_level, options); end
1249
+ end
1250
+
1251
+ module Parlour::Types; end
1252
+
1253
+ class Parlour::Types::Array < ::Parlour::Types::SingleElementCollection
1254
+ sig { params(other: Object).returns(T::Boolean) }
1255
+ def ==(other); end
1256
+
1257
+ sig { override.returns(String) }
1258
+ def collection_name; end
1259
+ end
1260
+
1261
+ class Parlour::Types::Boolean < ::Parlour::Types::Type
1262
+ sig { params(other: Object).returns(T::Boolean) }
1263
+ def ==(other); end
1264
+
1265
+ sig { override.returns(String) }
1266
+ def describe; end
1267
+
1268
+ sig { override.returns(String) }
1269
+ def generate_rbi; end
1270
+
1271
+ sig { override.returns(String) }
1272
+ def generate_rbs; end
1273
+ end
1274
+
1275
+ class Parlour::Types::Class < ::Parlour::Types::Type
1276
+ sig { params(type: T.any(Parlour::Types::Type, String)).void }
1277
+ def initialize(type); end
1278
+
1279
+ sig { params(other: Object).returns(T::Boolean) }
1280
+ def ==(other); end
1281
+
1282
+ sig { override.returns(String) }
1283
+ def describe; end
1284
+
1285
+ sig { override.returns(String) }
1286
+ def generate_rbi; end
1287
+
1288
+ sig { override.returns(String) }
1289
+ def generate_rbs; end
1290
+
1291
+ sig { returns(Parlour::Types::Type) }
1292
+ def type; end
1293
+ end
1294
+
1295
+ class Parlour::Types::Enumerable < ::Parlour::Types::SingleElementCollection
1296
+ sig { params(other: Object).returns(T::Boolean) }
1297
+ def ==(other); end
1298
+
1299
+ sig { override.returns(String) }
1300
+ def collection_name; end
1301
+ end
1302
+
1303
+ class Parlour::Types::Enumerator < ::Parlour::Types::SingleElementCollection
1304
+ sig { params(other: Object).returns(T::Boolean) }
1305
+ def ==(other); end
1306
+
1307
+ sig { override.returns(String) }
1308
+ def collection_name; end
1309
+ end
1310
+
1311
+ class Parlour::Types::Generic < ::Parlour::Types::Type
1312
+ sig { params(type: T.any(Parlour::Types::Type, String), type_params: T::Array[T.any(Parlour::Types::Type, String)]).void }
1313
+ def initialize(type, type_params); end
1314
+
1315
+ sig { params(other: Object).returns(T::Boolean) }
1316
+ def ==(other); end
1317
+
1318
+ sig { override.returns(String) }
1319
+ def describe; end
1320
+
1321
+ sig { override.returns(String) }
1322
+ def generate_rbi; end
1323
+
1324
+ sig { override.returns(String) }
1325
+ def generate_rbs; end
1326
+
1327
+ sig { returns(Parlour::Types::Type) }
1328
+ def type; end
1329
+
1330
+ sig { returns(T::Array[Parlour::Types::Type]) }
1331
+ def type_params; end
1332
+ end
1333
+
1334
+ class Parlour::Types::Hash < ::Parlour::Types::Type
1335
+ sig { params(key: T.any(Parlour::Types::Type, String), value: T.any(Parlour::Types::Type, String)).void }
1336
+ def initialize(key, value); end
1337
+
1338
+ sig { params(other: Object).returns(T::Boolean) }
1339
+ def ==(other); end
1340
+
1341
+ sig { override.returns(String) }
1342
+ def describe; end
1343
+
1344
+ sig { override.returns(String) }
1345
+ def generate_rbi; end
1346
+
1347
+ sig { override.returns(String) }
1348
+ def generate_rbs; end
1349
+
1350
+ sig { returns(Parlour::Types::Type) }
1351
+ def key; end
1352
+
1353
+ sig { returns(Parlour::Types::Type) }
1354
+ def value; end
1355
+ end
1356
+
1357
+ class Parlour::Types::Intersection < ::Parlour::Types::Type
1358
+ sig { params(types: T::Array[T.any(Parlour::Types::Type, String)]).void }
1359
+ def initialize(types); end
1360
+
1361
+ sig { params(other: Object).returns(T::Boolean) }
1362
+ def ==(other); end
1363
+
1364
+ sig { override.returns(String) }
1365
+ def describe; end
1366
+
1367
+ sig { override.returns(String) }
1368
+ def generate_rbi; end
1369
+
1370
+ sig { override.returns(String) }
1371
+ def generate_rbs; end
1372
+
1373
+ sig { returns(T::Array[Parlour::Types::Type]) }
1374
+ def types; end
1375
+ end
1376
+
1377
+ class Parlour::Types::Nilable < ::Parlour::Types::Type
1378
+ sig { params(type: T.any(Parlour::Types::Type, String)).void }
1379
+ def initialize(type); end
1380
+
1381
+ sig { params(other: Object).returns(T::Boolean) }
1382
+ def ==(other); end
1383
+
1384
+ sig { override.returns(String) }
1385
+ def describe; end
1386
+
1387
+ sig { override.returns(String) }
1388
+ def generate_rbi; end
1389
+
1390
+ sig { override.returns(String) }
1391
+ def generate_rbs; end
1392
+
1393
+ sig { returns(Parlour::Types::Type) }
1394
+ def type; end
1395
+ end
1396
+
1397
+ class Parlour::Types::Proc < ::Parlour::Types::Type
1398
+ sig { params(parameters: T::Array[Parlour::Types::Proc::Parameter], return_type: T.nilable(T.any(Parlour::Types::Type, String))).void }
1399
+ def initialize(parameters, return_type); end
1400
+
1401
+ sig { params(other: Object).returns(T::Boolean) }
1402
+ def ==(other); end
1403
+
1404
+ sig { override.returns(String) }
1405
+ def describe; end
1406
+
1407
+ sig { override.returns(String) }
1408
+ def generate_rbi; end
1409
+
1410
+ sig { override.returns(String) }
1411
+ def generate_rbs; end
1412
+
1413
+ sig { returns(T::Array[Parlour::Types::Proc::Parameter]) }
1414
+ def parameters; end
1415
+
1416
+ sig { returns(T.nilable(Parlour::Types::Type)) }
1417
+ def return_type; end
1418
+ end
1419
+
1420
+ class Parlour::Types::Proc::Parameter
1421
+ sig { params(name: String, type: T.any(Parlour::Types::Type, String), default: T.nilable(String)).void }
1422
+ def initialize(name, type, default = T.unsafe(nil)); end
1423
+
1424
+ sig { params(other: Object).returns(T::Boolean) }
1425
+ def ==(other); end
1426
+
1427
+ sig { returns(T.nilable(String)) }
1428
+ def default; end
1429
+
1430
+ sig { returns(String) }
1431
+ def name; end
1432
+
1433
+ sig { returns(Parlour::Types::Type) }
1434
+ def type; end
1435
+ end
1436
+
1437
+ class Parlour::Types::Range < ::Parlour::Types::SingleElementCollection
1438
+ sig { params(other: Object).returns(T::Boolean) }
1439
+ def ==(other); end
1440
+
1441
+ sig { override.returns(String) }
1442
+ def collection_name; end
1443
+ end
1444
+
1445
+ class Parlour::Types::Raw < ::Parlour::Types::Type
1446
+ sig { params(str: String).void }
1447
+ def initialize(str); end
1448
+
1449
+ sig { params(other: Object).returns(T::Boolean) }
1450
+ def ==(other); end
1451
+
1452
+ sig { override.returns(String) }
1453
+ def describe; end
1454
+
1455
+ sig { override.returns(String) }
1456
+ def generate_rbi; end
1457
+
1458
+ sig { override.returns(String) }
1459
+ def generate_rbs; end
1460
+
1461
+ sig { returns(String) }
1462
+ def str; end
1463
+ end
1464
+
1465
+ class Parlour::Types::Record < ::Parlour::Types::Type
1466
+ sig { params(keys_to_types: T::Hash[Symbol, T.any(Parlour::Types::Type, String)]).void }
1467
+ def initialize(keys_to_types); end
1468
+
1469
+ sig { params(other: Object).returns(T::Boolean) }
1470
+ def ==(other); end
1471
+
1472
+ sig { override.returns(String) }
1473
+ def describe; end
1474
+
1475
+ sig { override.returns(String) }
1476
+ def generate_rbi; end
1477
+
1478
+ sig { override.returns(String) }
1479
+ def generate_rbs; end
1480
+
1481
+ sig { returns(T::Hash[Symbol, Parlour::Types::Type]) }
1482
+ def keys_to_types; end
1483
+ end
1484
+
1485
+ class Parlour::Types::Self < ::Parlour::Types::Type
1486
+ sig { params(other: Object).returns(T::Boolean) }
1487
+ def ==(other); end
1488
+
1489
+ sig { override.returns(String) }
1490
+ def describe; end
1491
+
1492
+ sig { override.returns(String) }
1493
+ def generate_rbi; end
1494
+
1495
+ sig { override.returns(String) }
1496
+ def generate_rbs; end
1497
+ end
1498
+
1499
+ class Parlour::Types::Set < ::Parlour::Types::SingleElementCollection
1500
+ sig { params(other: Object).returns(T::Boolean) }
1501
+ def ==(other); end
1502
+
1503
+ sig { override.returns(String) }
1504
+ def collection_name; end
1505
+ end
1506
+
1507
+ class Parlour::Types::SingleElementCollection < ::Parlour::Types::Type
1508
+ abstract!
1509
+
1510
+ sig { params(element: T.any(Parlour::Types::Type, String)).void }
1511
+ def initialize(element); end
1512
+
1513
+ sig { abstract.returns(String) }
1514
+ def collection_name; end
1515
+
1516
+ sig { override.returns(String) }
1517
+ def describe; end
1518
+
1519
+ sig { returns(Parlour::Types::Type) }
1520
+ def element; end
1521
+
1522
+ sig { override.returns(String) }
1523
+ def generate_rbi; end
1524
+
1525
+ sig { override.returns(String) }
1526
+ def generate_rbs; end
1527
+ end
1528
+
1529
+ class Parlour::Types::Tuple < ::Parlour::Types::Type
1530
+ sig { params(types: T::Array[T.any(Parlour::Types::Type, String)]).void }
1531
+ def initialize(types); end
1532
+
1533
+ sig { params(other: Object).returns(T::Boolean) }
1534
+ def ==(other); end
1535
+
1536
+ sig { override.returns(String) }
1537
+ def describe; end
1538
+
1539
+ sig { override.returns(String) }
1540
+ def generate_rbi; end
1541
+
1542
+ sig { override.returns(String) }
1543
+ def generate_rbs; end
1544
+
1545
+ sig { returns(T::Array[Parlour::Types::Type]) }
1546
+ def types; end
1547
+ end
1548
+
1549
+ class Parlour::Types::Type
1550
+ abstract!
1551
+
1552
+ def initialize(*args, &blk); end
1553
+
1554
+ sig { abstract.returns(String) }
1555
+ def describe; end
1556
+
1557
+ sig { abstract.returns(String) }
1558
+ def generate_rbi; end
1559
+
1560
+ sig { abstract.returns(String) }
1561
+ def generate_rbs; end
1562
+
1563
+ def hash; end
1564
+
1565
+ sig { params(type_like: T.any(Parlour::Types::Type, String)).returns(Parlour::Types::Type) }
1566
+ def to_type(type_like); end
1567
+
1568
+ class << self
1569
+ sig { params(type_like: T.any(Parlour::Types::Type, String)).returns(Parlour::Types::Type) }
1570
+ def to_type(type_like); end
1571
+ end
1572
+ end
1573
+
1574
+ Parlour::Types::TypeLike = T.type_alias { T.any(Parlour::Types::Type, String) }
1575
+
1576
+ class Parlour::Types::Union < ::Parlour::Types::Type
1577
+ sig { params(types: T::Array[T.any(Parlour::Types::Type, String)]).void }
1578
+ def initialize(types); end
1579
+
1580
+ sig { params(other: Object).returns(T::Boolean) }
1581
+ def ==(other); end
1582
+
1583
+ sig { override.returns(String) }
1584
+ def describe; end
1585
+
1586
+ sig { override.returns(String) }
1587
+ def generate_rbi; end
1588
+
1589
+ sig { override.returns(String) }
1590
+ def generate_rbs; end
1591
+
1592
+ sig { returns(T::Array[Parlour::Types::Type]) }
1593
+ def types; end
1594
+ end
1595
+
1596
+ class Parlour::Types::Untyped < ::Parlour::Types::Type
1597
+ sig { params(other: Object).returns(T::Boolean) }
1598
+ def ==(other); end
1599
+
1600
+ sig { override.returns(String) }
1601
+ def describe; end
1602
+
1603
+ sig { override.returns(String) }
1604
+ def generate_rbi; end
1605
+
1606
+ sig { override.returns(String) }
1607
+ def generate_rbs; end
1608
+ end
1609
+
1610
+ Parlour::VERSION = T.let(T.unsafe(nil), String)