rbs 4.0.0.dev.5 → 4.0.1.dev.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 (194) hide show
  1. checksums.yaml +4 -4
  2. data/.clang-format +1 -0
  3. data/.github/workflows/c-check.yml +8 -4
  4. data/.github/workflows/comments.yml +3 -1
  5. data/.github/workflows/dependabot.yml +1 -1
  6. data/.github/workflows/ruby.yml +10 -0
  7. data/.github/workflows/rust.yml +95 -0
  8. data/CHANGELOG.md +323 -0
  9. data/Rakefile +12 -29
  10. data/Steepfile +1 -0
  11. data/config.yml +393 -37
  12. data/core/array.rbs +218 -188
  13. data/core/basic_object.rbs +9 -8
  14. data/core/class.rbs +6 -5
  15. data/core/comparable.rbs +45 -31
  16. data/core/complex.rbs +52 -40
  17. data/core/dir.rbs +57 -45
  18. data/core/encoding.rbs +5 -5
  19. data/core/enumerable.rbs +96 -91
  20. data/core/enumerator.rbs +4 -3
  21. data/core/errno.rbs +3 -2
  22. data/core/errors.rbs +31 -29
  23. data/core/exception.rbs +12 -12
  24. data/core/fiber.rbs +36 -36
  25. data/core/file.rbs +186 -113
  26. data/core/file_test.rbs +2 -2
  27. data/core/float.rbs +41 -32
  28. data/core/gc.rbs +78 -70
  29. data/core/hash.rbs +70 -60
  30. data/core/integer.rbs +32 -28
  31. data/core/io/buffer.rbs +36 -36
  32. data/core/io/wait.rbs +7 -7
  33. data/core/io.rbs +120 -135
  34. data/core/kernel.rbs +189 -139
  35. data/core/marshal.rbs +3 -3
  36. data/core/match_data.rbs +14 -12
  37. data/core/math.rbs +69 -67
  38. data/core/method.rbs +6 -6
  39. data/core/module.rbs +146 -85
  40. data/core/nil_class.rbs +4 -3
  41. data/core/numeric.rbs +35 -32
  42. data/core/object.rbs +6 -8
  43. data/core/object_space.rbs +11 -10
  44. data/core/pathname.rbs +131 -81
  45. data/core/proc.rbs +65 -33
  46. data/core/process.rbs +219 -201
  47. data/core/ractor.rbs +15 -11
  48. data/core/random.rbs +4 -3
  49. data/core/range.rbs +52 -47
  50. data/core/rational.rbs +5 -5
  51. data/core/rbs/unnamed/argf.rbs +58 -51
  52. data/core/rbs/unnamed/env_class.rbs +18 -13
  53. data/core/rbs/unnamed/main_class.rbs +123 -0
  54. data/core/rbs/unnamed/random.rbs +7 -5
  55. data/core/regexp.rbs +236 -197
  56. data/core/ruby.rbs +1 -1
  57. data/core/ruby_vm.rbs +32 -30
  58. data/core/rubygems/config_file.rbs +5 -5
  59. data/core/rubygems/errors.rbs +1 -1
  60. data/core/rubygems/requirement.rbs +5 -5
  61. data/core/rubygems/rubygems.rbs +5 -3
  62. data/core/set.rbs +17 -16
  63. data/core/signal.rbs +2 -2
  64. data/core/string.rbs +311 -292
  65. data/core/struct.rbs +26 -25
  66. data/core/symbol.rbs +25 -24
  67. data/core/thread.rbs +40 -34
  68. data/core/time.rbs +47 -42
  69. data/core/trace_point.rbs +34 -31
  70. data/core/true_class.rbs +2 -2
  71. data/core/unbound_method.rbs +10 -10
  72. data/core/warning.rbs +7 -7
  73. data/docs/collection.md +1 -1
  74. data/docs/config.md +171 -0
  75. data/docs/inline.md +110 -4
  76. data/docs/syntax.md +13 -12
  77. data/ext/rbs_extension/ast_translation.c +489 -135
  78. data/ext/rbs_extension/class_constants.c +8 -0
  79. data/ext/rbs_extension/class_constants.h +4 -0
  80. data/ext/rbs_extension/legacy_location.c +28 -51
  81. data/ext/rbs_extension/legacy_location.h +37 -0
  82. data/ext/rbs_extension/main.c +12 -20
  83. data/include/rbs/ast.h +423 -195
  84. data/include/rbs/lexer.h +2 -2
  85. data/include/rbs/location.h +25 -44
  86. data/include/rbs/parser.h +2 -2
  87. data/include/rbs/util/rbs_constant_pool.h +0 -3
  88. data/include/rbs.h +8 -0
  89. data/lib/rbs/ast/ruby/annotations.rb +157 -4
  90. data/lib/rbs/ast/ruby/members.rb +374 -22
  91. data/lib/rbs/cli/validate.rb +5 -60
  92. data/lib/rbs/collection/config/lockfile_generator.rb +6 -2
  93. data/lib/rbs/definition_builder.rb +60 -27
  94. data/lib/rbs/errors.rb +0 -11
  95. data/lib/rbs/inline_parser.rb +1 -1
  96. data/lib/rbs/parser_aux.rb +20 -7
  97. data/lib/rbs/prototype/helpers.rb +57 -0
  98. data/lib/rbs/prototype/rb.rb +1 -26
  99. data/lib/rbs/prototype/rbi.rb +1 -20
  100. data/lib/rbs/test/type_check.rb +3 -0
  101. data/lib/rbs/types.rb +62 -52
  102. data/lib/rbs/unit_test/type_assertions.rb +35 -8
  103. data/lib/rbs/version.rb +1 -1
  104. data/lib/rbs.rb +0 -1
  105. data/rbs.gemspec +1 -1
  106. data/rust/.gitignore +1 -0
  107. data/rust/Cargo.lock +378 -0
  108. data/rust/Cargo.toml +7 -0
  109. data/rust/ruby-rbs/Cargo.toml +22 -0
  110. data/rust/ruby-rbs/build.rs +764 -0
  111. data/rust/ruby-rbs/examples/locations.rs +60 -0
  112. data/rust/ruby-rbs/src/lib.rs +1 -0
  113. data/rust/ruby-rbs/src/node/mod.rs +742 -0
  114. data/rust/ruby-rbs/tests/sanity.rs +47 -0
  115. data/rust/ruby-rbs/vendor/rbs/config.yml +1 -0
  116. data/rust/ruby-rbs-sys/Cargo.toml +23 -0
  117. data/rust/ruby-rbs-sys/build.rs +204 -0
  118. data/rust/ruby-rbs-sys/src/lib.rs +50 -0
  119. data/rust/ruby-rbs-sys/vendor/rbs/include +1 -0
  120. data/rust/ruby-rbs-sys/vendor/rbs/src +1 -0
  121. data/rust/ruby-rbs-sys/wrapper.h +1 -0
  122. data/sig/ast/ruby/annotations.rbs +191 -4
  123. data/sig/ast/ruby/members.rbs +21 -1
  124. data/sig/cli/validate.rbs +1 -6
  125. data/sig/definition_builder.rbs +2 -0
  126. data/sig/errors.rbs +0 -8
  127. data/sig/method_types.rbs +1 -1
  128. data/sig/parser.rbs +17 -13
  129. data/sig/prototype/helpers.rbs +2 -0
  130. data/sig/types.rbs +10 -11
  131. data/sig/unit_test/spy.rbs +0 -8
  132. data/sig/unit_test/type_assertions.rbs +11 -0
  133. data/src/ast.c +339 -161
  134. data/src/lexstate.c +1 -1
  135. data/src/location.c +7 -47
  136. data/src/parser.c +674 -480
  137. data/src/util/rbs_constant_pool.c +0 -4
  138. data/stdlib/bigdecimal/0/big_decimal.rbs +16 -16
  139. data/stdlib/cgi-escape/0/escape.rbs +4 -4
  140. data/stdlib/coverage/0/coverage.rbs +4 -3
  141. data/stdlib/date/0/date.rbs +33 -28
  142. data/stdlib/date/0/date_time.rbs +24 -23
  143. data/stdlib/did_you_mean/0/did_you_mean.rbs +17 -16
  144. data/stdlib/erb/0/erb.rbs +64 -53
  145. data/stdlib/etc/0/etc.rbs +55 -50
  146. data/stdlib/fileutils/0/fileutils.rbs +138 -125
  147. data/stdlib/forwardable/0/forwardable.rbs +10 -10
  148. data/stdlib/io-console/0/io-console.rbs +2 -2
  149. data/stdlib/json/0/json.rbs +135 -108
  150. data/stdlib/monitor/0/monitor.rbs +3 -3
  151. data/stdlib/net-http/0/net-http.rbs +159 -134
  152. data/stdlib/objspace/0/objspace.rbs +8 -7
  153. data/stdlib/open-uri/0/open-uri.rbs +8 -8
  154. data/stdlib/open3/0/open3.rbs +36 -35
  155. data/stdlib/openssl/0/openssl.rbs +144 -129
  156. data/stdlib/optparse/0/optparse.rbs +18 -14
  157. data/stdlib/pathname/0/pathname.rbs +2 -2
  158. data/stdlib/pp/0/pp.rbs +9 -8
  159. data/stdlib/prettyprint/0/prettyprint.rbs +7 -7
  160. data/stdlib/pstore/0/pstore.rbs +35 -30
  161. data/stdlib/psych/0/psych.rbs +61 -8
  162. data/stdlib/psych/0/store.rbs +2 -4
  163. data/stdlib/pty/0/pty.rbs +9 -6
  164. data/stdlib/random-formatter/0/random-formatter.rbs +2 -2
  165. data/stdlib/ripper/0/ripper.rbs +20 -17
  166. data/stdlib/securerandom/0/securerandom.rbs +1 -1
  167. data/stdlib/shellwords/0/shellwords.rbs +2 -2
  168. data/stdlib/socket/0/addrinfo.rbs +7 -7
  169. data/stdlib/socket/0/basic_socket.rbs +3 -3
  170. data/stdlib/socket/0/ip_socket.rbs +10 -8
  171. data/stdlib/socket/0/socket.rbs +10 -9
  172. data/stdlib/socket/0/tcp_server.rbs +1 -1
  173. data/stdlib/socket/0/tcp_socket.rbs +1 -1
  174. data/stdlib/socket/0/udp_socket.rbs +1 -1
  175. data/stdlib/socket/0/unix_server.rbs +1 -1
  176. data/stdlib/stringio/0/stringio.rbs +55 -54
  177. data/stdlib/strscan/0/string_scanner.rbs +46 -44
  178. data/stdlib/tempfile/0/tempfile.rbs +24 -20
  179. data/stdlib/time/0/time.rbs +7 -5
  180. data/stdlib/tsort/0/tsort.rbs +7 -6
  181. data/stdlib/uri/0/common.rbs +26 -18
  182. data/stdlib/uri/0/file.rbs +2 -2
  183. data/stdlib/uri/0/generic.rbs +2 -2
  184. data/stdlib/uri/0/http.rbs +2 -2
  185. data/stdlib/uri/0/ldap.rbs +2 -2
  186. data/stdlib/uri/0/mailto.rbs +3 -3
  187. data/stdlib/uri/0/rfc2396_parser.rbs +6 -5
  188. data/stdlib/zlib/0/deflate.rbs +4 -3
  189. data/stdlib/zlib/0/gzip_reader.rbs +4 -4
  190. data/stdlib/zlib/0/gzip_writer.rbs +14 -12
  191. data/stdlib/zlib/0/inflate.rbs +1 -1
  192. data/stdlib/zlib/0/need_dict.rbs +1 -1
  193. metadata +23 -5
  194. data/.github/workflows/valgrind.yml +0 -42
