typeprof 0.10.0 → 0.14.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.
@@ -0,0 +1,12 @@
1
+ def foo
2
+ 5.instance_eval { i }
3
+ end
4
+
5
+ foo
6
+
7
+ __END__
8
+ # Classes
9
+ class Object
10
+ private
11
+ def foo: -> Complex
12
+ end
@@ -3,7 +3,7 @@ Foo[a: 1, b: "str", c: 1.0]
3
3
 
4
4
  __END__
5
5
  # Classes
6
- class Foo < Struct
6
+ class Foo < Struct[untyped]
7
7
  attr_accessor a(): Integer
8
8
  attr_accessor b(): String
9
9
  attr_accessor c(): Float
data/smoke/struct.rb CHANGED
@@ -5,7 +5,7 @@ end
5
5
  Foo.new.a = 1
6
6
  __END__
7
7
  # Classes
8
- class AnonymousStruct_generated_1 < Struct
8
+ class AnonymousStruct_generated_1 < Struct[untyped]
9
9
  attr_accessor a(): untyped
10
10
  end
11
11
 
data/smoke/struct2.rb CHANGED
@@ -18,7 +18,7 @@ class Object
18
18
  def gen_foobar: -> FooBar
19
19
  end
20
20
 
21
- class FooBar < Struct
21
+ class FooBar < Struct[untyped]
22
22
  attr_accessor foo(): Integer | String
23
23
  attr_accessor bar(): :sym?
24
24
  def my_foo: -> (Integer | String)
data/smoke/struct3.rb CHANGED
@@ -7,7 +7,7 @@ App::FooBar.new(1, "str")
7
7
  __END__
8
8
  # Classes
9
9
  class App
10
- class FooBar < Struct
10
+ class FooBar < Struct[untyped]
11
11
  attr_accessor foo(): Integer
12
12
  attr_accessor bar(): String
13
13
  end
data/smoke/struct4.rb CHANGED
@@ -2,6 +2,6 @@ UndefinedConstant::Foo = Struct.new(:foo)
2
2
 
3
3
  __END__
4
4
  # Classes
5
- class AnonymousStruct_generated_1 < Struct
5
+ class AnonymousStruct_generated_1 < Struct[untyped]
6
6
  attr_accessor foo(): untyped
7
7
  end
data/smoke/struct5.rb CHANGED
@@ -10,7 +10,7 @@ Foo.new(42)
10
10
 
11
11
  __END__
12
12
  # Classes
13
- class Foo < Struct
13
+ class Foo < Struct[untyped]
14
14
  attr_accessor foo(): String
15
15
  def initialize: (Integer foo) -> Foo
16
16
  end
data/smoke/struct6.rb CHANGED
@@ -6,7 +6,7 @@ end
6
6
 
7
7
  __END__
8
8
  # Classes
9
- class AnonymousStruct_generated_1 < Struct
9
+ class AnonymousStruct_generated_1 < Struct[untyped]
10
10
  attr_accessor foo(): untyped
11
11
  end
12
12
 
data/smoke/struct7.rb CHANGED
@@ -12,6 +12,6 @@ end
12
12
 
13
13
  __END__
14
14
  # Classes
15
- class Foo < Struct
15
+ class Foo < Struct[untyped]
16
16
  def initialize: -> Foo
17
17
  end
@@ -21,7 +21,7 @@ GEM
21
21
  concurrent-ruby (1.1.7)
22
22
  i18n (1.8.5)
23
23
  concurrent-ruby (~> 1.0)
24
- minitest (5.14.2)
24
+ minitest (5.14.3)
25
25
  minitest-reporters (1.4.2)
26
26
  ansi
27
27
  builder
data/typeprof.gemspec CHANGED
@@ -30,5 +30,5 @@ Gem::Specification.new do |spec|
30
30
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
31
31
  spec.require_paths = ["lib"]
32
32
 
33
- spec.add_runtime_dependency "rbs", ">= 0.20.1"
33
+ spec.add_runtime_dependency "rbs", ">= 1.2.0"
34
34
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: typeprof
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.0
4
+ version: 0.14.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yusuke Endoh
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-12-18 00:00:00.000000000 Z
11
+ date: 2021-05-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rbs
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 0.20.1
19
+ version: 1.2.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: 0.20.1
26
+ version: 1.2.0
27
27
  description: |
28
28
  TypeProf performs a type analysis of non-annotated Ruby code.
29
29
 
@@ -48,6 +48,7 @@ files:
48
48
  - doc/doc.ja.md
49
49
  - doc/doc.md
50
50
  - doc/ppl2019.pdf
51
+ - doc/todo.md
51
52
  - exe/typeprof
52
53
  - lib/typeprof.rb
53
54
  - lib/typeprof/analyzer.rb
@@ -137,6 +138,7 @@ files:
137
138
  - smoke/break1.rb
138
139
  - smoke/break2.rb
139
140
  - smoke/break3.rb
141
+ - smoke/break4.rb
140
142
  - smoke/case.rb
141
143
  - smoke/case2.rb
142
144
  - smoke/case3.rb
@@ -144,6 +146,7 @@ files:
144
146
  - smoke/class-hierarchy2.rb
145
147
  - smoke/class-new.rb
146
148
  - smoke/class.rb
149
+ - smoke/class_eval.rb
147
150
  - smoke/class_instance_var.rb
148
151
  - smoke/class_method.rb
149
152
  - smoke/class_method2.rb
@@ -163,6 +166,7 @@ files:
163
166
  - smoke/define_method4.rbs
164
167
  - smoke/define_method5.rb
165
168
  - smoke/define_method6.rb
169
+ - smoke/define_method7.rb
166
170
  - smoke/demo.rb
167
171
  - smoke/demo1.rb
168
172
  - smoke/demo10.rb
@@ -184,10 +188,12 @@ files:
184
188
  - smoke/enumerator.rb
185
189
  - smoke/expandarray1.rb
186
190
  - smoke/expandarray2.rb
191
+ - smoke/extended.rb
187
192
  - smoke/fib.rb
188
193
  - smoke/flip-flop.rb
189
194
  - smoke/flow1.rb
190
195
  - smoke/flow10.rb
196
+ - smoke/flow11.rb
191
197
  - smoke/flow2.rb
192
198
  - smoke/flow3.rb
193
199
  - smoke/flow4.rb
@@ -210,12 +216,15 @@ files:
210
216
  - smoke/hash3.rb
211
217
  - smoke/hash4.rb
212
218
  - smoke/hash5.rb
219
+ - smoke/included.rb
213
220
  - smoke/inheritance.rb
214
221
  - smoke/inheritance2.rb
222
+ - smoke/inherited.rb
215
223
  - smoke/initialize.rb
216
224
  - smoke/instance_eval.rb
217
225
  - smoke/instance_eval2.rb
218
226
  - smoke/instance_eval3.rb
227
+ - smoke/instance_eval4.rb
219
228
  - smoke/int_times.rb
220
229
  - smoke/integer.rb
221
230
  - smoke/ivar.rb
@@ -402,7 +411,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
402
411
  - !ruby/object:Gem::Version
403
412
  version: '0'
404
413
  requirements: []
405
- rubygems_version: 3.1.4
414
+ rubygems_version: 3.2.15
406
415
  signing_key:
407
416
  specification_version: 4
408
417
  summary: TypeProf is a type analysis tool for Ruby code based on abstract interpretation