rbs 0.3.1 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (82) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ruby.yml +7 -1
  3. data/.gitignore +1 -1
  4. data/CHANGELOG.md +39 -0
  5. data/COPYING +1 -1
  6. data/Gemfile +16 -2
  7. data/README.md +87 -48
  8. data/Rakefile +54 -22
  9. data/bin/rbs-prof +9 -0
  10. data/bin/run_in_md.rb +49 -0
  11. data/bin/test_runner.rb +0 -2
  12. data/docs/sigs.md +6 -6
  13. data/docs/stdlib.md +3 -5
  14. data/docs/syntax.md +6 -3
  15. data/goodcheck.yml +65 -0
  16. data/lib/rbs.rb +3 -0
  17. data/lib/rbs/ast/declarations.rb +115 -14
  18. data/lib/rbs/ast/members.rb +41 -17
  19. data/lib/rbs/cli.rb +315 -122
  20. data/lib/rbs/constant.rb +4 -4
  21. data/lib/rbs/constant_table.rb +51 -45
  22. data/lib/rbs/definition.rb +175 -59
  23. data/lib/rbs/definition_builder.rb +802 -604
  24. data/lib/rbs/environment.rb +352 -210
  25. data/lib/rbs/environment_walker.rb +14 -23
  26. data/lib/rbs/errors.rb +184 -3
  27. data/lib/rbs/factory.rb +14 -0
  28. data/lib/rbs/parser.y +95 -27
  29. data/lib/rbs/prototype/rb.rb +119 -117
  30. data/lib/rbs/prototype/rbi.rb +5 -3
  31. data/lib/rbs/prototype/runtime.rb +34 -7
  32. data/lib/rbs/substitution.rb +12 -1
  33. data/lib/rbs/test.rb +82 -3
  34. data/lib/rbs/test/errors.rb +5 -1
  35. data/lib/rbs/test/hook.rb +133 -259
  36. data/lib/rbs/test/observer.rb +17 -0
  37. data/lib/rbs/test/setup.rb +35 -19
  38. data/lib/rbs/test/setup_helper.rb +29 -0
  39. data/lib/rbs/test/spy.rb +0 -321
  40. data/lib/rbs/test/tester.rb +116 -0
  41. data/lib/rbs/test/type_check.rb +43 -7
  42. data/lib/rbs/type_name_resolver.rb +58 -0
  43. data/lib/rbs/types.rb +94 -2
  44. data/lib/rbs/validator.rb +51 -0
  45. data/lib/rbs/variance_calculator.rb +12 -2
  46. data/lib/rbs/version.rb +1 -1
  47. data/lib/rbs/writer.rb +127 -91
  48. data/rbs.gemspec +0 -9
  49. data/schema/annotation.json +14 -0
  50. data/schema/comment.json +26 -0
  51. data/schema/decls.json +353 -0
  52. data/schema/function.json +87 -0
  53. data/schema/location.json +56 -0
  54. data/schema/members.json +248 -0
  55. data/schema/methodType.json +44 -0
  56. data/schema/types.json +299 -0
  57. data/stdlib/benchmark/benchmark.rbs +151 -151
  58. data/stdlib/builtin/encoding.rbs +2 -0
  59. data/stdlib/builtin/enumerable.rbs +4 -4
  60. data/stdlib/builtin/enumerator.rbs +3 -1
  61. data/stdlib/builtin/fiber.rbs +5 -1
  62. data/stdlib/builtin/file.rbs +0 -3
  63. data/stdlib/builtin/io.rbs +4 -4
  64. data/stdlib/builtin/proc.rbs +1 -2
  65. data/stdlib/builtin/symbol.rbs +1 -1
  66. data/stdlib/builtin/thread.rbs +2 -2
  67. data/stdlib/csv/csv.rbs +4 -6
  68. data/stdlib/fiber/fiber.rbs +117 -0
  69. data/stdlib/json/json.rbs +1 -1
  70. data/stdlib/logger/formatter.rbs +23 -0
  71. data/stdlib/logger/log_device.rbs +39 -0
  72. data/stdlib/logger/logger.rbs +507 -0
  73. data/stdlib/logger/period.rbs +7 -0
  74. data/stdlib/logger/severity.rbs +8 -0
  75. data/stdlib/mutex_m/mutex_m.rbs +77 -0
  76. data/stdlib/pathname/pathname.rbs +6 -6
  77. data/stdlib/prime/integer-extension.rbs +1 -1
  78. data/stdlib/prime/prime.rbs +44 -44
  79. data/stdlib/pty/pty.rbs +159 -0
  80. data/stdlib/tmpdir/tmpdir.rbs +1 -1
  81. metadata +28 -116
  82. data/lib/rbs/test/test_helper.rb +0 -183
