typeprof 0.5.4 → 0.9.0

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.
Files changed (289) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +7 -5
  3. data/doc/doc.ja.md +3 -4
  4. data/doc/doc.md +3 -4
  5. data/lib/typeprof/analyzer.rb +308 -171
  6. data/lib/typeprof/arguments.rb +14 -6
  7. data/lib/typeprof/block.rb +6 -2
  8. data/lib/typeprof/builtin.rb +230 -67
  9. data/lib/typeprof/cli.rb +33 -34
  10. data/lib/typeprof/config.rb +6 -4
  11. data/lib/typeprof/container-type.rb +159 -104
  12. data/lib/typeprof/export.rb +28 -22
  13. data/lib/typeprof/import.rb +70 -53
  14. data/lib/typeprof/iseq.rb +23 -7
  15. data/lib/typeprof/method.rb +71 -138
  16. data/lib/typeprof/type.rb +73 -15
  17. data/lib/typeprof/version.rb +1 -1
  18. data/smoke/alias.rb +5 -4
  19. data/smoke/alias2.rb +4 -4
  20. data/smoke/any1.rb +2 -1
  21. data/smoke/any2.rb +3 -2
  22. data/smoke/arguments.rb +3 -2
  23. data/smoke/arguments2.rb +11 -10
  24. data/smoke/array-each.rb +2 -1
  25. data/smoke/array-each2.rb +2 -1
  26. data/smoke/array-each3.rb +2 -1
  27. data/smoke/array-ltlt.rb +2 -1
  28. data/smoke/array-ltlt2.rb +2 -1
  29. data/smoke/array-map.rb +2 -1
  30. data/smoke/array-map2.rb +2 -1
  31. data/smoke/array-map3.rb +4 -3
  32. data/smoke/array-mul.rb +3 -2
  33. data/smoke/array-plus1.rb +2 -1
  34. data/smoke/array-plus2.rb +2 -2
  35. data/smoke/array-pop.rb +2 -1
  36. data/smoke/array-range-aref.rb +71 -0
  37. data/smoke/array-replace.rb +2 -1
  38. data/smoke/array-s-aref.rb +2 -1
  39. data/smoke/array1.rb +6 -5
  40. data/smoke/array10.rb +2 -1
  41. data/smoke/array11.rb +2 -1
  42. data/smoke/array12.rb +4 -3
  43. data/smoke/array13.rb +5 -4
  44. data/smoke/array14.rb +2 -1
  45. data/smoke/array15.rb +16 -0
  46. data/smoke/array2.rb +4 -3
  47. data/smoke/array3.rb +4 -4
  48. data/smoke/array4.rb +2 -1
  49. data/smoke/array5.rb +2 -1
  50. data/smoke/array6.rb +3 -2
  51. data/smoke/array7.rb +2 -1
  52. data/smoke/array8.rb +1 -1
  53. data/smoke/array9.rb +2 -1
  54. data/smoke/attr-module.rb +26 -0
  55. data/smoke/attr.rb +5 -5
  56. data/smoke/autoload.rb +14 -0
  57. data/smoke/backtrace.rb +4 -3
  58. data/smoke/block-ambiguous.rb +9 -8
  59. data/smoke/block-args1-rest.rb +12 -11
  60. data/smoke/block-args1.rb +11 -10
  61. data/smoke/block-args2-rest.rb +12 -11
  62. data/smoke/block-args2.rb +11 -10
  63. data/smoke/block-args3-rest.rb +14 -13
  64. data/smoke/block-args3.rb +13 -12
  65. data/smoke/block-blockarg.rb +5 -4
  66. data/smoke/block-kwarg.rb +11 -10
  67. data/smoke/block1.rb +2 -1
  68. data/smoke/block10.rb +2 -1
  69. data/smoke/block11.rb +6 -5
  70. data/smoke/block12.rb +3 -2
  71. data/smoke/block14.rb +3 -2
  72. data/smoke/block2.rb +2 -1
  73. data/smoke/block3.rb +3 -3
  74. data/smoke/block4.rb +3 -2
  75. data/smoke/block5.rb +3 -2
  76. data/smoke/block6.rb +3 -2
  77. data/smoke/block7.rb +2 -1
  78. data/smoke/block8.rb +4 -3
  79. data/smoke/block9.rb +2 -1
  80. data/smoke/blown.rb +2 -1
  81. data/smoke/break1.rb +3 -2
  82. data/smoke/break2.rb +2 -1
  83. data/smoke/break3.rb +13 -0
  84. data/smoke/case.rb +2 -1
  85. data/smoke/case2.rb +2 -1
  86. data/smoke/case3.rb +17 -0
  87. data/smoke/class-hierarchy.rb +5 -5
  88. data/smoke/class-hierarchy2.rb +3 -3
  89. data/smoke/class-new.rb +15 -0
  90. data/smoke/class_instance_var.rb +1 -1
  91. data/smoke/class_method.rb +2 -2
  92. data/smoke/class_method2.rb +2 -2
  93. data/smoke/class_method3.rb +4 -2
  94. data/smoke/constant1.rb +6 -6
  95. data/smoke/constant2.rb +5 -4
  96. data/smoke/constant3.rb +2 -1
  97. data/smoke/constant4.rb +2 -1
  98. data/smoke/context-sensitive1.rb +2 -1
  99. data/smoke/cvar.rb +6 -5
  100. data/smoke/cvar2.rb +2 -2
  101. data/smoke/define_method.rb +16 -0
  102. data/smoke/define_method2.rb +18 -0
  103. data/smoke/define_method3.rb +13 -0
  104. data/smoke/define_method3.rbs +3 -0
  105. data/smoke/define_method4.rb +15 -0
  106. data/smoke/define_method4.rbs +3 -0
  107. data/smoke/define_method5.rb +12 -0
  108. data/smoke/demo.rb +7 -6
  109. data/smoke/demo1.rb +2 -1
  110. data/smoke/demo10.rb +3 -2
  111. data/smoke/demo11.rb +2 -1
  112. data/smoke/demo2.rb +2 -1
  113. data/smoke/demo3.rb +2 -1
  114. data/smoke/demo4.rb +3 -3
  115. data/smoke/demo5.rb +1 -1
  116. data/smoke/demo6.rb +3 -3
  117. data/smoke/demo7.rb +2 -1
  118. data/smoke/demo8.rb +3 -2
  119. data/smoke/demo9.rb +3 -2
  120. data/smoke/dummy-execution1.rb +3 -2
  121. data/smoke/dummy-execution2.rb +2 -2
  122. data/smoke/dummy_element.rb +14 -0
  123. data/smoke/ensure1.rb +3 -2
  124. data/smoke/enumerator.rb +3 -2
  125. data/smoke/expandarray1.rb +2 -1
  126. data/smoke/expandarray2.rb +2 -1
  127. data/smoke/fib.rb +2 -2
  128. data/smoke/flip-flop.rb +28 -0
  129. data/smoke/flow1.rb +2 -1
  130. data/smoke/flow2.rb +2 -1
  131. data/smoke/flow3.rb +2 -1
  132. data/smoke/flow5.rb +2 -1
  133. data/smoke/flow6.rb +2 -1
  134. data/smoke/flow7.rb +2 -1
  135. data/smoke/flow8.rb +2 -1
  136. data/smoke/flow9.rb +12 -0
  137. data/smoke/freeze.rb +2 -1
  138. data/smoke/function.rb +3 -2
  139. data/smoke/gvar.rb +3 -2
  140. data/smoke/gvar2.rb +3 -2
  141. data/smoke/hash-bot.rb +12 -0
  142. data/smoke/hash-fetch.rb +4 -3
  143. data/smoke/hash-merge-bang.rb +2 -1
  144. data/smoke/hash1.rb +3 -2
  145. data/smoke/hash2.rb +2 -1
  146. data/smoke/hash3.rb +2 -1
  147. data/smoke/hash4.rb +2 -1
  148. data/smoke/hash5.rb +1 -1
  149. data/smoke/inheritance.rb +4 -4
  150. data/smoke/inheritance2.rb +2 -2
  151. data/smoke/initialize.rb +6 -5
  152. data/smoke/instance_eval.rb +2 -2
  153. data/smoke/instance_eval2.rb +10 -0
  154. data/smoke/instance_eval3.rb +25 -0
  155. data/smoke/int_times.rb +2 -1
  156. data/smoke/integer.rb +2 -1
  157. data/smoke/ivar.rb +5 -4
  158. data/smoke/ivar2.rb +4 -4
  159. data/smoke/ivar3.rb +2 -2
  160. data/smoke/kernel-class.rb +2 -1
  161. data/smoke/keyword1.rb +2 -1
  162. data/smoke/keyword2.rb +2 -1
  163. data/smoke/keyword3.rb +2 -1
  164. data/smoke/keyword4.rb +2 -1
  165. data/smoke/keyword5.rb +2 -1
  166. data/smoke/kwrest.rb +12 -0
  167. data/smoke/kwrest.rbs +3 -0
  168. data/smoke/kwsplat1.rb +5 -4
  169. data/smoke/kwsplat2.rb +2 -1
  170. data/smoke/lit-complex.rb +10 -0
  171. data/smoke/lit-encoding.rb +10 -0
  172. data/smoke/manual-rbs.rb +4 -3
  173. data/smoke/manual-rbs2.rb +2 -1
  174. data/smoke/manual-rbs3.rb +2 -2
  175. data/smoke/masgn1.rb +2 -1
  176. data/smoke/masgn2.rb +3 -2
  177. data/smoke/masgn3.rb +2 -1
  178. data/smoke/method_in_branch.rb +3 -2
  179. data/smoke/method_missing.rb +28 -0
  180. data/smoke/module1.rb +2 -2
  181. data/smoke/module2.rb +1 -1
  182. data/smoke/module3.rb +2 -2
  183. data/smoke/module4.rb +2 -2
  184. data/smoke/module5.rb +17 -0
  185. data/smoke/module6.rb +40 -0
  186. data/smoke/module_function1.rb +3 -3
  187. data/smoke/module_function2.rb +3 -3
  188. data/smoke/multiple-include.rb +1 -1
  189. data/smoke/multiple-superclass.rb +1 -1
  190. data/smoke/next1.rb +3 -2
  191. data/smoke/next2.rb +2 -1
  192. data/smoke/object-send1.rb +4 -3
  193. data/smoke/object-send2.rb +10 -0
  194. data/smoke/object-send3.rb +18 -0
  195. data/smoke/once.rb +2 -1
  196. data/smoke/optional1.rb +2 -1
  197. data/smoke/optional2.rb +2 -1
  198. data/smoke/optional3.rb +2 -1
  199. data/smoke/parameterizedd-self.rb +3 -2
  200. data/smoke/parameterizedd-self2.rb +15 -0
  201. data/smoke/pathname1.rb +2 -1
  202. data/smoke/pathname2.rb +2 -1
  203. data/smoke/pattern-match1.rb +2 -1
  204. data/smoke/pattern-match2.rb +2 -1
  205. data/smoke/printf.rb +2 -2
  206. data/smoke/proc.rb +3 -2
  207. data/smoke/proc2.rb +2 -1
  208. data/smoke/proc3.rb +2 -1
  209. data/smoke/proc4.rb +2 -1
  210. data/smoke/proc5.rb +19 -0
  211. data/smoke/public.rb +34 -0
  212. data/smoke/range.rb +2 -1
  213. data/smoke/rbs-alias.rb +2 -1
  214. data/smoke/rbs-attr.rb +6 -5
  215. data/smoke/rbs-attr2.rb +11 -0
  216. data/smoke/rbs-attr2.rbs +3 -0
  217. data/smoke/rbs-extend.rb +2 -1
  218. data/smoke/rbs-interface.rb +5 -4
  219. data/smoke/rbs-module.rb +26 -0
  220. data/smoke/rbs-module.rbs +4 -0
  221. data/smoke/rbs-opt-and-rest.rb +10 -0
  222. data/smoke/rbs-opt-and-rest.rbs +3 -0
  223. data/smoke/rbs-proc1.rb +2 -1
  224. data/smoke/rbs-proc2.rb +3 -2
  225. data/smoke/rbs-proc3.rb +2 -1
  226. data/smoke/rbs-record.rb +3 -2
  227. data/smoke/rbs-tyvar.rb +3 -2
  228. data/smoke/rbs-tyvar2.rb +3 -2
  229. data/smoke/rbs-tyvar3.rb +3 -2
  230. data/smoke/rbs-tyvar4.rb +3 -3
  231. data/smoke/rbs-tyvar5.rb +2 -1
  232. data/smoke/rbs-tyvar6.rb +18 -0
  233. data/smoke/rbs-tyvar6.rbs +12 -0
  234. data/smoke/rbs-tyvar7.rb +12 -0
  235. data/smoke/rbs-tyvar7.rbs +7 -0
  236. data/smoke/rbs-vars.rb +7 -8
  237. data/smoke/redo1.rb +3 -2
  238. data/smoke/redo2.rb +3 -2
  239. data/smoke/req-keyword.rb +2 -1
  240. data/smoke/rescue1.rb +3 -2
  241. data/smoke/rescue2.rb +3 -2
  242. data/smoke/rescue3.rb +19 -0
  243. data/smoke/rescue4.rb +17 -0
  244. data/smoke/respond_to.rb +2 -1
  245. data/smoke/rest-farg.rb +2 -1
  246. data/smoke/rest1.rb +3 -2
  247. data/smoke/rest2.rb +2 -1
  248. data/smoke/rest3.rb +7 -6
  249. data/smoke/rest4.rb +3 -2
  250. data/smoke/rest5.rb +2 -1
  251. data/smoke/rest6.rb +2 -1
  252. data/smoke/retry1.rb +3 -2
  253. data/smoke/return.rb +2 -1
  254. data/smoke/singleton_method.rb +1 -1
  255. data/smoke/step.rb +4 -3
  256. data/smoke/string-split.rb +2 -1
  257. data/smoke/struct-keyword_init.rb +20 -0
  258. data/smoke/struct.rb +1 -1
  259. data/smoke/struct2.rb +5 -4
  260. data/smoke/struct3.rb +2 -2
  261. data/smoke/struct4.rb +7 -0
  262. data/smoke/struct5.rb +16 -0
  263. data/smoke/struct6.rb +15 -0
  264. data/smoke/struct7.rb +17 -0
  265. data/smoke/stub-keyword.rb +10 -0
  266. data/smoke/super1.rb +5 -4
  267. data/smoke/super2.rb +1 -1
  268. data/smoke/super3.rb +3 -3
  269. data/smoke/super4.rb +43 -0
  270. data/smoke/super5.rb +36 -0
  271. data/smoke/svar1.rb +2 -1
  272. data/smoke/symbol-proc-attr.rb +22 -0
  273. data/smoke/symbol-proc-attr2.rb +15 -0
  274. data/smoke/symbol-proc-bot.rb +13 -0
  275. data/smoke/symbol-proc.rb +4 -3
  276. data/smoke/tap1.rb +3 -2
  277. data/smoke/toplevel.rb +2 -1
  278. data/smoke/two-map.rb +3 -2
  279. data/smoke/type_var.rb +2 -1
  280. data/smoke/typed_method.rb +2 -1
  281. data/smoke/uninitialize-var.rb +2 -1
  282. data/smoke/union-recv.rb +2 -2
  283. data/smoke/user-demo.rb +3 -3
  284. data/smoke/wrong-extend.rb +2 -2
  285. data/smoke/wrong-include.rb +2 -2
  286. data/smoke/wrong-include2.rb +17 -0
  287. data/typeprof.gemspec +1 -1
  288. metadata +61 -6
  289. data/tools/stackprof-wrapper.rb +0 -10