data/core/dir.rbs CHANGED
@@ -116,10 +116,12 @@
116
116
  #
117
117
  # * ::[]: Same as ::glob without the ability to pass flags.
118
118
  # * ::children: Returns an array of names of the children (both files and
119
- # directories) of the given directory, but not including `.` or `..`.
119
+ # directories) of the given directory, but not including <code>.</code> or
120
+ # <code>..</code>.
120
121
  # * ::empty?: Returns whether the given path is an empty directory.
121
122
  # * ::entries: Returns an array of names of the children (both files and
122
- # directories) of the given directory, including `.` and `..`.
123
+ # directories) of the given directory, including <code>.</code> and
124
+ # <code>..</code>.
123
125
  # * ::exist?: Returns whether the given path is a directory.
124
126
  # * ::getwd (aliased as #pwd): Returns the path to the current working
125
127
  # directory.
@@ -128,7 +130,8 @@
128
130
  # * ::home: Returns the home directory path for a given user or the current
129
131
  # user.
130
132
  # * #children: Returns an array of names of the children (both files and
131
- # directories) of `self`, but not including `.` or `..`.
133
+ # directories) of `self`, but not including <code>.</code> or
134
+ # <code>..</code>.
132
135
  # * #fileno: Returns the integer file descriptor for `self`.
