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
@@ -0,0 +1,567 @@
1
+ # <!-- rdoc-file=ext/stringio/stringio.c -->
2
+ # IO streams for strings, with access similar to [IO](rdoc-ref:IO); see
3
+ # [IO](rdoc-ref:IO).
4
+ #
5
+ # ### About the Examples
6
+ #
7
+ # Examples on this page assume that StringIO has been required:
8
+ #
9
+ # require 'stringio'
10
+ #
11
+ class StringIO
12
+ # <!--
13
+ # rdoc-file=ext/stringio/stringio.c
14
+ # - StringIO.new(string = '', mode = 'r+') -> new_stringio
15
+ # -->
16
+ # Note that `mode` defaults to `'r'` if `string` is frozen.
17
+ #
18
+ # Returns a new StringIO instance formed from `string` and `mode`; see [Access
19
+ # Modes](rdoc-ref:File@Access+Modes):
20
+ #
21
+ # strio = StringIO.new # => #<StringIO>
22
+ # strio.close
23
+ #
24
+ # The instance should be closed when no longer needed.
25
+ #
26
+ # Related: StringIO.open (accepts block; closes automatically).
27
+ #
28
+ def initialize: (?String string, ?String? mode) -> void
29
+
30
+ # <!--
31
+ # rdoc-file=ext/stringio/stringio.c
32
+ # - StringIO.open(string = '', mode = 'r+') {|strio| ... }
33
+ # -->
34
+ # Note that `mode` defaults to `'r'` if `string` is frozen.
35
+ #
36
+ # Creates a new StringIO instance formed from `string` and `mode`; see [Access
37
+ # Modes](rdoc-ref:File@Access+Modes).
38
+ #
39
+ # With no block, returns the new instance:
40
+ #
41
+ # strio = StringIO.open # => #<StringIO>
42
+ #
43
+ # With a block, calls the block with the new instance and returns the block's
44
+ # value; closes the instance on block exit.
45
+ #
46
+ # StringIO.open {|strio| p strio }
47
+ # # => #<StringIO>
48
+ #
49
+ # Related: StringIO.new.
50
+ #
51
+ def self.open: [U] (?String string, ?String? mode) { (StringIO arg) -> U } -> U
52
+
53
+ def <<: (untyped arg0) -> self
54
+
55
+ # <!--
56
+ # rdoc-file=ext/stringio/stringio.c
57
+ # - binmode -> self
58
+ # -->
59
+ # Sets the data mode in `self` to binary mode; see [Data
60
+ # Mode](rdoc-ref:File@Data+Mode).
61
+ #
62
+ def binmode: () -> self
63
+
64
+ # <!--
65
+ # rdoc-file=ext/stringio/stringio.c
66
+ # - close -> nil
67
+ # -->
68
+ # Closes `self` for both reading and writing.
69
+ #
70
+ # Raises IOError if reading or writing is attempted.
71
+ #
72
+ # Related: StringIO#close_read, StringIO#close_write.
73
+ #
74
+ def close: () -> nil
75
+
76
+ # <!--
77
+ # rdoc-file=ext/stringio/stringio.c
78
+ # - close_read -> nil
79
+ # -->
80
+ # Closes `self` for reading; closed-write setting remains unchanged.
81
+ #
82
+ # Raises IOError if reading is attempted.
83
+ #
84
+ # Related: StringIO#close, StringIO#close_write.
85
+ #
86
+ def close_read: () -> nil
87
+
88
+ # <!--
89
+ # rdoc-file=ext/stringio/stringio.c
90
+ # - close_write -> nil
91
+ # -->
92
+ # Closes `self` for writing; closed-read setting remains unchanged.
93
+ #
94
+ # Raises IOError if writing is attempted.
95
+ #
96
+ # Related: StringIO#close, StringIO#close_read.
97
+ #
98
+ def close_write: () -> nil
99
+
100
+ # <!--
101
+ # rdoc-file=ext/stringio/stringio.c
102
+ # - closed? -> true or false
103
+ # -->
104
+ # Returns `true` if `self` is closed for both reading and writing, `false`
105
+ # otherwise.
106
+ #
107
+ def closed?: () -> bool
108
+
109
+ # <!--
110
+ # rdoc-file=ext/stringio/stringio.c
111
+ # - closed_read? -> true or false
112
+ # -->
113
+ # Returns `true` if `self` is closed for reading, `false` otherwise.
114
+ #
115
+ def closed_read?: () -> bool
116
+
117
+ # <!--
118
+ # rdoc-file=ext/stringio/stringio.c
119
+ # - closed_write? -> true or false
120
+ # -->
121
+ # Returns `true` if `self` is closed for writing, `false` otherwise.
122
+ #
123
+ def closed_write?: () -> bool
124
+
125
+ # <!--
126
+ # rdoc-file=ext/stringio/stringio.c
127
+ # - each_line(sep = $/, chomp: false) {|line| ... } -> self
128
+ # - each_line(limit, chomp: false) {|line| ... } -> self
129
+ # - each_line(sep, limit, chomp: false) {|line| ... } -> self
130
+ # -->
131
+ # Calls the block with each remaining line read from the stream; does nothing if
132
+ # already at end-of-file; returns `self`. See [Line IO](rdoc-ref:IO@Line+IO).
133
+ #
134
+ def each: (?String sep, ?Integer limit, ?chomp: boolish) { (String) -> untyped } -> self
135
+ | (?String sep, ?Integer limit, ?chomp: boolish) -> ::Enumerator[String, self]
136
+
137
+ # <!--
138
+ # rdoc-file=ext/stringio/stringio.c
139
+ # - each_byte {|byte| ... } -> self
140
+ # -->
141
+ # With a block given, calls the block with each remaining byte in the stream;
142
+ # see [Byte IO](rdoc-ref:IO@Byte+IO).
143
+ #
144
+ # With no block given, returns an enumerator.
145
+ #
146
+ def each_byte: () { (Integer arg0) -> untyped } -> self
147
+ | () -> ::Enumerator[Integer, self]
148
+
149
+ # <!--
150
+ # rdoc-file=ext/stringio/stringio.c
151
+ # - each_char {|c| ... } -> self
152
+ # -->
153
+ # With a block given, calls the block with each remaining character in the
154
+ # stream; see [Character IO](rdoc-ref:IO@Character+IO).
155
+ #
156
+ # With no block given, returns an enumerator.
157
+ #
158
+ def each_char: () { (String arg0) -> untyped } -> self
159
+ | () -> ::Enumerator[String, self]
160
+
161
+ # <!--
162
+ # rdoc-file=ext/stringio/stringio.c
163
+ # - each_codepoint {|codepoint| ... } -> self
164
+ # -->
165
+ # With a block given, calls the block with each remaining codepoint in the
166
+ # stream; see [Codepoint IO](rdoc-ref:IO@Codepoint+IO).
167
+ #
168
+ # With no block given, returns an enumerator.
169
+ #
170
+ def each_codepoint: () { (Integer arg0) -> untyped } -> self
171
+ | () -> ::Enumerator[Integer, self]
172
+
173
+ # <!--
174
+ # rdoc-file=ext/stringio/stringio.c
175
+ # - eof? -> true or false
176
+ # -->
177
+ # Returns `true` if positioned at end-of-stream, `false` otherwise; see
178
+ # [Position](rdoc-ref:IO@Position).
179
+ #
180
+ # Raises IOError if the stream is not opened for reading.
181
+ #
182
+ def eof: () -> bool
183
+
184
+ # <!--
185
+ # rdoc-file=ext/stringio/stringio.c
186
+ # - fcntl(*args)
187
+ # -->
188
+ # Raises NotImplementedError.
189
+ #
190
+ def fcntl: (Integer integer_cmd, String | Integer arg) -> Integer
191
+
192
+ # <!--
193
+ # rdoc-file=ext/stringio/stringio.c
194
+ # - fileno()
195
+ # -->
196
+ # Returns `nil`. Just for compatibility to IO.
197
+ #
198
+ def fileno: () -> nil
199
+
200
+ # <!--
201
+ # rdoc-file=ext/stringio/stringio.c
202
+ # - flush()
203
+ # -->
204
+ # Returns an object itself. Just for compatibility to IO.
205
+ #
206
+ def flush: () -> self
207
+
208
+ # <!--
209
+ # rdoc-file=ext/stringio/stringio.c
210
+ # - fsync()
211
+ # -->
212
+ # Returns 0. Just for compatibility to IO.
213
+ #
214
+ def fsync: () -> Integer?
215
+
216
+ # <!--
217
+ # rdoc-file=ext/stringio/stringio.c
218
+ # - getbyte -> byte or nil
219
+ # -->
220
+ # Reads and returns the next 8-bit byte from the stream; see [Byte
221
+ # IO](rdoc-ref:IO@Byte+IO).
222
+ #
223
+ def getbyte: () -> Integer?
224
+
225
+ # <!--
226
+ # rdoc-file=ext/stringio/stringio.c
227
+ # - getc -> character or nil
228
+ # -->
229
+ # Reads and returns the next character from the stream; see [Character
230
+ # IO](rdoc-ref:IO@Character+IO).
231
+ #
232
+ def getc: () -> String?
233
+
234
+ # <!--
235
+ # rdoc-file=ext/stringio/stringio.c
236
+ # - gets(sep = $/, chomp: false) -> string or nil
237
+ # - gets(limit, chomp: false) -> string or nil
238
+ # - gets(sep, limit, chomp: false) -> string or nil
239
+ # -->
240
+ # Reads and returns a line from the stream; assigns the return value to `$_`;
241
+ # see [Line IO](rdoc-ref:IO@Line+IO).
242
+ #
243
+ def gets: (?String sep, ?Integer limit, ?chomp: boolish) -> String?
244
+
245
+ # <!--
246
+ # rdoc-file=ext/stringio/stringio.c
247
+ # - strio.internal_encoding => encoding
248
+ # -->
249
+ # Returns the Encoding of the internal string if conversion is specified.
250
+ # Otherwise returns `nil`.
251
+ #
252
+ def internal_encoding: () -> Encoding
253
+
254
+ # <!--
255
+ # rdoc-file=ext/stringio/stringio.c
256
+ # - strio.external_encoding => encoding
257
+ # -->
258
+ # Returns the Encoding object that represents the encoding of the file. If the
259
+ # stream is write mode and no encoding is specified, returns `nil`.
260
+ #
261
+ def external_encoding: () -> Encoding
262
+
263
+ # <!--
264
+ # rdoc-file=ext/stringio/stringio.c
265
+ # - isatty()
266
+ # -->
267
+ # Returns `false`. Just for compatibility to IO.
268
+ #
269
+ def isatty: () -> bool
270
+
271
+ # <!--
272
+ # rdoc-file=ext/stringio/stringio.c
273
+ # - lineno -> current_line_number
274
+ # -->
275
+ # Returns the current line number in `self`; see [Line
276
+ # Number](rdoc-ref:IO@Line+Number).
277
+ #
278
+ def lineno: () -> Integer
279
+
280
+ # <!--
281
+ # rdoc-file=ext/stringio/stringio.c
282
+ # - lineno = new_line_number -> new_line_number
283
+ # -->
284
+ # Sets the current line number in `self` to the given `new_line_number`; see
285
+ # [Line Number](rdoc-ref:IO@Line+Number).
286
+ #
287
+ def lineno=: (Integer arg0) -> Integer
288
+
289
+ # <!--
290
+ # rdoc-file=ext/stringio/stringio.c
291
+ # - pid()
292
+ # -->
293
+ # Returns `nil`. Just for compatibility to IO.
294
+ #
295
+ def pid: () -> nil
296
+
297
+ # <!--
298
+ # rdoc-file=ext/stringio/stringio.c
299
+ # - pos -> stream_position
300
+ # -->
301
+ # Returns the current position (in bytes); see [Position](rdoc-ref:IO@Position).
302
+ #
303
+ def pos: () -> Integer
304
+
305
+ # <!--
306
+ # rdoc-file=ext/stringio/stringio.c
307
+ # - pos = new_position -> new_position
308
+ # -->
309
+ # Sets the current position (in bytes); see [Position](rdoc-ref:IO@Position).
310
+ #
311
+ def pos=: (Integer arg0) -> Integer
312
+
313
+ def print: (*untyped arg0) -> nil
314
+
315
+ def printf: (String format_string, *untyped arg0) -> nil
316
+
317
+ # <!--
318
+ # rdoc-file=ext/stringio/stringio.c
319
+ # - strio.putc(obj) -> obj
320
+ # -->
321
+ # See IO#putc.
322
+ #
323
+ def putc: (Numeric | String arg0) -> untyped
324
+
325
+ def puts: (*untyped arg0) -> nil
326
+
327
+ # <!--
328
+ # rdoc-file=ext/stringio/stringio.c
329
+ # - strio.read([length [, outbuf]]) -> string, outbuf, or nil
330
+ # -->
331
+ # See IO#read.
332
+ #
333
+ def read: (?int? length, ?string outbuf) -> String?
334
+
335
+ def read_nonblock: (int len, ?string buf) -> String
336
+
337
+ def readbyte: () -> Integer
338
+
339
+ def readchar: () -> String
340
+
341
+ def readline: (?String sep, ?Integer limit) -> String
342
+
343
+ # <!--
344
+ # rdoc-file=ext/stringio/stringio.c
345
+ # - strio.readlines(sep=$/, chomp: false) -> array
346
+ # - strio.readlines(limit, chomp: false) -> array
347
+ # - strio.readlines(sep, limit, chomp: false) -> array
348
+ # -->
349
+ # See IO#readlines.
350
+ #
351
+ def readlines: (?String sep, ?Integer limit, ?chomp: boolish) -> ::Array[String]
352
+
353
+ def readpartial: (int maxlen, ?string outbuf) -> String
354
+
355
+ # <!--
356
+ # rdoc-file=ext/stringio/stringio.c
357
+ # - reopen(other, mode = 'r+') -> self
358
+ # -->
359
+ # Reinitializes the stream with the given `other` (string or StringIO) and
360
+ # `mode`; see IO.new:
361
+ #
362
+ # StringIO.open('foo') do |strio|
363
+ # p strio.string
364
+ # strio.reopen('bar')
365
+ # p strio.string
366
+ # other_strio = StringIO.new('baz')
367
+ # strio.reopen(other_strio)
368
+ # p strio.string
369
+ # other_strio.close
370
+ # end
371
+ #
372
+ # Output:
373
+ #
374
+ # "foo"
375
+ # "bar"
376
+ # "baz"
377
+ #
378
+ def reopen: (StringIO other) -> self
379
+ | (String other, ?String mode_str) -> self
380
+
381
+ # <!--
382
+ # rdoc-file=ext/stringio/stringio.c
383
+ # - rewind -> 0
384
+ # -->
385
+ # Sets the current position and line number to zero; see
386
+ # [Position](rdoc-ref:IO@Position) and [Line Number](rdoc-ref:IO@Line+Number).
387
+ #
388
+ def rewind: () -> Integer
389
+
390
+ # <!--
391
+ # rdoc-file=ext/stringio/stringio.c
392
+ # - seek(offset, whence = SEEK_SET) -> 0
393
+ # -->
394
+ # Sets the current position to the given integer `offset` (in bytes), with
395
+ # respect to a given constant `whence`; see [Position](rdoc-ref:IO@Position).
396
+ #
397
+ def seek: (Integer amount, ?Integer whence) -> Integer
398
+
399
+ # <!--
400
+ # rdoc-file=ext/stringio/stringio.c
401
+ # - strio.set_encoding(ext_enc, [int_enc[, opt]]) => strio
402
+ # -->
403
+ # Specify the encoding of the StringIO as *ext_enc*. Use the default external
404
+ # encoding if *ext_enc* is nil. 2nd argument *int_enc* and optional hash *opt*
405
+ # argument are ignored; they are for API compatibility to IO.
406
+ #
407
+ def set_encoding: (?String | Encoding ext_or_ext_int_enc) -> self
408
+ | (?String | Encoding ext_or_ext_int_enc, ?String | Encoding int_enc) -> self
409
+
410
+ # <!--
411
+ # rdoc-file=ext/stringio/stringio.c
412
+ # - string -> string
413
+ # -->
414
+ # Returns underlying string:
415
+ #
416
+ # StringIO.open('foo') do |strio|
417
+ # p strio.string
418
+ # strio.string = 'bar'
419
+ # p strio.string
420
+ # end
421
+ #
422
+ # Output:
423
+ #
424
+ # "foo"
425
+ # "bar"
426
+ #
427
+ # Related: StringIO#string= (assigns the underlying string).
428
+ #
429
+ def string: () -> String
430
+
431
+ # <!--
432
+ # rdoc-file=ext/stringio/stringio.c
433
+ # - string = other_string -> other_string
434
+ # -->
435
+ # Assigns the underlying string as `other_string`, and sets position to zero;
436
+ # returns `other_string`:
437
+ #
438
+ # StringIO.open('foo') do |strio|
439
+ # p strio.string
440
+ # strio.string = 'bar'
441
+ # p strio.string
442
+ # end
443
+ #
444
+ # Output:
445
+ #
446
+ # "foo"
447
+ # "bar"
448
+ #
449
+ # Related: StringIO#string (returns the underlying string).
450
+ #
451
+ def string=: (String str) -> String
452
+
453
+ # <!--
454
+ # rdoc-file=ext/stringio/stringio.c
455
+ # - strio.length -> integer
456
+ # - strio.size -> integer
457
+ # -->
458
+ # Returns the size of the buffer string.
459
+ #
460
+ def size: () -> Integer
461
+
462
+ # <!--
463
+ # rdoc-file=ext/stringio/stringio.c
464
+ # - sync -> true
465
+ # -->
466
+ # Returns `true`; implemented only for compatibility with other stream classes.
467
+ #
468
+ def sync: () -> bool
469
+
470
+ # <!--
471
+ # rdoc-file=ext/stringio/stringio.c
472
+ # - sync=(p1)
473
+ # -->
474
+ # Returns the argument unchanged. Just for compatibility to IO.
475
+ #
476
+ def sync=: (boolish) -> bool
477
+
478
+ def sysread: (Integer maxlen, String outbuf) -> String
479
+
480
+ def syswrite: (String arg0) -> Integer
481
+
482
+ # <!--
483
+ # rdoc-file=ext/stringio/stringio.c
484
+ # - pos -> stream_position
485
+ # -->
486
+ # Returns the current position (in bytes); see [Position](rdoc-ref:IO@Position).
487
+ #
488
+ def tell: () -> Integer
489
+
490
+ # <!--
491
+ # rdoc-file=ext/stringio/stringio.c
492
+ # - strio.truncate(integer) -> 0
493
+ # -->
494
+ # Truncates the buffer string to at most *integer* bytes. The stream must be
495
+ # opened for writing.
496
+ #
497
+ def truncate: (Integer) -> 0
498
+
499
+ # <!-- rdoc-file=ext/stringio/stringio.c -->
500
+ # Returns `false`. Just for compatibility to IO.
501
+ #
502
+ def tty?: () -> bool
503
+
504
+ # <!--
505
+ # rdoc-file=ext/stringio/stringio.c
506
+ # - ungetbyte(byte) -> nil
507
+ # -->
508
+ # Pushes back ("unshifts") an 8-bit byte onto the stream; see [Byte
509
+ # IO](rdoc-ref:IO@Byte+IO).
510
+ #
511
+ def ungetbyte: (String | Integer arg0) -> nil
512
+
513
+ # <!--
514
+ # rdoc-file=ext/stringio/stringio.c
515
+ # - ungetc(character) -> nil
516
+ # -->
517
+ # Pushes back ("unshifts") a character or integer onto the stream; see
518
+ # [Character IO](rdoc-ref:IO@Character+IO).
519
+ #
520
+ def ungetc: (String arg0) -> nil
521
+
522
+ # <!--
523
+ # rdoc-file=ext/stringio/stringio.c
524
+ # - strio.write(string, ...) -> integer
525
+ # - strio.syswrite(string) -> integer
526
+ # -->
527
+ # Appends the given string to the underlying buffer string. The stream must be
528
+ # opened for writing. If the argument is not a string, it will be converted to
529
+ # a string using `to_s`. Returns the number of bytes written. See IO#write.
530
+ #
531
+ def write: (*_ToS) -> Integer
532
+
533
+ # This is a deprecated alias for #each_byte.
534
+ #
535
+ def bytes: () { (Integer arg0) -> untyped } -> self
536
+ | () -> ::Enumerator[Integer, self]
537
+
538
+ # This is a deprecated alias for #each_char.
539
+ #
540
+ def chars: () { (String arg0) -> untyped } -> self
541
+ | () -> ::Enumerator[String, self]
542
+
543
+ # This is a deprecated alias for #each_codepoint.
544
+ #
545
+ def codepoints: () { (Integer arg0) -> untyped } -> self
546
+ | () -> ::Enumerator[Integer, self]
547
+
548
+ # <!-- rdoc-file=ext/stringio/stringio.c -->
549
+ # Calls the block with each remaining line read from the stream; does nothing if
550
+ # already at end-of-file; returns `self`. See [Line IO](rdoc-ref:IO@Line+IO).
551
+ #
552
+ def each_line: (?String sep, ?Integer limit, ?chomp: boolish) { (String) -> untyped } -> self
553
+ | (?String sep, ?Integer limit, ?chomp: boolish) -> ::Enumerator[String, self]
554
+
555
+ # <!-- rdoc-file=ext/stringio/stringio.c -->
556
+ # Returns `true` if positioned at end-of-stream, `false` otherwise; see
557
+ # [Position](rdoc-ref:IO@Position).
558
+ #
559
+ # Raises IOError if the stream is not opened for reading.
560
+ #
561
+ def eof?: () -> bool
562
+
563
+ # This is a deprecated alias for #each_line.
564
+ #
565
+ def lines: (?String sep, ?Integer limit) { (String arg0) -> untyped } -> self
566
+ | (?String sep, ?Integer limit) -> ::Enumerator[String, self]
567
+ end