rbs 3.6.1 → 3.9.5

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 (268) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/comments.yml +2 -2
  3. data/.github/workflows/dependabot.yml +1 -1
  4. data/.github/workflows/ruby.yml +34 -10
  5. data/.github/workflows/windows.yml +20 -3
  6. data/.gitignore +1 -0
  7. data/.rubocop.yml +26 -1
  8. data/CHANGELOG.md +241 -0
  9. data/Rakefile +54 -4
  10. data/config.yml +317 -0
  11. data/core/array.rbs +1756 -1591
  12. data/core/basic_object.rbs +38 -35
  13. data/core/comparable.rbs +1 -1
  14. data/core/complex.rbs +166 -94
  15. data/core/data.rbs +2 -2
  16. data/core/dir.rbs +2 -18
  17. data/core/encoding.rbs +12 -32
  18. data/core/enumerable.rbs +270 -266
  19. data/core/enumerator.rbs +14 -4
  20. data/core/env.rbs +1 -1
  21. data/core/errno.rbs +33 -16
  22. data/core/errors.rbs +6 -2
  23. data/core/exception.rbs +342 -167
  24. data/core/fiber.rbs +3 -2
  25. data/core/file.rbs +26 -75
  26. data/core/float.rbs +125 -72
  27. data/core/gc.rbs +158 -42
  28. data/core/hash.rbs +122 -143
  29. data/core/integer.rbs +79 -50
  30. data/core/io/buffer.rbs +49 -43
  31. data/core/io.rbs +108 -151
  32. data/core/kernel.rbs +341 -209
  33. data/core/match_data.rbs +76 -2
  34. data/core/math.rbs +0 -36
  35. data/core/method.rbs +2 -2
  36. data/core/module.rbs +32 -27
  37. data/core/nil_class.rbs +2 -2
  38. data/core/numeric.rbs +101 -104
  39. data/core/object.rbs +1 -5
  40. data/core/object_space/weak_key_map.rbs +3 -4
  41. data/core/object_space.rbs +3 -3
  42. data/core/proc.rbs +82 -14
  43. data/core/process.rbs +110 -58
  44. data/core/ractor.rbs +57 -4
  45. data/core/range.rbs +114 -87
  46. data/core/rational.rbs +0 -2
  47. data/core/rbs/unnamed/argf.rbs +237 -36
  48. data/core/rbs/unnamed/env_class.rbs +35 -53
  49. data/core/rbs/unnamed/random.rbs +1 -2
  50. data/core/regexp.rbs +10 -56
  51. data/core/ruby_vm.rbs +88 -9
  52. data/core/rubygems/config_file.rbs +3 -0
  53. data/core/rubygems/errors.rbs +3 -6
  54. data/core/rubygems/platform.rbs +0 -9
  55. data/core/rubygems/rubygems.rbs +3 -6
  56. data/core/rubygems/version.rbs +8 -8
  57. data/core/set.rbs +4 -16
  58. data/core/string.rbs +271 -264
  59. data/core/struct.rbs +6 -18
  60. data/core/symbol.rbs +14 -21
  61. data/core/thread.rbs +32 -35
  62. data/core/time.rbs +131 -50
  63. data/core/trace_point.rbs +124 -113
  64. data/core/true_class.rbs +0 -1
  65. data/core/unbound_method.rbs +1 -1
  66. data/core/warning.rbs +9 -2
  67. data/docs/architecture.md +1 -1
  68. data/docs/syntax.md +17 -10
  69. data/ext/rbs_extension/extconf.rb +11 -0
  70. data/ext/rbs_extension/location.c +61 -29
  71. data/ext/rbs_extension/location.h +4 -3
  72. data/ext/rbs_extension/main.c +23 -1
  73. data/ext/rbs_extension/parser.c +506 -517
  74. data/ext/rbs_extension/parserstate.c +109 -30
  75. data/ext/rbs_extension/parserstate.h +6 -4
  76. data/ext/rbs_extension/rbs_extension.h +1 -10
  77. data/{ext/rbs_extension → include/rbs}/constants.h +21 -19
  78. data/include/rbs/ruby_objs.h +72 -0
  79. data/include/rbs/util/rbs_constant_pool.h +219 -0
  80. data/include/rbs.h +7 -0
  81. data/lib/rbs/annotate/annotations.rb +3 -3
  82. data/lib/rbs/annotate/rdoc_source.rb +2 -2
  83. data/lib/rbs/ast/declarations.rb +9 -4
  84. data/lib/rbs/ast/directives.rb +10 -0
  85. data/lib/rbs/ast/members.rb +2 -0
  86. data/lib/rbs/ast/type_param.rb +2 -12
  87. data/lib/rbs/cli/diff.rb +3 -3
  88. data/lib/rbs/cli/validate.rb +2 -1
  89. data/lib/rbs/cli.rb +16 -16
  90. data/lib/rbs/collection/config/lockfile_generator.rb +58 -8
  91. data/lib/rbs/collection/config.rb +5 -3
  92. data/lib/rbs/collection/sources/rubygems.rb +1 -1
  93. data/lib/rbs/collection.rb +1 -0
  94. data/lib/rbs/definition.rb +51 -34
  95. data/lib/rbs/definition_builder/ancestor_builder.rb +5 -3
  96. data/lib/rbs/definition_builder.rb +83 -24
  97. data/lib/rbs/environment.rb +33 -18
  98. data/lib/rbs/environment_loader.rb +6 -1
  99. data/lib/rbs/errors.rb +24 -0
  100. data/lib/rbs/locator.rb +2 -0
  101. data/lib/rbs/method_type.rb +2 -0
  102. data/lib/rbs/namespace.rb +1 -0
  103. data/lib/rbs/parser_aux.rb +40 -3
  104. data/lib/rbs/prototype/rb.rb +20 -12
  105. data/lib/rbs/prototype/rbi.rb +11 -6
  106. data/lib/rbs/prototype/runtime/value_object_generator.rb +7 -5
  107. data/lib/rbs/prototype/runtime.rb +7 -5
  108. data/lib/rbs/subtractor.rb +3 -3
  109. data/lib/rbs/test/hook.rb +47 -42
  110. data/lib/rbs/test/type_check.rb +7 -5
  111. data/lib/rbs/type_name.rb +14 -9
  112. data/lib/rbs/types.rb +63 -14
  113. data/lib/rbs/unit_test/spy.rb +4 -2
  114. data/lib/rbs/unit_test/type_assertions.rb +19 -13
  115. data/lib/rbs/unit_test/with_aliases.rb +3 -1
  116. data/lib/rbs/validator.rb +7 -1
  117. data/lib/rbs/version.rb +1 -1
  118. data/lib/rbs/writer.rb +10 -5
  119. data/lib/rbs.rb +1 -0
  120. data/lib/rdoc_plugin/parser.rb +2 -2
  121. data/rbs.gemspec +6 -2
  122. data/sig/ancestor_graph.rbs +5 -5
  123. data/sig/annotate/rdoc_source.rbs +2 -0
  124. data/sig/cli.rbs +2 -0
  125. data/sig/collection/config/lockfile_generator.rbs +9 -1
  126. data/sig/declarations.rbs +10 -3
  127. data/sig/definition.rbs +80 -12
  128. data/sig/definition_builder.rbs +18 -4
  129. data/sig/directives.rbs +17 -1
  130. data/sig/environment.rbs +3 -1
  131. data/sig/errors.rbs +19 -0
  132. data/sig/namespace.rbs +2 -3
  133. data/sig/parser.rbs +5 -1
  134. data/sig/prototype/rb.rbs +1 -1
  135. data/sig/resolver/constant_resolver.rbs +2 -2
  136. data/sig/resolver/context.rbs +1 -1
  137. data/sig/subtractor.rbs +1 -1
  138. data/sig/test/type_check.rbs +2 -2
  139. data/sig/type_alias_dependency.rbs +2 -2
  140. data/sig/type_alias_regularity.rbs +6 -6
  141. data/sig/type_param.rbs +4 -4
  142. data/sig/typename.rbs +8 -5
  143. data/sig/types.rbs +1 -1
  144. data/sig/unit_test/spy.rbs +2 -0
  145. data/sig/unit_test/type_assertions.rbs +2 -0
  146. data/sig/use_map.rbs +1 -1
  147. data/sig/validator.rbs +6 -2
  148. data/sig/vendorer.rbs +1 -1
  149. data/sig/writer.rbs +1 -1
  150. data/{ext/rbs_extension → src}/constants.c +35 -36
  151. data/src/ruby_objs.c +799 -0
  152. data/src/util/rbs_constant_pool.c +342 -0
  153. data/stdlib/base64/0/base64.rbs +0 -9
  154. data/stdlib/benchmark/0/benchmark.rbs +11 -2
  155. data/stdlib/bigdecimal/0/big_decimal.rbs +26 -182
  156. data/stdlib/cgi/0/core.rbs +60 -3
  157. data/stdlib/cgi/0/manifest.yaml +1 -0
  158. data/stdlib/coverage/0/coverage.rbs +0 -3
  159. data/stdlib/csv/0/csv.rbs +18 -58
  160. data/stdlib/csv/0/manifest.yaml +1 -0
  161. data/stdlib/date/0/date.rbs +27 -42
  162. data/stdlib/did_you_mean/0/did_you_mean.rbs +1 -6
  163. data/stdlib/digest/0/digest.rbs +25 -2
  164. data/stdlib/erb/0/erb.rbs +0 -1
  165. data/stdlib/etc/0/etc.rbs +51 -34
  166. data/stdlib/fileutils/0/fileutils.rbs +3 -44
  167. data/stdlib/io-console/0/io-console.rbs +69 -15
  168. data/stdlib/ipaddr/0/ipaddr.rbs +16 -4
  169. data/stdlib/json/0/json.rbs +107 -120
  170. data/stdlib/logger/0/log_device.rbs +1 -1
  171. data/stdlib/logger/0/logger.rbs +3 -18
  172. data/stdlib/minitest/0/kernel.rbs +2 -2
  173. data/stdlib/minitest/0/minitest/abstract_reporter.rbs +4 -1
  174. data/stdlib/minitest/0/minitest/assertion.rbs +1 -0
  175. data/stdlib/minitest/0/minitest/assertions.rbs +58 -13
  176. data/stdlib/minitest/0/minitest/backtrace_filter.rbs +7 -0
  177. data/stdlib/minitest/0/minitest/bench_spec.rbs +8 -8
  178. data/stdlib/minitest/0/minitest/benchmark.rbs +17 -16
  179. data/stdlib/minitest/0/minitest/compress.rbs +13 -0
  180. data/stdlib/minitest/0/minitest/error_on_warning.rbs +3 -0
  181. data/stdlib/minitest/0/minitest/mock.rbs +9 -5
  182. data/stdlib/minitest/0/minitest/parallel/executor.rbs +4 -0
  183. data/stdlib/minitest/0/minitest/parallel/test/class_methods.rbs +0 -1
  184. data/stdlib/minitest/0/minitest/pride_io.rbs +8 -0
  185. data/stdlib/minitest/0/minitest/pride_lol.rbs +2 -0
  186. data/stdlib/minitest/0/minitest/progress_reporter.rbs +1 -1
  187. data/stdlib/minitest/0/minitest/reportable.rbs +2 -0
  188. data/stdlib/minitest/0/minitest/runnable.rbs +33 -1
  189. data/stdlib/minitest/0/minitest/spec/dsl/instance_methods.rbs +1 -1
  190. data/stdlib/minitest/0/minitest/spec/dsl.rbs +10 -6
  191. data/stdlib/minitest/0/minitest/spec.rbs +1 -1
  192. data/stdlib/minitest/0/minitest/statistics_reporter.rbs +5 -0
  193. data/stdlib/minitest/0/minitest/summary_reporter.rbs +0 -7
  194. data/stdlib/minitest/0/minitest/test/lifecycle_hooks.rbs +1 -1
  195. data/stdlib/minitest/0/minitest/test.rbs +7 -14
  196. data/stdlib/minitest/0/minitest/unexpected_error.rbs +2 -0
  197. data/stdlib/minitest/0/minitest/unexpected_warning.rbs +6 -0
  198. data/stdlib/minitest/0/minitest/unit.rbs +1 -2
  199. data/stdlib/minitest/0/minitest.rbs +41 -892
  200. data/stdlib/monitor/0/monitor.rbs +13 -4
  201. data/stdlib/net-http/0/net-http.rbs +42 -109
  202. data/stdlib/nkf/0/nkf.rbs +30 -0
  203. data/stdlib/objspace/0/objspace.rbs +1 -2
  204. data/stdlib/observable/0/observable.rbs +1 -1
  205. data/stdlib/open-uri/0/manifest.yaml +1 -0
  206. data/stdlib/open-uri/0/open-uri.rbs +52 -0
  207. data/stdlib/open3/0/open3.rbs +0 -8
  208. data/stdlib/openssl/0/manifest.yaml +1 -0
  209. data/stdlib/openssl/0/openssl.rbs +235 -143
  210. data/stdlib/optparse/0/optparse.rbs +58 -18
  211. data/stdlib/pathname/0/pathname.rbs +2 -8
  212. data/stdlib/pp/0/pp.rbs +3 -1
  213. data/stdlib/prettyprint/0/prettyprint.rbs +0 -4
  214. data/stdlib/pstore/0/pstore.rbs +0 -6
  215. data/stdlib/psych/0/core_ext.rbs +12 -0
  216. data/stdlib/psych/0/psych.rbs +15 -4
  217. data/stdlib/pty/0/pty.rbs +46 -4
  218. data/stdlib/rdoc/0/code_object.rbs +0 -4
  219. data/stdlib/rdoc/0/markup.rbs +10 -12
  220. data/stdlib/rdoc/0/rdoc.rbs +13 -8
  221. data/stdlib/resolv/0/resolv.rbs +21 -12
  222. data/stdlib/ripper/0/ripper.rbs +0 -2
  223. data/stdlib/securerandom/0/securerandom.rbs +7 -2
  224. data/stdlib/shellwords/0/shellwords.rbs +11 -12
  225. data/stdlib/singleton/0/singleton.rbs +0 -1
  226. data/stdlib/socket/0/addrinfo.rbs +1 -2
  227. data/stdlib/socket/0/basic_socket.rbs +0 -5
  228. data/stdlib/socket/0/socket.rbs +32 -27
  229. data/stdlib/socket/0/tcp_server.rbs +0 -3
  230. data/stdlib/socket/0/tcp_socket.rbs +36 -3
  231. data/stdlib/socket/0/udp_socket.rbs +0 -1
  232. data/stdlib/socket/0/unix_server.rbs +0 -3
  233. data/stdlib/socket/0/unix_socket.rbs +4 -2
  234. data/{core/string_io.rbs → stdlib/stringio/0/stringio.rbs} +1 -1
  235. data/stdlib/strscan/0/string_scanner.rbs +1265 -422
  236. data/stdlib/tempfile/0/tempfile.rbs +135 -28
  237. data/stdlib/time/0/time.rbs +48 -35
  238. data/stdlib/timeout/0/timeout.rbs +11 -8
  239. data/stdlib/tmpdir/0/tmpdir.rbs +10 -3
  240. data/stdlib/tsort/0/tsort.rbs +0 -4
  241. data/stdlib/uri/0/common.rbs +28 -30
  242. data/stdlib/uri/0/ftp.rbs +1 -1
  243. data/stdlib/uri/0/generic.rbs +22 -18
  244. data/stdlib/uri/0/http.rbs +2 -2
  245. data/stdlib/uri/0/rfc2396_parser.rbs +3 -0
  246. data/stdlib/zlib/0/buf_error.rbs +1 -70
  247. data/stdlib/zlib/0/data_error.rbs +1 -70
  248. data/stdlib/zlib/0/deflate.rbs +8 -72
  249. data/stdlib/zlib/0/error.rbs +1 -70
  250. data/stdlib/zlib/0/gzip_file/crc_error.rbs +2 -105
  251. data/stdlib/zlib/0/gzip_file/error.rbs +2 -105
  252. data/stdlib/zlib/0/gzip_file/length_error.rbs +2 -105
  253. data/stdlib/zlib/0/gzip_file/no_footer.rbs +2 -105
  254. data/stdlib/zlib/0/gzip_file.rbs +1 -71
  255. data/stdlib/zlib/0/gzip_reader.rbs +3 -74
  256. data/stdlib/zlib/0/gzip_writer.rbs +1 -70
  257. data/stdlib/zlib/0/inflate.rbs +4 -71
  258. data/stdlib/zlib/0/mem_error.rbs +1 -70
  259. data/stdlib/zlib/0/need_dict.rbs +1 -70
  260. data/stdlib/zlib/0/stream_end.rbs +1 -70
  261. data/stdlib/zlib/0/stream_error.rbs +1 -70
  262. data/stdlib/zlib/0/version_error.rbs +1 -70
  263. data/stdlib/zlib/0/zlib.rbs +0 -2
  264. data/stdlib/zlib/0/zstream.rbs +4 -72
  265. metadata +17 -13
  266. data/ext/rbs_extension/ruby_objs.c +0 -602
  267. data/ext/rbs_extension/ruby_objs.h +0 -51
  268. data/stdlib/minitest/0/manifest.yaml +0 -2