@@ -0,0 +1,7 @@
1
+ module Logger::Period
2
+ def self?.next_rotate_time: (Time now, String shift_age) -> untyped
3
+
4
+ def self?.previous_period_end: (Time now, String shift_age) -> untyped
5
+
6
+ SiD: Integer
7
+ end
@@ -0,0 +1,8 @@
1
+ module Logger::Severity
2
+ DEBUG: 0
3
+ INFO: 1
4
+ WARN: 2
5
+ ERROR: 3
6
+ FATAL: 4
7
+ UNKNOWN: 5
8
+ end
@@ -0,0 +1,77 @@
1
+ # # mutex_m.rb
2
+ #
3
+ # When 'mutex_m' is required, any object that extends or includes Mutex_m will
4
+ # be treated like a Mutex.
5
+ #
6
+ # Start by requiring the standard library Mutex_m:
7
+ #
8
+ # require "mutex_m.rb"
9
+ #
10
+ # From here you can extend an object with Mutex instance methods:
11
+ #
12
+ # obj = Object.new
13
+ # obj.extend Mutex_m
14
+ #
15
+ # Or mixin Mutex_m into your module to your class inherit Mutex instance methods
16
+ # --- remember to call super() in your class initialize method.
17
+ #
18
+ # class Foo
19
+ # include Mutex_m
20
+ # def initialize
21
+ # # ...
22
+ # super()
23
+ # end
24
+ # # ...
25
+ # end
26
+ # obj = Foo.new
27
+ # # this obj can be handled like Mutex
28
+ #
29
+ module Mutex_m
30
+ def self.append_features: (Module cl) -> untyped
31
+
32
+ def self.define_aliases: (Module cl) -> untyped
33
+
34
+ def self.extend_object: (Object obj) -> untyped
35
+
36
+ public
37
+
38
+ def mu_extended: () -> untyped
39
+
40
+ # See Mutex#lock
41
+ #
42
+ def mu_lock: () -> Thread::Mutex
43
+
44
+ # See Mutex#locked?
45
+ #
46
+ def mu_locked?: () -> bool
47
+
48
+ # See Mutex#synchronize
49
+ #
50
+ def mu_synchronize: [T] () { () -> T } -> T
51
+
52
+ # See Mutex#try_lock
53
+ #
54
+ def mu_try_lock: () -> bool
55
+
56
+ # See Mutex#unlock
57
+ #
58
+ def mu_unlock: () -> Thread::Mutex
59
+
60
+ # See Mutex#sleep
61
+ #
62
+ def sleep: (?Numeric timeout) -> Integer
63
+
64
+ alias locked? mu_locked?
65
+ alias lock mu_lock
66
+ alias unlock mu_unlock
67
+ alias try_lock mu_try_lock
68
+ alias synchronize mu_synchronize
69
+
70
+ private
71
+
72
+ def initialize: (*untyped args) -> untyped
73
+
74
+ def mu_initialize: () -> untyped
75
+ end
76
+
77
+ Mutex_m::VERSION: String
@@ -1066,17 +1066,17 @@ class Pathname
1066
1066
  def prepend_prefix: (untyped prefix, untyped relpath) -> untyped
1067
1067
 
1068
1068
  def split_names: (untyped path) -> untyped
1069
- end
1070
1069
 
1071
- Pathname::SAME_PATHS: Proc
1070
+ SAME_PATHS: Proc
1072
1071
 
1073
- Pathname::SEPARATOR_LIST: String
1072
+ SEPARATOR_LIST: String
1074
1073
 
1075
- Pathname::SEPARATOR_PAT: Regexp
1074
+ SEPARATOR_PAT: Regexp
1076
1075
 
1077
- Pathname::TO_PATH: Symbol
1076
+ TO_PATH: Symbol
1077
+ end
1078
1078
 