@@ -5,9 +5,10 @@ log($foo)
5
5
 
6
6
  __END__
7
7
  # Global variables
8
- $foo : Integer | String
8
+ $foo: Integer | String
9
9
 
10
10
  # Classes
11
11
  class Object
12
- def log : (Integer | String) -> nil
12
+ private
13
+ def log: (Integer | String) -> nil
13
14
  end
@@ -9,9 +9,10 @@ __END__
9
9
  smoke/gvar2.rb:1: [warning] inconsistent assignment to RBS-declared global variable
10
10
 
11
11
  # Global variables
12
- #$foo : String
12
+ #$foo: String
13
13
 
14
14
  # Classes
15
15
  class Object
16
- def log : -> String
16
+ private
17
+ def log: -> String
17
18
  end
@@ -0,0 +1,12 @@
1
+ def foo
2
+ h = {}
3
+ h[1] ||= []
4
+ h
5
+ end
6
+
7
+ __END__
8
+ # Classes
9
+ class Object
10
+ private
11
+ def foo: -> Hash[Integer, Array[bot]]
12
+ end
@@ -21,7 +21,8 @@ baz(h)
21
21
  __END__
22
22
  # Classes
23
23
  class Object
24
- def foo : ({a: :A, b: :B}) -> (:A | :B)
25
- def bar : ({a: :A, b: :B}) -> (:A | :B | :C)
26
- def baz : ({a: :A, b: :B}) -> ([:A | :B | :C, (:a | :b)?])
24
+ private
25
+ def foo: ({a: :A, b: :B}) -> (:A | :B)
26
+ def bar: ({a: :A, b: :B}) -> (:A | :B | :C)
27
+ def baz: ({a: :A, b: :B}) -> ([:A | :B | :C, (:a | :b)?])
27
28
  end