@@ -22,7 +22,6 @@ module Gem
22
22
  # 3. 1.0.a.2
23
23
  # 4. 0.9
24
24
  #
25
- #
26
25
  # If you want to specify a version restriction that includes both prereleases
27
26
  # and regular releases of the 1.x series this is the best way:
28
27
  #
@@ -46,7 +45,6 @@ module Gem
46
45
  # 3. The change may change the public interface of the library in such a way
47
46
  # that old software is no longer compatible.
48
47
  #
49
- #
50
48
  # Some examples are appropriate at this point. Suppose I have a Stack class
51
49
  # that supports a `push` and a `pop` method.
52
50
  #
@@ -56,7 +54,6 @@ module Gem
56
54
  # implementation.
57
55
  # * Provide an automatic (and transparent) backing store for large stacks.
58
56
  #
59
- #
60
57
  # ### Examples of Category 2 changes might be:
61
58
  #
62
59
  # * Add a `depth` method to return the current depth of the stack.
@@ -65,14 +62,12 @@ module Gem
65
62
  # * Change `push` so that it returns the item pushed (previously it had no
66
63
  # usable return value).
67
64
  #
68
- #
69
65
  # ### Examples of Category 3 changes might be:
70
66
  #
71
67
  # * Changes `pop` so that it no longer returns a value (you must use `top` to