133
136
  # * #path (aliased as #to_path): Returns the path used to create `self`.
134
137
  # * #tell (aliased as #pos): Returns the integer position in the directory
@@ -137,13 +140,13 @@
137
140
  # ### Iterating
138
141
  #
139
142
  # * ::each_child: Calls the given block with each entry in the given
140
- # directory, but not including `.` or `..`.
143
+ # directory, but not including <code>.</code> or <code>..</code>.
141
144
  # * ::foreach: Calls the given block with each entry in the given directory,
142
- # including `.` and `..`.
143
- # * #each: Calls the given block with each entry in `self`, including `.` and
144
- # `..`.
145
+ # including <code>.</code> and <code>..</code>.
146
+ # * #each: Calls the given block with each entry in `self`, including
147
+ # <code>.</code> and <code>..</code>.
145
148
  # * #each_child: Calls the given block with each entry in `self`, but not
146
- # including `.` or `..`.
149
+ # including <code>.</code> or <code>..</code>.
147
150
  #
148
151
  # ### Other
149
152
  #
@@ -255,7 +258,8 @@ class Dir
255
258
  # - Dir.children(dirpath, encoding: 'UTF-8') -> array
256
259
  # -->
257
260
  # Returns an array of the entry names in the directory at `dirpath` except for
