rbs 2.0.0 → 2.1.0

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 (179) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ruby.yml +5 -0
  3. data/CHANGELOG.md +23 -0
  4. data/README.md +6 -1
  5. data/core/array.rbs +2866 -1086
  6. data/core/basic_object.rbs +150 -30
  7. data/core/binding.rbs +33 -0
  8. data/core/builtin.rbs +4 -4
  9. data/core/class.rbs +43 -5
  10. data/core/comparable.rbs +57 -0
  11. data/core/complex.rbs +170 -4
  12. data/core/constants.rbs +51 -0
  13. data/core/deprecated.rbs +7 -0
  14. data/core/dir.rbs +305 -20
  15. data/core/encoding.rbs +472 -77
  16. data/core/enumerable.rbs +2173 -234
  17. data/core/enumerator.rbs +448 -182
  18. data/core/env.rbs +448 -1
  19. data/core/errno.rbs +1 -10
  20. data/core/errors.rbs +152 -2
  21. data/core/exception.rbs +201 -127
  22. data/core/false_class.rbs +27 -0
  23. data/core/fiber.rbs +118 -37
  24. data/core/fiber_error.rbs +8 -9
  25. data/core/file.rbs +1059 -139
  26. data/core/file_test.rbs +287 -32
  27. data/core/float.rbs +776 -300
  28. data/core/gc.rbs +185 -34
  29. data/core/global_variables.rbs +5 -1
  30. data/core/hash.rbs +1582 -649
  31. data/core/integer.rbs +974 -204
  32. data/core/io/buffer.rbs +710 -0
  33. data/core/io/wait.rbs +29 -8
  34. data/core/io.rbs +2438 -417
  35. data/core/kernel.rbs +2315 -316
  36. data/core/marshal.rbs +37 -2
  37. data/core/match_data.rbs +123 -6
  38. data/core/math.rbs +126 -6
  39. data/core/method.rbs +226 -102
  40. data/core/module.rbs +421 -45
  41. data/core/nil_class.rbs +64 -0
  42. data/core/numeric.rbs +620 -142
  43. data/core/object.rbs +453 -81
  44. data/core/object_space.rbs +92 -2
  45. data/core/proc.rbs +482 -285
  46. data/core/process.rbs +443 -34
  47. data/core/ractor.rbs +232 -9
  48. data/core/random.rbs +151 -52
  49. data/core/range.rbs +885 -160
  50. data/core/rational.rbs +122 -6
  51. data/core/rb_config.rbs +14 -4
  52. data/core/refinement.rbs +44 -0
  53. data/core/regexp.rbs +156 -14
  54. data/core/ruby_vm.rbs +42 -3
  55. data/core/signal.rbs +78 -39
  56. data/core/string.rbs +2123 -567
  57. data/core/string_io.rbs +204 -0
  58. data/core/struct.rbs +283 -28
  59. data/core/symbol.rbs +304 -30
  60. data/core/thread.rbs +1288 -688
  61. data/core/thread_group.rbs +66 -10
  62. data/core/time.rbs +643 -217
  63. data/core/trace_point.rbs +100 -12
  64. data/core/true_class.rbs +24 -0
  65. data/core/unbound_method.rbs +73 -7
  66. data/core/warning.rbs +37 -12
  67. data/docs/CONTRIBUTING.md +40 -34
  68. data/docs/stdlib.md +3 -102
  69. data/lib/rbs/annotate/annotations.rb +197 -0
  70. data/lib/rbs/annotate/formatter.rb +80 -0
  71. data/lib/rbs/annotate/rdoc_annotator.rb +398 -0
  72. data/lib/rbs/annotate/rdoc_source.rb +120 -0
  73. data/lib/rbs/annotate.rb +6 -0
  74. data/lib/rbs/cli.rb +45 -1
  75. data/lib/rbs/definition_builder.rb +5 -1
  76. data/lib/rbs/location_aux.rb +12 -0
  77. data/lib/rbs/prototype/rb.rb +12 -0
  78. data/lib/rbs/version.rb +1 -1
  79. data/sig/annotate/annotations.rbs +102 -0
  80. data/sig/annotate/formatter.rbs +24 -0
  81. data/sig/annotate/rdoc_annotater.rbs +82 -0
  82. data/sig/annotate/rdoc_source.rbs +30 -0
  83. data/sig/cli.rbs +2 -0
  84. data/sig/collection/{collections.rbs → sources.rbs} +0 -0
  85. data/sig/location.rbs +6 -0
  86. data/sig/method_types.rbs +5 -1
  87. data/sig/polyfill.rbs +78 -0
  88. data/stdlib/abbrev/0/abbrev.rbs +6 -0
  89. data/stdlib/abbrev/0/array.rbs +26 -0
  90. data/stdlib/base64/0/base64.rbs +31 -0
  91. data/stdlib/benchmark/0/benchmark.rbs +74 -3
  92. data/stdlib/bigdecimal/0/big_decimal.rbs +614 -165
  93. data/stdlib/bigdecimal-math/0/big_math.rbs +41 -64
  94. data/stdlib/cgi/0/core.rbs +59 -0
  95. data/stdlib/coverage/0/coverage.rbs +164 -2
  96. data/stdlib/csv/0/csv.rbs +2862 -398
  97. data/stdlib/date/0/date.rbs +483 -25
  98. data/stdlib/date/0/date_time.rbs +187 -12
  99. data/stdlib/dbm/0/dbm.rbs +152 -17
  100. data/stdlib/digest/0/digest.rbs +146 -0
  101. data/stdlib/erb/0/erb.rbs +65 -245
  102. data/stdlib/fiber/0/fiber.rbs +73 -91
  103. data/stdlib/fileutils/0/fileutils.rbs +301 -1
  104. data/stdlib/find/0/find.rbs +9 -0
  105. data/stdlib/forwardable/0/forwardable.rbs +65 -1
  106. data/stdlib/io-console/0/io-console.rbs +227 -15
  107. data/stdlib/ipaddr/0/ipaddr.rbs +161 -0
  108. data/stdlib/json/0/json.rbs +1146 -144
  109. data/stdlib/logger/0/formatter.rbs +24 -0
  110. data/stdlib/logger/0/log_device.rbs +64 -0
  111. data/stdlib/logger/0/logger.rbs +165 -13
  112. data/stdlib/logger/0/period.rbs +10 -0
  113. data/stdlib/logger/0/severity.rbs +26 -0
  114. data/stdlib/monitor/0/monitor.rbs +163 -0
  115. data/stdlib/mutex_m/0/mutex_m.rbs +35 -6
  116. data/stdlib/net-http/0/net-http.rbs +1492 -683
  117. data/stdlib/nkf/0/nkf.rbs +372 -0
  118. data/stdlib/objspace/0/objspace.rbs +149 -90
  119. data/stdlib/openssl/0/openssl.rbs +8108 -71
  120. data/stdlib/optparse/0/optparse.rbs +487 -19
  121. data/stdlib/pathname/0/pathname.rbs +425 -124
  122. data/stdlib/prettyprint/0/prettyprint.rbs +120 -99
  123. data/stdlib/prime/0/integer-extension.rbs +20 -2
  124. data/stdlib/prime/0/prime.rbs +88 -21
  125. data/stdlib/pstore/0/pstore.rbs +102 -0
  126. data/stdlib/pty/0/pty.rbs +64 -14
  127. data/stdlib/resolv/0/resolv.rbs +420 -31
  128. data/stdlib/rubygems/0/basic_specification.rbs +4 -1
  129. data/stdlib/rubygems/0/config_file.rbs +33 -1
  130. data/stdlib/rubygems/0/dependency_installer.rbs +4 -3
  131. data/stdlib/rubygems/0/installer.rbs +13 -1
  132. data/stdlib/rubygems/0/path_support.rbs +4 -1
  133. data/stdlib/rubygems/0/platform.rbs +5 -1
  134. data/stdlib/rubygems/0/request_set.rbs +44 -2
  135. data/stdlib/rubygems/0/requirement.rbs +65 -2
  136. data/stdlib/rubygems/0/rubygems.rbs +407 -0
  137. data/stdlib/rubygems/0/source_list.rbs +13 -0
  138. data/stdlib/rubygems/0/specification.rbs +21 -1
  139. data/stdlib/rubygems/0/stream_ui.rbs +3 -1
  140. data/stdlib/rubygems/0/uninstaller.rbs +8 -1
  141. data/stdlib/rubygems/0/version.rbs +60 -157
  142. data/stdlib/securerandom/0/securerandom.rbs +44 -0
  143. data/stdlib/set/0/set.rbs +420 -106
  144. data/stdlib/shellwords/0/shellwords.rbs +55 -77
  145. data/stdlib/singleton/0/singleton.rbs +20 -0
  146. data/stdlib/socket/0/addrinfo.rbs +210 -9
  147. data/stdlib/socket/0/basic_socket.rbs +103 -11
  148. data/stdlib/socket/0/ip_socket.rbs +31 -9
  149. data/stdlib/socket/0/socket.rbs +586 -38
  150. data/stdlib/socket/0/tcp_server.rbs +22 -2
  151. data/stdlib/socket/0/tcp_socket.rbs +12 -1
  152. data/stdlib/socket/0/udp_socket.rbs +25 -2
  153. data/stdlib/socket/0/unix_server.rbs +22 -2
  154. data/stdlib/socket/0/unix_socket.rbs +45 -5
  155. data/stdlib/strscan/0/string_scanner.rbs +210 -9
  156. data/stdlib/tempfile/0/tempfile.rbs +58 -10
  157. data/stdlib/time/0/time.rbs +208 -116
  158. data/stdlib/timeout/0/timeout.rbs +10 -0
  159. data/stdlib/tmpdir/0/tmpdir.rbs +13 -4
  160. data/stdlib/tsort/0/cyclic.rbs +1 -0
  161. data/stdlib/tsort/0/interfaces.rbs +1 -0
  162. data/stdlib/tsort/0/tsort.rbs +42 -0
  163. data/stdlib/uri/0/common.rbs +57 -8
  164. data/stdlib/uri/0/file.rbs +55 -109
  165. data/stdlib/uri/0/ftp.rbs +6 -3
  166. data/stdlib/uri/0/generic.rbs +556 -327
  167. data/stdlib/uri/0/http.rbs +26 -115
  168. data/stdlib/uri/0/https.rbs +8 -102
  169. data/stdlib/uri/0/ldap.rbs +143 -137
  170. data/stdlib/uri/0/ldaps.rbs +8 -102
  171. data/stdlib/uri/0/mailto.rbs +3 -0
  172. data/stdlib/uri/0/rfc2396_parser.rbs +66 -26
  173. data/stdlib/uri/0/ws.rbs +6 -3
  174. data/stdlib/uri/0/wss.rbs +5 -3
  175. data/stdlib/yaml/0/dbm.rbs +151 -87
  176. data/stdlib/yaml/0/store.rbs +6 -0
  177. data/stdlib/zlib/0/zlib.rbs +90 -31
  178. metadata +17 -5
  179. data/lib/rbs/location.rb +0 -221
