rbs-relaxed 3.9.0.1

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 (484) hide show
  1. checksums.yaml +7 -0
  2. data/.github/dependabot.yml +22 -0
  3. data/.github/workflows/comments.yml +35 -0
  4. data/.github/workflows/dependabot.yml +30 -0
  5. data/.github/workflows/ruby.yml +82 -0
  6. data/.github/workflows/typecheck.yml +38 -0
  7. data/.github/workflows/windows.yml +43 -0
  8. data/.gitignore +23 -0
  9. data/.rubocop.yml +68 -0
  10. data/BSDL +22 -0
  11. data/CHANGELOG.md +1868 -0
  12. data/COPYING +56 -0
  13. data/README.md +203 -0
  14. data/Rakefile +417 -0
  15. data/Steepfile +44 -0
  16. data/config.yml +313 -0
  17. data/core/array.rbs +4062 -0
  18. data/core/basic_object.rbs +375 -0
  19. data/core/binding.rbs +150 -0
  20. data/core/builtin.rbs +277 -0
  21. data/core/class.rbs +220 -0
  22. data/core/comparable.rbs +171 -0
  23. data/core/complex.rbs +786 -0
  24. data/core/constants.rbs +96 -0
  25. data/core/data.rbs +415 -0
  26. data/core/dir.rbs +981 -0
  27. data/core/encoding.rbs +1371 -0
  28. data/core/enumerable.rbs +2405 -0
  29. data/core/enumerator/product.rbs +92 -0
  30. data/core/enumerator.rbs +630 -0
  31. data/core/env.rbs +6 -0
  32. data/core/errno.rbs +673 -0
  33. data/core/errors.rbs +760 -0
  34. data/core/exception.rbs +485 -0
  35. data/core/false_class.rbs +82 -0
  36. data/core/fiber.rbs +550 -0
  37. data/core/fiber_error.rbs +11 -0
  38. data/core/file.rbs +2936 -0
  39. data/core/file_test.rbs +331 -0
  40. data/core/float.rbs +1151 -0
  41. data/core/gc.rbs +644 -0
  42. data/core/global_variables.rbs +184 -0
  43. data/core/hash.rbs +1861 -0
  44. data/core/integer.rbs +1413 -0
  45. data/core/io/buffer.rbs +984 -0
  46. data/core/io/wait.rbs +70 -0
  47. data/core/io.rbs +3406 -0
  48. data/core/kernel.rbs +3096 -0
  49. data/core/marshal.rbs +207 -0
  50. data/core/match_data.rbs +635 -0
  51. data/core/math.rbs +729 -0
  52. data/core/method.rbs +386 -0
  53. data/core/module.rbs +1704 -0
  54. data/core/nil_class.rbs +209 -0
  55. data/core/numeric.rbs +818 -0
  56. data/core/object.rbs +110 -0
  57. data/core/object_space/weak_key_map.rbs +166 -0
  58. data/core/object_space.rbs +190 -0
  59. data/core/proc.rbs +868 -0
  60. data/core/process.rbs +2296 -0
  61. data/core/ractor.rbs +1068 -0
  62. data/core/random.rbs +237 -0
  63. data/core/range.rbs +1107 -0
  64. data/core/rational.rbs +531 -0
  65. data/core/rb_config.rbs +88 -0
  66. data/core/rbs/unnamed/argf.rbs +1229 -0
  67. data/core/rbs/unnamed/env_class.rbs +1209 -0
  68. data/core/rbs/unnamed/random.rbs +293 -0
  69. data/core/refinement.rbs +59 -0
  70. data/core/regexp.rbs +1930 -0
  71. data/core/ruby_vm.rbs +765 -0
  72. data/core/rubygems/basic_specification.rbs +6 -0
  73. data/core/rubygems/config_file.rbs +38 -0
  74. data/core/rubygems/dependency_installer.rbs +6 -0
  75. data/core/rubygems/errors.rbs +176 -0
  76. data/core/rubygems/installer.rbs +15 -0
  77. data/core/rubygems/path_support.rbs +6 -0
  78. data/core/rubygems/platform.rbs +7 -0
  79. data/core/rubygems/request_set.rbs +49 -0
  80. data/core/rubygems/requirement.rbs +148 -0
  81. data/core/rubygems/rubygems.rbs +1171 -0
  82. data/core/rubygems/source_list.rbs +15 -0
  83. data/core/rubygems/specification.rbs +23 -0
  84. data/core/rubygems/stream_ui.rbs +5 -0
  85. data/core/rubygems/uninstaller.rbs +10 -0
  86. data/core/rubygems/version.rbs +294 -0
  87. data/core/set.rbs +621 -0
  88. data/core/signal.rbs +100 -0
  89. data/core/string.rbs +3583 -0
  90. data/core/struct.rbs +667 -0
  91. data/core/symbol.rbs +475 -0
  92. data/core/thread.rbs +1765 -0
  93. data/core/thread_group.rbs +79 -0
  94. data/core/time.rbs +1762 -0
  95. data/core/trace_point.rbs +477 -0
  96. data/core/true_class.rbs +98 -0
  97. data/core/unbound_method.rbs +329 -0
  98. data/core/warning.rbs +87 -0
  99. data/docs/CONTRIBUTING.md +106 -0
  100. data/docs/architecture.md +110 -0
  101. data/docs/collection.md +192 -0
  102. data/docs/data_and_struct.md +86 -0
  103. data/docs/gem.md +57 -0
  104. data/docs/rbs_by_example.md +309 -0
  105. data/docs/repo.md +125 -0
  106. data/docs/sigs.md +167 -0
  107. data/docs/stdlib.md +147 -0
  108. data/docs/syntax.md +910 -0
  109. data/docs/tools.md +17 -0
  110. data/exe/rbs +7 -0
  111. data/ext/rbs_extension/extconf.rb +15 -0
  112. data/ext/rbs_extension/lexer.c +2728 -0
  113. data/ext/rbs_extension/lexer.h +179 -0
  114. data/ext/rbs_extension/lexer.re +147 -0
  115. data/ext/rbs_extension/lexstate.c +175 -0
  116. data/ext/rbs_extension/location.c +325 -0
  117. data/ext/rbs_extension/location.h +85 -0
  118. data/ext/rbs_extension/main.c +33 -0
  119. data/ext/rbs_extension/parser.c +2973 -0
  120. data/ext/rbs_extension/parser.h +18 -0
  121. data/ext/rbs_extension/parserstate.c +397 -0
  122. data/ext/rbs_extension/parserstate.h +163 -0
  123. data/ext/rbs_extension/rbs_extension.h +31 -0
  124. data/ext/rbs_extension/unescape.c +32 -0
  125. data/goodcheck.yml +91 -0
  126. data/include/rbs/constants.h +82 -0
  127. data/include/rbs/ruby_objs.h +72 -0
  128. data/include/rbs/util/rbs_constant_pool.h +219 -0
  129. data/include/rbs.h +7 -0
  130. data/lib/rbs/ancestor_graph.rb +92 -0
  131. data/lib/rbs/annotate/annotations.rb +199 -0
  132. data/lib/rbs/annotate/formatter.rb +92 -0
  133. data/lib/rbs/annotate/rdoc_annotator.rb +400 -0
  134. data/lib/rbs/annotate/rdoc_source.rb +131 -0
  135. data/lib/rbs/annotate.rb +8 -0
  136. data/lib/rbs/ast/annotation.rb +29 -0
  137. data/lib/rbs/ast/comment.rb +29 -0
  138. data/lib/rbs/ast/declarations.rb +467 -0
  139. data/lib/rbs/ast/directives.rb +49 -0
  140. data/lib/rbs/ast/members.rb +451 -0
  141. data/lib/rbs/ast/type_param.rb +225 -0
  142. data/lib/rbs/ast/visitor.rb +137 -0
  143. data/lib/rbs/buffer.rb +67 -0
  144. data/lib/rbs/builtin_names.rb +58 -0
  145. data/lib/rbs/cli/colored_io.rb +48 -0
  146. data/lib/rbs/cli/diff.rb +83 -0
  147. data/lib/rbs/cli/validate.rb +357 -0
  148. data/lib/rbs/cli.rb +1223 -0
  149. data/lib/rbs/collection/cleaner.rb +38 -0
  150. data/lib/rbs/collection/config/lockfile.rb +92 -0
  151. data/lib/rbs/collection/config/lockfile_generator.rb +218 -0
  152. data/lib/rbs/collection/config.rb +81 -0
  153. data/lib/rbs/collection/installer.rb +32 -0
  154. data/lib/rbs/collection/sources/base.rb +14 -0
  155. data/lib/rbs/collection/sources/git.rb +258 -0
  156. data/lib/rbs/collection/sources/local.rb +81 -0
  157. data/lib/rbs/collection/sources/rubygems.rb +48 -0
  158. data/lib/rbs/collection/sources/stdlib.rb +50 -0
  159. data/lib/rbs/collection/sources.rb +38 -0
  160. data/lib/rbs/collection.rb +16 -0
  161. data/lib/rbs/constant.rb +28 -0
  162. data/lib/rbs/definition.rb +401 -0
  163. data/lib/rbs/definition_builder/ancestor_builder.rb +620 -0
  164. data/lib/rbs/definition_builder/method_builder.rb +254 -0
  165. data/lib/rbs/definition_builder.rb +845 -0
  166. data/lib/rbs/diff.rb +125 -0
  167. data/lib/rbs/environment/use_map.rb +77 -0
  168. data/lib/rbs/environment.rb +829 -0
  169. data/lib/rbs/environment_loader.rb +173 -0
  170. data/lib/rbs/environment_walker.rb +155 -0
  171. data/lib/rbs/errors.rb +645 -0
  172. data/lib/rbs/factory.rb +18 -0
  173. data/lib/rbs/file_finder.rb +28 -0
  174. data/lib/rbs/location_aux.rb +138 -0
  175. data/lib/rbs/locator.rb +243 -0
  176. data/lib/rbs/method_type.rb +143 -0
  177. data/lib/rbs/namespace.rb +125 -0
  178. data/lib/rbs/parser/lex_result.rb +15 -0
  179. data/lib/rbs/parser/token.rb +23 -0
  180. data/lib/rbs/parser_aux.rb +114 -0
  181. data/lib/rbs/prototype/helpers.rb +140 -0
  182. data/lib/rbs/prototype/node_usage.rb +99 -0
  183. data/lib/rbs/prototype/rb.rb +840 -0
  184. data/lib/rbs/prototype/rbi.rb +641 -0
  185. data/lib/rbs/prototype/runtime/helpers.rb +59 -0
  186. data/lib/rbs/prototype/runtime/reflection.rb +19 -0
  187. data/lib/rbs/prototype/runtime/value_object_generator.rb +279 -0
  188. data/lib/rbs/prototype/runtime.rb +667 -0
  189. data/lib/rbs/repository.rb +127 -0
  190. data/lib/rbs/resolver/constant_resolver.rb +219 -0
  191. data/lib/rbs/resolver/type_name_resolver.rb +91 -0
  192. data/lib/rbs/sorter.rb +198 -0
  193. data/lib/rbs/substitution.rb +83 -0
  194. data/lib/rbs/subtractor.rb +201 -0
  195. data/lib/rbs/test/errors.rb +80 -0
  196. data/lib/rbs/test/guaranteed.rb +30 -0
  197. data/lib/rbs/test/hook.rb +212 -0
  198. data/lib/rbs/test/observer.rb +19 -0
  199. data/lib/rbs/test/setup.rb +84 -0
  200. data/lib/rbs/test/setup_helper.rb +50 -0
  201. data/lib/rbs/test/tester.rb +167 -0
  202. data/lib/rbs/test/type_check.rb +435 -0
  203. data/lib/rbs/test.rb +112 -0
  204. data/lib/rbs/type_alias_dependency.rb +100 -0
  205. data/lib/rbs/type_alias_regularity.rb +126 -0
  206. data/lib/rbs/type_name.rb +109 -0
  207. data/lib/rbs/types.rb +1596 -0
  208. data/lib/rbs/unit_test/convertibles.rb +176 -0
  209. data/lib/rbs/unit_test/spy.rb +138 -0
  210. data/lib/rbs/unit_test/type_assertions.rb +347 -0
  211. data/lib/rbs/unit_test/with_aliases.rb +143 -0
  212. data/lib/rbs/unit_test.rb +6 -0
  213. data/lib/rbs/validator.rb +186 -0
  214. data/lib/rbs/variance_calculator.rb +189 -0
  215. data/lib/rbs/vendorer.rb +71 -0
  216. data/lib/rbs/version.rb +5 -0
  217. data/lib/rbs/writer.rb +424 -0
  218. data/lib/rbs.rb +94 -0
  219. data/lib/rdoc/discover.rb +20 -0
  220. data/lib/rdoc_plugin/parser.rb +163 -0
  221. data/rbs-relaxed.gemspec +48 -0
  222. data/schema/annotation.json +14 -0
  223. data/schema/comment.json +26 -0
  224. data/schema/decls.json +326 -0
  225. data/schema/function.json +87 -0
  226. data/schema/location.json +56 -0
  227. data/schema/members.json +266 -0
  228. data/schema/methodType.json +50 -0
  229. data/schema/typeParam.json +36 -0
  230. data/schema/types.json +317 -0
  231. data/sig/ancestor_builder.rbs +163 -0
  232. data/sig/ancestor_graph.rbs +60 -0
  233. data/sig/annotate/annotations.rbs +102 -0
  234. data/sig/annotate/formatter.rbs +24 -0
  235. data/sig/annotate/rdoc_annotater.rbs +82 -0
  236. data/sig/annotate/rdoc_source.rbs +30 -0
  237. data/sig/annotation.rbs +27 -0
  238. data/sig/buffer.rbs +32 -0
  239. data/sig/builtin_names.rbs +44 -0
  240. data/sig/cli/colored_io.rbs +15 -0
  241. data/sig/cli/diff.rbs +21 -0
  242. data/sig/cli/validate.rbs +43 -0
  243. data/sig/cli.rbs +87 -0
  244. data/sig/collection/cleaner.rbs +13 -0
  245. data/sig/collection/config/lockfile.rbs +74 -0
  246. data/sig/collection/config/lockfile_generator.rbs +66 -0
  247. data/sig/collection/config.rbs +46 -0
  248. data/sig/collection/installer.rbs +17 -0
  249. data/sig/collection/sources.rbs +214 -0
  250. data/sig/collection.rbs +4 -0
  251. data/sig/comment.rbs +26 -0
  252. data/sig/constant.rbs +21 -0
  253. data/sig/declarations.rbs +267 -0
  254. data/sig/definition.rbs +173 -0
  255. data/sig/definition_builder.rbs +165 -0
  256. data/sig/diff.rbs +28 -0
  257. data/sig/directives.rbs +77 -0
  258. data/sig/environment.rbs +279 -0
  259. data/sig/environment_loader.rbs +111 -0
  260. data/sig/environment_walker.rbs +65 -0
  261. data/sig/errors.rbs +405 -0
  262. data/sig/factory.rbs +5 -0
  263. data/sig/file_finder.rbs +28 -0
  264. data/sig/location.rbs +110 -0
  265. data/sig/locator.rbs +58 -0
  266. data/sig/manifest.yaml +7 -0
  267. data/sig/members.rbs +258 -0
  268. data/sig/method_builder.rbs +84 -0
  269. data/sig/method_types.rbs +58 -0
  270. data/sig/namespace.rbs +146 -0
  271. data/sig/parser.rbs +100 -0
  272. data/sig/prototype/helpers.rbs +27 -0
  273. data/sig/prototype/node_usage.rbs +20 -0
  274. data/sig/prototype/rb.rbs +96 -0
  275. data/sig/prototype/rbi.rbs +75 -0
  276. data/sig/prototype/runtime.rbs +182 -0
  277. data/sig/rbs.rbs +21 -0
  278. data/sig/rdoc/rbs.rbs +67 -0
  279. data/sig/repository.rbs +85 -0
  280. data/sig/resolver/constant_resolver.rbs +92 -0
  281. data/sig/resolver/context.rbs +34 -0
  282. data/sig/resolver/type_name_resolver.rbs +35 -0
  283. data/sig/shims/bundler.rbs +38 -0
  284. data/sig/shims/enumerable.rbs +5 -0
  285. data/sig/shims/rubygems.rbs +19 -0
  286. data/sig/sorter.rbs +41 -0
  287. data/sig/substitution.rbs +48 -0
  288. data/sig/subtractor.rbs +37 -0
  289. data/sig/test/errors.rbs +52 -0
  290. data/sig/test/guranteed.rbs +9 -0
  291. data/sig/test/type_check.rbs +19 -0
  292. data/sig/test.rbs +82 -0
  293. data/sig/type_alias_dependency.rbs +53 -0
  294. data/sig/type_alias_regularity.rbs +98 -0
  295. data/sig/type_param.rbs +110 -0
  296. data/sig/typename.rbs +79 -0
  297. data/sig/types.rbs +579 -0
  298. data/sig/unit_test/convertibles.rbs +154 -0
  299. data/sig/unit_test/spy.rbs +30 -0
  300. data/sig/unit_test/type_assertions.rbs +196 -0
  301. data/sig/unit_test/with_aliases.rbs +136 -0
  302. data/sig/use_map.rbs +35 -0
  303. data/sig/util.rbs +9 -0
  304. data/sig/validator.rbs +63 -0
  305. data/sig/variance_calculator.rbs +87 -0
  306. data/sig/vendorer.rbs +51 -0
  307. data/sig/version.rbs +3 -0
  308. data/sig/visitor.rbs +47 -0
  309. data/sig/writer.rbs +127 -0
  310. data/src/constants.c +153 -0
  311. data/src/ruby_objs.c +795 -0
  312. data/src/util/rbs_constant_pool.c +342 -0
  313. data/stdlib/abbrev/0/abbrev.rbs +66 -0
  314. data/stdlib/abbrev/0/array.rbs +26 -0
  315. data/stdlib/base64/0/base64.rbs +355 -0
  316. data/stdlib/benchmark/0/benchmark.rbs +452 -0
  317. data/stdlib/bigdecimal/0/big_decimal.rbs +1629 -0
  318. data/stdlib/bigdecimal-math/0/big_math.rbs +119 -0
  319. data/stdlib/bigdecimal-math/0/manifest.yaml +2 -0
  320. data/stdlib/cgi/0/core.rbs +1285 -0
  321. data/stdlib/cgi/0/manifest.yaml +3 -0
  322. data/stdlib/coverage/0/coverage.rbs +263 -0
  323. data/stdlib/csv/0/csv.rbs +3776 -0
  324. data/stdlib/csv/0/manifest.yaml +3 -0
  325. data/stdlib/date/0/date.rbs +1585 -0
  326. data/stdlib/date/0/date_time.rbs +616 -0
  327. data/stdlib/date/0/time.rbs +26 -0
  328. data/stdlib/dbm/0/dbm.rbs +421 -0
  329. data/stdlib/delegate/0/delegator.rbs +184 -0
  330. data/stdlib/delegate/0/kernel.rbs +47 -0
  331. data/stdlib/delegate/0/simple_delegator.rbs +96 -0
  332. data/stdlib/did_you_mean/0/did_you_mean.rbs +343 -0
  333. data/stdlib/digest/0/digest.rbs +577 -0
  334. data/stdlib/erb/0/erb.rbs +532 -0
  335. data/stdlib/etc/0/etc.rbs +865 -0
  336. data/stdlib/fileutils/0/fileutils.rbs +1734 -0
  337. data/stdlib/find/0/find.rbs +49 -0
  338. data/stdlib/forwardable/0/forwardable.rbs +268 -0
  339. data/stdlib/io-console/0/io-console.rbs +414 -0
  340. data/stdlib/ipaddr/0/ipaddr.rbs +428 -0
  341. data/stdlib/json/0/json.rbs +1916 -0
  342. data/stdlib/kconv/0/kconv.rbs +166 -0
  343. data/stdlib/logger/0/formatter.rbs +45 -0
  344. data/stdlib/logger/0/log_device.rbs +100 -0
  345. data/stdlib/logger/0/logger.rbs +796 -0
  346. data/stdlib/logger/0/manifest.yaml +2 -0
  347. data/stdlib/logger/0/period.rbs +17 -0
  348. data/stdlib/logger/0/severity.rbs +34 -0
  349. data/stdlib/minitest/0/kernel.rbs +42 -0
  350. data/stdlib/minitest/0/minitest/abstract_reporter.rbs +52 -0
  351. data/stdlib/minitest/0/minitest/assertion.rbs +17 -0
  352. data/stdlib/minitest/0/minitest/assertions.rbs +590 -0
  353. data/stdlib/minitest/0/minitest/backtrace_filter.rbs +23 -0
  354. data/stdlib/minitest/0/minitest/bench_spec.rbs +102 -0
  355. data/stdlib/minitest/0/minitest/benchmark.rbs +259 -0
  356. data/stdlib/minitest/0/minitest/composite_reporter.rbs +25 -0
  357. data/stdlib/minitest/0/minitest/compress.rbs +13 -0
  358. data/stdlib/minitest/0/minitest/error_on_warning.rbs +3 -0
  359. data/stdlib/minitest/0/minitest/expectation.rbs +2 -0
  360. data/stdlib/minitest/0/minitest/expectations.rbs +21 -0
  361. data/stdlib/minitest/0/minitest/guard.rbs +64 -0
  362. data/stdlib/minitest/0/minitest/mock.rbs +64 -0
  363. data/stdlib/minitest/0/minitest/parallel/executor.rbs +46 -0
  364. data/stdlib/minitest/0/minitest/parallel/test/class_methods.rbs +5 -0
  365. data/stdlib/minitest/0/minitest/parallel/test.rbs +3 -0
  366. data/stdlib/minitest/0/minitest/parallel.rbs +2 -0
  367. data/stdlib/minitest/0/minitest/pride_io.rbs +62 -0
  368. data/stdlib/minitest/0/minitest/pride_lol.rbs +19 -0
  369. data/stdlib/minitest/0/minitest/progress_reporter.rbs +11 -0
  370. data/stdlib/minitest/0/minitest/reportable.rbs +53 -0
  371. data/stdlib/minitest/0/minitest/reporter.rbs +5 -0
  372. data/stdlib/minitest/0/minitest/result.rbs +28 -0
  373. data/stdlib/minitest/0/minitest/runnable.rbs +163 -0
  374. data/stdlib/minitest/0/minitest/skip.rbs +6 -0
  375. data/stdlib/minitest/0/minitest/spec/dsl/instance_methods.rbs +48 -0
  376. data/stdlib/minitest/0/minitest/spec/dsl.rbs +129 -0
  377. data/stdlib/minitest/0/minitest/spec.rbs +11 -0
  378. data/stdlib/minitest/0/minitest/statistics_reporter.rbs +81 -0
  379. data/stdlib/minitest/0/minitest/summary_reporter.rbs +18 -0
  380. data/stdlib/minitest/0/minitest/test/lifecycle_hooks.rbs +92 -0
  381. data/stdlib/minitest/0/minitest/test.rbs +69 -0
  382. data/stdlib/minitest/0/minitest/unexpected_error.rbs +12 -0
  383. data/stdlib/minitest/0/minitest/unexpected_warning.rbs +6 -0
  384. data/stdlib/minitest/0/minitest/unit/test_case.rbs +3 -0
  385. data/stdlib/minitest/0/minitest/unit.rbs +4 -0
  386. data/stdlib/minitest/0/minitest.rbs +115 -0
  387. data/stdlib/monitor/0/monitor.rbs +363 -0
  388. data/stdlib/mutex_m/0/mutex_m.rbs +104 -0
  389. data/stdlib/net-http/0/manifest.yaml +3 -0
  390. data/stdlib/net-http/0/net-http.rbs +5552 -0
  391. data/stdlib/net-protocol/0/manifest.yaml +2 -0
  392. data/stdlib/net-protocol/0/net-protocol.rbs +56 -0
  393. data/stdlib/net-smtp/0/manifest.yaml +2 -0
  394. data/stdlib/net-smtp/0/net-smtp.rbs +55 -0
  395. data/stdlib/nkf/0/nkf.rbs +402 -0
  396. data/stdlib/objspace/0/objspace.rbs +487 -0
  397. data/stdlib/observable/0/observable.rbs +217 -0
  398. data/stdlib/open-uri/0/manifest.yaml +4 -0
  399. data/stdlib/open-uri/0/open-uri.rbs +393 -0
  400. data/stdlib/open3/0/open3.rbs +147 -0
  401. data/stdlib/openssl/0/manifest.yaml +3 -0
  402. data/stdlib/openssl/0/openssl.rbs +12113 -0
  403. data/stdlib/optparse/0/optparse.rbs +1725 -0
  404. data/stdlib/pathname/0/pathname.rbs +1406 -0
  405. data/stdlib/pp/0/manifest.yaml +2 -0
  406. data/stdlib/pp/0/pp.rbs +300 -0
  407. data/stdlib/prettyprint/0/prettyprint.rbs +383 -0
  408. data/stdlib/pstore/0/pstore.rbs +603 -0
  409. data/stdlib/psych/0/core_ext.rbs +12 -0
  410. data/stdlib/psych/0/dbm.rbs +237 -0
  411. data/stdlib/psych/0/manifest.yaml +3 -0
  412. data/stdlib/psych/0/psych.rbs +402 -0
  413. data/stdlib/psych/0/store.rbs +59 -0
  414. data/stdlib/pty/0/pty.rbs +237 -0
  415. data/stdlib/rdoc/0/code_object.rbs +51 -0
  416. data/stdlib/rdoc/0/comment.rbs +59 -0
  417. data/stdlib/rdoc/0/context.rbs +153 -0
  418. data/stdlib/rdoc/0/markup.rbs +117 -0
  419. data/stdlib/rdoc/0/parser.rbs +56 -0
  420. data/stdlib/rdoc/0/rdoc.rbs +391 -0
  421. data/stdlib/rdoc/0/ri.rbs +17 -0
  422. data/stdlib/rdoc/0/store.rbs +48 -0
  423. data/stdlib/rdoc/0/top_level.rbs +97 -0
  424. data/stdlib/resolv/0/manifest.yaml +3 -0
  425. data/stdlib/resolv/0/resolv.rbs +1830 -0
  426. data/stdlib/ripper/0/ripper.rbs +1648 -0
  427. data/stdlib/securerandom/0/securerandom.rbs +62 -0
  428. data/stdlib/shellwords/0/shellwords.rbs +229 -0
  429. data/stdlib/singleton/0/singleton.rbs +131 -0
  430. data/stdlib/socket/0/addrinfo.rbs +666 -0
  431. data/stdlib/socket/0/basic_socket.rbs +590 -0
  432. data/stdlib/socket/0/constants.rbs +2295 -0
  433. data/stdlib/socket/0/ip_socket.rbs +92 -0
  434. data/stdlib/socket/0/socket.rbs +4157 -0
  435. data/stdlib/socket/0/socket_error.rbs +5 -0
  436. data/stdlib/socket/0/tcp_server.rbs +192 -0
  437. data/stdlib/socket/0/tcp_socket.rbs +79 -0
  438. data/stdlib/socket/0/udp_socket.rbs +133 -0
  439. data/stdlib/socket/0/unix_server.rbs +169 -0
  440. data/stdlib/socket/0/unix_socket.rbs +172 -0
  441. data/stdlib/stringio/0/stringio.rbs +567 -0
  442. data/stdlib/strscan/0/string_scanner.rbs +1627 -0
  443. data/stdlib/tempfile/0/tempfile.rbs +479 -0
  444. data/stdlib/time/0/time.rbs +432 -0
  445. data/stdlib/timeout/0/timeout.rbs +81 -0
  446. data/stdlib/tmpdir/0/tmpdir.rbs +69 -0
  447. data/stdlib/tsort/0/cyclic.rbs +5 -0
  448. data/stdlib/tsort/0/interfaces.rbs +20 -0
  449. data/stdlib/tsort/0/tsort.rbs +409 -0
  450. data/stdlib/uri/0/common.rbs +582 -0
  451. data/stdlib/uri/0/file.rbs +118 -0
  452. data/stdlib/uri/0/ftp.rbs +13 -0
  453. data/stdlib/uri/0/generic.rbs +1108 -0
  454. data/stdlib/uri/0/http.rbs +104 -0
  455. data/stdlib/uri/0/https.rbs +14 -0
  456. data/stdlib/uri/0/ldap.rbs +230 -0
  457. data/stdlib/uri/0/ldaps.rbs +14 -0
  458. data/stdlib/uri/0/mailto.rbs +92 -0
  459. data/stdlib/uri/0/rfc2396_parser.rbs +189 -0
  460. data/stdlib/uri/0/rfc3986_parser.rbs +2 -0
  461. data/stdlib/uri/0/ws.rbs +13 -0
  462. data/stdlib/uri/0/wss.rbs +9 -0
  463. data/stdlib/yaml/0/manifest.yaml +2 -0
  464. data/stdlib/yaml/0/yaml.rbs +1 -0
  465. data/stdlib/zlib/0/buf_error.rbs +10 -0
  466. data/stdlib/zlib/0/data_error.rbs +10 -0
  467. data/stdlib/zlib/0/deflate.rbs +210 -0
  468. data/stdlib/zlib/0/error.rbs +20 -0
  469. data/stdlib/zlib/0/gzip_file/crc_error.rbs +12 -0
  470. data/stdlib/zlib/0/gzip_file/error.rbs +23 -0
  471. data/stdlib/zlib/0/gzip_file/length_error.rbs +12 -0
  472. data/stdlib/zlib/0/gzip_file/no_footer.rbs +11 -0
  473. data/stdlib/zlib/0/gzip_file.rbs +156 -0
  474. data/stdlib/zlib/0/gzip_reader.rbs +293 -0
  475. data/stdlib/zlib/0/gzip_writer.rbs +166 -0
  476. data/stdlib/zlib/0/inflate.rbs +180 -0
  477. data/stdlib/zlib/0/mem_error.rbs +10 -0
  478. data/stdlib/zlib/0/need_dict.rbs +13 -0
  479. data/stdlib/zlib/0/stream_end.rbs +11 -0
  480. data/stdlib/zlib/0/stream_error.rbs +11 -0
  481. data/stdlib/zlib/0/version_error.rbs +11 -0
  482. data/stdlib/zlib/0/zlib.rbs +449 -0
  483. data/stdlib/zlib/0/zstream.rbs +200 -0
  484. metadata +532 -0