258
- # `'.'` and `'..'`; sets the given encoding onto each returned entry name:
261
+ # <code>'.'</code> and <code>'..'</code>; sets the given encoding onto each
262
+ # returned entry name:
259
263
  #
260
264
  # Dir.children('/example') # => ["config.h", "lib", "main.rb"]
261
265
  # Dir.children('/example').first.encoding
@@ -274,8 +278,9 @@ class Dir
274
278
  # - Dir.chroot(dirpath) -> 0
275
279
  # -->
276
280
  # Changes the root directory of the calling process to that specified in
277
- # `dirpath`. The new root directory is used for pathnames beginning with `'/'`.
278
- # The root directory is inherited by all children of the calling process.
281
+ # `dirpath`. The new root directory is used for pathnames beginning with
282
+ # <code>'/'</code>. The root directory is inherited by all children of the
283
+ # calling process.
279
284
  #
280
285
  # Only a privileged process may call `chroot`.
281
286
  #
@@ -300,7 +305,8 @@ class Dir
300
305
  # - Dir.each_child(dirpath) {|entry_name| ... } -> nil
301
306
  # - Dir.each_child(dirpath, encoding: 'UTF-8') {|entry_name| ... } -> nil
302
307
  # -->
303
- # Like Dir.foreach, except that entries `'.'` and `'..'` are not included.
308
+ # Like Dir.foreach, except that entries <code>'.'</code> and <code>'..'</code>
309
+ # are not included.
304
310
  #