72
68
  # get the top of the stack).
73
69
  # * Rename the methods to `push_item` and `pop_item`.
74
70
  #
75
- #
76
71
  # ## RubyGems Rational Versioning
77
72
  #
78
73
  # * Versions shall be represented by three non-negative integers, separated by
@@ -94,24 +89,29 @@ module Gem
94
89
  # generate builds all day long, but as soon as they make a public release,
95
90
  # the version must be updated.
96
91
  #
97
- #
98
92
  # ### Examples
99
93
  #
100
94
  # Let's work through a project lifecycle using our Stack example from above.
101
95
  #
102
96
  # Version 0.0.1
103
97
  # : The initial Stack class is release.
98
+ #
104
99
  # Version 0.0.2
105
100
  # : Switched to a linked=list implementation because it is cooler.
101
+ #
106
102
  # Version 0.1.0
107
103
  # : Added a `depth` method.
104
+ #
108
105
  # Version 1.0.0
109
106
  # : Added `top` and made `pop` return nil (`pop` used to return the old top
110
107
  # item).
108
+ #
111
109
  # Version 1.1.0
112
110
  # : `push` now returns the value pushed (it used it return nil).
111
+ #
113
112
  # Version 1.1.1
114
113
  # : Fixed a bug in the linked list implementation.