data/src/ruby_objs.c ADDED
@@ -0,0 +1,795 @@
1
+ /*----------------------------------------------------------------------------*/
2
+ /* This file is generated by the templates/template.rb script and should not */
3
+ /* be modified manually. */
4
+ /* To change the template see */
5
+ /* templates/src/ruby_objs.c.erb */
6
+ /*----------------------------------------------------------------------------*/
7
+
8
+ #include "rbs_extension.h"
9
+
10
+ #ifdef RB_PASS_KEYWORDS
11
+ // Ruby 2.7 or later
12
+ #define CLASS_NEW_INSTANCE(klass, argc, argv)\
13
+ rb_class_new_instance_kw(argc, argv, klass, RB_PASS_KEYWORDS)
14
+ #else
15
+ // Ruby 2.6
16
+ #define CLASS_NEW_INSTANCE(receiver, argc, argv)\
17
+ rb_class_new_instance(argc, argv, receiver)
18
+ #endif
19
+
20
+ VALUE rbs_ast_annotation(VALUE string, VALUE location) {
21
+ VALUE _init_kwargs = rb_hash_new();
22
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("string")), string);
23
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
24
+
25
+ return CLASS_NEW_INSTANCE(
26
+ RBS_AST_Annotation,
27
+ 1,
28
+ &_init_kwargs
29
+ );
30
+ }
31
+
32
+ VALUE rbs_ast_comment(VALUE string, VALUE location) {
33
+ VALUE _init_kwargs = rb_hash_new();
34
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("string")), string);
35
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
36
+
37
+ return CLASS_NEW_INSTANCE(
38
+ RBS_AST_Comment,
39
+ 1,
40
+ &_init_kwargs
41
+ );
42
+ }
43
+
44
+ VALUE rbs_ast_decl_class(VALUE name, VALUE type_params, VALUE super_class, VALUE members, VALUE annotations, VALUE location, VALUE comment) {
45
+ VALUE _init_kwargs = rb_hash_new();
46
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
47
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("type_params")), type_params);
48
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("super_class")), super_class);
49
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("members")), members);
50
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("annotations")), annotations);
51
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
52
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("comment")), comment);
53
+
54
+ return CLASS_NEW_INSTANCE(
55
+ RBS_AST_Declarations_Class,
56
+ 1,
57
+ &_init_kwargs
58
+ );
59
+ }
60
+
61
+ VALUE rbs_ast_decl_class_super(VALUE name, VALUE args, VALUE location) {
62
+ VALUE _init_kwargs = rb_hash_new();
63
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
64
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("args")), args);
65
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
66
+
67
+ return CLASS_NEW_INSTANCE(
68
+ RBS_AST_Declarations_Class_Super,
69
+ 1,
70
+ &_init_kwargs
71
+ );
72
+ }
73
+
74
+ VALUE rbs_ast_decl_class_alias(VALUE new_name, VALUE old_name, VALUE location, VALUE comment) {
75
+ VALUE _init_kwargs = rb_hash_new();
76
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("new_name")), new_name);
77
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("old_name")), old_name);
78
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
79
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("comment")), comment);
80
+
81
+ return CLASS_NEW_INSTANCE(
82
+ RBS_AST_Declarations_ClassAlias,
83
+ 1,
84
+ &_init_kwargs
85
+ );
86
+ }
87
+
88
+ VALUE rbs_ast_decl_constant(VALUE name, VALUE type, VALUE location, VALUE comment) {
89
+ VALUE _init_kwargs = rb_hash_new();
90
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
91
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("type")), type);
92
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
93
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("comment")), comment);
94
+
95
+ return CLASS_NEW_INSTANCE(
96
+ RBS_AST_Declarations_Constant,
97
+ 1,
98
+ &_init_kwargs
99
+ );
100
+ }
101
+
102
+ VALUE rbs_ast_decl_global(VALUE name, VALUE type, VALUE location, VALUE comment) {
103
+ VALUE _init_kwargs = rb_hash_new();
104
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
105
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("type")), type);
106
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
107
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("comment")), comment);
108
+
109
+ return CLASS_NEW_INSTANCE(
110
+ RBS_AST_Declarations_Global,
111
+ 1,
112
+ &_init_kwargs
113
+ );
114
+ }
115
+
116
+ VALUE rbs_ast_decl_interface(VALUE name, VALUE type_params, VALUE members, VALUE annotations, VALUE location, VALUE comment) {
117
+ VALUE _init_kwargs = rb_hash_new();
118
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
119
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("type_params")), type_params);
120
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("members")), members);
121
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("annotations")), annotations);
122
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
123
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("comment")), comment);
124
+
125
+ return CLASS_NEW_INSTANCE(
126
+ RBS_AST_Declarations_Interface,
127
+ 1,
128
+ &_init_kwargs
129
+ );
130
+ }
131
+
132
+ VALUE rbs_ast_decl_module(VALUE name, VALUE type_params, VALUE self_types, VALUE members, VALUE annotations, VALUE location, VALUE comment) {
133
+ VALUE _init_kwargs = rb_hash_new();
134
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
135
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("type_params")), type_params);
136
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("self_types")), self_types);
137
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("members")), members);
138
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("annotations")), annotations);
139
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
140
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("comment")), comment);
141
+
142
+ return CLASS_NEW_INSTANCE(
143
+ RBS_AST_Declarations_Module,
144
+ 1,
145
+ &_init_kwargs
146
+ );
147
+ }
148
+
149
+ VALUE rbs_ast_decl_module_self(VALUE name, VALUE args, VALUE location) {
150
+ VALUE _init_kwargs = rb_hash_new();
151
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
152
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("args")), args);
153
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
154
+
155
+ return CLASS_NEW_INSTANCE(
156
+ RBS_AST_Declarations_Module_Self,
157
+ 1,
158
+ &_init_kwargs
159
+ );
160
+ }
161
+
162
+ VALUE rbs_ast_decl_module_alias(VALUE new_name, VALUE old_name, VALUE location, VALUE comment) {
163
+ VALUE _init_kwargs = rb_hash_new();
164
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("new_name")), new_name);
165
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("old_name")), old_name);
166
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
167
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("comment")), comment);
168
+
169
+ return CLASS_NEW_INSTANCE(
170
+ RBS_AST_Declarations_ModuleAlias,
171
+ 1,
172
+ &_init_kwargs
173
+ );
174
+ }
175
+
176
+ VALUE rbs_ast_decl_type_alias(VALUE name, VALUE type_params, VALUE type, VALUE annotations, VALUE location, VALUE comment) {
177
+ VALUE _init_kwargs = rb_hash_new();
178
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
179
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("type_params")), type_params);
180
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("type")), type);
181
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("annotations")), annotations);
182
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
183
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("comment")), comment);
184
+
185
+ return CLASS_NEW_INSTANCE(
186
+ RBS_AST_Declarations_TypeAlias,
187
+ 1,
188
+ &_init_kwargs
189
+ );
190
+ }
191
+
192
+ VALUE rbs_ast_directives_use(VALUE clauses, VALUE location) {
193
+ VALUE _init_kwargs = rb_hash_new();
194
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("clauses")), clauses);
195
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
196
+
197
+ return CLASS_NEW_INSTANCE(
198
+ RBS_AST_Directives_Use,
199
+ 1,
200
+ &_init_kwargs
201
+ );
202
+ }
203
+
204
+ VALUE rbs_ast_directives_use_single_clause(VALUE type_name, VALUE new_name, VALUE location) {
205
+ VALUE _init_kwargs = rb_hash_new();
206
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("type_name")), type_name);
207
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("new_name")), new_name);
208
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
209
+
210
+ return CLASS_NEW_INSTANCE(
211
+ RBS_AST_Directives_Use_SingleClause,
212
+ 1,
213
+ &_init_kwargs
214
+ );
215
+ }
216
+
217
+ VALUE rbs_ast_directives_use_wildcard_clause(VALUE namespace, VALUE location) {
218
+ VALUE _init_kwargs = rb_hash_new();
219
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("namespace")), namespace);
220
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
221
+
222
+ return CLASS_NEW_INSTANCE(
223
+ RBS_AST_Directives_Use_WildcardClause,
224
+ 1,
225
+ &_init_kwargs
226
+ );
227
+ }
228
+
229
+ VALUE rbs_ast_members_alias(VALUE new_name, VALUE old_name, VALUE kind, VALUE annotations, VALUE location, VALUE comment) {
230
+ VALUE _init_kwargs = rb_hash_new();
231
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("new_name")), new_name);
232
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("old_name")), old_name);
233
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("kind")), kind);
234
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("annotations")), annotations);
235
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
236
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("comment")), comment);
237
+
238
+ return CLASS_NEW_INSTANCE(
239
+ RBS_AST_Members_Alias,
240
+ 1,
241
+ &_init_kwargs
242
+ );
243
+ }
244
+
245
+ VALUE rbs_ast_members_attr_accessor(VALUE name, VALUE type, VALUE ivar_name, VALUE kind, VALUE annotations, VALUE location, VALUE comment, VALUE visibility) {
246
+ VALUE _init_kwargs = rb_hash_new();
247
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
248
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("type")), type);
249
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("ivar_name")), ivar_name);
250
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("kind")), kind);
251
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("annotations")), annotations);
252
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
253
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("comment")), comment);
254
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("visibility")), visibility);
255
+
256
+ return CLASS_NEW_INSTANCE(
257
+ RBS_AST_Members_AttrAccessor,
258
+ 1,
259
+ &_init_kwargs
260
+ );
261
+ }
262
+
263
+ VALUE rbs_ast_members_attr_reader(VALUE name, VALUE type, VALUE ivar_name, VALUE kind, VALUE annotations, VALUE location, VALUE comment, VALUE visibility) {
264
+ VALUE _init_kwargs = rb_hash_new();
265
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
266
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("type")), type);
267
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("ivar_name")), ivar_name);
268
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("kind")), kind);
269
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("annotations")), annotations);
270
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
271
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("comment")), comment);
272
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("visibility")), visibility);
273
+
274
+ return CLASS_NEW_INSTANCE(
275
+ RBS_AST_Members_AttrReader,
276
+ 1,
277
+ &_init_kwargs
278
+ );
279
+ }
280
+
281
+ VALUE rbs_ast_members_attr_writer(VALUE name, VALUE type, VALUE ivar_name, VALUE kind, VALUE annotations, VALUE location, VALUE comment, VALUE visibility) {
282
+ VALUE _init_kwargs = rb_hash_new();
283
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
284
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("type")), type);
285
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("ivar_name")), ivar_name);
286
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("kind")), kind);
287
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("annotations")), annotations);
288
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
289
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("comment")), comment);
290
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("visibility")), visibility);
291
+
292
+ return CLASS_NEW_INSTANCE(
293
+ RBS_AST_Members_AttrWriter,
294
+ 1,
295
+ &_init_kwargs
296
+ );
297
+ }
298
+
299
+ VALUE rbs_ast_members_class_instance_variable(VALUE name, VALUE type, VALUE location, VALUE comment) {
300
+ VALUE _init_kwargs = rb_hash_new();
301
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
302
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("type")), type);
303
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
304
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("comment")), comment);
305
+
306
+ return CLASS_NEW_INSTANCE(
307
+ RBS_AST_Members_ClassInstanceVariable,
308
+ 1,
309
+ &_init_kwargs
310
+ );
311
+ }
312
+
313
+ VALUE rbs_ast_members_class_variable(VALUE name, VALUE type, VALUE location, VALUE comment) {
314
+ VALUE _init_kwargs = rb_hash_new();
315
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
316
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("type")), type);
317
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
318
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("comment")), comment);
319
+
320
+ return CLASS_NEW_INSTANCE(
321
+ RBS_AST_Members_ClassVariable,
322
+ 1,
323
+ &_init_kwargs
324
+ );
325
+ }
326
+
327
+ VALUE rbs_ast_members_extend(VALUE name, VALUE args, VALUE annotations, VALUE location, VALUE comment) {
328
+ VALUE _init_kwargs = rb_hash_new();
329
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
330
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("args")), args);
331
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("annotations")), annotations);
332
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
333
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("comment")), comment);
334
+
335
+ return CLASS_NEW_INSTANCE(
336
+ RBS_AST_Members_Extend,
337
+ 1,
338
+ &_init_kwargs
339
+ );
340
+ }
341
+
342
+ VALUE rbs_ast_members_include(VALUE name, VALUE args, VALUE annotations, VALUE location, VALUE comment) {
343
+ VALUE _init_kwargs = rb_hash_new();
344
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
345
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("args")), args);
346
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("annotations")), annotations);
347
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
348
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("comment")), comment);
349
+
350
+ return CLASS_NEW_INSTANCE(
351
+ RBS_AST_Members_Include,
352
+ 1,
353
+ &_init_kwargs
354
+ );
355
+ }
356
+
357
+ VALUE rbs_ast_members_instance_variable(VALUE name, VALUE type, VALUE location, VALUE comment) {
358
+ VALUE _init_kwargs = rb_hash_new();
359
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
360
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("type")), type);
361
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
362
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("comment")), comment);
363
+
364
+ return CLASS_NEW_INSTANCE(
365
+ RBS_AST_Members_InstanceVariable,
366
+ 1,
367
+ &_init_kwargs
368
+ );
369
+ }
370
+
371
+ VALUE rbs_ast_members_method_definition(VALUE name, VALUE kind, VALUE overloads, VALUE annotations, VALUE location, VALUE comment, VALUE overloading, VALUE visibility) {
372
+ VALUE _init_kwargs = rb_hash_new();
373
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
374
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("kind")), kind);
375
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("overloads")), overloads);
376
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("annotations")), annotations);
377
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
378
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("comment")), comment);
379
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("overloading")), overloading);
380
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("visibility")), visibility);
381
+
382
+ return CLASS_NEW_INSTANCE(
383
+ RBS_AST_Members_MethodDefinition,
384
+ 1,
385
+ &_init_kwargs
386
+ );
387
+ }
388
+
389
+ VALUE rbs_ast_members_method_definition_overload(VALUE annotations, VALUE method_type) {
390
+ VALUE _init_kwargs = rb_hash_new();
391
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("annotations")), annotations);
392
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("method_type")), method_type);
393
+
394
+ return CLASS_NEW_INSTANCE(
395
+ RBS_AST_Members_MethodDefinition_Overload,
396
+ 1,
397
+ &_init_kwargs
398
+ );
399
+ }
400
+
401
+ VALUE rbs_ast_members_prepend(VALUE name, VALUE args, VALUE annotations, VALUE location, VALUE comment) {
402
+ VALUE _init_kwargs = rb_hash_new();
403
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
404
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("args")), args);
405
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("annotations")), annotations);
406
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
407
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("comment")), comment);
408
+
409
+ return CLASS_NEW_INSTANCE(
410
+ RBS_AST_Members_Prepend,
411
+ 1,
412
+ &_init_kwargs
413
+ );
414
+ }
415
+
416
+ VALUE rbs_ast_members_private(VALUE location) {
417
+ VALUE _init_kwargs = rb_hash_new();
418
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
419
+
420
+ return CLASS_NEW_INSTANCE(
421
+ RBS_AST_Members_Private,
422
+ 1,
423
+ &_init_kwargs
424
+ );
425
+ }
426
+
427
+ VALUE rbs_ast_members_public(VALUE location) {
428
+ VALUE _init_kwargs = rb_hash_new();
429
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
430
+
431
+ return CLASS_NEW_INSTANCE(
432
+ RBS_AST_Members_Public,
433
+ 1,
434
+ &_init_kwargs
435
+ );
436
+ }
437
+
438
+ VALUE rbs_ast_type_param(VALUE name, VALUE variance, VALUE upper_bound, VALUE default_type, VALUE unchecked, VALUE location) {
439
+ VALUE _init_kwargs = rb_hash_new();
440
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
441
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("variance")), variance);
442
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("upper_bound")), upper_bound);
443
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("default_type")), default_type);
444
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("unchecked")), unchecked);
445
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
446
+
447
+ return CLASS_NEW_INSTANCE(
448
+ RBS_AST_TypeParam,
449
+ 1,
450
+ &_init_kwargs
451
+ );
452
+ }
453
+
454
+ VALUE rbs_method_type(VALUE type_params, VALUE type, VALUE block, VALUE location) {
455
+ VALUE _init_kwargs = rb_hash_new();
456
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("type_params")), type_params);
457
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("type")), type);
458
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("block")), block);
459
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
460
+
461
+ return CLASS_NEW_INSTANCE(
462
+ RBS_MethodType,
463
+ 1,
464
+ &_init_kwargs
465
+ );
466
+ }
467
+
468
+ VALUE rbs_namespace(VALUE path, VALUE absolute) {
469
+ VALUE _init_kwargs = rb_hash_new();
470
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("path")), path);
471
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("absolute")), absolute);
472
+
473
+ return CLASS_NEW_INSTANCE(
474
+ RBS_Namespace,
475
+ 1,
476
+ &_init_kwargs
477
+ );
478
+ }
479
+
480
+ VALUE rbs_type_name(VALUE namespace, VALUE name) {
481
+ VALUE _init_kwargs = rb_hash_new();
482
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("namespace")), namespace);
483
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
484
+
485
+ return CLASS_NEW_INSTANCE(
486
+ RBS_TypeName,
487
+ 1,
488
+ &_init_kwargs
489
+ );
490
+ }
491
+
492
+ VALUE rbs_alias(VALUE name, VALUE args, VALUE location) {
493
+ VALUE _init_kwargs = rb_hash_new();
494
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
495
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("args")), args);
496
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
497
+
498
+ return CLASS_NEW_INSTANCE(
499
+ RBS_Types_Alias,
500
+ 1,
501
+ &_init_kwargs
502
+ );
503
+ }
504
+
505
+ VALUE rbs_bases_any(VALUE todo, VALUE location) {
506
+ VALUE _init_kwargs = rb_hash_new();
507
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("todo")), todo);
508
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
509
+
510
+ return CLASS_NEW_INSTANCE(
511
+ RBS_Types_Bases_Any,
512
+ 1,
513
+ &_init_kwargs
514
+ );
515
+ }
516
+
517
+ VALUE rbs_bases_bool(VALUE location) {
518
+ VALUE _init_kwargs = rb_hash_new();
519
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
520
+
521
+ return CLASS_NEW_INSTANCE(
522
+ RBS_Types_Bases_Bool,
523
+ 1,
524
+ &_init_kwargs
525
+ );
526
+ }
527
+
528
+ VALUE rbs_bases_bottom(VALUE location) {
529
+ VALUE _init_kwargs = rb_hash_new();
530
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
531
+
532
+ return CLASS_NEW_INSTANCE(
533
+ RBS_Types_Bases_Bottom,
534
+ 1,
535
+ &_init_kwargs
536
+ );
537
+ }
538
+
539
+ VALUE rbs_bases_class(VALUE location) {
540
+ VALUE _init_kwargs = rb_hash_new();
541
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
542
+
543
+ return CLASS_NEW_INSTANCE(
544
+ RBS_Types_Bases_Class,
545
+ 1,
546
+ &_init_kwargs
547
+ );
548
+ }
549
+
550
+ VALUE rbs_bases_instance(VALUE location) {
551
+ VALUE _init_kwargs = rb_hash_new();
552
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
553
+
554
+ return CLASS_NEW_INSTANCE(
555
+ RBS_Types_Bases_Instance,
556
+ 1,
557
+ &_init_kwargs
558
+ );
559
+ }
560
+
561
+ VALUE rbs_bases_nil(VALUE location) {
562
+ VALUE _init_kwargs = rb_hash_new();
563
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
564
+
565
+ return CLASS_NEW_INSTANCE(
566
+ RBS_Types_Bases_Nil,
567
+ 1,
568
+ &_init_kwargs
569
+ );
570
+ }
571
+
572
+ VALUE rbs_bases_self(VALUE location) {
573
+ VALUE _init_kwargs = rb_hash_new();
574
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
575
+
576
+ return CLASS_NEW_INSTANCE(
577
+ RBS_Types_Bases_Self,
578
+ 1,
579
+ &_init_kwargs
580
+ );
581
+ }
582
+
583
+ VALUE rbs_bases_top(VALUE location) {
584
+ VALUE _init_kwargs = rb_hash_new();
585
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
586
+
587
+ return CLASS_NEW_INSTANCE(
588
+ RBS_Types_Bases_Top,
589
+ 1,
590
+ &_init_kwargs
591
+ );
592
+ }
593
+
594
+ VALUE rbs_bases_void(VALUE location) {
595
+ VALUE _init_kwargs = rb_hash_new();
596
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
597
+
598
+ return CLASS_NEW_INSTANCE(
599
+ RBS_Types_Bases_Void,
600
+ 1,
601
+ &_init_kwargs
602
+ );
603
+ }
604
+
605
+ VALUE rbs_block(VALUE type, VALUE required, VALUE self_type) {
606
+ VALUE _init_kwargs = rb_hash_new();
607
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("type")), type);
608
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("required")), required);
609
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("self_type")), self_type);
610
+
611
+ return CLASS_NEW_INSTANCE(
612
+ RBS_Types_Block,
613
+ 1,
614
+ &_init_kwargs
615
+ );
616
+ }
617
+
618
+ VALUE rbs_class_instance(VALUE name, VALUE args, VALUE location) {
619
+ VALUE _init_kwargs = rb_hash_new();
620
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
621
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("args")), args);
622
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
623
+
624
+ return CLASS_NEW_INSTANCE(
625
+ RBS_Types_ClassInstance,
626
+ 1,
627
+ &_init_kwargs
628
+ );
629
+ }
630
+
631
+ VALUE rbs_class_singleton(VALUE name, VALUE location) {
632
+ VALUE _init_kwargs = rb_hash_new();
633
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
634
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
635
+
636
+ return CLASS_NEW_INSTANCE(
637
+ RBS_Types_ClassSingleton,
638
+ 1,
639
+ &_init_kwargs
640
+ );
641
+ }
642
+
643
+ VALUE rbs_function(VALUE required_positionals, VALUE optional_positionals, VALUE rest_positionals, VALUE trailing_positionals, VALUE required_keywords, VALUE optional_keywords, VALUE rest_keywords, VALUE return_type) {
644
+ VALUE _init_kwargs = rb_hash_new();
645
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("required_positionals")), required_positionals);
646
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("optional_positionals")), optional_positionals);
647
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("rest_positionals")), rest_positionals);
648
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("trailing_positionals")), trailing_positionals);
649
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("required_keywords")), required_keywords);
650
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("optional_keywords")), optional_keywords);
651
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("rest_keywords")), rest_keywords);
652
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("return_type")), return_type);
653
+
654
+ return CLASS_NEW_INSTANCE(
655
+ RBS_Types_Function,
656
+ 1,
657
+ &_init_kwargs
658
+ );
659
+ }
660
+
661
+ VALUE rbs_function_param(VALUE type, VALUE name, VALUE location) {
662
+ VALUE _init_kwargs = rb_hash_new();
663
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("type")), type);
664
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
665
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
666
+
667
+ return CLASS_NEW_INSTANCE(
668
+ RBS_Types_Function_Param,
669
+ 1,
670
+ &_init_kwargs
671
+ );
672
+ }
673
+
674
+ VALUE rbs_interface(VALUE name, VALUE args, VALUE location) {
675
+ VALUE _init_kwargs = rb_hash_new();
676
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
677
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("args")), args);
678
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
679
+
680
+ return CLASS_NEW_INSTANCE(
681
+ RBS_Types_Interface,
682
+ 1,
683
+ &_init_kwargs
684
+ );
685
+ }
686
+
687
+ VALUE rbs_intersection(VALUE types, VALUE location) {
688
+ VALUE _init_kwargs = rb_hash_new();
689
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("types")), types);
690
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
691
+
692
+ return CLASS_NEW_INSTANCE(
693
+ RBS_Types_Intersection,
694
+ 1,
695
+ &_init_kwargs
696
+ );
697
+ }
698
+
699
+ VALUE rbs_literal(VALUE literal, VALUE location) {
700
+ VALUE _init_kwargs = rb_hash_new();
701
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("literal")), literal);
702
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
703
+
704
+ return CLASS_NEW_INSTANCE(
705
+ RBS_Types_Literal,
706
+ 1,
707
+ &_init_kwargs
708
+ );
709
+ }
710
+
711
+ VALUE rbs_optional(VALUE type, VALUE location) {
712
+ VALUE _init_kwargs = rb_hash_new();
713
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("type")), type);
714
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
715
+
716
+ return CLASS_NEW_INSTANCE(
717
+ RBS_Types_Optional,
718
+ 1,
719
+ &_init_kwargs
720
+ );
721
+ }
722
+
723
+ VALUE rbs_proc(VALUE type, VALUE block, VALUE location, VALUE self_type) {
724
+ VALUE _init_kwargs = rb_hash_new();
725
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("type")), type);
726
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("block")), block);
727
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
728
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("self_type")), self_type);
729
+
730
+ return CLASS_NEW_INSTANCE(
731
+ RBS_Types_Proc,
732
+ 1,
733
+ &_init_kwargs
734
+ );
735
+ }
736
+
737
+ VALUE rbs_record(VALUE all_fields, VALUE location) {
738
+ VALUE _init_kwargs = rb_hash_new();
739
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("all_fields")), all_fields);
740
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
741
+
742
+ return CLASS_NEW_INSTANCE(
743
+ RBS_Types_Record,
744
+ 1,
745
+ &_init_kwargs
746
+ );
747
+ }
748
+
749
+ VALUE rbs_tuple(VALUE types, VALUE location) {
750
+ VALUE _init_kwargs = rb_hash_new();
751
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("types")), types);
752
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
753
+
754
+ return CLASS_NEW_INSTANCE(
755
+ RBS_Types_Tuple,
756
+ 1,
757
+ &_init_kwargs
758
+ );
759
+ }
760
+
761
+ VALUE rbs_union(VALUE types, VALUE location) {
762
+ VALUE _init_kwargs = rb_hash_new();
763
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("types")), types);
764
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
765
+
766
+ return CLASS_NEW_INSTANCE(
767
+ RBS_Types_Union,
768
+ 1,
769
+ &_init_kwargs
770
+ );
771
+ }
772
+
773
+ VALUE rbs_untyped_function(VALUE return_type) {
774
+ VALUE _init_kwargs = rb_hash_new();
775
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("return_type")), return_type);
776
+
777
+ return CLASS_NEW_INSTANCE(
778
+ RBS_Types_UntypedFunction,
779
+ 1,
780
+ &_init_kwargs
781
+ );
782
+ }
783
+
784
+ VALUE rbs_variable(VALUE name, VALUE location) {
785
+ VALUE _init_kwargs = rb_hash_new();
786
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("name")), name);
787
+ rb_hash_aset(_init_kwargs, ID2SYM(rb_intern("location")), location);
788
+
789
+ return CLASS_NEW_INSTANCE(
790
+ RBS_Types_Variable,
791
+ 1,
792
+ &_init_kwargs
793
+ );
794
+ }
795
+