@@ -7,5 +7,6 @@ end
7
7
  __END__
8
8
  # Classes
9
9
  class Object
10
- def foo : -> [{a: Integer}, {a: Integer, b: String}]
10
+ private
11
+ def foo: -> [{a: Integer}, {a: Integer, b: String}]
11
12
  end
@@ -14,6 +14,7 @@ bar
14
14
  __END__
15
15
  # Classes
16
16
  class Object
17
- def foo : -> {int: Integer, str: String}
18
- def bar : -> (Hash[Integer | String, Integer | String])
17
+ private
18
+ def foo: -> {int: Integer, str: String}
19
+ def bar: -> (Hash[Integer | String, Integer | String])
19
20
  end
@@ -8,5 +8,6 @@ foo
8
8
  __END__
9
9
  # Classes
10
10
  class Object
11
- def foo : -> Integer
11
+ private
12
+ def foo: -> Integer
12
13
  end
@@ -9,5 +9,6 @@ foo
9
9
  __END__
10
10
  # Classes
11
11
  class Object
12
- def foo : -> {int: Integer, str: String}
12
+ private
13
+ def foo: -> {int: Integer, str: String}
13
14
  end
@@ -6,5 +6,6 @@ foo
6
6
  __END__
7
7
  # Classes
8
8
  class Object
