rbs 2.0.0 → 2.2.2
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 +34 -0
- data/.github/workflows/ruby.yml +5 -0
- data/CHANGELOG.md +82 -0
- data/README.md +6 -1
- data/Rakefile +56 -21
- data/core/array.rbs +2866 -1086
- data/core/basic_object.rbs +150 -30
- data/core/binding.rbs +33 -0
- data/core/builtin.rbs +4 -4
- data/core/class.rbs +43 -5
- data/core/comparable.rbs +57 -0
- data/core/complex.rbs +170 -4
- data/core/constants.rbs +51 -0
- data/core/deprecated.rbs +7 -0
- data/core/dir.rbs +305 -20
- data/core/encoding.rbs +1214 -77
- data/core/enumerable.rbs +2173 -234
- data/core/enumerator.rbs +448 -182
- data/core/env.rbs +448 -1
- data/core/errno.rbs +1 -10
- data/core/errors.rbs +152 -2
- data/core/exception.rbs +201 -127
- data/core/false_class.rbs +27 -0
- data/core/fiber.rbs +118 -37
- data/core/fiber_error.rbs +8 -9
- data/core/file.rbs +1060 -142
- data/core/file_test.rbs +287 -32
- data/core/float.rbs +776 -300
- data/core/gc.rbs +185 -34
- data/core/global_variables.rbs +5 -1
- data/core/hash.rbs +1582 -649
- data/core/integer.rbs +974 -204
- data/core/io/buffer.rbs +710 -0
- data/core/io/wait.rbs +29 -8
- data/core/io.rbs +2438 -417
- data/core/kernel.rbs +2319 -318
- data/core/marshal.rbs +37 -2
- data/core/match_data.rbs +123 -6
- data/core/math.rbs +126 -6
- data/core/method.rbs +226 -102
- data/core/module.rbs +421 -45
- data/core/nil_class.rbs +64 -0
- data/core/numeric.rbs +620 -142
- data/core/object.rbs +453 -81
- data/core/object_space.rbs +92 -2
- data/core/proc.rbs +482 -285
- data/core/process.rbs +443 -34
- data/core/ractor.rbs +232 -9
- data/core/random.rbs +151 -52
- data/core/range.rbs +885 -160
- data/core/rational.rbs +122 -6
- data/core/rb_config.rbs +14 -4
- data/core/refinement.rbs +44 -0
- data/core/regexp.rbs +156 -14
- data/core/ruby_vm.rbs +42 -3
- data/core/signal.rbs +78 -39
- data/core/string.rbs +2123 -567
- data/core/string_io.rbs +204 -0
- data/core/struct.rbs +283 -28
- data/core/symbol.rbs +304 -30
- data/core/thread.rbs +1288 -688
- data/core/thread_group.rbs +66 -10
- data/core/time.rbs +643 -217
- data/core/trace_point.rbs +100 -12
- data/core/true_class.rbs +24 -0
- data/core/unbound_method.rbs +73 -7
- data/core/warning.rbs +37 -12
- data/docs/CONTRIBUTING.md +40 -34
- data/docs/stdlib.md +3 -102
- data/docs/syntax.md +54 -11
- data/ext/rbs_extension/extconf.rb +1 -0
- data/ext/rbs_extension/lexer.h +5 -0
- data/ext/rbs_extension/lexstate.c +6 -0
- data/ext/rbs_extension/parser.c +85 -10
- data/ext/rbs_extension/ruby_objs.c +4 -2
- data/ext/rbs_extension/ruby_objs.h +2 -2
- data/goodcheck.yml +0 -11
- data/lib/rbs/annotate/annotations.rb +197 -0
- data/lib/rbs/annotate/formatter.rb +80 -0
- data/lib/rbs/annotate/rdoc_annotator.rb +398 -0
- data/lib/rbs/annotate/rdoc_source.rb +120 -0
- data/lib/rbs/annotate.rb +6 -0
- data/lib/rbs/ast/members.rb +21 -13
- data/lib/rbs/buffer.rb +17 -11
- data/lib/rbs/cli.rb +48 -1
- data/lib/rbs/definition_builder/method_builder.rb +28 -16
- data/lib/rbs/definition_builder.rb +6 -2
- data/lib/rbs/environment.rb +8 -4
- data/lib/rbs/location_aux.rb +12 -0
- data/lib/rbs/namespace.rb +1 -1
- data/lib/rbs/prototype/rb.rb +12 -0
- data/lib/rbs/type_alias_regularity.rb +6 -4
- data/lib/rbs/type_name.rb +1 -1
- data/lib/rbs/types.rb +1 -1
- data/lib/rbs/validator.rb +6 -0
- data/lib/rbs/version.rb +1 -1
- data/lib/rbs/writer.rb +54 -4
- data/lib/rbs.rb +0 -2
- data/schema/typeParam.json +3 -3
- data/sig/annotate/annotations.rbs +102 -0
- data/sig/annotate/formatter.rbs +24 -0
- data/sig/annotate/rdoc_annotater.rbs +82 -0
- data/sig/annotate/rdoc_source.rbs +30 -0
- data/sig/buffer.rbs +6 -2
- data/sig/cli.rbs +2 -0
- data/sig/collection/{collections.rbs → sources.rbs} +0 -0
- data/sig/location.rbs +6 -0
- data/sig/members.rbs +24 -18
- data/sig/method_builder.rbs +5 -4
- data/sig/method_types.rbs +5 -1
- data/sig/polyfill.rbs +78 -0
- data/sig/validator.rbs +3 -1
- data/sig/writer.rbs +79 -2
- data/stdlib/abbrev/0/abbrev.rbs +6 -0
- data/stdlib/abbrev/0/array.rbs +26 -0
- data/stdlib/base64/0/base64.rbs +31 -0
- data/stdlib/benchmark/0/benchmark.rbs +74 -3
- data/stdlib/bigdecimal/0/big_decimal.rbs +614 -165
- data/stdlib/bigdecimal-math/0/big_math.rbs +41 -64
- data/stdlib/cgi/0/core.rbs +649 -21
- data/stdlib/coverage/0/coverage.rbs +164 -2
- data/stdlib/csv/0/csv.rbs +2862 -398
- data/stdlib/date/0/date.rbs +483 -25
- data/stdlib/date/0/date_time.rbs +187 -12
- data/stdlib/dbm/0/dbm.rbs +152 -17
- data/stdlib/digest/0/digest.rbs +146 -0
- data/stdlib/erb/0/erb.rbs +65 -245
- data/stdlib/fiber/0/fiber.rbs +73 -91
- data/stdlib/fileutils/0/fileutils.rbs +301 -1
- data/stdlib/find/0/find.rbs +9 -0
- data/stdlib/forwardable/0/forwardable.rbs +65 -1
- data/stdlib/io-console/0/io-console.rbs +227 -15
- data/stdlib/ipaddr/0/ipaddr.rbs +161 -0
- data/stdlib/json/0/json.rbs +1147 -145
- data/stdlib/logger/0/formatter.rbs +24 -0
- data/stdlib/logger/0/log_device.rbs +64 -0
- data/stdlib/logger/0/logger.rbs +165 -13
- data/stdlib/logger/0/period.rbs +10 -0
- data/stdlib/logger/0/severity.rbs +26 -0
- data/stdlib/monitor/0/monitor.rbs +163 -0
- data/stdlib/mutex_m/0/mutex_m.rbs +35 -6
- data/stdlib/net-http/0/manifest.yaml +1 -0
- data/stdlib/net-http/0/net-http.rbs +1513 -683
- data/stdlib/nkf/0/nkf.rbs +372 -0
- data/stdlib/objspace/0/objspace.rbs +149 -90
- data/stdlib/openssl/0/openssl.rbs +8108 -71
- data/stdlib/optparse/0/optparse.rbs +487 -19
- data/stdlib/pathname/0/pathname.rbs +425 -124
- data/stdlib/prettyprint/0/prettyprint.rbs +120 -99
- data/stdlib/prime/0/integer-extension.rbs +20 -2
- data/stdlib/prime/0/prime.rbs +88 -21
- data/stdlib/pstore/0/pstore.rbs +102 -0
- data/stdlib/pty/0/pty.rbs +64 -14
- data/stdlib/resolv/0/resolv.rbs +420 -31
- data/stdlib/rubygems/0/basic_specification.rbs +4 -1
- data/stdlib/rubygems/0/config_file.rbs +33 -1
- data/stdlib/rubygems/0/dependency_installer.rbs +4 -3
- data/stdlib/rubygems/0/installer.rbs +13 -1
- data/stdlib/rubygems/0/path_support.rbs +4 -1
- data/stdlib/rubygems/0/platform.rbs +5 -1
- data/stdlib/rubygems/0/request_set.rbs +44 -2
- data/stdlib/rubygems/0/requirement.rbs +65 -2
- data/stdlib/rubygems/0/rubygems.rbs +407 -0
- data/stdlib/rubygems/0/source_list.rbs +13 -0
- data/stdlib/rubygems/0/specification.rbs +21 -1
- data/stdlib/rubygems/0/stream_ui.rbs +3 -1
- data/stdlib/rubygems/0/uninstaller.rbs +8 -1
- data/stdlib/rubygems/0/version.rbs +60 -157
- data/stdlib/securerandom/0/securerandom.rbs +44 -0
- data/stdlib/set/0/set.rbs +423 -109
- data/stdlib/shellwords/0/shellwords.rbs +55 -77
- data/stdlib/singleton/0/singleton.rbs +20 -0
- data/stdlib/socket/0/addrinfo.rbs +210 -9
- data/stdlib/socket/0/basic_socket.rbs +103 -11
- data/stdlib/socket/0/ip_socket.rbs +31 -9
- data/stdlib/socket/0/socket.rbs +586 -38
- data/stdlib/socket/0/tcp_server.rbs +22 -2
- data/stdlib/socket/0/tcp_socket.rbs +12 -1
- data/stdlib/socket/0/udp_socket.rbs +25 -2
- data/stdlib/socket/0/unix_server.rbs +22 -2
- data/stdlib/socket/0/unix_socket.rbs +45 -5
- data/stdlib/strscan/0/string_scanner.rbs +210 -9
- data/stdlib/tempfile/0/tempfile.rbs +58 -10
- data/stdlib/time/0/time.rbs +208 -116
- data/stdlib/timeout/0/timeout.rbs +10 -0
- data/stdlib/tmpdir/0/tmpdir.rbs +13 -4
- data/stdlib/tsort/0/cyclic.rbs +1 -0
- data/stdlib/tsort/0/interfaces.rbs +1 -0
- data/stdlib/tsort/0/tsort.rbs +42 -0
- data/stdlib/uri/0/common.rbs +57 -8
- data/stdlib/uri/0/file.rbs +55 -109
- data/stdlib/uri/0/ftp.rbs +6 -3
- data/stdlib/uri/0/generic.rbs +558 -329
- data/stdlib/uri/0/http.rbs +60 -114
- data/stdlib/uri/0/https.rbs +8 -102
- data/stdlib/uri/0/ldap.rbs +143 -137
- data/stdlib/uri/0/ldaps.rbs +8 -102
- data/stdlib/uri/0/mailto.rbs +3 -0
- data/stdlib/uri/0/rfc2396_parser.rbs +66 -26
- data/stdlib/uri/0/ws.rbs +6 -3
- data/stdlib/uri/0/wss.rbs +5 -3
- data/stdlib/yaml/0/dbm.rbs +151 -87
- data/stdlib/yaml/0/store.rbs +6 -0
- data/stdlib/zlib/0/zlib.rbs +90 -31
- metadata +18 -6
- data/lib/rbs/location.rb +0 -221
- data/sig/char_scanner.rbs +0 -9
data/core/thread_group.rbs
CHANGED
|
@@ -1,23 +1,79 @@
|
|
|
1
|
-
#
|
|
2
|
-
# keeping track of a number of threads as a
|
|
3
|
-
#
|
|
4
|
-
# A given [Thread](https://ruby-doc.org/core-2.6.3/Thread.html) object can
|
|
5
|
-
# only belong to one [ThreadGroup](ThreadGroup) at a
|
|
6
|
-
# time; adding a thread to a new group will remove it from any previous
|
|
1
|
+
# <!-- rdoc-file=thread.c -->
|
|
2
|
+
# ThreadGroup provides a means of keeping track of a number of threads as a
|
|
7
3
|
# group.
|
|
8
4
|
#
|
|
9
|
-
#
|
|
10
|
-
#
|
|
5
|
+
# A given Thread object can only belong to one ThreadGroup at a time; adding a
|
|
6
|
+
# thread to a new group will remove it from any previous group.
|
|
7
|
+
#
|
|
8
|
+
# Newly created threads belong to the same group as the thread from which they
|
|
9
|
+
# were created.
|
|
10
|
+
#
|
|
11
11
|
class ThreadGroup < Object
|
|
12
|
+
# <!--
|
|
13
|
+
# rdoc-file=thread.c
|
|
14
|
+
# - thgrp.add(thread) -> thgrp
|
|
15
|
+
# -->
|
|
16
|
+
# Adds the given `thread` to this group, removing it from any other group to
|
|
17
|
+
# which it may have previously been a member.
|
|
18
|
+
#
|
|
19
|
+
# puts "Initial group is #{ThreadGroup::Default.list}"
|
|
20
|
+
# tg = ThreadGroup.new
|
|
21
|
+
# t1 = Thread.new { sleep }
|
|
22
|
+
# t2 = Thread.new { sleep }
|
|
23
|
+
# puts "t1 is #{t1}"
|
|
24
|
+
# puts "t2 is #{t2}"
|
|
25
|
+
# tg.add(t1)
|
|
26
|
+
# puts "Initial group now #{ThreadGroup::Default.list}"
|
|
27
|
+
# puts "tg group now #{tg.list}"
|
|
28
|
+
#
|
|
29
|
+
# This will produce:
|
|
30
|
+
#
|
|
31
|
+
# Initial group is #<Thread:0x401bdf4c>
|
|
32
|
+
# t1 is #<Thread:0x401b3c90>
|
|
33
|
+
# t2 is #<Thread:0x401b3c18>
|
|
34
|
+
# Initial group now #<Thread:0x401b3c18>#<Thread:0x401bdf4c>
|
|
35
|
+
# tg group now #<Thread:0x401b3c90>
|
|
36
|
+
#
|
|
12
37
|
def add: (Thread thread) -> ThreadGroup
|
|
13
38
|
|
|
39
|
+
# <!--
|
|
40
|
+
# rdoc-file=thread.c
|
|
41
|
+
# - thgrp.enclose -> thgrp
|
|
42
|
+
# -->
|
|
43
|
+
# Prevents threads from being added to or removed from the receiving
|
|
44
|
+
# ThreadGroup.
|
|
45
|
+
#
|
|
46
|
+
# New threads can still be started in an enclosed ThreadGroup.
|
|
47
|
+
#
|
|
48
|
+
# ThreadGroup::Default.enclose #=> #<ThreadGroup:0x4029d914>
|
|
49
|
+
# thr = Thread.new { Thread.stop } #=> #<Thread:0x402a7210 sleep>
|
|
50
|
+
# tg = ThreadGroup.new #=> #<ThreadGroup:0x402752d4>
|
|
51
|
+
# tg.add thr
|
|
52
|
+
# #=> ThreadError: can't move from the enclosed thread group
|
|
53
|
+
#
|
|
14
54
|
def enclose: () -> self
|
|
15
55
|
|
|
16
|
-
#
|
|
17
|
-
#
|
|
56
|
+
# <!--
|
|
57
|
+
# rdoc-file=thread.c
|
|
58
|
+
# - thgrp.enclosed? -> true or false
|
|
59
|
+
# -->
|
|
60
|
+
# Returns `true` if the `thgrp` is enclosed. See also ThreadGroup#enclose.
|
|
61
|
+
#
|
|
18
62
|
def enclosed?: () -> bool
|
|
19
63
|
|
|
64
|
+
# <!--
|
|
65
|
+
# rdoc-file=thread.c
|
|
66
|
+
# - thgrp.list -> array
|
|
67
|
+
# -->
|
|
68
|
+
# Returns an array of all existing Thread objects that belong to this group.
|
|
69
|
+
#
|
|
70
|
+
# ThreadGroup::Default.list #=> [#<Thread:0x401bdf4c run>]
|
|
71
|
+
#
|
|
20
72
|
def list: () -> ::Array[Thread]
|
|
21
73
|
end
|
|
22
74
|
|
|
75
|
+
# <!-- rdoc-file=thread.c -->
|
|
76
|
+
# The default ThreadGroup created when Ruby starts; all Threads belong to it by
|
|
77
|
+
# default.
|
|
78
|
+
#
|
|
23
79
|
ThreadGroup::Default: ThreadGroup
|