ipt 1.0.1 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (235) hide show
  1. checksums.yaml +5 -5
  2. data/.github/workflows/test.yml +41 -0
  3. data/.gitignore +0 -1
  4. data/Gemfile.lock +318 -0
  5. data/README.md +1 -1
  6. data/bin/tapioca +29 -0
  7. data/ipt.gemspec +15 -8
  8. data/lib/pt.rb +8 -9
  9. data/lib/pt/action.rb +42 -24
  10. data/lib/pt/cli.rb +1 -1
  11. data/lib/pt/client.rb +2 -3
  12. data/lib/pt/configuration.rb +1 -1
  13. data/lib/pt/data_row.rb +1 -0
  14. data/lib/pt/data_table.rb +1 -2
  15. data/lib/pt/io.rb +16 -7
  16. data/lib/pt/version.rb +2 -1
  17. data/sorbet/config +3 -0
  18. data/sorbet/rbi/gems/activesupport.rbi +671 -0
  19. data/sorbet/rbi/gems/activesupport@6.1.3.2.rbi +63 -0
  20. data/sorbet/rbi/gems/addressable.rbi +147 -0
  21. data/sorbet/rbi/gems/addressable@2.7.0.rbi +8 -0
  22. data/sorbet/rbi/gems/anyway_config.rbi +197 -0
  23. data/sorbet/rbi/gems/anyway_config@2.1.0.rbi +8 -0
  24. data/sorbet/rbi/gems/aruba.rbi +917 -0
  25. data/sorbet/rbi/gems/aruba@0.14.14.rbi +1342 -0
  26. data/sorbet/rbi/gems/ast.rbi +49 -0
  27. data/sorbet/rbi/gems/ast@2.4.2.rbi +54 -0
  28. data/sorbet/rbi/gems/axiom-types@0.1.1.rbi +8 -0
  29. data/sorbet/rbi/gems/builder@3.2.4.rbi +15 -0
  30. data/sorbet/rbi/gems/childprocess.rbi +107 -0
  31. data/sorbet/rbi/gems/childprocess@3.0.0.rbi +135 -0
  32. data/sorbet/rbi/gems/coderay.rbi +285 -0
  33. data/sorbet/rbi/gems/coderay@1.1.3.rbi +1005 -0
  34. data/sorbet/rbi/gems/coercible@1.0.0.rbi +8 -0
  35. data/sorbet/rbi/gems/colorize.rbi +82 -0
  36. data/sorbet/rbi/gems/colorize@0.8.1.rbi +39 -0
  37. data/sorbet/rbi/gems/commander@4.6.0.rbi +8 -0
  38. data/sorbet/rbi/gems/concurrent-ruby.rbi +1590 -0
  39. data/sorbet/rbi/gems/concurrent-ruby@1.1.8.rbi +8 -0
  40. data/sorbet/rbi/gems/config.rbi +124 -0
  41. data/sorbet/rbi/gems/config@3.1.0.rbi +8 -0
  42. data/sorbet/rbi/gems/contracts.rbi +391 -0
  43. data/sorbet/rbi/gems/contracts@0.16.1.rbi +592 -0
  44. data/sorbet/rbi/gems/cucumber-core.rbi +628 -0
  45. data/sorbet/rbi/gems/cucumber-core@9.0.0.rbi +8 -0
  46. data/sorbet/rbi/gems/cucumber-create-meta.rbi +27 -0
  47. data/sorbet/rbi/gems/cucumber-create-meta@4.0.0.rbi +8 -0
  48. data/sorbet/rbi/gems/cucumber-cucumber-expressions.rbi +216 -0
  49. data/sorbet/rbi/gems/cucumber-cucumber-expressions@12.1.1.rbi +8 -0
  50. data/sorbet/rbi/gems/cucumber-gherkin.rbi +289 -0
  51. data/sorbet/rbi/gems/cucumber-gherkin@18.1.1.rbi +8 -0
  52. data/sorbet/rbi/gems/cucumber-html-formatter@13.0.0.rbi +8 -0
  53. data/sorbet/rbi/gems/cucumber-messages.rbi +872 -0
  54. data/sorbet/rbi/gems/cucumber-messages@15.0.0.rbi +8 -0
  55. data/sorbet/rbi/gems/cucumber-tag-expressions.rbi +53 -0
  56. data/sorbet/rbi/gems/cucumber-tag-expressions@3.0.1.rbi +8 -0
  57. data/sorbet/rbi/gems/cucumber-wire.rbi +161 -0
  58. data/sorbet/rbi/gems/cucumber-wire@5.0.0.rbi +8 -0
  59. data/sorbet/rbi/gems/cucumber.rbi +1876 -0
  60. data/sorbet/rbi/gems/cucumber@6.0.0.rbi +8 -0
  61. data/sorbet/rbi/gems/declarative.rbi +75 -0
  62. data/sorbet/rbi/gems/declarative@0.0.20.rbi +8 -0
  63. data/sorbet/rbi/gems/deep_merge.rbi +26 -0
  64. data/sorbet/rbi/gems/deep_merge@1.2.1.rbi +8 -0
  65. data/sorbet/rbi/gems/descendants_tracker@0.0.4.rbi +8 -0
  66. data/sorbet/rbi/gems/diff-lcs@1.4.4.rbi +8 -0
  67. data/sorbet/rbi/gems/dry-configurable@0.12.1.rbi +8 -0
  68. data/sorbet/rbi/gems/dry-container@0.7.2.rbi +8 -0
  69. data/sorbet/rbi/gems/dry-core@0.5.0.rbi +8 -0
  70. data/sorbet/rbi/gems/dry-equalizer@0.3.0.rbi +8 -0
  71. data/sorbet/rbi/gems/dry-inflector@0.2.0.rbi +8 -0
  72. data/sorbet/rbi/gems/dry-initializer@3.0.4.rbi +8 -0
  73. data/sorbet/rbi/gems/dry-logic@1.2.0.rbi +8 -0
  74. data/sorbet/rbi/gems/dry-schema@1.6.2.rbi +8 -0
  75. data/sorbet/rbi/gems/dry-types@1.5.1.rbi +8 -0
  76. data/sorbet/rbi/gems/dry-validation@1.6.0.rbi +8 -0
  77. data/sorbet/rbi/gems/equalizer.rbi +23 -0
  78. data/sorbet/rbi/gems/equalizer@0.0.11.rbi +8 -0
  79. data/sorbet/rbi/gems/equatable.rbi +26 -0
  80. data/sorbet/rbi/gems/equatable@0.5.0.rbi +8 -0
  81. data/sorbet/rbi/gems/excon.rbi +378 -0
  82. data/sorbet/rbi/gems/excon@0.81.0.rbi +8 -0
  83. data/sorbet/rbi/gems/faraday-excon.rbi +28 -0
  84. data/sorbet/rbi/gems/faraday-excon@1.1.0.rbi +8 -0
  85. data/sorbet/rbi/gems/faraday-net_http.rbi +32 -0
  86. data/sorbet/rbi/gems/faraday-net_http@1.0.1.rbi +8 -0
  87. data/sorbet/rbi/gems/faraday-net_http_persistent.rbi +24 -0
  88. data/sorbet/rbi/gems/faraday-net_http_persistent@1.1.0.rbi +8 -0
  89. data/sorbet/rbi/gems/faraday.rbi +606 -0
  90. data/sorbet/rbi/gems/faraday@1.4.1.rbi +8 -0
  91. data/sorbet/rbi/gems/faraday_middleware.rbi +19 -0
  92. data/sorbet/rbi/gems/faraday_middleware@1.0.0.rbi +8 -0
  93. data/sorbet/rbi/gems/ffi.rbi +560 -0
  94. data/sorbet/rbi/gems/ffi@1.15.0.rbi +849 -0
  95. data/sorbet/rbi/gems/formatador.rbi +52 -0
  96. data/sorbet/rbi/gems/formatador@0.2.5.rbi +8 -0
  97. data/sorbet/rbi/gems/guard-compat@1.2.1.rbi +49 -0
  98. data/sorbet/rbi/gems/guard-rspec@4.7.3.rbi +233 -0
  99. data/sorbet/rbi/gems/guard.rbi +397 -0
  100. data/sorbet/rbi/gems/guard@2.16.2.rbi +615 -0
  101. data/sorbet/rbi/gems/highline.rbi +567 -0
  102. data/sorbet/rbi/gems/highline@2.0.3.rbi +8 -0
  103. data/sorbet/rbi/gems/i18n.rbi +133 -0
  104. data/sorbet/rbi/gems/i18n@1.8.10.rbi +8 -0
  105. data/sorbet/rbi/gems/ice_nine@0.11.2.rbi +8 -0
  106. data/sorbet/rbi/gems/listen.rbi +301 -0
  107. data/sorbet/rbi/gems/listen@3.5.1.rbi +476 -0
  108. data/sorbet/rbi/gems/lumberjack.rbi +299 -0
  109. data/sorbet/rbi/gems/lumberjack@1.2.8.rbi +431 -0
  110. data/sorbet/rbi/gems/method_source.rbi +64 -0
  111. data/sorbet/rbi/gems/method_source@1.0.0.rbi +72 -0
  112. data/sorbet/rbi/gems/middleware.rbi +32 -0
  113. data/sorbet/rbi/gems/middleware@0.1.0.rbi +8 -0
  114. data/sorbet/rbi/gems/mime-types-data.rbi +17 -0
  115. data/sorbet/rbi/gems/mime-types-data@3.2021.0225.rbi +8 -0
  116. data/sorbet/rbi/gems/mime-types.rbi +218 -0
  117. data/sorbet/rbi/gems/mime-types@3.3.1.rbi +8 -0
  118. data/sorbet/rbi/gems/mini_mime.rbi +52 -0
  119. data/sorbet/rbi/gems/mini_mime@1.1.0.rbi +8 -0
  120. data/sorbet/rbi/gems/minitest@5.14.4.rbi +8 -0
  121. data/sorbet/rbi/gems/multi_json.rbi +62 -0
  122. data/sorbet/rbi/gems/multi_json@1.15.0.rbi +8 -0
  123. data/sorbet/rbi/gems/multi_test.rbi +28 -0
  124. data/sorbet/rbi/gems/multi_test@0.1.2.rbi +8 -0
  125. data/sorbet/rbi/gems/multipart-post.rbi +53 -0
  126. data/sorbet/rbi/gems/multipart-post@2.1.1.rbi +8 -0
  127. data/sorbet/rbi/gems/necromancer.rbi +135 -0
  128. data/sorbet/rbi/gems/necromancer@0.3.0.rbi +8 -0
  129. data/sorbet/rbi/gems/nenv.rbi +60 -0
  130. data/sorbet/rbi/gems/nenv@0.3.0.rbi +88 -0
  131. data/sorbet/rbi/gems/notiffany.rbi +215 -0
  132. data/sorbet/rbi/gems/notiffany@0.1.3.rbi +323 -0
  133. data/sorbet/rbi/gems/paint.rbi +31 -0
  134. data/sorbet/rbi/gems/paint@2.2.1.rbi +8 -0
  135. data/sorbet/rbi/gems/parlour.rbi +840 -0
  136. data/sorbet/rbi/gems/parlour@6.0.0.rbi +1610 -0
  137. data/sorbet/rbi/gems/parser.rbi +1517 -0
  138. data/sorbet/rbi/gems/parser@3.0.1.1.rbi +1726 -0
  139. data/sorbet/rbi/gems/pastel.rbi +128 -0
  140. data/sorbet/rbi/gems/pastel@0.6.1.rbi +8 -0
  141. data/sorbet/rbi/gems/protobuf-cucumber.rbi +1520 -0
  142. data/sorbet/rbi/gems/protobuf-cucumber@3.10.8.rbi +8 -0
  143. data/sorbet/rbi/gems/pry.rbi +1898 -0
  144. data/sorbet/rbi/gems/pry@0.14.1.rbi +2486 -0
  145. data/sorbet/rbi/gems/public_suffix.rbi +104 -0
  146. data/sorbet/rbi/gems/public_suffix@4.0.6.rbi +8 -0
  147. data/sorbet/rbi/gems/rainbow.rbi +118 -0
  148. data/sorbet/rbi/gems/rainbow@3.0.0.rbi +153 -0
  149. data/sorbet/rbi/gems/rake.rbi +647 -0
  150. data/sorbet/rbi/gems/rake@10.5.0.rbi +805 -0
  151. data/sorbet/rbi/gems/rb-fsevent@0.11.0.rbi +8 -0
  152. data/sorbet/rbi/gems/rb-inotify@0.10.1.rbi +8 -0
  153. data/sorbet/rbi/gems/representable.rbi +227 -0
  154. data/sorbet/rbi/gems/representable@3.1.1.rbi +8 -0
  155. data/sorbet/rbi/gems/rspec-core.rbi +1932 -0
  156. data/sorbet/rbi/gems/rspec-core@3.10.1.rbi +2455 -0
  157. data/sorbet/rbi/gems/rspec-expectations.rbi +1151 -0
  158. data/sorbet/rbi/gems/rspec-expectations@3.10.1.rbi +1652 -0
  159. data/sorbet/rbi/gems/rspec-mocks.rbi +1100 -0
  160. data/sorbet/rbi/gems/rspec-mocks@3.10.2.rbi +1462 -0
  161. data/sorbet/rbi/gems/rspec-support.rbi +280 -0
  162. data/sorbet/rbi/gems/rspec-support@3.10.2.rbi +509 -0
  163. data/sorbet/rbi/gems/rspec.rbi +15 -0
  164. data/sorbet/rbi/gems/rspec@3.10.0.rbi +38 -0
  165. data/sorbet/rbi/gems/ruby-next-core.rbi +76 -0
  166. data/sorbet/rbi/gems/ruby-next-core@0.12.0.rbi +7 -0
  167. data/sorbet/rbi/gems/ruby2_keywords@0.0.4.rbi +8 -0
  168. data/sorbet/rbi/gems/shellany.rbi +29 -0
  169. data/sorbet/rbi/gems/shellany@0.0.1.rbi +28 -0
  170. data/sorbet/rbi/gems/spoom.rbi +872 -0
  171. data/sorbet/rbi/gems/spoom@1.1.1.rbi +1193 -0
  172. data/sorbet/rbi/gems/sys-uname.rbi +66 -0
  173. data/sorbet/rbi/gems/sys-uname@1.2.2.rbi +8 -0
  174. data/sorbet/rbi/gems/tapioca.rbi +39 -0
  175. data/sorbet/rbi/gems/tapioca@0.4.23.rbi +1230 -0
  176. data/sorbet/rbi/gems/terminal-table.rbi +166 -0
  177. data/sorbet/rbi/gems/terminal-table@3.0.0.rbi +8 -0
  178. data/sorbet/rbi/gems/thor.rbi +537 -0
  179. data/sorbet/rbi/gems/thor@1.1.0.rbi +838 -0
  180. data/sorbet/rbi/gems/thread_safe@0.3.6.rbi +8 -0
  181. data/sorbet/rbi/gems/tracker_api.rbi +33 -0
  182. data/sorbet/rbi/gems/tracker_api@1.13.0.rbi +21 -0
  183. data/sorbet/rbi/gems/trailblazer-option.rbi +22 -0
  184. data/sorbet/rbi/gems/trailblazer-option@0.1.1.rbi +8 -0
  185. data/sorbet/rbi/gems/tty-color.rbi +41 -0
  186. data/sorbet/rbi/gems/tty-color@0.3.0.rbi +8 -0
  187. data/sorbet/rbi/gems/tty-command@0.1.0.rbi +8 -0
  188. data/sorbet/rbi/gems/tty-cursor@0.3.0.rbi +8 -0
  189. data/sorbet/rbi/gems/tty-pager.rbi +41 -0
  190. data/sorbet/rbi/gems/tty-pager@0.4.0.rbi +8 -0
  191. data/sorbet/rbi/gems/tty-platform.rbi +36 -0
  192. data/sorbet/rbi/gems/tty-platform@0.1.0.rbi +8 -0
  193. data/sorbet/rbi/gems/tty-progressbar.rbi +164 -0
  194. data/sorbet/rbi/gems/tty-progressbar@0.9.0.rbi +8 -0
  195. data/sorbet/rbi/gems/tty-prompt@0.6.0.rbi +8 -0
  196. data/sorbet/rbi/gems/tty-screen.rbi +40 -0
  197. data/sorbet/rbi/gems/tty-screen@0.5.1.rbi +8 -0
  198. data/sorbet/rbi/gems/tty-spinner.rbi +40 -0
  199. data/sorbet/rbi/gems/tty-spinner@0.2.0.rbi +8 -0
  200. data/sorbet/rbi/gems/tty-table.rbi +417 -0
  201. data/sorbet/rbi/gems/tty-table@0.5.0.rbi +8 -0
  202. data/sorbet/rbi/gems/tty-which.rbi +22 -0
  203. data/sorbet/rbi/gems/tty-which@0.1.0.rbi +8 -0
  204. data/sorbet/rbi/gems/tty.rbi +126 -0
  205. data/sorbet/rbi/gems/tty@0.5.0.rbi +8 -0
  206. data/sorbet/rbi/gems/tzinfo.rbi +588 -0
  207. data/sorbet/rbi/gems/tzinfo@2.0.4.rbi +8 -0
  208. data/sorbet/rbi/gems/uber.rbi +18 -0
  209. data/sorbet/rbi/gems/uber@0.1.0.rbi +8 -0
  210. data/sorbet/rbi/gems/unicode-display_width.rbi +17 -0
  211. data/sorbet/rbi/gems/unicode-display_width@1.7.0.rbi +8 -0
  212. data/sorbet/rbi/gems/unicode_utils.rbi +171 -0
  213. data/sorbet/rbi/gems/unicode_utils@1.4.0.rbi +8 -0
  214. data/sorbet/rbi/gems/vcr.rbi +582 -0
  215. data/sorbet/rbi/gems/vcr@6.0.0.rbi +782 -0
  216. data/sorbet/rbi/gems/verse.rbi +87 -0
  217. data/sorbet/rbi/gems/verse@0.4.0.rbi +8 -0
  218. data/sorbet/rbi/gems/virtus@1.0.5.rbi +8 -0
  219. data/sorbet/rbi/gems/wisper@1.6.1.rbi +8 -0
  220. data/sorbet/rbi/gems/zeitwerk.rbi +139 -0
  221. data/sorbet/rbi/gems/zeitwerk@2.4.2.rbi +8 -0
  222. data/sorbet/rbi/hidden-definitions/errors.txt +8695 -0
  223. data/sorbet/rbi/hidden-definitions/hidden.rbi +18529 -0
  224. data/sorbet/rbi/sorbet-typed/lib/activesupport/>=6/activesupport.rbi +37 -0
  225. data/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +1850 -0
  226. data/sorbet/rbi/sorbet-typed/lib/faraday/all/faraday.rbi +756 -0
  227. data/sorbet/rbi/sorbet-typed/lib/minitest/all/minitest.rbi +108 -0
  228. data/sorbet/rbi/sorbet-typed/lib/parlour/6.0.0/parlour.rbi +1903 -0
  229. data/sorbet/rbi/sorbet-typed/lib/rainbow/all/rainbow.rbi +276 -0
  230. data/sorbet/rbi/sorbet-typed/lib/rake/all/rake.rbi +645 -0
  231. data/sorbet/rbi/sorbet-typed/lib/rspec-core/all/rspec-core.rbi +1891 -0
  232. data/sorbet/rbi/sorbet-typed/lib/thor/all/thor.rbi +905 -0
  233. data/sorbet/rbi/todo.rbi +23 -0
  234. data/sorbet/tapioca/require.rb +4 -0
  235. metadata +341 -23
@@ -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)