9
- def foo : -> Hash[bot, bot]
9
+ private
10
+ def foo: -> Hash[bot, bot]
10
11
  end
@@ -10,5 +10,5 @@ Foo.new.foo
10
10
  __END__
11
11
  # Classes
12
12
  class Foo
13
- def foo : -> Integer
13
+ def foo: -> Integer
14
14
  end
@@ -24,11 +24,11 @@ B.test("str")
24
24
  __END__
25
25
  # Classes
26
26
  class A
27
- def foo : (Integer | String) -> nil
28
- def bar : (Integer | String) -> nil
29
- def self.test : (Integer | String) -> nil
27
+ def foo: (Integer | String) -> nil
28
+ def bar: (Integer | String) -> nil
29
+ def self.test: (Integer | String) -> nil
30
30
  end
31
31
 
32
32
  class B < A
33
- def bar : ((Integer | String)?) -> nil
33
+ def bar: ((Integer | String)?) -> nil
34
34
  end
@@ -21,11 +21,11 @@ end
21
21
  __END__
22
22
  # Classes
23
23
  class SuperBase
24
- def self.foo : -> (singleton(A) | singleton(B))
24
+ def self.foo: -> (singleton(A) | singleton(B))
25
25
  end
26
26
 
27
27
  class Base < SuperBase