1079
- extension Kernel (Pathname)
1079
+ module Kernel
1080
1080
  # Creates a new Pathname object from the given string, `path`, and returns
1081
1081
  # pathname object.
1082
1082
  #
@@ -1,4 +1,4 @@
1
- extension Integer (Prime)
1
+ class Integer
2
2
  # Iterates the given block over all prime numbers.
3
3
  #
4
4
  # See Prime#each for more details.
@@ -129,60 +129,60 @@ class Prime
129
129
  # Returns the singleton instance.
130
130
  #
131
131
  def self.instance: () -> Prime
132
- end
133
132
 
134
- # An abstract class for enumerating pseudo-prime numbers.
135
- #
136
- # Concrete subclasses should override succ, next, rewind.
137
- #
138
- class Prime::PseudoPrimeGenerator
139
- def initialize: (?Integer?) -> void
133
+ # An abstract class for enumerating pseudo-prime numbers.
134
+ #
135
+ # Concrete subclasses should override succ, next, rewind.
136
+ #
137
+ class PseudoPrimeGenerator
138
+ def initialize: (?Integer?) -> void
140
139
 
141
- include Enumerable[Integer, void]
140
+ include Enumerable[Integer, void]
142
141
 
143
- attr_accessor upper_bound (): Integer?
142
+ attr_accessor upper_bound (): Integer?
144
143
 
145
- # Iterates the given block for each prime number.
146
- #
147
- def each: () { (Integer) -> void } -> void
144
+ # Iterates the given block for each prime number.
145
+ #
146
+ def each: () { (Integer) -> void } -> void
148
147
 
149
- # alias of `succ`.
150
- #
151
- def next: () -> Integer
148
+ # alias of `succ`.
149
+ #
150
+ def next: () -> Integer
152
151
 
153
- # Rewinds the internal position for enumeration.
154
- #
155
- # See `Enumerator`#rewind.
156
- #
157
- def rewind: () -> void
152
+ # Rewinds the internal position for enumeration.
153
+ #
154
+ # See `Enumerator`#rewind.
155
+ #
156
+ def rewind: () -> void
158
157
 
159
- def size: () -> Float
158
+ def size: () -> Float
160
159
 
161
- # returns the next pseudo-prime number, and move the internal position forward.
160
+ # returns the next pseudo-prime number, and move the internal position forward.
161
+ #
162
+ # `PseudoPrimeGenerator`#succ raises `NotImplementedError`.
163
+ #
164
+ def succ: () -> Integer
165
+ end
166
+
167
+ # An implementation of `PseudoPrimeGenerator`.
162
168
  #
163
- # `PseudoPrimeGenerator`#succ raises `NotImplementedError`.
169
+ # Uses `EratosthenesSieve`.
164
170
  #
165
- def succ: () -> Integer
166
- end
167
-
168
- # An implementation of `PseudoPrimeGenerator`.
169
- #
170
- # Uses `EratosthenesSieve`.
171
- #
172
- class Prime::EratosthenesGenerator < PseudoPrimeGenerator
173
- end
171
+ class EratosthenesGenerator < PseudoPrimeGenerator
172
+ end
174
173
 
175
- # An implementation of `PseudoPrimeGenerator` which uses a prime table generated
176
- # by trial division.
177
- #
178
- class Prime::TrialDivisionGenerator < PseudoPrimeGenerator
179
- end
174
+ # An implementation of `PseudoPrimeGenerator` which uses a prime table generated
175
+ # by trial division.
176
+ #
177
+ class TrialDivisionGenerator < PseudoPrimeGenerator
178
+ end
180
179
 
181
- # Generates all integers which are greater than 2 and are not divisible by
182
- # either 2 or 3.
183
- #
184
- # This is a pseudo-prime generator, suitable on checking primality of an integer
185
- # by brute force method.
186
- #
187
- class Prime::Generator23 < PseudoPrimeGenerator
180
+ # Generates all integers which are greater than 2 and are not divisible by
181
+ # either 2 or 3.
182
+ #
183
+ # This is a pseudo-prime generator, suitable on checking primality of an integer
184
+ # by brute force method.
185
+ #
186
+ class Generator23 < PseudoPrimeGenerator
187
+ end
188
188
  end