114
+ #
115
115
  # Version 1.1.2
116
116
  # : Fixed a bug introduced in the last fix.
117
117
  #
@@ -221,7 +221,7 @@ module Gem
221
221
  #
222
222
  # Pre-release (alpha) parts, e.g, 5.3.1.b.2 => 5.4, are ignored.
223
223
  #
224
- def bump: () -> instance
224
+ def bump: () -> self
225
225
 
226
226
  # <!--
227
227
  # rdoc-file=lib/rubygems/version.rb
@@ -274,7 +274,7 @@ module Gem
274
274
  # The release for this version (e.g. 1.2.0.a -> 1.2.0). Non-prerelease versions
275
275
  # return themselves.
276
276
  #
277
- def release: () -> instance
277
+ def release: () -> self
278
278
 
279
279
  # <!--
280
280
  # rdoc-file=lib/rubygems/version.rb
data/core/set.rbs CHANGED
@@ -16,7 +16,6 @@
16
16
  # set to an unreliable state.
17
17
  # * When a string is to be stored, a frozen copy of the string is
18
18
  # stored instead unless the original string is already frozen.
19
- #
20
19
  # ## Comparison
21
20
  # The comparison operators `<`, `>`, `<=`, and `>=` are implemented as
22
21
  # shorthand for the {proper_,}{subset?,superset?} methods. The `<=>`