305
311
  def self.each_child: (path dirname, ?encoding: encoding?) -> Enumerator[String, nil]
306
312
  | (path dirname, ?encoding: encoding?) { (String filename) -> void } -> nil
@@ -487,8 +493,8 @@ class Dir
487
493
  #
488
494
  # Notes for the following examples:
489
495
  #
490
- # * `'*'` is the pattern that matches any entry name except those that begin
491
- # with `'.'`.
496
+ # * <code>'*'</code> is the pattern that matches any entry name except those
497
+ # that begin with <code>'.'</code>.
492
498
  # * We use method Array#take to shorten returned arrays that otherwise would
493
499
  # be very large.
494
500
  #
@@ -513,8 +519,8 @@ class Dir
513
519
  #
514
520
  # If optional keyword argument `base` is given, its value specifies the base
515
521
  # directory. Each pattern string specifies entries relative to the base
516
- # directory; the default is `'.'`. The base directory is not prepended to the
517
- # entry names in the result:
522
+ # directory; the default is <code>'.'</code>. The base directory is not
523
+ # prepended to the entry names in the result:
518
524
  #
519
525
  # Dir.glob(pattern, base: 'lib').take(5)
520
526
  # # => ["abbrev.gemspec", "abbrev.rb", "base64.gemspec", "base64.rb", "benchmark.gemspec"]
@@ -531,60 +537,64 @@ class Dir
531
537
  # Each pattern string is expanded according to certain metacharacters; examples
532
538
  # below use the [Ruby file tree](rdoc-ref:Dir@About+the+Examples):
533
539
  #
534
- # * `'*'`: Matches any substring in an entry name, similar in meaning to
535
- # regexp `/.*/mx`; may be restricted by other values in the pattern strings:
540
+ # * <code>'*'</code>: Matches any substring in an entry name, similar in
541
+ # meaning to regexp <code>/.*/mx</code>; may be restricted by other values
542
+ # in the pattern strings:
536
543
  #
537
- # * `'*'` matches all entry names:
544
+ # * <code>'*'</code> matches all entry names:
538
545
  #
539
546
  # Dir.glob('*').take(3) # => ["BSDL", "CONTRIBUTING.md", "COPYING"]
540
547
  #
541
- # * `'c*'` matches entry names beginning with `'c'`:
548
+ # * <code>'c*'</code> matches entry names beginning with <code>'c'</code>:
542
549
  #
543
550
  # Dir.glob('c*').take(3) # => ["CONTRIBUTING.md", "COPYING", "COPYING.ja"]
544
551
  #
545
- # * `'*c'` matches entry names ending with `'c'`:
552
+ # * <code>'*c'</code> matches entry names ending with <code>'c'</code>:
546
553
  #
547
554
  # Dir.glob('*c').take(3) # => ["addr2line.c", "array.c", "ast.c"]
548
555
  #
549
- # * `'*c*'` matches entry names that contain `'c'`, even at the beginning
550
- # or end:
556
+ # * <code>'*c*'</code> matches entry names that contain <code>'c'</code>,
557
+ # even at the beginning or end:
551
558
  #
552
559
  # Dir.glob('*c*').take(3) # => ["CONTRIBUTING.md", "COPYING", "COPYING.ja"]
553
560
  #
554
561
  # Does not match Unix-like hidden entry names ("dot files"). To include
555
562
  # those in the matched entry names, use flag IO::FNM_DOTMATCH or something
556
- # like `'{*,.*}'`.
563
+ # like <code>'{*,.*}'</code>.
557
564
  #
