rbs 3.4.4 → 3.5.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.
- checksums.yaml +4 -4
- data/.github/dependabot.yml +12 -4
- data/.github/workflows/dependabot.yml +26 -0
- data/.github/workflows/ruby.yml +14 -1
- data/CHANGELOG.md +87 -1
- data/README.md +5 -3
- data/Rakefile +20 -3
- data/Steepfile +1 -1
- data/core/enumerator.rbs +1 -1
- data/core/float.rbs +2 -1
- data/core/gc.rbs +272 -150
- data/core/integer.rbs +6 -4
- data/core/io/wait.rbs +4 -4
- data/core/io.rbs +10 -3
- data/core/kernel.rbs +8 -7
- data/core/module.rbs +17 -4
- data/core/proc.rbs +1 -1
- data/core/range.rbs +2 -2
- data/core/rational.rbs +2 -1
- data/core/regexp.rbs +101 -90
- data/core/ruby_vm.rbs +107 -103
- data/core/rubygems/rubygems.rbs +1 -1
- data/core/set.rbs +13 -7
- data/core/string.rbs +3 -3
- data/core/symbol.rbs +2 -1
- data/core/thread.rbs +1 -1
- data/core/time.rbs +24 -4
- data/docs/architecture.md +110 -0
- data/docs/gem.md +0 -1
- data/docs/syntax.md +5 -1
- data/ext/rbs_extension/constants.c +2 -0
- data/ext/rbs_extension/constants.h +1 -0
- data/ext/rbs_extension/lexer.c +1338 -1341
- data/ext/rbs_extension/lexer.h +2 -0
- data/ext/rbs_extension/lexer.re +2 -3
- data/ext/rbs_extension/lexstate.c +5 -1
- data/ext/rbs_extension/location.c +80 -70
- data/ext/rbs_extension/location.h +25 -5
- data/ext/rbs_extension/parser.c +149 -43
- data/ext/rbs_extension/parserstate.c +12 -1
- data/ext/rbs_extension/parserstate.h +9 -0
- data/ext/rbs_extension/ruby_objs.c +13 -3
- data/ext/rbs_extension/ruby_objs.h +1 -0
- data/lib/rbs/cli/validate.rb +2 -2
- data/lib/rbs/cli.rb +4 -6
- data/lib/rbs/collection/config.rb +1 -1
- data/lib/rbs/collection/sources/git.rb +1 -6
- data/lib/rbs/definition_builder/method_builder.rb +1 -1
- data/lib/rbs/definition_builder.rb +8 -8
- data/lib/rbs/diff.rb +1 -1
- data/lib/rbs/environment_loader.rb +2 -1
- data/lib/rbs/errors.rb +0 -14
- data/lib/rbs/location_aux.rb +6 -1
- data/lib/rbs/parser/lex_result.rb +15 -0
- data/lib/rbs/parser/token.rb +23 -0
- data/lib/rbs/parser_aux.rb +12 -5
- data/lib/rbs/prototype/helpers.rb +22 -12
- data/lib/rbs/prototype/rb.rb +38 -4
- data/lib/rbs/prototype/rbi.rb +30 -20
- data/lib/rbs/test/errors.rb +19 -14
- data/lib/rbs/test/tester.rb +1 -1
- data/lib/rbs/test/type_check.rb +95 -16
- data/lib/rbs/types.rb +112 -13
- data/lib/rbs/unit_test/spy.rb +1 -1
- data/lib/rbs/version.rb +1 -1
- data/rbs.gemspec +7 -2
- data/sig/environment_loader.rbs +1 -1
- data/sig/errors.rbs +1 -1
- data/sig/manifest.yaml +0 -1
- data/sig/method_types.rbs +3 -3
- data/sig/parser.rbs +28 -0
- data/sig/prototype/helpers.rbs +4 -0
- data/sig/prototype/rbi.rbs +2 -0
- data/sig/types.rbs +54 -4
- data/sig/variance_calculator.rbs +2 -2
- data/stdlib/csv/0/csv.rbs +4 -1
- data/stdlib/fileutils/0/fileutils.rbs +1 -1
- data/stdlib/net-http/0/net-http.rbs +29 -27
- data/stdlib/socket/0/socket.rbs +2 -2
- data/stdlib/timeout/0/timeout.rbs +6 -0
- data/stdlib/uri/0/generic.rbs +2 -2
- data/stdlib/uri/0/http.rbs +2 -2
- data/stdlib/uri/0/mailto.rbs +84 -0
- metadata +7 -9
- data/Gemfile +0 -30
- data/Gemfile.lock +0 -117
- data/lib/rbs/parser_compat/lexer_error.rb +0 -6
- data/lib/rbs/parser_compat/located_value.rb +0 -7
- data/lib/rbs/parser_compat/semantics_error.rb +0 -6
- data/lib/rbs/parser_compat/syntax_error.rb +0 -6
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 3dc7a972ca885618f8bcb3beb35d5096ddd9cc3dc6880fb6ae6b06d4a1845be0
|
|
4
|
+
data.tar.gz: 3fd84cf6a4869385f16e98cb1319855fcc1fcc242e16731b6bbdd5d249f1df8a
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 0b79dcac9fa9f94eff95b2c098208784f45e8ee891b94202f8e82886d15e0af04bbb26acdff5428277470536cfef164f79b5a1f73ded288b320600bd15568500
|
|
7
|
+
data.tar.gz: c0c6f53213e0b0aac09747c2aef470548b2b872b8ace2647ebdedca292a55b8aa0dbbebfa5c3ff75c47d3f76e87643f23f75883cacc49726fd778f95e1c3ee9e
|
data/.github/dependabot.yml
CHANGED
|
@@ -1,13 +1,21 @@
|
|
|
1
1
|
version: 2
|
|
2
2
|
updates:
|
|
3
|
-
- package-ecosystem:
|
|
3
|
+
- package-ecosystem: bundler
|
|
4
4
|
directory: "/"
|
|
5
5
|
schedule:
|
|
6
|
-
interval:
|
|
7
|
-
|
|
6
|
+
interval: daily
|
|
7
|
+
open-pull-requests-limit: 3
|
|
8
|
+
allow:
|
|
9
|
+
- dependency-type: all
|
|
10
|
+
|
|
11
|
+
- package-ecosystem: bundler
|
|
8
12
|
directory: "/steep"
|
|
9
13
|
schedule:
|
|
10
|
-
interval:
|
|
14
|
+
interval: daily
|
|
15
|
+
open-pull-requests-limit: 3
|
|
16
|
+
allow:
|
|
17
|
+
- dependency-type: all
|
|
18
|
+
|
|
11
19
|
- package-ecosystem: 'github-actions'
|
|
12
20
|
directory: '/'
|
|
13
21
|
schedule:
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
name: Merge dependabot PRs automatically
|
|
2
|
+
on: pull_request_target
|
|
3
|
+
|
|
4
|
+
permissions:
|
|
5
|
+
pull-requests: write
|
|
6
|
+
contents: write
|
|
7
|
+
|
|
8
|
+
env:
|
|
9
|
+
blocker_files: rbs.gemspec Gemfile steep/Gemfile
|
|
10
|
+
|
|
11
|
+
jobs:
|
|
12
|
+
dependabot:
|
|
13
|
+
runs-on: ubuntu-latest
|
|
14
|
+
if: ${{ github.actor == 'dependabot[bot]' }}
|
|
15
|
+
steps:
|
|
16
|
+
- name: Checkout repository
|
|
17
|
+
uses: actions/checkout@v4
|
|
18
|
+
with:
|
|
19
|
+
fetch-depth: 0
|
|
20
|
+
- name: Abort if blocker files are changed
|
|
21
|
+
run: git diff --exit-code ${{ github.event.pull_request.base.sha }} ${{ github.event.pull_request.head.sha }} ${{ env.blocker_files }}
|
|
22
|
+
- name: Enable auto-merge for Dependabot PRs
|
|
23
|
+
run: gh pr merge --auto --merge "$PR_URL"
|
|
24
|
+
env:
|
|
25
|
+
PR_URL: ${{github.event.pull_request.html_url}}
|
|
26
|
+
GH_TOKEN: ${{secrets.DEPENDABOT_MERGE_GH_TOKEN}}
|
data/.github/workflows/ruby.yml
CHANGED
|
@@ -14,6 +14,7 @@ jobs:
|
|
|
14
14
|
fail-fast: false
|
|
15
15
|
matrix:
|
|
16
16
|
ruby: ['3.0', '3.1', '3.2', '3.3', head]
|
|
17
|
+
rubyopt: [""]
|
|
17
18
|
job:
|
|
18
19
|
- test
|
|
19
20
|
include:
|
|
@@ -21,10 +22,18 @@ jobs:
|
|
|
21
22
|
job: stdlib_test rubocop
|
|
22
23
|
- ruby: "3.3"
|
|
23
24
|
job: stdlib_test
|
|
25
|
+
- ruby: "3.3"
|
|
26
|
+
job: test
|
|
27
|
+
rubyopt: "--enable-frozen-string-literal"
|
|
28
|
+
- ruby: "3.3"
|
|
29
|
+
job: stdlib_test
|
|
30
|
+
rubyopt: "--enable-frozen-string-literal"
|
|
24
31
|
- ruby: "3.3"
|
|
25
32
|
job: lexer compile confirm_lexer
|
|
26
33
|
- ruby: "3.3"
|
|
27
|
-
job: rubocop validate test_doc build test_generate_stdlib
|
|
34
|
+
job: rubocop validate test_doc build test_generate_stdlib raap
|
|
35
|
+
- ruby: "3.3"
|
|
36
|
+
job: typecheck_test
|
|
28
37
|
steps:
|
|
29
38
|
- uses: actions/checkout@v4
|
|
30
39
|
- uses: ruby/setup-ruby@v1
|
|
@@ -57,6 +66,10 @@ jobs:
|
|
|
57
66
|
echo "NO_MINITEST=true" >> $GITHUB_ENV
|
|
58
67
|
bundle config set --local without 'minitest'
|
|
59
68
|
if: ${{ contains(matrix.ruby, 'head') }}
|
|
69
|
+
- name: Skip installing type checkers
|
|
70
|
+
if: ${{ ! contains(matrix.job, 'typecheck_test') }}
|
|
71
|
+
run: |
|
|
72
|
+
bundle config set without 'typecheck_test'
|
|
60
73
|
- name: bin/setup
|
|
61
74
|
run: |
|
|
62
75
|
bin/setup
|
data/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,92 @@
|
|
|
1
1
|
# CHANGELOG
|
|
2
2
|
|
|
3
|
-
##
|
|
3
|
+
## 3.5.1 (2024-06-07)
|
|
4
|
+
|
|
5
|
+
### Library changes
|
|
6
|
+
|
|
7
|
+
* Add explicit dependency on the `logger` gem ([#1865](https://github.com/ruby/rbs/pull/1865))
|
|
8
|
+
* Make c99, c23 compatible ([#1870](https://github.com/ruby/rbs/pull/1870))
|
|
9
|
+
|
|
10
|
+
### Miscellaneous
|
|
11
|
+
|
|
12
|
+
* Don't try to sign git commits when running tests ([#1867](https://github.com/ruby/rbs/pull/1867))
|
|
13
|
+
|
|
14
|
+
## 3.5.0 (2024-06-06)
|
|
15
|
+
|
|
16
|
+
### Signature updates
|
|
17
|
+
|
|
18
|
+
* `net-http` headers ([#1750](https://github.com/ruby/rbs/pull/1750))
|
|
19
|
+
* `CSV.foreach` ([#1738](https://github.com/ruby/rbs/pull/1738))
|
|
20
|
+
* `Enumerator#initialize` ([#1801](https://github.com/ruby/rbs/pull/1801))
|
|
21
|
+
* `Float#divmod`, `Rational#divmod` ([#1868](https://github.com/ruby/rbs/pull/1868))
|
|
22
|
+
* `GC` ([#1530](https://github.com/ruby/rbs/pull/1530))
|
|
23
|
+
* `Integer#pow` ([#1706](https://github.com/ruby/rbs/pull/1706))
|
|
24
|
+
* `Kernel.rand` ([#1783](https://github.com/ruby/rbs/pull/1783))
|
|
25
|
+
* `Kernel#extend` ([#1769](https://github.com/ruby/rbs/pull/1769))
|
|
26
|
+
* `Module#include`, `Module#prepend` ([#1769](https://github.com/ruby/rbs/pull/1769))
|
|
27
|
+
* `Proc#parameters` ([#1819](https://github.com/ruby/rbs/pull/1819))
|
|
28
|
+
* `Range#step` ([#1709](https://github.com/ruby/rbs/pull/1709))
|
|
29
|
+
* `Regexp.union` ([#1809](https://github.com/ruby/rbs/pull/1809))
|
|
30
|
+
* `RubyVM::YJIT.enable` ([#1812](https://github.com/ruby/rbs/pull/1812))
|
|
31
|
+
* `RubyVM::YJIT`, `RubyVM::RJIT` ([#1746](https://github.com/ruby/rbs/pull/1746))
|
|
32
|
+
* `String#bytesplice` ([#1793](https://github.com/ruby/rbs/pull/1793))
|
|
33
|
+
* `String#gsub!` ([#1768](https://github.com/ruby/rbs/pull/1768))
|
|
34
|
+
* `Symbol#=~` ([#1704](https://github.com/ruby/rbs/pull/1704))
|
|
35
|
+
* `Time#initialize` ([#1771](https://github.com/ruby/rbs/pull/1771))
|
|
36
|
+
* `Time#zone` ([#1770](https://github.com/ruby/rbs/pull/1770))
|
|
37
|
+
* `Timeout::ExitException` ([#1803](https://github.com/ruby/rbs/pull/1803))
|
|
38
|
+
* `URI::MailTo` ([#1858](https://github.com/ruby/rbs/pull/1858))
|
|
39
|
+
* Update docs ([#1811](https://github.com/ruby/rbs/pull/1811), [#1699](https://github.com/ruby/rbs/pull/1699))
|
|
40
|
+
|
|
41
|
+
### Language updates
|
|
42
|
+
|
|
43
|
+
* Fix proc type syntax ([#1807](https://github.com/ruby/rbs/pull/1807))
|
|
44
|
+
* Function types with untyped parameter ([#1806](https://github.com/ruby/rbs/pull/1806))
|
|
45
|
+
* Fix record type ([#1732](https://github.com/ruby/rbs/pull/1732))
|
|
46
|
+
* parser: enable record types with optional fields ([#1717](https://github.com/ruby/rbs/pull/1717))
|
|
47
|
+
|
|
48
|
+
### Library changes
|
|
49
|
+
|
|
50
|
+
* Drop dependency on `abbrev` ([#1866](https://github.com/ruby/rbs/pull/1866))
|
|
51
|
+
* Fix source display ([#1832](https://github.com/ruby/rbs/pull/1832))
|
|
52
|
+
* Include trivia tokens to lex result ([#1831](https://github.com/ruby/rbs/pull/1831))
|
|
53
|
+
* Implement token list API ([#1829](https://github.com/ruby/rbs/pull/1829))
|
|
54
|
+
* Fix memory leak when ParsingError ([#1830](https://github.com/ruby/rbs/pull/1830))
|
|
55
|
+
* [rbs diff] Fix error when empty manifest.yaml ([#1762](https://github.com/ruby/rbs/pull/1762))
|
|
56
|
+
* Remove deprecated API since RBS v1 ([#1805](https://github.com/ruby/rbs/pull/1805))
|
|
57
|
+
* Use array instead of linked list for rbs location's child ([#1786](https://github.com/ruby/rbs/pull/1786))
|
|
58
|
+
* Fix SEGV with parse negative position ([#1790](https://github.com/ruby/rbs/pull/1790))
|
|
59
|
+
* Add location for attribute ([#1787](https://github.com/ruby/rbs/pull/1787))
|
|
60
|
+
* Always be private ([#1774](https://github.com/ruby/rbs/pull/1774))
|
|
61
|
+
* Prevent resource leak with type/method-type parser when reaching EOF. ([#1742](https://github.com/ruby/rbs/pull/1742))
|
|
62
|
+
* Allow loading RBS from different version of a gem ([#1731](https://github.com/ruby/rbs/pull/1731))
|
|
63
|
+
* Fix method name tag on assertion ([#1705](https://github.com/ruby/rbs/pull/1705))
|
|
64
|
+
* Improve interface check by method parameters ([#1698](https://github.com/ruby/rbs/pull/1698))
|
|
65
|
+
|
|
66
|
+
#### rbs prototype
|
|
67
|
+
|
|
68
|
+
* Fix prototype for ruby-3.4 ([#1760](https://github.com/ruby/rbs/pull/1760))
|
|
69
|
+
* Fix 3.4 `prototype rb` failure ([#1713](https://github.com/ruby/rbs/pull/1713))
|
|
70
|
+
* Add Numeric Node's check for parse rbs ([#1711](https://github.com/ruby/rbs/pull/1711))
|
|
71
|
+
|
|
72
|
+
#### rbs collection
|
|
73
|
+
|
|
74
|
+
* Fix RBS loading precedence ([#1720](https://github.com/ruby/rbs/pull/1720))
|
|
75
|
+
* Refactor Git source by using `git?` method ([#1701](https://github.com/ruby/rbs/pull/1701))
|
|
76
|
+
|
|
77
|
+
### Miscellaneous
|
|
78
|
+
|
|
79
|
+
* Introduce RaaP for testing of signature ([#1810](https://github.com/ruby/rbs/pull/1810))
|
|
80
|
+
* Revise .gemspec to remove `Gemfile` and `Gemfile.lock` ([#1856](https://github.com/ruby/rbs/pull/1856))
|
|
81
|
+
* Add link to gem_rbs_collection to README ([#1827](https://github.com/ruby/rbs/pull/1827))
|
|
82
|
+
* Remove `Gemfile.lock` from the gem package ([#1823](https://github.com/ruby/rbs/pull/1823))
|
|
83
|
+
* Modify template to use TestHelper ([#1776](https://github.com/ruby/rbs/pull/1776))
|
|
84
|
+
* Should focus on `String.new` not `String#initialize`. ([#1789](https://github.com/ruby/rbs/pull/1789))
|
|
85
|
+
* Make the test suite compatible with `--enable-frozen-string-literal` ([#1767](https://github.com/ruby/rbs/pull/1767))
|
|
86
|
+
* Stop reusing `fd` ([#1752](https://github.com/ruby/rbs/pull/1752))
|
|
87
|
+
* Fix test failures on Ruby 3.4 ([#1734](https://github.com/ruby/rbs/pull/1734))
|
|
88
|
+
* Stop trace object allocations during test ([#1724](https://github.com/ruby/rbs/pull/1724))
|
|
89
|
+
* Fix head test fails ([#1719](https://github.com/ruby/rbs/pull/1719))
|
|
4
90
|
|
|
5
91
|
## 3.4.4 (2024-02-08)
|
|
6
92
|
|
data/README.md
CHANGED
|
@@ -69,7 +69,7 @@ gem "rbs"
|
|
|
69
69
|
|
|
70
70
|
The gem ships with the `rbs` command line tool to demonstrate what it can do and help develop RBS.
|
|
71
71
|
|
|
72
|
-
```
|
|
72
|
+
```console
|
|
73
73
|
$ rbs version
|
|
74
74
|
$ rbs list
|
|
75
75
|
$ rbs ancestors ::Object
|
|
@@ -98,7 +98,7 @@ end
|
|
|
98
98
|
|
|
99
99
|
Running prototype on the above will automatically generate
|
|
100
100
|
|
|
101
|
-
```
|
|
101
|
+
```console
|
|
102
102
|
$ rbs prototype rb person.rb
|
|
103
103
|
class Person
|
|
104
104
|
@name: untyped
|
|
@@ -118,7 +118,7 @@ end
|
|
|
118
118
|
It prints signatures for all methods, classes, instance variables, and constants.
|
|
119
119
|
This is only a starting point, and you should edit the output to match your signature more accurately.
|
|
120
120
|
|
|
121
|
-
`rbs
|
|
121
|
+
`rbs prototype` offers three options.
|
|
122
122
|
|
|
123
123
|
- `rb` generates from just the available Ruby code
|
|
124
124
|
- `rbi` generates from Sorbet RBI
|
|
@@ -174,6 +174,7 @@ puts singleton.methods[:gsub]
|
|
|
174
174
|
|
|
175
175
|
## Guides
|
|
176
176
|
|
|
177
|
+
- [Architecture](docs/architecture.md)
|
|
177
178
|
- [Core and standard library signature contribution guide](docs/CONTRIBUTING.md)
|
|
178
179
|
- [Writing signatures guide](docs/sigs.md)
|
|
179
180
|
- [Stdlib signatures guide](docs/stdlib.md)
|
|
@@ -189,6 +190,7 @@ Here is a list of some places you can talk with active maintainers.
|
|
|
189
190
|
|
|
190
191
|
- [Ruby Discord Server (invite link)](https://discord.gg/ad2acQFtkh) -- We have `rbs` channel in Ruby Discord server.
|
|
191
192
|
- [ruby-jp Slack Workspace (in Japanese)](https://ruby-jp.github.io/) -- We have `types` channel in ruby-jp slack workspace.
|
|
193
|
+
- [gem_rbs_collection](https://github.com/ruby/gem_rbs_collection) -- We have a repository of third-party RBS type definitions, for the case your dependency doesn't ship with RBS files.
|
|
192
194
|
|
|
193
195
|
## Development
|
|
194
196
|
|
data/Rakefile
CHANGED
|
@@ -19,7 +19,7 @@ Rake::TestTask.new(:test => :compile) do |t|
|
|
|
19
19
|
end
|
|
20
20
|
end
|
|
21
21
|
|
|
22
|
-
multitask :default => [:test, :stdlib_test, :rubocop, :validate, :test_doc]
|
|
22
|
+
multitask :default => [:test, :stdlib_test, :typecheck_test, :rubocop, :validate, :test_doc]
|
|
23
23
|
|
|
24
24
|
task :lexer do
|
|
25
25
|
sh "re2c -W --no-generation-date -o ext/rbs_extension/lexer.c ext/rbs_extension/lexer.re"
|
|
@@ -92,6 +92,23 @@ task :stdlib_test => :compile do
|
|
|
92
92
|
sh "#{ruby} -Ilib #{bin}/test_runner.rb test/stdlib/Encoding_test.rb"
|
|
93
93
|
end
|
|
94
94
|
|
|
95
|
+
task :typecheck_test => :compile do
|
|
96
|
+
FileList["test/typecheck/*"].each do |test|
|
|
97
|
+
Dir.chdir(test) do
|
|
98
|
+
expectations = File.join(test, "steep_expectations.yml")
|
|
99
|
+
if File.exist?(expectations)
|
|
100
|
+
sh "steep check --with_expectations"
|
|
101
|
+
else
|
|
102
|
+
sh "steep check"
|
|
103
|
+
end
|
|
104
|
+
end
|
|
105
|
+
end
|
|
106
|
+
end
|
|
107
|
+
|
|
108
|
+
task :raap => :compile do
|
|
109
|
+
sh %q[cat test/raap.txt | egrep -v '^#|^$' | xargs bundle exec raap]
|
|
110
|
+
end
|
|
111
|
+
|
|
95
112
|
task :rubocop do
|
|
96
113
|
sh "rubocop --parallel"
|
|
97
114
|
end
|
|
@@ -153,7 +170,7 @@ namespace :generate do
|
|
|
153
170
|
|
|
154
171
|
<%- unless class_methods.empty? -%>
|
|
155
172
|
class <%= target %>SingletonTest < Test::Unit::TestCase
|
|
156
|
-
include
|
|
173
|
+
include TestHelper
|
|
157
174
|
|
|
158
175
|
# library "pathname", "securerandom" # Declare library signatures to load
|
|
159
176
|
testing "singleton(::<%= target %>)"
|
|
@@ -172,7 +189,7 @@ namespace :generate do
|
|
|
172
189
|
|
|
173
190
|
<%- unless instance_methods.empty? -%>
|
|
174
191
|
class <%= target %>Test < Test::Unit::TestCase
|
|
175
|
-
include
|
|
192
|
+
include TestHelper
|
|
176
193
|
|
|
177
194
|
# library "pathname", "securerandom" # Declare library signatures to load
|
|
178
195
|
testing "::<%= target %>"
|
data/Steepfile
CHANGED
|
@@ -8,7 +8,7 @@ target :lib do
|
|
|
8
8
|
# "lib/rbs/test.rb"
|
|
9
9
|
)
|
|
10
10
|
|
|
11
|
-
library "pathname", "json", "logger", "monitor", "tsort", "uri", 'dbm', 'pstore', 'singleton', 'shellwords', 'fileutils', 'find', 'digest', '
|
|
11
|
+
library "pathname", "json", "logger", "monitor", "tsort", "uri", 'dbm', 'pstore', 'singleton', 'shellwords', 'fileutils', 'find', 'digest', 'prettyprint', 'yaml', "psych", "securerandom"
|
|
12
12
|
signature "stdlib/strscan/0/"
|
|
13
13
|
signature "stdlib/optparse/0/"
|
|
14
14
|
signature "stdlib/rdoc/0/"
|
data/core/enumerator.rbs
CHANGED
|
@@ -293,7 +293,7 @@ class Enumerator[unchecked out Elem, out Return] < Object
|
|
|
293
293
|
# lazy fashion (see Enumerator#size). It can either be a value or a callable
|
|
294
294
|
# object.
|
|
295
295
|
#
|
|
296
|
-
def initialize: (?Integer arg0) { (Enumerator::Yielder arg0) ->
|
|
296
|
+
def initialize: (?Integer arg0) { (Enumerator::Yielder arg0) -> Return } -> void
|
|
297
297
|
|
|
298
298
|
# <!--
|
|
299
299
|
# rdoc-file=enumerator.c
|
data/core/float.rbs
CHANGED
|
@@ -442,7 +442,8 @@ class Float < Numeric
|
|
|
442
442
|
# 13.0.divmod(4.0) # => [3, 1.0]
|
|
443
443
|
# 13.0.divmod(Rational(4, 1)) # => [3, 1.0]
|
|
444
444
|
#
|
|
445
|
-
def divmod: (
|
|
445
|
+
def divmod: (Integer | Float | Rational) -> [ Integer, Float ]
|
|
446
|
+
| (Numeric) -> [ Numeric, Numeric ]
|
|
446
447
|
|
|
447
448
|
def dup: () -> self
|
|
448
449
|
|