data/core/nil_class.rbs CHANGED
@@ -1,13 +1,23 @@
1
+ # <!-- rdoc-file=object.c -->
1
2
  # The class of the singleton object `nil`.
2
3
  #
3
4
  class NilClass
4
5
  public
5
6
 
7
+ # <!--
8
+ # rdoc-file=object.c
9
+ # - false & obj -> false
10
+ # - nil & obj -> false
11
+ # -->
6
12
  # And---Returns `false`. *obj* is always evaluated as it is the argument to a
7
13
  # method call---there is no short-circuit evaluation in this case.
8
14
  #
9
15
  def &: (untyped obj) -> bool
10
16
 
17
+ # <!--
18
+ # rdoc-file=object.c
19
+ # - obj === other -> true or false
20
+ # -->
11
21
  # Case Equality -- For class Object, effectively the same as calling `#==`, but
12
22
  # typically overridden by descendants to provide meaningful semantics in `case`
13
23
  # statements.
@@ -15,10 +25,19 @@ class NilClass
15
25
  def ===: (nil) -> true
16
26
  | (untyped obj) -> bool
17
27
 
28
+ # <!--
29
+ # rdoc-file=object.c
30
+ # - nil =~ other -> nil
31
+ # -->
18
32
  # Dummy pattern matching -- always returns nil.