28
- def self.foo : -> (singleton(A) | singleton(B))
28
+ def self.foo: -> (singleton(A) | singleton(B))
29
29
  end
30
30
 
31
31
  class A < Base
@@ -15,12 +15,13 @@ A.new(nil)
15
15
  __END__
16
16
  # Classes
17
17
  class Object
18
- def log : (A) -> nil
18
+ private
19
+ def log: (A) -> nil
19
20
  end
20
21
 
21
22
  class A
22
- @int : Integer
23
- @str : String
24
- @val : (Integer | String)?
25
- def initialize : ((Integer | String)?) -> ((Integer | String)?)
23
+ @int: Integer
24
+ @str: String
25
+ @val: (Integer | String)?
26
+ def initialize: ((Integer | String)?) -> ((Integer | String)?)
26
27
  end
@@ -13,6 +13,6 @@ end
13
13
  __END__
14
14
  # Classes
15
15
  class C
16
- def self.foo : { (C) -> nil } -> C
17
- def log : (Integer) -> nil
16
+ def self.foo: { (C) -> nil } -> C
17
+ def log: (Integer) -> nil
18
18
  end
@@ -0,0 +1,10 @@
1
+ a = ""
2
+ a.instance_eval do
3
+ @a = 1
4
+ end
5
+
6
+ __END__
7
+ # Classes
8
+ class String
9
+ @a: Integer
10
+ end
@@ -0,0 +1,25 @@
1
+ :foo.instance_eval do
2
+ @foo = 1
3
+ end
4
+
5
+ [].instance_eval do
6
+ @bar = 1
7
+ end
8
+
9
+ {}.instance_eval do
10
+ @baz = 1
11
+ end
12
+
13
+ __END__
14
+ # Classes
15
+ class Array
16
+ @bar: Integer
17
+ end
18
+
19
+ class Hash
20
+ @baz: Integer
21
+ end
22
+
23
+ class Symbol
24
+ @foo: Integer
25
+ end
@@ -10,5 +10,6 @@ foo(42)
10
10
  __END__
