rbs 3.3.2 → 3.4.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.
- checksums.yaml +4 -4
- data/.github/workflows/comments.yml +2 -5
- data/.github/workflows/ruby.yml +7 -8
- data/.github/workflows/typecheck.yml +37 -0
- data/CHANGELOG.md +65 -0
- data/Gemfile +1 -1
- data/Gemfile.lock +11 -11
- data/README.md +1 -0
- data/Rakefile +2 -2
- data/Steepfile +2 -2
- data/core/array.rbs +19 -49
- data/core/basic_object.rbs +2 -2
- data/core/comparable.rbs +17 -8
- data/core/complex.rbs +82 -43
- data/core/data.rbs +2 -4
- data/core/dir.rbs +635 -295
- data/core/enumerable.rbs +11 -18
- data/core/enumerator.rbs +37 -31
- data/core/errors.rbs +4 -0
- data/core/false_class.rbs +34 -15
- data/core/fiber.rbs +23 -0
- data/core/file.rbs +329 -120
- data/core/float.rbs +17 -32
- data/core/gc.rbs +17 -11
- data/core/hash.rbs +22 -44
- data/core/integer.rbs +82 -113
- data/core/io/buffer.rbs +90 -47
- data/core/io.rbs +54 -121
- data/core/kernel.rbs +442 -489
- data/core/match_data.rbs +55 -56
- data/core/module.rbs +45 -1
- data/core/nil_class.rbs +98 -35
- data/core/numeric.rbs +22 -32
- data/core/object_space/weak_key_map.rbs +102 -0
- data/core/process.rbs +1242 -655
- data/core/ractor.rbs +139 -120
- data/core/range.rbs +100 -4
- data/core/rational.rbs +0 -4
- data/core/rbs/unnamed/argf.rbs +16 -8
- data/core/rbs/unnamed/env_class.rbs +0 -24
- data/core/refinement.rbs +8 -0
- data/core/regexp.rbs +1149 -598
- data/core/ruby_vm.rbs +126 -12
- data/core/rubygems/platform.rbs +9 -0
- data/core/rubygems/rubygems.rbs +1 -1
- data/core/rubygems/version.rbs +5 -1
- data/core/set.rbs +20 -22
- data/core/signal.rbs +4 -4
- data/core/string.rbs +283 -230
- data/core/string_io.rbs +2 -14
- data/core/struct.rbs +404 -24
- data/core/symbol.rbs +1 -19
- data/core/thread.rbs +29 -12
- data/core/time.rbs +227 -104
- data/core/trace_point.rbs +2 -5
- data/core/true_class.rbs +54 -21
- data/core/warning.rbs +14 -11
- data/docs/data_and_struct.md +29 -0
- data/docs/gem.md +58 -0
- data/docs/syntax.md +3 -5
- data/docs/tools.md +1 -0
- data/ext/rbs_extension/lexer.c +643 -559
- data/ext/rbs_extension/lexer.re +5 -1
- data/ext/rbs_extension/parser.c +12 -3
- data/ext/rbs_extension/unescape.c +7 -47
- data/lib/rbs/cli/diff.rb +4 -1
- data/lib/rbs/cli/validate.rb +280 -0
- data/lib/rbs/cli.rb +2 -194
- data/lib/rbs/collection/config.rb +5 -6
- data/lib/rbs/collection/sources/git.rb +1 -1
- data/lib/rbs/collection.rb +1 -0
- data/lib/rbs/diff.rb +7 -4
- data/lib/rbs/errors.rb +11 -0
- data/lib/rbs/test/errors.rb +10 -2
- data/lib/rbs/test/guaranteed.rb +2 -3
- data/lib/rbs/test/type_check.rb +15 -10
- data/lib/rbs/test.rb +3 -3
- data/lib/rbs/types.rb +29 -0
- data/lib/rbs/unit_test/convertibles.rb +176 -0
- data/lib/rbs/unit_test/spy.rb +136 -0
- data/lib/rbs/unit_test/type_assertions.rb +341 -0
- data/lib/rbs/unit_test/with_aliases.rb +143 -0
- data/lib/rbs/unit_test.rb +6 -0
- data/lib/rbs/version.rb +1 -1
- data/sig/cli/validate.rbs +43 -0
- data/sig/diff.rbs +3 -1
- data/sig/errors.rbs +8 -0
- data/sig/rbs.rbs +1 -1
- data/sig/test/errors.rbs +52 -0
- data/sig/test/guranteed.rbs +9 -0
- data/sig/test/type_check.rbs +19 -0
- data/sig/test.rbs +82 -0
- data/sig/types.rbs +6 -1
- data/sig/unit_test/convertibles.rbs +154 -0
- data/sig/unit_test/spy.rbs +28 -0
- data/sig/unit_test/type_assertions.rbs +194 -0
- data/sig/unit_test/with_aliases.rbs +136 -0
- data/stdlib/base64/0/base64.rbs +307 -45
- data/stdlib/bigdecimal/0/big_decimal.rbs +35 -15
- data/stdlib/coverage/0/coverage.rbs +2 -2
- data/stdlib/csv/0/csv.rbs +25 -55
- data/stdlib/date/0/date.rbs +1 -43
- data/stdlib/date/0/date_time.rbs +1 -13
- data/stdlib/delegate/0/delegator.rbs +186 -0
- data/stdlib/delegate/0/kernel.rbs +47 -0
- data/stdlib/delegate/0/simple_delegator.rbs +98 -0
- data/stdlib/did_you_mean/0/did_you_mean.rbs +1 -1
- data/stdlib/erb/0/erb.rbs +2 -2
- data/stdlib/fileutils/0/fileutils.rbs +0 -19
- data/stdlib/io-console/0/io-console.rbs +12 -1
- data/stdlib/ipaddr/0/ipaddr.rbs +2 -1
- data/stdlib/json/0/json.rbs +320 -81
- data/stdlib/logger/0/logger.rbs +9 -5
- data/stdlib/minitest/0/minitest/test/lifecycle_hooks.rbs +6 -6
- data/stdlib/monitor/0/monitor.rbs +78 -0
- data/stdlib/net-http/0/net-http.rbs +1880 -543
- data/stdlib/objspace/0/objspace.rbs +19 -13
- data/stdlib/openssl/0/openssl.rbs +508 -127
- data/stdlib/optparse/0/optparse.rbs +25 -11
- data/stdlib/pathname/0/pathname.rbs +1 -1
- data/stdlib/pp/0/pp.rbs +2 -5
- data/stdlib/prettyprint/0/prettyprint.rbs +2 -2
- data/stdlib/pstore/0/pstore.rbs +2 -4
- data/stdlib/rdoc/0/comment.rbs +1 -2
- data/stdlib/resolv/0/resolv.rbs +4 -2
- data/stdlib/socket/0/socket.rbs +2 -2
- data/stdlib/socket/0/unix_socket.rbs +2 -2
- data/stdlib/strscan/0/string_scanner.rbs +3 -2
- data/stdlib/tempfile/0/tempfile.rbs +1 -1
- data/stdlib/uri/0/common.rbs +245 -123
- metadata +24 -4
- data/lib/rbs/test/spy.rb +0 -6
|
@@ -4,9 +4,9 @@
|
|
|
4
4
|
#
|
|
5
5
|
# You need to `require 'objspace'` to use this extension module.
|
|
6
6
|
#
|
|
7
|
-
# Generally, you
|
|
8
|
-
# implementation. Mainly, this library is for (memory) profiler
|
|
9
|
-
# MRI developers who need to know about MRI memory usage.
|
|
7
|
+
# Generally, you **SHOULD** **NOT** use this library if you do not know about
|
|
8
|
+
# the MRI implementation. Mainly, this library is for (memory) profiler
|
|
9
|
+
# developers and MRI developers who need to know about MRI memory usage.
|
|
10
10
|
#
|
|
11
11
|
%a{annotate:rdoc:source:from=ext/objspace}
|
|
12
12
|
module ObjectSpace
|
|
@@ -233,12 +233,20 @@ module ObjectSpace
|
|
|
233
233
|
|
|
234
234
|
# <!--
|
|
235
235
|
# rdoc-file=ext/objspace/lib/objspace.rb
|
|
236
|
-
# -
|
|
237
|
-
# - ObjectSpace.dump(obj, output: :file) -> #<File:/tmp/rubyobj20131125-88733-1xkfmpv.json>
|
|
238
|
-
# - ObjectSpace.dump(obj, output: :stdout) -> nil
|
|
236
|
+
# - dump(obj, output: :string)
|
|
239
237
|
# -->
|
|
240
238
|
# Dump the contents of a ruby object as JSON.
|
|
241
239
|
#
|
|
240
|
+
# *output* can be one of: `:stdout`, `:file`, `:string`, or IO object.
|
|
241
|
+
#
|
|
242
|
+
# * `:file` means dumping to a tempfile and returning corresponding File
|
|
243
|
+
# object;
|
|
244
|
+
# * `:stdout` means printing the dump and returning `nil`;
|
|
245
|
+
# * `:string` means returning a string with the dump;
|
|
246
|
+
# * if an instance of IO object is provided, the output goes there, and the
|
|
247
|
+
# object is returned.
|
|
248
|
+
#
|
|
249
|
+
#
|
|
242
250
|
# This method is only expected to work with C Ruby. This is an experimental
|
|
243
251
|
# method and is subject to change. In particular, the function signature and
|
|
244
252
|
# output format are not guaranteed to be compatible in future versions of ruby.
|
|
@@ -247,16 +255,14 @@ module ObjectSpace
|
|
|
247
255
|
|
|
248
256
|
# <!--
|
|
249
257
|
# rdoc-file=ext/objspace/lib/objspace.rb
|
|
250
|
-
# -
|
|
251
|
-
# - ObjectSpace.dump_all(output: :stdout) -> nil
|
|
252
|
-
# - ObjectSpace.dump_all(output: :string) -> "{...}\n{...}\n..."
|
|
253
|
-
# - ObjectSpace.dump_all(output: File.open('heap.json','w')) -> #<File:heap.json>
|
|
254
|
-
# - ObjectSpace.dump_all(output: :string, since: 42) -> "{...}\n{...}\n..."
|
|
258
|
+
# - dump_all(output: :file, full: false, since: nil, shapes: true)
|
|
255
259
|
# -->
|
|
256
260
|
# Dump the contents of the ruby heap as JSON.
|
|
257
261
|
#
|
|
258
|
-
# *
|
|
259
|
-
#
|
|
262
|
+
# *output* argument is the same as for #dump.
|
|
263
|
+
#
|
|
264
|
+
# *full* must be a boolean. If true, all heap slots are dumped including the
|
|
265
|
+
# empty ones (`T_NONE`).
|
|
260
266
|
#
|
|
261
267
|
# *since* must be a non-negative integer or `nil`.
|
|
262
268
|
#
|