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,865 @@
1
+ # <!-- rdoc-file=ext/etc/etc.c -->
2
+ # The Etc module provides access to information typically stored in files in the
3
+ # `/etc` directory on Unix systems.
4
+ #
5
+ # The information accessible consists of the information found in the
6
+ # `/etc/passwd` and `/etc/group` files, plus information about the system's
7
+ # temporary directory (`/tmp`) and configuration directory (`/etc`).
8
+ #
9
+ # The Etc module provides a more reliable way to access information about the
10
+ # logged in user than environment variables such as +$USER+.
11
+ #
12
+ # **Example:**
13
+ #
14
+ # require 'etc'
15
+ #
16
+ # login = Etc.getlogin
17
+ # info = Etc.getpwnam(login)
18
+ # username = info.gecos.split(/,/).first
19
+ # puts "Hello #{username}, I see your login name is #{login}"
20
+ #
21
+ # Note that the methods provided by this module are not always secure. It should
22
+ # be used for informational purposes, and not for security.
23
+ #
24
+ # All operations defined in this module are class methods, so that you can
25
+ # include the Etc module into your class.
26
+ #
27
+ module Etc
28
+ # <!--
29
+ # rdoc-file=ext/etc/etc.c
30
+ # - confstr(name) -> String
31
+ # -->
32
+ # Returns system configuration variable using confstr().
33
+ #
34
+ # *name* should be a constant under `Etc` which begins with `CS_`.
35
+ #
36
+ # The return value is a string or nil. nil means no configuration-defined value.
37
+ # (confstr() returns 0 but errno is not set.)
38
+ #
39
+ # Etc.confstr(Etc::CS_PATH) #=> "/bin:/usr/bin"
40
+ #
41
+ # # GNU/Linux
42
+ # Etc.confstr(Etc::CS_GNU_LIBC_VERSION) #=> "glibc 2.18"
43
+ # Etc.confstr(Etc::CS_GNU_LIBPTHREAD_VERSION) #=> "NPTL 2.18"
44
+ #
45
+ def self?.confstr: (::Integer p1) -> ::String?
46
+
47
+ # <!--
48
+ # rdoc-file=ext/etc/etc.c
49
+ # - endgrent
50
+ # -->
51
+ # Ends the process of scanning through the `/etc/group` file begun by
52
+ # ::getgrent, and closes the file.
53
+ #
54
+ def self?.endgrent: () -> void
55
+
56
+ # <!--
57
+ # rdoc-file=ext/etc/etc.c
58
+ # - endpwent
59
+ # -->
60
+ # Ends the process of scanning through the `/etc/passwd` file begun with
61
+ # ::getpwent, and closes the file.
62
+ #
63
+ def self?.endpwent: () -> void
64
+
65
+ # <!--
66
+ # rdoc-file=ext/etc/etc.c
67
+ # - getgrent -> Etc::Group
68
+ # -->
69
+ # Returns an entry from the `/etc/group` file.
70
+ #
71
+ # The first time it is called it opens the file and returns the first entry;
72
+ # each successive call returns the next entry, or `nil` if the end of the file
73
+ # has been reached.
74
+ #
75
+ # To close the file when processing is complete, call ::endgrent.
76
+ #
77
+ # Each entry is returned as a Group struct
78
+ #
79
+ def self?.getgrent: () -> ::Etc::Group?
80
+
81
+ # <!--
82
+ # rdoc-file=ext/etc/etc.c
83
+ # - getgrgid(group_id) -> Etc::Group
84
+ # -->
85
+ # Returns information about the group with specified integer `group_id`, as
86
+ # found in `/etc/group`.
87
+ #
88
+ # The information is returned as a Group struct.
89
+ #
90
+ # See the unix manpage for `getgrgid(3)` for more detail.
91
+ #
92
+ # **Example:**
93
+ #
94
+ # Etc.getgrgid(100)
95
+ # #=> #<struct Etc::Group name="users", passwd="x", gid=100, mem=["meta", "root"]>
96
+ #
97
+ def self?.getgrgid: (?::Integer group_id) -> ::Etc::Group
98
+
99
+ # <!--
100
+ # rdoc-file=ext/etc/etc.c
101
+ # - getgrnam(name) -> Etc::Group
102
+ # -->
103
+ # Returns information about the group with specified `name`, as found in
104
+ # `/etc/group`.
105
+ #
106
+ # The information is returned as a Group struct.
107
+ #
108
+ # See the unix manpage for `getgrnam(3)` for more detail.
109
+ #
110
+ # **Example:**
111
+ #
112
+ # Etc.getgrnam('users')
113
+ # #=> #<struct Etc::Group name="users", passwd="x", gid=100, mem=["meta", "root"]>
114
+ #
115
+ def self?.getgrnam: (::String name) -> ::Etc::Group
116
+
117
+ # <!--
118
+ # rdoc-file=ext/etc/etc.c
119
+ # - getlogin -> String
120
+ # -->
121
+ # Returns the short user name of the currently logged in user. Unfortunately, it
122
+ # is often rather easy to fool ::getlogin.
123
+ #
124
+ # Avoid ::getlogin for security-related purposes.
125
+ #
126
+ # If ::getlogin fails, try ::getpwuid.
127
+ #
128
+ # See the unix manpage for `getpwuid(3)` for more detail.
129
+ #
130
+ # e.g.
131
+ # Etc.getlogin -> 'guest'
132
+ #
133
+ def self?.getlogin: () -> ::String?
134
+
135
+ # <!--
136
+ # rdoc-file=ext/etc/etc.c
137
+ # - getpwent -> Etc::Passwd
138
+ # -->
139
+ # Returns an entry from the `/etc/passwd` file.
140
+ #
141
+ # The first time it is called it opens the file and returns the first entry;
142
+ # each successive call returns the next entry, or `nil` if the end of the file
143
+ # has been reached.
144
+ #
145
+ # To close the file when processing is complete, call ::endpwent.
146
+ #
147
+ # Each entry is returned as a Passwd struct.
148
+ #
149
+ def self?.getpwent: () -> ::Etc::Passwd?
150
+
151
+ # <!--
152
+ # rdoc-file=ext/etc/etc.c
153
+ # - getpwnam(name) -> Etc::Passwd
154
+ # -->
155
+ # Returns the `/etc/passwd` information for the user with specified login
156
+ # `name`.
157
+ #
158
+ # The information is returned as a Passwd struct.
159
+ #
160
+ # See the unix manpage for `getpwnam(3)` for more detail.
161
+ #
162
+ # **Example:**
163
+ #
164
+ # Etc.getpwnam('root')
165
+ # #=> #<struct Etc::Passwd name="root", passwd="x", uid=0, gid=0, gecos="root",dir="/root", shell="/bin/bash">
166
+ #
167
+ def self?.getpwnam: (::String name) -> ::Etc::Passwd
168
+
169
+ # <!--
170
+ # rdoc-file=ext/etc/etc.c
171
+ # - getpwuid(uid) -> Etc::Passwd
172
+ # -->
173
+ # Returns the `/etc/passwd` information for the user with the given integer
174
+ # `uid`.
175
+ #
176
+ # The information is returned as a Passwd struct.
177
+ #
178
+ # If `uid` is omitted, the value from `Passwd[:uid]` is returned instead.
179
+ #
180
+ # See the unix manpage for `getpwuid(3)` for more detail.
181
+ #
182
+ # **Example:**
183
+ #
184
+ # Etc.getpwuid(0)
185
+ # #=> #<struct Etc::Passwd name="root", passwd="x", uid=0, gid=0, gecos="root",dir="/root", shell="/bin/bash">
186
+ #
187
+ def self?.getpwuid: (?::Integer uid) -> ::Etc::Passwd
188
+
189
+ # <!--
190
+ # rdoc-file=ext/etc/etc.c
191
+ # - group { |struct| block }
192
+ # - group -> Etc::Group
193
+ # -->
194
+ # Provides a convenient Ruby iterator which executes a block for each entry in
195
+ # the `/etc/group` file.
196
+ #
197
+ # The code block is passed an Group struct.
198
+ #
199
+ # See ::getgrent above for details.
200
+ #
201
+ # **Example:**
202
+ #
203
+ # require 'etc'
204
+ #
205
+ # Etc.group {|g|
206
+ # puts g.name + ": " + g.mem.join(', ')
207
+ # }
208
+ #
209
+ def self?.group: () { (::Etc::Group group) -> void } -> void
210
+ | () -> ::Etc::Group?
211
+
212
+ # <!--
213
+ # rdoc-file=ext/etc/etc.c
214
+ # - nprocessors -> Integer
215
+ # -->
216
+ # Returns the number of online processors.
217
+ #
218
+ # The result is intended as the number of processes to use all available
219
+ # processors.
220
+ #
221
+ # This method is implemented using:
222
+ # * sched_getaffinity(): Linux
223
+ # * sysconf(_SC_NPROCESSORS_ONLN): GNU/Linux, NetBSD, FreeBSD, OpenBSD,
224
+ # DragonFly BSD, OpenIndiana, Mac OS X, AIX
225
+ #
226
+ # **Example:**
227
+ #
228
+ # require 'etc'
229
+ # p Etc.nprocessors #=> 4
230
+ #
231
+ # The result might be smaller number than physical cpus especially when ruby
232
+ # process is bound to specific cpus. This is intended for getting better
233
+ # parallel processing.
234
+ #
235
+ # **Example:** (Linux)
236
+ #
237
+ # linux$ taskset 0x3 ./ruby -retc -e "p Etc.nprocessors" #=> 2
238
+ #
239
+ def self?.nprocessors: () -> ::Integer
240
+
241
+ # <!--
242
+ # rdoc-file=ext/etc/etc.c
243
+ # - passwd { |struct| block }
244
+ # - passwd -> Etc::Passwd
245
+ # -->
246
+ # Provides a convenient Ruby iterator which executes a block for each entry in
247
+ # the `/etc/passwd` file.
248
+ #
249
+ # The code block is passed an Passwd struct.
250
+ #
251
+ # See ::getpwent above for details.
252
+ #
253
+ # **Example:**
254
+ #
255
+ # require 'etc'
256
+ #
257
+ # Etc.passwd {|u|
258
+ # puts u.name + " = " + u.gecos
259
+ # }
260
+ #
261
+ def self?.passwd: () { (::Etc::Passwd passwd) -> void } -> void
262
+ | () -> ::Etc::Passwd?
263
+
264
+ # <!--
265
+ # rdoc-file=ext/etc/etc.c
266
+ # - setgrent
267
+ # -->
268
+ # Resets the process of reading the `/etc/group` file, so that the next call to
269
+ # ::getgrent will return the first entry again.
270
+ #
271
+ def self?.setgrent: () -> void
272
+
273
+ # <!--
274
+ # rdoc-file=ext/etc/etc.c
275
+ # - setpwent
276
+ # -->
277
+ # Resets the process of reading the `/etc/passwd` file, so that the next call to
278
+ # ::getpwent will return the first entry again.
279
+ #
280
+ def self?.setpwent: () -> void
281
+
282
+ # <!--
283
+ # rdoc-file=ext/etc/etc.c
284
+ # - sysconf(name) -> Integer
285
+ # -->
286
+ # Returns system configuration variable using sysconf().
287
+ #
288
+ # *name* should be a constant under `Etc` which begins with `SC_`.
289
+ #
290
+ # The return value is an integer or nil. nil means indefinite limit. (sysconf()
291
+ # returns -1 but errno is not set.)
292
+ #
293
+ # Etc.sysconf(Etc::SC_ARG_MAX) #=> 2097152
294
+ # Etc.sysconf(Etc::SC_LOGIN_NAME_MAX) #=> 256
295
+ #
296
+ def self?.sysconf: (::Integer p1) -> ::Integer
297
+
298
+ # <!--
299
+ # rdoc-file=ext/etc/etc.c
300
+ # - sysconfdir -> String
301
+ # -->
302
+ # Returns system configuration directory.
303
+ #
304
+ # This is typically `"/etc"`, but is modified by the prefix used when Ruby was
305
+ # compiled. For example, if Ruby is built and installed in `/usr/local`, returns
306
+ # `"/usr/local/etc"` on other platforms than Windows.
307
+ #
308
+ # On Windows, this always returns the directory provided by the system.
309
+ #
310
+ def self?.sysconfdir: () -> ::String
311
+
312
+ # <!--
313
+ # rdoc-file=ext/etc/etc.c
314
+ # - systmpdir -> String
315
+ # -->
316
+ # Returns system temporary directory; typically "/tmp".
317
+ #
318
+ def self?.systmpdir: () -> ::String
319
+
320
+ # <!--
321
+ # rdoc-file=ext/etc/etc.c
322
+ # - uname -> hash
323
+ # -->
324
+ # Returns the system information obtained by uname system call.
325
+ #
326
+ # The return value is a hash which has 5 keys at least:
327
+ # :sysname, :nodename, :release, :version, :machine
328
+ #
329
+ # **Example:**
330
+ #
331
+ # require 'etc'
332
+ # require 'pp'
333
+ #
334
+ # pp Etc.uname
335
+ # #=> {:sysname=>"Linux",
336
+ # # :nodename=>"boron",
337
+ # # :release=>"2.6.18-6-xen-686",
338
+ # # :version=>"#1 SMP Thu Nov 5 19:54:42 UTC 2009",
339
+ # # :machine=>"i686"}
340
+ #
341
+ def self?.uname: () -> { sysname: ::String, nodename: ::String, release: ::String, version: ::String, machine: ::String }
342
+
343
+ private
344
+
345
+ CS_PATH: Integer
346
+
347
+ CS_POSIX_V6_ILP32_OFF32_CFLAGS: Integer
348
+
349
+ CS_POSIX_V6_ILP32_OFF32_LDFLAGS: Integer
350
+
351
+ CS_POSIX_V6_ILP32_OFF32_LIBS: Integer
352
+
353
+ CS_POSIX_V6_ILP32_OFFBIG_CFLAGS: Integer
354
+
355
+ CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS: Integer
356
+
357
+ CS_POSIX_V6_ILP32_OFFBIG_LIBS: Integer
358
+
359
+ CS_POSIX_V6_LP64_OFF64_CFLAGS: Integer
360
+
361
+ CS_POSIX_V6_LP64_OFF64_LDFLAGS: Integer
362
+
363
+ CS_POSIX_V6_LP64_OFF64_LIBS: Integer
364
+
365
+ CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS: Integer
366
+
367
+ CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS: Integer
368
+
369
+ CS_POSIX_V6_LPBIG_OFFBIG_LIBS: Integer
370
+
371
+ CS_POSIX_V6_WIDTH_RESTRICTED_ENVS: Integer
372
+
373
+ PC_2_SYMLINKS: Integer
374
+
375
+ PC_ALLOC_SIZE_MIN: Integer
376
+
377
+ PC_ASYNC_IO: Integer
378
+
379
+ PC_CHOWN_RESTRICTED: Integer
380
+
381
+ PC_FILESIZEBITS: Integer
382
+
383
+ PC_LINK_MAX: Integer
384
+
385
+ PC_MAX_CANON: Integer
386
+
387
+ PC_MAX_INPUT: Integer
388
+
389
+ PC_NAME_MAX: Integer
390
+
391
+ PC_NO_TRUNC: Integer
392
+
393
+ PC_PATH_MAX: Integer
394
+
395
+ PC_PIPE_BUF: Integer
396
+
397
+ PC_PRIO_IO: Integer
398
+
399
+ PC_REC_INCR_XFER_SIZE: Integer
400
+
401
+ PC_REC_MAX_XFER_SIZE: Integer
402
+
403
+ PC_REC_MIN_XFER_SIZE: Integer
404
+
405
+ PC_REC_XFER_ALIGN: Integer
406
+
407
+ PC_SYMLINK_MAX: Integer
408
+
409
+ PC_SYNC_IO: Integer
410
+
411
+ PC_VDISABLE: Integer
412
+
413
+ SC_2_CHAR_TERM: Integer
414
+
415
+ SC_2_C_BIND: Integer
416
+
417
+ SC_2_C_DEV: Integer
418
+
419
+ SC_2_FORT_DEV: Integer
420
+
421
+ SC_2_FORT_RUN: Integer
422
+
423
+ SC_2_LOCALEDEF: Integer
424
+
425
+ SC_2_PBS: Integer
426
+
427
+ SC_2_PBS_ACCOUNTING: Integer
428
+
429
+ SC_2_PBS_CHECKPOINT: Integer
430
+
431
+ SC_2_PBS_LOCATE: Integer
432
+
433
+ SC_2_PBS_MESSAGE: Integer
434
+
435
+ SC_2_PBS_TRACK: Integer
436
+
437
+ SC_2_SW_DEV: Integer
438
+
439
+ SC_2_UPE: Integer
440
+
441
+ SC_2_VERSION: Integer
442
+
443
+ SC_ADVISORY_INFO: Integer
444
+
445
+ SC_AIO_LISTIO_MAX: Integer
446
+
447
+ SC_AIO_MAX: Integer
448
+
449
+ SC_AIO_PRIO_DELTA_MAX: Integer
450
+
451
+ SC_ARG_MAX: Integer
452
+
453
+ SC_ASYNCHRONOUS_IO: Integer
454
+
455
+ SC_ATEXIT_MAX: Integer
456
+
457
+ SC_BARRIERS: Integer
458
+
459
+ SC_BC_BASE_MAX: Integer
460
+
461
+ SC_BC_DIM_MAX: Integer
462
+
463
+ SC_BC_SCALE_MAX: Integer
464
+
465
+ SC_BC_STRING_MAX: Integer
466
+
467
+ SC_CHILD_MAX: Integer
468
+
469
+ SC_CLK_TCK: Integer
470
+
471
+ SC_CLOCK_SELECTION: Integer
472
+
473
+ SC_COLL_WEIGHTS_MAX: Integer
474
+
475
+ SC_CPUTIME: Integer
476
+
477
+ SC_DELAYTIMER_MAX: Integer
478
+
479
+ SC_EXPR_NEST_MAX: Integer
480
+
481
+ SC_FSYNC: Integer
482
+
483
+ SC_GETGR_R_SIZE_MAX: Integer
484
+
485
+ SC_GETPW_R_SIZE_MAX: Integer
486
+
487
+ SC_HOST_NAME_MAX: Integer
488
+
489
+ SC_IOV_MAX: Integer
490
+
491
+ SC_IPV6: Integer
492
+
493
+ SC_JOB_CONTROL: Integer
494
+
495
+ SC_LINE_MAX: Integer
496
+
497
+ SC_LOGIN_NAME_MAX: Integer
498
+
499
+ SC_MAPPED_FILES: Integer
500
+
501
+ SC_MEMLOCK: Integer
502
+
503
+ SC_MEMLOCK_RANGE: Integer
504
+
505
+ SC_MEMORY_PROTECTION: Integer
506
+
507
+ SC_MESSAGE_PASSING: Integer
508
+
509
+ SC_MONOTONIC_CLOCK: Integer
510
+
511
+ SC_MQ_OPEN_MAX: Integer
512
+
513
+ SC_MQ_PRIO_MAX: Integer
514
+
515
+ SC_NGROUPS_MAX: Integer
516
+
517
+ SC_NPROCESSORS_CONF: Integer
518
+
519
+ SC_NPROCESSORS_ONLN: Integer
520
+
521
+ SC_OPEN_MAX: Integer
522
+
523
+ SC_PAGESIZE: Integer
524
+
525
+ SC_PAGE_SIZE: Integer
526
+
527
+ SC_PHYS_PAGES: Integer
528
+
529
+ SC_PRIORITIZED_IO: Integer
530
+
531
+ SC_PRIORITY_SCHEDULING: Integer
532
+
533
+ SC_RAW_SOCKETS: Integer
534
+
535
+ SC_READER_WRITER_LOCKS: Integer
536
+
537
+ SC_REALTIME_SIGNALS: Integer
538
+
539
+ SC_REGEXP: Integer
540
+
541
+ SC_RE_DUP_MAX: Integer
542
+
543
+ SC_RTSIG_MAX: Integer
544
+
545
+ SC_SAVED_IDS: Integer
546
+
547
+ SC_SEMAPHORES: Integer
548
+
549
+ SC_SEM_NSEMS_MAX: Integer
550
+
551
+ SC_SEM_VALUE_MAX: Integer
552
+
553
+ SC_SHARED_MEMORY_OBJECTS: Integer
554
+
555
+ SC_SHELL: Integer
556
+
557
+ SC_SIGQUEUE_MAX: Integer
558
+
559
+ SC_SPAWN: Integer
560
+
561
+ SC_SPIN_LOCKS: Integer
562
+
563
+ SC_SPORADIC_SERVER: Integer
564
+
565
+ SC_SS_REPL_MAX: Integer
566
+
567
+ SC_STREAM_MAX: Integer
568
+
569
+ SC_SYMLOOP_MAX: Integer
570
+
571
+ SC_SYNCHRONIZED_IO: Integer
572
+
573
+ SC_THREADS: Integer
574
+
575
+ SC_THREAD_ATTR_STACKADDR: Integer
576
+
577
+ SC_THREAD_ATTR_STACKSIZE: Integer
578
+
579
+ SC_THREAD_CPUTIME: Integer
580
+
581
+ SC_THREAD_DESTRUCTOR_ITERATIONS: Integer
582
+
583
+ SC_THREAD_KEYS_MAX: Integer
584
+
585
+ SC_THREAD_PRIORITY_SCHEDULING: Integer
586
+
587
+ SC_THREAD_PRIO_INHERIT: Integer
588
+
589
+ SC_THREAD_PRIO_PROTECT: Integer
590
+
591
+ SC_THREAD_PROCESS_SHARED: Integer
592
+
593
+ SC_THREAD_SAFE_FUNCTIONS: Integer
594
+
595
+ SC_THREAD_SPORADIC_SERVER: Integer
596
+
597
+ SC_THREAD_STACK_MIN: Integer
598
+
599
+ SC_THREAD_THREADS_MAX: Integer
600
+
601
+ SC_TIMEOUTS: Integer
602
+
603
+ SC_TIMERS: Integer
604
+
605
+ SC_TIMER_MAX: Integer
606
+
607
+ SC_TRACE: Integer
608
+
609
+ SC_TRACE_EVENT_FILTER: Integer
610
+
611
+ SC_TRACE_EVENT_NAME_MAX: Integer
612
+
613
+ SC_TRACE_INHERIT: Integer
614
+
615
+ SC_TRACE_LOG: Integer
616
+
617
+ SC_TRACE_NAME_MAX: Integer
618
+
619
+ SC_TRACE_SYS_MAX: Integer
620
+
621
+ SC_TRACE_USER_EVENT_MAX: Integer
622
+
623
+ SC_TTY_NAME_MAX: Integer
624
+
625
+ SC_TYPED_MEMORY_OBJECTS: Integer
626
+
627
+ SC_TZNAME_MAX: Integer
628
+
629
+ SC_V6_ILP32_OFF32: Integer
630
+
631
+ SC_V6_ILP32_OFFBIG: Integer
632
+
633
+ SC_V6_LP64_OFF64: Integer
634
+
635
+ SC_V6_LPBIG_OFFBIG: Integer
636
+
637
+ SC_VERSION: Integer
638
+
639
+ SC_XOPEN_CRYPT: Integer
640
+
641
+ SC_XOPEN_ENH_I18N: Integer
642
+
643
+ SC_XOPEN_REALTIME: Integer
644
+
645
+ SC_XOPEN_REALTIME_THREADS: Integer
646
+
647
+ SC_XOPEN_SHM: Integer
648
+
649
+ SC_XOPEN_STREAMS: Integer
650
+
651
+ SC_XOPEN_UNIX: Integer
652
+
653
+ SC_XOPEN_VERSION: Integer
654
+
655
+ # <!-- rdoc-file=ext/etc/etc.c -->
656
+ # The version
657
+ #
658
+ VERSION: String
659
+
660
+ # <!-- rdoc-file=ext/etc/etc.c -->
661
+ # Group is a placeholder Struct for user group database on Unix systems.
662
+ #
663
+ # ### The struct contains the following members
664
+ #
665
+ # name
666
+ # : contains the name of the group as a String.
667
+ #
668
+ # passwd
669
+ # : contains the encrypted password as a String. An `'x'` is returned if
670
+ # password access to the group is not available; an empty string is returned
671
+ # if no password is needed to obtain membership of the group. This is
672
+ # system-dependent.
673
+ #
674
+ # gid
675
+ # : contains the group's numeric ID as an integer.
676
+ #
677
+ # mem
678
+ # : is an Array of Strings containing the short login names of the members of
679
+ # the group.
680
+ #
681
+ class Group < Struct[untyped]
682
+ extend Enumerable[untyped]
683
+
684
+ def self.[]: (*untyped) -> untyped
685
+
686
+ # <!--
687
+ # rdoc-file=ext/etc/etc.c
688
+ # - Etc::Group.each { |group| block } -> Etc::Group
689
+ # - Etc::Group.each -> Enumerator
690
+ # -->
691
+ # Iterates for each entry in the `/etc/group` file if a block is given.
692
+ #
693
+ # If no block is given, returns the Enumerator.
694
+ #
695
+ # The code block is passed a Group struct.
696
+ #
697
+ # **Example:**
698
+ #
699
+ # require 'etc'
700
+ #
701
+ # Etc::Group.each {|g|
702
+ # puts g.name + ": " + g.mem.join(', ')
703
+ # }
704
+ #
705
+ # Etc::Group.collect {|g| g.name}
706
+ # Etc::Group.select {|g| !g.mem.empty?}
707
+ #
708
+ def self.each: () -> untyped
709
+
710
+ def self.inspect: () -> untyped
711
+
712
+ def self.keyword_init?: () -> untyped
713
+
714
+ def self.members: () -> untyped
715
+
716
+ def self.new: (*untyped) -> untyped
717
+
718
+ def gid: () -> Integer
719
+
720
+ def gid=: (Integer new_gid) -> void
721
+
722
+ def mem: () -> Array[String]
723
+
724
+ def mem=: (Array[String] new_mem) -> void
725
+
726
+ def name: () -> String
727
+
728
+ def name=: (String new_name) -> void
729
+
730
+ def passwd: () -> String
731
+
732
+ def passwd=: (String new_passwd) -> void
733
+ end
734
+
735
+ # <!-- rdoc-file=ext/etc/etc.c -->
736
+ # Passwd is a placeholder Struct for user database on Unix systems.
737
+ #
738
+ # ### The struct contains the following members
739
+ #
740
+ # name
741
+ # : contains the short login name of the user as a String.
742
+ #
743
+ # passwd
744
+ # : contains the encrypted password of the user as a String. an `'x'` is
745
+ # returned if shadow passwords are in use. An `'*'` is returned if the user
746
+ # cannot log in using a password.
747
+ #
748
+ # uid
749
+ # : contains the integer user ID (uid) of the user.
750
+ #
751
+ # gid
752
+ # : contains the integer group ID (gid) of the user's primary group.
753
+ #
754
+ # dir
755
+ # : contains the path to the home directory of the user as a String.
756
+ #
757
+ # shell
758
+ # : contains the path to the login shell of the user as a String.
759
+ #
760
+ #
761
+ # ### The following members below are system-dependent
762
+ #
763
+ # gecos
764
+ # : contains a longer String description of the user, such as a full name.
765
+ # Some Unix systems provide structured information in the gecos field, but
766
+ # this is system-dependent.
767
+ #
768
+ # change
769
+ # : password change time(integer).
770
+ #
771
+ # quota
772
+ # : quota value(integer).
773
+ #
774
+ # age
775
+ # : password age(integer).
776
+ #
777
+ # class
778
+ # : user access class(string).
779
+ #
780
+ # comment
781
+ # : comment(string).
782
+ #
783
+ # expire
784
+ # : account expiration time(integer).
785
+ #
786
+ class Passwd < Struct[untyped]
787
+ extend Enumerable[untyped]
788
+
789
+ def self.[]: (*untyped) -> untyped
790
+
791
+ # <!--
792
+ # rdoc-file=ext/etc/etc.c
793
+ # - Etc::Passwd.each { |struct| block } -> Etc::Passwd
794
+ # - Etc::Passwd.each -> Enumerator
795
+ # -->
796
+ # Iterates for each entry in the `/etc/passwd` file if a block is given.
797
+ #
798
+ # If no block is given, returns the Enumerator.
799
+ #
800
+ # The code block is passed an Passwd struct.
801
+ #
802
+ # See Etc.getpwent above for details.
803
+ #
804
+ # **Example:**
805
+ #
806
+ # require 'etc'
807
+ #
808
+ # Etc::Passwd.each {|u|
809
+ # puts u.name + " = " + u.gecos
810
+ # }
811
+ #
812
+ # Etc::Passwd.collect {|u| u.gecos}
813
+ # Etc::Passwd.collect {|u| u.gecos}
814
+ #
815
+ def self.each: () -> untyped
816
+
817
+ def self.inspect: () -> untyped
818
+
819
+ def self.keyword_init?: () -> untyped
820
+
821
+ def self.members: () -> untyped
822
+
823
+ def self.new: (*untyped) -> untyped
824
+
825
+ def change: () -> Integer
826
+
827
+ def change=: (Integer new_change) -> void
828
+
829
+ def dir: () -> String
830
+
831
+ def dir=: (String new_dir) -> void
832
+
833
+ def expire: () -> Integer
834
+
835
+ def expire=: (Integer new_expire) -> void
836
+
837
+ def gecos: () -> String
838
+
839
+ def gecos=: (String new_gecos) -> void
840
+
841
+ def gid: () -> Integer
842
+
843
+ def gid=: (Integer new_gid) -> void
844
+
845
+ def name: () -> String
846
+
847
+ def name=: (String new_name) -> void
848
+
849
+ def passwd: () -> String
850
+
851
+ def passwd=: (String new_passwd) -> void
852
+
853
+ def shell: () -> String
854
+
855
+ def shell=: (String new_shell) -> void
856
+
857
+ def uclass: () -> String
858
+
859
+ def uclass=: (String new_uclass) -> void
860
+
861
+ def uid: () -> Integer
862
+
863
+ def uid=: (Integer new_uid) -> void
864
+ end
865
+ end