19
33
  #
20
34
  def =~: (untyped obj) -> nil
21
35
 
36
+ # <!--
37
+ # rdoc-file=object.c
38
+ # - false ^ obj -> true or false
39
+ # - nil ^ obj -> true or false
40
+ # -->
22
41
  # Exclusive Or---If *obj* is `nil` or `false`, returns `false`; otherwise,
23
42
  # returns `true`.
24
43
  #
@@ -26,54 +45,99 @@ class NilClass
26
45
  | (false) -> false
27
46
  | (untyped obj) -> bool
28
47
 
48
+ # <!--
49
+ # rdoc-file=object.c
50
+ # - nil.inspect -> "nil"
51
+ # -->
29
52
  # Always returns the string "nil".
30
53
  #
31
54
  def inspect: () -> "nil"
32
55
 
56
+ # <!--
57
+ # rdoc-file=object.c
58
+ # - nil.nil? -> true
59
+ # -->
33
60
  # Only the object *nil* responds `true` to `nil?`.
34
61
  #
35
62
  def nil?: () -> bool
36
63
 
64
+ # <!--
65
+ # rdoc-file=rational.c
66
+ # - nil.rationalize([eps]) -> (0/1)
67
+ # -->
37
68
  # Returns zero as a rational. The optional argument `eps` is always ignored.