558
- # * `'**'`: Matches entry names recursively if followed by the slash
559
- # character `'/'`:
565
+ # * <code>'**'</code>: Matches entry names recursively if followed by the
566
+ # slash character <code>'/'</code>:
560
567
  #
561
568
  # Dir.glob('**/').take(3) # => ["basictest/", "benchmark/", "benchmark/gc/"]
562
569
  #
563
570
  # If the string pattern contains other characters or is not followed by a
564
- # slash character, it is equivalent to `'*'`.
571
+ # slash character, it is equivalent to <code>'*'</code>.
565
572
  #
566
- # * `'?'` Matches any single character; similar in meaning to regexp `/./`:
573
+ # * <code>'?'</code> Matches any single character; similar in meaning to
574
+ # regexp <code>/./</code>:
567
575
  #
568
576
  # Dir.glob('io.?') # => ["io.c"]
569
577
  #
570
- # * `'[*set*]'`: Matches any one character in the string *set*; behaves like a
571
- # [Regexp character class](rdoc-ref:Regexp@Character+Classes), including set
572
- # negation (`'[^a-z]'`):
578
+ # * <code>'[_set_]'</code>: Matches any one character in the string *set*;
579
+ # behaves like a [Regexp character
580
+ # class](rdoc-ref:Regexp@Character+Classes), including set negation
581
+ # (<code>'[^a-z]'</code>):
573
582
  #
574
583
  # Dir.glob('*.[a-z][a-z]').take(3)
575
584
  # # => ["CONTRIBUTING.md", "COPYING.ja", "KNOWNBUGS.rb"]
576
585
  #
577
- # * `'{*abc*,*xyz*}'`: Matches either string *abc* or string *xyz*; behaves
578
- # like [Regexp alternation](rdoc-ref:Regexp@Alternation):
586
+ # * <code>'{_abc_,_xyz_}'</code>: Matches either string *abc* or string *xyz*;
587
+ # behaves like [Regexp alternation](rdoc-ref:Regexp@Alternation):
579
588
  #
580
589
  # Dir.glob('{LEGAL,BSDL}') # => ["LEGAL", "BSDL"]
581
590
  #
582
591
  # More than two alternatives may be given.
583
592
  #
584
- # * `\`: Escapes the following metacharacter.
593
+ # * <code>\</code>: Escapes the following metacharacter.
585
594
  #
586
595
  # Note that on Windows, the backslash character may not be used in a string
587
- # pattern: `Dir['c:\\foo*']` will not work, use `Dir['c:/foo*']` instead.
596
+ # pattern: <code>Dir['c:\foo*']</code> will not work, use
597
+ # <code>Dir['c:/foo*']</code> instead.
588
598
  #
589
599
  # More examples (using the [simple file tree](rdoc-ref:Dir@About+the+Examples)):
590
600
  #
@@ -623,26 +633,26 @@ class Dir
623
633
  #
624
634
  # The flags for this method (other constants in File::Constants do not apply):
625
635
  #
626
- # * File::FNM_DOTMATCH: specifies that entry names beginning with `'.'` should
627
- # be considered for matching:
636
+ # * File::FNM_DOTMATCH: specifies that entry names beginning with
637
+ # <code>'.'</code> should be considered for matching:
628
638
  #
629
639
  # Dir.glob('*').take(5)
630
640
  # # => ["BSDL", "CONTRIBUTING.md", "COPYING", "COPYING.ja", "GPL"]
631
641
  # Dir.glob('*', flags: File::FNM_DOTMATCH).take(5)
632
642
  # # => [".", ".appveyor.yml", ".cirrus.yml", ".dir-locals.el", ".document"]
633
643
  #