@@ -0,0 +1,159 @@
1
+ # Creates and manages pseudo terminals (PTYs). See also
2
+ # http://en.wikipedia.org/wiki/Pseudo_terminal
3
+ #
4
+ # PTY allows you to allocate new terminals using ::open or ::spawn a new
5
+ # terminal with a specific command.
6
+ #
7
+ # ## Example
8
+ #
9
+ # In this example we will change the buffering type in the `factor` command,
10
+ # assuming that factor uses stdio for stdout buffering.
11
+ #
12
+ # If IO.pipe is used instead of PTY.open, this code deadlocks because factor's
13
+ # stdout is fully buffered.
14
+ #
15
+ # # start by requiring the standard library PTY
16
+ # require 'pty'
17
+ #
18
+ # master, slave = PTY.open
19
+ # read, write = IO.pipe
20
+ # pid = spawn("factor", :in=>read, :out=>slave)
21
+ # read.close # we dont need the read
22
+ # slave.close # or the slave
23
+ #
24
+ # # pipe "42" to the factor command
25
+ # write.puts "42"
26
+ # # output the response from factor
27
+ # p master.gets #=> "42: 2 3 7\n"
28
+ #
29
+ # # pipe "144" to factor and print out the response
30
+ # write.puts "144"
31
+ # p master.gets #=> "144: 2 2 2 2 3 3\n"
32
+ # write.close # close the pipe
33
+ #
34
+ # # The result of read operation when pty slave is closed is platform
35
+ # # dependent.
36
+ # ret = begin
37
+ # master.gets # FreeBSD returns nil.
38
+ # rescue Errno::EIO # GNU/Linux raises EIO.
39
+ # nil
40
+ # end
41
+ # p ret #=> nil
42
+ #
43
+ # ## License
44
+ #
45
+ # C) Copyright 1998 by Akinori Ito.
46
+ #
47
+ # This software may be redistributed freely for this purpose, in full
48
+ # or in part, provided that this entire copyright notice is included
49
+ # on any copies of this software and applications and derivations thereof.
50
+ #
51
+ # This software is provided on an "as is" basis, without warranty of any
52
+ # kind, either expressed or implied, as to any matter including, but not
53
+ # limited to warranty of fitness of purpose, or merchantability, or
54
+ # results obtained from use of this software.
55
+ #
56
+ module PTY
57
+ # Checks the status of the child process specified by `pid`. Returns `nil` if
58
+ # the process is still alive.
59
+ #
60
+ # If the process is not alive, and `raise` was true, a PTY::ChildExited
61
+ # exception will be raised. Otherwise it will return a Process::Status instance.
62
+ #
63
+ # `pid`
64
+ # : The process id of the process to check
65
+ # `raise`
66
+ # : If `true` and the process identified by `pid` is no longer alive a
67
+ # PTY::ChildExited is raised.
68
+ def self.check: (Integer pid) -> (Process::Status | nil)
69
+ | (Integer pid, FalseClass raise) -> (Process::Status | nil)
70
+ | (Integer pid, TrueClass raise) -> nil
71
+
72
+ # Spawns the specified command on a newly allocated pty. You can also use the
73
+ # alias ::getpty.
74
+ #
75
+ # The command's controlling tty is set to the slave device of the pty and its
76
+ # standard input/output/error is redirected to the slave device.
77
+ #
78
+ # `command` and `command_line` are the full commands to run, given a String. Any
79
+ # additional `arguments` will be passed to the command.
80
+ #
81
+ # ### Return values
82
+ #
83
+ # In the non-block form this returns an array of size three, `[r, w, pid]`.
84
+ #
85
+ # In the block form these same values will be yielded to the block:
86
+ #
87
+ # `r`
88
+ # : A readable IO that contains the command's standard output and standard
89
+ # error
90
+ # `w`
91
+ # : A writable IO that is the command's standard input
92
+ # `pid`
93
+ # : The process identifier for the command.
94
+ def self.getpty: (*String command) -> [ IO, IO, Integer ]
95
+ | (*String command) { ([ IO ,IO , Integer ]) -> untyped } -> untyped
96
+
97
+ # Allocates a pty (pseudo-terminal).
98
+ #
99
+ # In the block form, yields two arguments `master_io, slave_file` and the value
100
+ # of the block is returned from `open`.
101
+ #
102
+ # The IO and File are both closed after the block completes if they haven't been
103
+ # already closed.
104
+ #
105
+ # PTY.open {|master, slave|
106
+ # p master #=> #<IO:masterpty:/dev/pts/1>
107
+ # p slave #=> #<File:/dev/pts/1>
108
+ # p slave.path #=> "/dev/pts/1"
109
+ # }
110
+ #
111
+ # In the non-block form, returns a two element array, `[master_io, slave_file]`.
112
+ #
113
+ # master, slave = PTY.open
114
+ # # do something with master for IO, or the slave file
115
+ #
116
+ # The arguments in both forms are:
117
+ #
118
+ # `master_io`
119
+ # : the master of the pty, as an IO.
120
+ # `slave_file`
121
+ # : the slave of the pty, as a File. The path to the terminal device is
122
+ # available via `slave_file.path`
123
+ #
124
+ #
125
+ # IO#raw! is usable to disable newline conversions:
126
+ #
127
+ # require 'io/console'
128
+ # PTY.open {|m, s|
129
+ # s.raw!
130
+ # ...
131
+ # }
132
+ def self.open: () -> [ IO, File ]
133
+ | () { ([ IO , File ]) -> untyped } -> untyped
134
+
135
+ # Spawns the specified command on a newly allocated pty. You can also use the
136
+ # alias ::getpty.
137
+ #
138
+ # The command's controlling tty is set to the slave device of the pty and its
139
+ # standard input/output/error is redirected to the slave device.
140
+ #
141
+ # `command` and `command_line` are the full commands to run, given a String. Any
142
+ # additional `arguments` will be passed to the command.
143
+ #
144
+ # ### Return values
145
+ #
146
+ # In the non-block form this returns an array of size three, `[r, w, pid]`.
147
+ #
148
+ # In the block form these same values will be yielded to the block:
149
+ #
150
+ # `r`
151
+ # : A readable IO that contains the command's standard output and standard
152
+ # error
153
+ # `w`
154
+ # : A writable IO that is the command's standard input
155
+ # `pid`
156
+ # : The process identifier for the command.
157
+ def self.spawn: (*String command) -> [ IO, IO, Integer ]
158
+ | (*String command) {([ IO , IO , Integer ]) -> untyped } -> untyped
159
+ end
@@ -1,4 +1,4 @@
1
- extension Dir (tmpdir)
1
+ class Dir
2
2
  # Returns the operating system's temporary file path.