11
11
  # Classes
12
12
  class Object
13
- def foo : (Integer) -> (Integer | String)
13
+ private
14
+ def foo: (Integer) -> (Integer | String)
14
15
  end
@@ -6,5 +6,6 @@ foo(Integer("str"))
6
6
  __END__
7
7
  # Classes
8
8
  class Object
9
- def foo : (Integer) -> nil
9
+ private
10
+ def foo: (Integer) -> nil
10
11
  end
@@ -19,11 +19,12 @@ log(Foo.new.foo)
19
19
  __END__
20
20
  # Classes
21
21
  class Object
22
- def log : (Integer | String) -> nil
22
+ private
23
+ def log: (Integer | String) -> nil
23
24
  end
24
25
 
25
26
  class Foo
26
- @foo : Integer | String
27
- def foo= : (Integer | String) -> (Integer | String)
28
- def foo : -> (Integer | String)
27
+ @foo: Integer | String
28
+ def foo=: (Integer | String) -> (Integer | String)
29
+ def foo: -> (Integer | String)
29
30
  end
@@ -23,8 +23,8 @@ Foo.new.set
23
23
  __END__
24
24
  # Classes
25
25
  class Foo
26
- attr_reader array : Array[:sym | Integer | String]
27
- attr_reader hash : {a: Integer, b: String, c: :sym}
28
- def initialize : -> Hash[bot, bot]
29
- def set : -> :sym
26
+ attr_reader array: Array[:sym | Integer | String]
27
+ attr_reader hash: {a: Integer, b: String, c: :sym}
28
+ def initialize: -> Hash[bot, bot]
29
+ def set: -> :sym
30
30
  end
@@ -11,6 +11,6 @@ smoke/ivar3.rb:3: [warning] inconsistent assignment to RBS-declared global varia
11
11
 
12
12
  # Classes
13
13
  class Foo
14
- @bar : String
15
- def initialize : -> String
14
+ @bar: String
15
+ def initialize: -> String
16
16
  end
@@ -8,5 +8,6 @@ foo("")
8
8
  __END__
9
9
  # Classes
10
10
  class Object
11
- def foo : (Integer | String) -> (singleton(Integer) | singleton(String))
11
+ private
12
+ def foo: (Integer | String) -> (singleton(Integer) | singleton(String))
12
13
  end
@@ -7,5 +7,6 @@ foo(n: 42, s: "str")
7
7
  __END__
8
8
  # Classes
9
9
  class Object
10
- def foo : (n: Integer, s: String) -> [Integer, String]
10
+ private
11
+ def foo: (n: Integer, s: String) -> [Integer, String]
11
12
  end
@@ -7,5 +7,6 @@ foo(n: 42, s: "str")
7
7
  __END__
8
8
  # Classes
9
9
  class Object
10
- def foo : (?n: Integer, ?s: Integer | String) -> ([Integer, Integer | String])
10
+ private
11
+ def foo: (?n: Integer, ?s: Integer | String) -> ([Integer, Integer | String])
11
12
  end
@@ -7,5 +7,6 @@ foo(n: 42, s: "str")
7
7
  __END__
8
8
  # Classes
9
9
  class Object
10
- def foo : (?n: Integer, ?s: String | [Integer]) -> ([Integer, String | [Integer]])
10
+ private
11
+ def foo: (?n: Integer, ?s: String | [Integer]) -> ([Integer, String | [Integer]])
11
12
  end
@@ -7,5 +7,6 @@ foo(n: 42, s: "str")
7
7
  __END__
8
8
  # Classes
9
9
  class Object