634
- # * File::FNM_EXTGLOB: enables the pattern extension `'{*a*,*b*}'`, which
635
- # matches pattern *a* and pattern *b*; behaves like a [regexp
636
- # union](rdoc-ref:Regexp.union) (e.g., `'(?:*a*|*b*)'`):
644
+ # * File::FNM_EXTGLOB: enables the pattern extension <code>'{_a_,_b_}'</code>,
645
+ # which matches pattern *a* and pattern *b*; behaves like a [regexp
646
+ # union](rdoc-ref:Regexp.union) (e.g., <code>'(?:_a_|_b_)'</code>):
637
647
  #
638
648
  # pattern = '{LEGAL,BSDL}'
639
649
  # Dir.glob(pattern) # => ["LEGAL", "BSDL"]
640
650
  #
641
651
  # * File::FNM_NOESCAPE: specifies that escaping with the backslash character
642
- # `'\'` is disabled; the character is not an escape character.
652
+ # <code>'\'</code> is disabled; the character is not an escape character.
643
653
  #
644
- # * File::FNM_PATHNAME: specifies that metacharacters `'*'` and `'?'` do not
645
- # match directory separators.
654
+ # * File::FNM_PATHNAME: specifies that metacharacters <code>'*'</code> and
655
+ # <code>'?'</code> do not match directory separators.
646
656
  #
647
657
  # * File::FNM_SHORTNAME: specifies that patterns may match short names if they
648
658
  # exist; Windows only.
@@ -774,7 +784,8 @@ class Dir
774
784
  # rdoc-file=dir.c
775
785
  # - children -> array
776
786
  # -->
777
- # Returns an array of the entry names in `self` except for `'.'` and `'..'`:
787
+ # Returns an array of the entry names in `self` except for <code>'.'</code> and
788
+ # <code>'..'</code>:
778
789
  #
779
790
  # dir = Dir.new('/example')
780
791
  # dir.children # => ["config.h", "lib", "main.rb"]
@@ -821,7 +832,8 @@ class Dir
821
832
  # rdoc-file=dir.c
822
833
  # - each_child {|entry_name| ... } -> self
823
834
  # -->
824
- # Calls the block with each entry name in `self` except `'.'` and `'..'`:
835
+ # Calls the block with each entry name in `self` except <code>'.'</code> and
836
+ # <code>'..'</code>:
825
837
  #
826
838
  # dir = Dir.new('/example')
827
839
  # dir.each_child {|entry_name| p entry_name }
data/core/encoding.rbs CHANGED
@@ -127,7 +127,7 @@ class Encoding
127
127
  # Sets default external encoding. You should not set Encoding::default_external
128
128
  # in ruby code as strings created before changing the value may have a different
129
129
  # encoding from strings created after the value was changed., instead you should
130
- # use `ruby -E` to invoke ruby with the correct default_external.
130
+ # use <code>ruby -E</code> to invoke ruby with the correct default_external.
131
131
  #
132
132
  # See Encoding::default_external for information on how the default external
133
133
  # encoding is used.
@@ -172,8 +172,8 @@ class Encoding
172
172
  # Sets default internal encoding or removes default internal encoding when
173
173
  # passed nil. You should not set Encoding::default_internal in ruby code as
174
174
  # strings created before changing the value may have a different encoding from
175
- # strings created after the change. Instead you should use `ruby -E` to invoke
176
- # ruby with the correct default_internal.
175
+ # strings created after the change. Instead you should use <code>ruby -E</code>
176
+ # to invoke ruby with the correct default_internal.
177
177
  #
178
178
  # See Encoding::default_internal for information on how the default internal
179
179
  # encoding is used.
@@ -207,8 +207,8 @@ class Encoding
207
207
  #
208
208
  #
209
209
  # An ArgumentError is raised when no encoding with *name*. Only
210
- # `Encoding.find("internal")` however returns nil when no encoding named
211
- # "internal", in other words, when Ruby has no default internal encoding.
210
+ # <code>Encoding.find("internal")</code> however returns nil when no encoding
211
+ # named "internal", in other words, when Ruby has no default internal encoding.
212
212
  #
213
213
  def self.find: (encoding enc) -> Encoding?
214
214