@@ -34,13 +33,11 @@
34
33
  #
35
34
  # ## Contact
36
35
  # * Akinori MUSHA <mailto:knu@iDaemons.org> (current maintainer)
37
- #
38
36
  # ## What's Here
39
37
  # First, what's elsewhere. Class Set:
40
38
  # * Inherits from [class Object](rdoc-ref:Object@What-27s+Here).
41
39
  # * Includes [module Enumerable](rdoc-ref:Enumerable@What-27s+Here),
42
40
  # which provides dozens of additional methods.
43
- #
44
41
  # In particular, class Set does not have many methods of its own
45
42
  # for fetching or for iterating.
46
43
  # Instead, it relies on those in Enumerable.
@@ -54,7 +51,6 @@
54
51
  # * [Converting](#class-Set-label-Methods+for+Converting)
55
52
  # * [Iterating](#class-Set-label-Methods+for+Iterating)
56
53
  # * [And more....](#class-Set-label-Other+Methods)
57
- #
58
54
  # ### Methods for Creating a Set
59
55
  # * ::[]:
60
56
  # Returns a new set containing the given objects.
@@ -62,7 +58,6 @@
62
58
  # Returns a new set containing either the given objects
63
59
  # (if no block given) or the return values from the called block
64
60
  # (if a block given).
