rigortype 0.0.8 → 0.0.9
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/README.md +195 -21
- data/data/builtins/ruby_core/encoding.yml +210 -0
- data/data/builtins/ruby_core/exception.yml +641 -0
- data/data/builtins/ruby_core/numeric.yml +3 -2
- data/data/builtins/ruby_core/proc.yml +731 -0
- data/data/builtins/ruby_core/random.yml +166 -0
- data/data/builtins/ruby_core/re.yml +689 -0
- data/data/builtins/ruby_core/struct.yml +449 -0
- data/lib/rigor/analysis/runner.rb +19 -3
- data/lib/rigor/builtins/imported_refinements.rb +6 -1
- data/lib/rigor/cache/rbs_class_ancestor_table.rb +63 -0
- data/lib/rigor/cache/rbs_class_type_param_names.rb +60 -0
- data/lib/rigor/cache/rbs_constant_table.rb +15 -51
- data/lib/rigor/cache/rbs_descriptor.rb +53 -0
- data/lib/rigor/cache/rbs_environment.rb +52 -0
- data/lib/rigor/cache/rbs_environment_marshal_patch.rb +40 -0
- data/lib/rigor/cache/rbs_known_class_names.rb +43 -0
- data/lib/rigor/cache/store.rb +79 -15
- data/lib/rigor/cli.rb +36 -4
- data/lib/rigor/environment/rbs_hierarchy.rb +18 -5
- data/lib/rigor/environment/rbs_loader.rb +137 -25
- data/lib/rigor/environment.rb +11 -2
- data/lib/rigor/flow_contribution.rb +128 -0
- data/lib/rigor/inference/builtins/encoding_catalog.rb +67 -0
- data/lib/rigor/inference/builtins/exception_catalog.rb +92 -0
- data/lib/rigor/inference/builtins/proc_catalog.rb +122 -0
- data/lib/rigor/inference/builtins/random_catalog.rb +58 -0
- data/lib/rigor/inference/builtins/re_catalog.rb +81 -0
- data/lib/rigor/inference/builtins/struct_catalog.rb +55 -0
- data/lib/rigor/inference/expression_typer.rb +26 -1
- data/lib/rigor/inference/method_dispatcher/constant_folding.rb +16 -1
- data/lib/rigor/inference/method_dispatcher/literal_string_folding.rb +87 -0
- data/lib/rigor/inference/method_dispatcher.rb +2 -0
- data/lib/rigor/inference/narrowing.rb +29 -14
- data/lib/rigor/rbs_extended.rb +55 -0
- data/lib/rigor/type/combinator.rb +72 -0
- data/lib/rigor/type/refined.rb +50 -2
- data/lib/rigor/version.rb +1 -1
- data/lib/rigor.rb +6 -0
- data/sig/rigor.rbs +3 -1
- metadata +21 -1
data/lib/rigor.rb
CHANGED
|
@@ -21,7 +21,13 @@ require_relative "rigor/scope"
|
|
|
21
21
|
require_relative "rigor/reflection"
|
|
22
22
|
require_relative "rigor/cache/descriptor"
|
|
23
23
|
require_relative "rigor/cache/store"
|
|
24
|
+
require_relative "rigor/cache/rbs_descriptor"
|
|
24
25
|
require_relative "rigor/cache/rbs_constant_table"
|
|
26
|
+
require_relative "rigor/cache/rbs_known_class_names"
|
|
27
|
+
require_relative "rigor/cache/rbs_class_ancestor_table"
|
|
28
|
+
require_relative "rigor/cache/rbs_class_type_param_names"
|
|
29
|
+
require_relative "rigor/cache/rbs_environment"
|
|
30
|
+
require_relative "rigor/flow_contribution"
|
|
25
31
|
require_relative "rigor/source"
|
|
26
32
|
require_relative "rigor/inference/scope_indexer"
|
|
27
33
|
require_relative "rigor/inference/coverage_scanner"
|
data/sig/rigor.rbs
CHANGED
|
@@ -63,7 +63,9 @@ module Rigor
|
|
|
63
63
|
|
|
64
64
|
class Runner
|
|
65
65
|
RUBY_GLOB: String
|
|
66
|
-
|
|
66
|
+
DEFAULT_CACHE_ROOT: String
|
|
67
|
+
attr_reader cache_store: Rigor::Cache::Store?
|
|
68
|
+
def initialize: (configuration: Configuration, ?explain: bool, ?cache_store: Rigor::Cache::Store?) -> void
|
|
67
69
|
def run: (?Array[String] paths) -> Result
|
|
68
70
|
end
|
|
69
71
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rigortype
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0.
|
|
4
|
+
version: 0.0.9
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Rigor contributors
|
|
@@ -164,16 +164,22 @@ files:
|
|
|
164
164
|
- data/builtins/ruby_core/comparable.yml
|
|
165
165
|
- data/builtins/ruby_core/complex.yml
|
|
166
166
|
- data/builtins/ruby_core/date.yml
|
|
167
|
+
- data/builtins/ruby_core/encoding.yml
|
|
167
168
|
- data/builtins/ruby_core/enumerable.yml
|
|
169
|
+
- data/builtins/ruby_core/exception.yml
|
|
168
170
|
- data/builtins/ruby_core/file.yml
|
|
169
171
|
- data/builtins/ruby_core/hash.yml
|
|
170
172
|
- data/builtins/ruby_core/io.yml
|
|
171
173
|
- data/builtins/ruby_core/numeric.yml
|
|
172
174
|
- data/builtins/ruby_core/pathname.yml
|
|
175
|
+
- data/builtins/ruby_core/proc.yml
|
|
176
|
+
- data/builtins/ruby_core/random.yml
|
|
173
177
|
- data/builtins/ruby_core/range.yml
|
|
174
178
|
- data/builtins/ruby_core/rational.yml
|
|
179
|
+
- data/builtins/ruby_core/re.yml
|
|
175
180
|
- data/builtins/ruby_core/set.yml
|
|
176
181
|
- data/builtins/ruby_core/string.yml
|
|
182
|
+
- data/builtins/ruby_core/struct.yml
|
|
177
183
|
- data/builtins/ruby_core/time.yml
|
|
178
184
|
- exe/rigor
|
|
179
185
|
- lib/rigor.rb
|
|
@@ -186,7 +192,13 @@ files:
|
|
|
186
192
|
- lib/rigor/ast/type_node.rb
|
|
187
193
|
- lib/rigor/builtins/imported_refinements.rb
|
|
188
194
|
- lib/rigor/cache/descriptor.rb
|
|
195
|
+
- lib/rigor/cache/rbs_class_ancestor_table.rb
|
|
196
|
+
- lib/rigor/cache/rbs_class_type_param_names.rb
|
|
189
197
|
- lib/rigor/cache/rbs_constant_table.rb
|
|
198
|
+
- lib/rigor/cache/rbs_descriptor.rb
|
|
199
|
+
- lib/rigor/cache/rbs_environment.rb
|
|
200
|
+
- lib/rigor/cache/rbs_environment_marshal_patch.rb
|
|
201
|
+
- lib/rigor/cache/rbs_known_class_names.rb
|
|
190
202
|
- lib/rigor/cache/store.rb
|
|
191
203
|
- lib/rigor/cli.rb
|
|
192
204
|
- lib/rigor/cli/type_of_command.rb
|
|
@@ -199,21 +211,28 @@ files:
|
|
|
199
211
|
- lib/rigor/environment/class_registry.rb
|
|
200
212
|
- lib/rigor/environment/rbs_hierarchy.rb
|
|
201
213
|
- lib/rigor/environment/rbs_loader.rb
|
|
214
|
+
- lib/rigor/flow_contribution.rb
|
|
202
215
|
- lib/rigor/inference/acceptance.rb
|
|
203
216
|
- lib/rigor/inference/block_parameter_binder.rb
|
|
204
217
|
- lib/rigor/inference/builtins/array_catalog.rb
|
|
205
218
|
- lib/rigor/inference/builtins/comparable_catalog.rb
|
|
206
219
|
- lib/rigor/inference/builtins/complex_catalog.rb
|
|
207
220
|
- lib/rigor/inference/builtins/date_catalog.rb
|
|
221
|
+
- lib/rigor/inference/builtins/encoding_catalog.rb
|
|
208
222
|
- lib/rigor/inference/builtins/enumerable_catalog.rb
|
|
223
|
+
- lib/rigor/inference/builtins/exception_catalog.rb
|
|
209
224
|
- lib/rigor/inference/builtins/hash_catalog.rb
|
|
210
225
|
- lib/rigor/inference/builtins/method_catalog.rb
|
|
211
226
|
- lib/rigor/inference/builtins/numeric_catalog.rb
|
|
212
227
|
- lib/rigor/inference/builtins/pathname_catalog.rb
|
|
228
|
+
- lib/rigor/inference/builtins/proc_catalog.rb
|
|
229
|
+
- lib/rigor/inference/builtins/random_catalog.rb
|
|
213
230
|
- lib/rigor/inference/builtins/range_catalog.rb
|
|
214
231
|
- lib/rigor/inference/builtins/rational_catalog.rb
|
|
232
|
+
- lib/rigor/inference/builtins/re_catalog.rb
|
|
215
233
|
- lib/rigor/inference/builtins/set_catalog.rb
|
|
216
234
|
- lib/rigor/inference/builtins/string_catalog.rb
|
|
235
|
+
- lib/rigor/inference/builtins/struct_catalog.rb
|
|
217
236
|
- lib/rigor/inference/builtins/time_catalog.rb
|
|
218
237
|
- lib/rigor/inference/closure_escape_analyzer.rb
|
|
219
238
|
- lib/rigor/inference/coverage_scanner.rb
|
|
@@ -226,6 +245,7 @@ files:
|
|
|
226
245
|
- lib/rigor/inference/method_dispatcher/file_folding.rb
|
|
227
246
|
- lib/rigor/inference/method_dispatcher/iterator_dispatch.rb
|
|
228
247
|
- lib/rigor/inference/method_dispatcher/kernel_dispatch.rb
|
|
248
|
+
- lib/rigor/inference/method_dispatcher/literal_string_folding.rb
|
|
229
249
|
- lib/rigor/inference/method_dispatcher/overload_selector.rb
|
|
230
250
|
- lib/rigor/inference/method_dispatcher/rbs_dispatch.rb
|
|
231
251
|
- lib/rigor/inference/method_dispatcher/shape_dispatch.rb
|