3
3
  #
4
4
  def self.tmpdir: () -> String
metadata CHANGED
@@ -1,127 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbs
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Soutaro Matsumoto
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-05-22 00:00:00.000000000 Z
12
- dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: bundler
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - ">="
18
- - !ruby/object:Gem::Version
19
- version: '0'
20
- type: :development
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - ">="
25
- - !ruby/object:Gem::Version
26
- version: '0'
27
- - !ruby/object:Gem::Dependency
28
- name: rake
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - "~>"
32
- - !ruby/object:Gem::Version
33
- version: '13.0'
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - "~>"
39
- - !ruby/object:Gem::Version
40
- version: '13.0'
41
- - !ruby/object:Gem::Dependency
42
- name: minitest
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - "~>"
46
- - !ruby/object:Gem::Version
47
- version: '5.0'
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - "~>"
53
- - !ruby/object:Gem::Version
54
- version: '5.0'
55
- - !ruby/object:Gem::Dependency
56
- name: racc
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - "~>"
60
- - !ruby/object:Gem::Version
61
- version: 1.4.16
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - "~>"
67
- - !ruby/object:Gem::Version
68
- version: 1.4.16
69
- - !ruby/object:Gem::Dependency
70
- name: rubocop
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - ">="
74
- - !ruby/object:Gem::Version
75
- version: '0'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: '0'
83
- - !ruby/object:Gem::Dependency
84
- name: rubocop-rubycw
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - ">="
88
- - !ruby/object:Gem::Version
89
- version: '0'
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- version: '0'
97
- - !ruby/object:Gem::Dependency
98
- name: minitest-reporters
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - "~>"
102
- - !ruby/object:Gem::Version
103
- version: 1.3.6
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - "~>"
109
- - !ruby/object:Gem::Version
110
- version: 1.3.6
111
- - !ruby/object:Gem::Dependency
112
- name: json
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - "~>"
116
- - !ruby/object:Gem::Version
117
- version: 2.3.0
118
- type: :development
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - "~>"
123
- - !ruby/object:Gem::Version
124
- version: 2.3.0
11
+ date: 2020-08-01 00:00:00.000000000 Z
12
+ dependencies: []
125
13
  description: RBS is the language for type signatures for Ruby and standard library