65
- #
66
61
  # ### Methods for Set Operations
67
62
  # * [|](#method-i-7C) (aliased as #union and #+):
68
63
  # Returns a new set containing all elements from `self`
@@ -76,7 +71,6 @@
76
71
  # * [\^](#method-i-5E):
77
72
  # Returns a new set containing all elements from `self`
78
73
  # and a given enumerable except those common to both.
79
- #
80
74
  # ### Methods for Comparing
81
75
  # * [<=>](#method-i-3C-3D-3E):
82
76
  # Returns -1, 0, or 1 as `self` is less than, equal to,
@@ -87,7 +81,6 @@
87
81
  # * #compare_by_identity?:
88
82
  # Returns whether the set considers only identity
89
83
  # when comparing elements.
90
- #
91
84
  # ### Methods for Querying
92
85
  # * #length (aliased as #size):
93
86
  # Returns the count of elements.
@@ -112,7 +105,6 @@
112
105
  # * #compare_by_identity?:
113
106
  # Returns whether the set considers only identity
114
107
  # when comparing elements.
115
- #
116
108
  # ### Methods for Assigning
117
109
  # * #add (aliased as #<<):
118
110
  # Adds a given object to the set; returns `self`.
@@ -125,7 +117,6 @@
125
117
  # * #replace:
126
118
  # Replaces the contents of the set with the contents
127
119
  # of a given enumerable.
128
- #
129
120
  # ### Methods for Deleting
130
121
  # * #clear:
131
122
  # Removes all elements in the set; returns `self`.
@@ -143,7 +134,6 @@
143
134
  # Removes elements not specified by a given block.
144
135
  # * #reject!
145
136
  # Removes elements specified by a given block.
146
- #
147
137
  # ### Methods for Converting
148
138
  # * #classify:
149
139
  # Returns a hash that classifies the elements,
@@ -170,11 +160,9 @@
170
160
  # Returns `self` if given no arguments and no block;
171
161
  # with a block given, returns a new set consisting of block
172
162
  # return values.
173
- #
174
163
  # ### Methods for Iterating
175
164
  # * #each:
176
165
  # Calls the block with each successive element; returns `self`.
177
- #
178
166
  # ### Other Methods
179
167
  # * #reset:
180
168
  # Resets the internal state; useful if an object
@@ -400,7 +388,7 @@ class Set[unchecked out A]
400
388
 
401
389
  # <!--
402
390
  # rdoc-file=lib/set.rb
403
- # - delete_if() { |o| ... }
391
+ # - delete_if(&block)
404
392
  # -->
405
393
  # Deletes every element of the set for which block evaluates to
406
394
  # true, and returns self. Returns an enumerator if no block is
@@ -504,7 +492,7 @@ class Set[unchecked out A]
504
492
 
505
493
  # <!--
506
494
  # rdoc-file=lib/set.rb
507
- # - keep_if() { |o| ... }
495
+ # - keep_if(&block)
508
496
  # -->
509
497
  # Deletes every element of the set for which block evaluates to
510
498
  # false, and returns self. Returns an enumerator if no block is
@@ -612,7 +600,7 @@ class Set[unchecked out A]
612
600
  # rdoc-file=lib/set.rb
613
601
  # - to_a()
614
602
  # -->
615
- # Converts the set to an array. The order of elements is uncertain.
603
+ # Returns an array containing all elements in the set.
616
604
  # Set[1, 2].to_a #=> [1, 2]
617
605
  # Set[1, 'c', :s].to_a #=> [1, "c", :s]
618
606
  #
@@ -629,5 +617,5 @@ module Enumerable[unchecked out Elem]
629
617
  # Needs to `require "set"` to use this method.
630
618
  #
631
619
  def to_set: () -> Set[Elem]
632
- | [T] { (Elem) -> T } -> Set[T]
620
+ | [T] () { (Elem) -> T } -> Set[T]
633
621
  end