10
- def foo : (**{n: Integer, s: String}) -> {n: Integer, s: String}
10
+ private
11
+ def foo: (**{n: Integer, s: String}) -> {n: Integer, s: String}
11
12
  end
@@ -11,5 +11,6 @@ smoke/keyword5.rb:5: [error] no argument for required keywords
11
11
 
12
12
  # Classes
13
13
  class Object
14
- def foo : (req: Integer) -> Integer
14
+ private
15
+ def foo: (req: Integer) -> Integer
15
16
  end
@@ -0,0 +1,12 @@
1
+ class Foo
2
+ def foo(**r)
3
+ @r = r[42]
4
+ end
5
+ end
6
+
7
+ __END__
8
+ # Classes
9
+ class Foo
10
+ @r: Integer
11
+ # def foo: (**Hash[Integer, Integer]) -> void
12
+ end
@@ -0,0 +1,3 @@
1
+ class Foo
2
+ def foo: (**Hash[Integer, Integer]) -> void
3
+ end
@@ -35,8 +35,9 @@ smoke/kwsplat1.rb:30: [error] undefined method: Object#any
35
35
 
36
36
  # Classes
37
37
  class Object
38
- def foo : (k: Integer) -> nil
39
- def bar : (int: Integer, str: String) -> nil
40
- def baz : (**{int: Integer, str: String}) -> nil
41
- def qux : (**Hash[untyped, untyped]) -> nil
38
+ private
39
+ def foo: (k: Integer) -> nil
40
+ def bar: (int: Integer, str: String) -> nil
41
+ def baz: (**{int: Integer, str: String}) -> nil
42
+ def qux: (**Hash[untyped, untyped]) -> nil
42
43
  end
@@ -8,5 +8,6 @@ foo(*a, **h)
8
8
  __END__
9
9
  # Classes
10
10
  class Object
11
- def foo : (*Integer | {k: Integer}, k: Integer) -> nil
11
+ private
12
+ def foo: (*Integer | {k: Integer}, k: Integer) -> nil
12
13
  end
@@ -0,0 +1,10 @@
1
+ def foo
2
+ 1i
3
+ end
4
+
5
+ __END__
6
+ # Classes
7
+ class Object
8
+ private
9
+ def foo: -> Complex
10
+ end
@@ -0,0 +1,10 @@
1
+ def foo
2
+ __ENCODING__
3
+ end
4
+
5
+ __END__
6
+ # Classes
7
+ class Object
8
+ private
9
+ def foo: -> Encoding
10
+ end
@@ -20,8 +20,9 @@ end
20
20
  __END__
21
21
  # Classes
22
22
  class Object
23
- # def foo : (Integer) -> Integer
23
+ # def foo: (Integer) -> Integer
24
24
  # | (String) -> String
25
- def ret_int : -> Integer
26
- def ret_str : -> String
25
+ private
26
+ def ret_int: -> Integer
27
+ def ret_str: -> String
27
28
  end
@@ -16,5 +16,6 @@ smoke/manual-rbs2.rb:4: [error] undefined method: A::B#unknown
16
16
 
17
17
  # Classes
18
18
  class Object
19
- def bar : -> untyped
19
+ private
20
+ def bar: -> untyped
20
21
  end
@@ -7,6 +7,6 @@ end
7
7
  __END__
8
8
  # Classes
9
9
  class Foo
10
- @foo : Integer
11
- # def foo : -> Integer
10
+ @foo: Integer
11
+ # def foo: -> Integer
12
12
  end
@@ -9,5 +9,6 @@ foo
9
9
  __END__
10
10
  # Classes
11
11
  class Object
12
- def foo : -> [Integer, [String, :sym], nil]
12
+ private
13
+ def foo: -> [Integer, [String, :sym], nil]
13
14
  end
@@ -12,6 +12,7 @@ foo
12
12
  __END__
13
13
  # Classes
14
14
  class Object
15
- def ary : -> [Integer, String, :sym, Float]
16
- def foo : -> [Integer, [String, :sym], Float]
15
+ private
16
+ def ary: -> [Integer, String, :sym, Float]
17
+ def foo: -> [Integer, [String, :sym], Float]
17
18
  end
@@ -8,5 +8,6 @@ foo
8
8
  __END__
9
9
  # Classes
10
10
  class Object
11
- def foo : -> [Integer, nil, nil]
11
+ private
12
+ def foo: -> [Integer, nil, nil]
12
13
  end