126
14
  definitions.
127
15
  email:
@@ -143,6 +31,8 @@ files:
143
31
  - bin/annotate-with-rdoc
144
32
  - bin/console
145
33
  - bin/query-rdoc
34
+ - bin/rbs-prof
35
+ - bin/run_in_md.rb
146
36
  - bin/setup
147
37
  - bin/sort
148
38
  - bin/test_runner.rb
@@ -151,6 +41,7 @@ files:
151
41
  - docs/stdlib.md
152
42
  - docs/syntax.md
153
43
  - exe/rbs
44
+ - goodcheck.yml
154
45
  - lib/rbs.rb
155
46
  - lib/rbs/ast/annotation.rb
156
47
  - lib/rbs/ast/comment.rb
@@ -167,6 +58,7 @@ files:
167
58
  - lib/rbs/environment_loader.rb
168
59
  - lib/rbs/environment_walker.rb
169
60
  - lib/rbs/errors.rb
61
+ - lib/rbs/factory.rb
170
62
  - lib/rbs/location.rb
171
63
  - lib/rbs/method_type.rb
172
64
  - lib/rbs/namespace.rb
@@ -179,18 +71,30 @@ files:
179
71
  - lib/rbs/test.rb
180
72
  - lib/rbs/test/errors.rb
181
73
  - lib/rbs/test/hook.rb
74
+ - lib/rbs/test/observer.rb
182
75
  - lib/rbs/test/setup.rb
76
+ - lib/rbs/test/setup_helper.rb
183
77
  - lib/rbs/test/spy.rb
184
- - lib/rbs/test/test_helper.rb
78
+ - lib/rbs/test/tester.rb
185
79
  - lib/rbs/test/type_check.rb
186
80
  - lib/rbs/type_name.rb
81
+ - lib/rbs/type_name_resolver.rb
187
82
  - lib/rbs/types.rb
83
+ - lib/rbs/validator.rb
188
84
  - lib/rbs/variance_calculator.rb
189
85
  - lib/rbs/vendorer.rb
190
86
  - lib/rbs/version.rb
191
87
  - lib/rbs/writer.rb
192
88
  - lib/ruby/signature.rb
193
89
  - rbs.gemspec
90
+ - schema/annotation.json
91
+ - schema/comment.json
92
+ - schema/decls.json
93
+ - schema/function.json
94
+ - schema/location.json
95
+ - schema/members.json
96
+ - schema/methodType.json
97
+ - schema/types.json
194
98
  - stdlib/abbrev/abbrev.rbs
195
99
  - stdlib/base64/base64.rbs
196
100
  - stdlib/benchmark/benchmark.rbs
@@ -253,12 +157,20 @@ files:
253
157
  - stdlib/coverage/coverage.rbs
254
158
  - stdlib/csv/csv.rbs
255
159
  - stdlib/erb/erb.rbs
160
+ - stdlib/fiber/fiber.rbs
256
161
  - stdlib/find/find.rbs
257
162
  - stdlib/ipaddr/ipaddr.rbs
258
163
  - stdlib/json/json.rbs
164
+ - stdlib/logger/formatter.rbs
165
+ - stdlib/logger/log_device.rbs
166
+ - stdlib/logger/logger.rbs
167
+ - stdlib/logger/period.rbs
168
+ - stdlib/logger/severity.rbs
169
+ - stdlib/mutex_m/mutex_m.rbs
259
170
  - stdlib/pathname/pathname.rbs
260
171
  - stdlib/prime/integer-extension.rbs
261
172
  - stdlib/prime/prime.rbs
173
+ - stdlib/pty/pty.rbs
262
174
  - stdlib/securerandom/securerandom.rbs
263
175
  - stdlib/set/set.rbs
264
176
  - stdlib/tmpdir/tmpdir.rbs