38
69
  #
39
70
  def rationalize: (?untyped eps) -> Rational
40
71
 
72
+ # <!--
73
+ # rdoc-file=object.c
74
+ # - nil.to_a -> []
75
+ # -->
41
76
  # Always returns an empty array.
42
77
  #
43
78
  # nil.to_a #=> []
44
79
  #
45
80
  def to_a: () -> [ ]
46
81
 
82
+ # <!--
83
+ # rdoc-file=complex.c
84
+ # - nil.to_c -> (0+0i)
85
+ # -->
47
86
  # Returns zero as a complex.
48
87
  #
49
88
  def to_c: () -> Complex
50
89
 
90
+ # <!--
91
+ # rdoc-file=nilclass.rb
92
+ # - nil.to_f -> 0.0
93
+ # -->
51
94
  # Always returns zero.
52
95
  #
53
96
  # nil.to_f #=> 0.0
54
97
  #
55
98
  def to_f: () -> Float
56
99
 
100
+ # <!--
101
+ # rdoc-file=object.c
102
+ # - nil.to_h -> {}
103
+ # -->
57
104
  # Always returns an empty hash.
58
105
  #
59
106
  # nil.to_h #=> {}
60
107
  #
61
108
  def to_h: () -> ::Hash[untyped, untyped]
62
109
 
110
+ # <!--
111
+ # rdoc-file=nilclass.rb
112
+ # - nil.to_i -> 0
113
+ # -->
63
114
  # Always returns zero.
64
115
  #
65
116
  # nil.to_i #=> 0
66
117
  #
67
118
  def to_i: () -> 0
68
119
 
120
+ # <!--
121
+ # rdoc-file=rational.c
122
+ # - nil.to_r -> (0/1)
123
+ # -->
69
124
  # Returns zero as a rational.
70
125
  #
71
126
  def to_r: () -> Rational
72
127
 
128
+ # <!--
129
+ # rdoc-file=object.c
130
+ # - nil.to_s -> ""
131
+ # -->
73
132
  # Always returns the empty string.
74
133
  #
75
134
  def to_s: () -> ""
76
135
 
136
+ # <!--
137
+ # rdoc-file=object.c
138
+ # - false | obj -> true or false
139
+ # - nil | obj -> true or false
140
+ # -->
77
141
  # Or---Returns `false` if *obj* is `nil` or `false`; `true` otherwise.
78
142
  #
79
143
  def |: (nil) -> false