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
@@ -20,8 +20,9 @@ end
20
20
  __END__
21
21
  # Classes
22
22
  class Object
23
- def log1 : (:a) -> nil
24
- def log2 : (:b) -> nil
25
- def log3 : (:c) -> nil
26
- def f : { -> :c } -> :d
23
+ private
24
+ def log1: (:a) -> nil
25
+ def log2: (:b) -> nil
26
+ def log3: (:c) -> nil
27
+ def f: { -> :c } -> :d
27
28
  end
@@ -39,14 +39,15 @@ smoke/block-kwarg.rb:31: [error] no argument for required keywords
39
39
 
40
40
  # Classes
41
41
  class Object
42
- def f1 : { -> nil } -> nil
43
- def log1 : (Integer) -> nil
44
- def f2 : { -> nil } -> nil
45
- def log2 : (:opt | Integer) -> nil
46
- def f3 : { -> nil } -> nil
47
- def log3 : (Integer | String) -> nil
48
- def f4 : { -> nil } -> nil
49
- def log4 : ({k: Integer}) -> nil
50
- def f5 : { -> nil } -> untyped
51
- def f6 : { -> nil } -> untyped
42
+ private
43
+ def f1: { -> nil } -> nil
44
+ def log1: (Integer) -> nil
45
+ def f2: { -> nil } -> nil
46
+ def log2: (:opt | Integer) -> nil
47
+ def f3: { -> nil } -> nil
48
+ def log3: (Integer | String) -> nil
49
+ def f4: { -> nil } -> nil
50
+ def log4: ({k: Integer}) -> nil
51
+ def f5: { -> nil } -> untyped
52
+ def f6: { -> nil } -> untyped
52
53
  end
@@ -18,5 +18,6 @@ end
18
18
  __END__
19
19
  # Classes
20
20
  class Object
21
- def foo : (:sym | String) { (:sym | Integer | String) -> (:sym | Integer | String) } -> (:sym | Integer | String)
21
+ private
22
+ def foo: (:sym | String) { (:sym | Integer | String) -> (:sym | Integer | String) } -> (:sym | Integer | String)
22
23
  end
@@ -10,5 +10,6 @@ foo([1], ["str"])
10
10
  __END__
11
11
  # Classes
12
12
  class Object
13
- def foo : ([Integer], [String]) -> ([Integer | String])
13
+ private
14
+ def foo: ([Integer], [String]) -> ([Integer | String])
14
15
  end
@@ -31,9 +31,10 @@ bar
31
31
  __END__
32
32
  # Classes
33
33
  class Object
34
- def log1 : (Integer?) -> nil
35
- def log2 : (Integer?) -> nil
36
- def foo : -> Integer?
37
- def test_yield : { -> nil } -> nil
38
- def bar : -> Integer?
34
+ private
35
+ def log1: (Integer?) -> nil
36
+ def log2: (Integer?) -> nil
37
+ def foo: -> Integer?
38
+ def test_yield: { -> nil } -> nil
39
+ def bar: -> Integer?
39
40
  end
@@ -17,6 +17,7 @@ bar
17
17
  __END__
18
18
  # Classes
19
19
  class Object
20
- def foo : -> [:foo]
21
- def bar : -> [:bar]
20
+ private
21
+ def foo: -> [:foo]
22
+ def bar: -> [:bar]
22
23
  end
@@ -9,9 +9,10 @@ $blk.call(42)
9
9
 
10
10
  __END__
11
11
  # Global variables
12
- $blk : ^(Integer) -> nil
12
+ $blk: ^(Integer) -> nil
13
13
 
14
14
  # Classes
15
15
  class Object
16
- def foo : { (Integer) -> nil } -> nil
16
+ private
17
+ def foo: { (Integer) -> nil } -> nil
17
18
  end
@@ -10,5 +10,6 @@ end
10
10
  __END__
11
11
  # Classes
12
12
  class Object
13
- def foo : (Integer) { (Integer) -> String } -> String
13
+ private
14
+ def foo: (Integer) { (Integer) -> String } -> String
14
15
  end
@@ -26,13 +26,13 @@ Bar.new.bar
26
26
  __END__
27
27
  # Classes
28
28
  class Common
29
- def func : (:sym | String) { (Integer) -> (:sym2 | Integer) } -> (:sym2 | Integer)
29
+ def func: (:sym | String) { (Integer) -> (:sym2 | Integer) } -> (:sym2 | Integer)
30
30
  end
31
31
 
32
32
  class Foo
33
- def foo : -> (:sym2 | Integer)
33
+ def foo: -> (:sym2 | Integer)
34
34
  end
35
35
 
36
36
  class Bar
37
- def bar : -> (:sym2 | Integer)
37
+ def bar: -> (:sym2 | Integer)
38
38
  end
@@ -13,6 +13,7 @@ bar(&blk)
13
13
  __END__
14
14
  # Classes
15
15
  class Object
16
- def foo : { (:sym | String) -> (:sym | String) } -> (:sym | String)
17
- def bar : { (:sym | String) -> (:sym | String) } -> (:sym | String)
16
+ private
17
+ def foo: { (:sym | String) -> (:sym | String) } -> (:sym | String)
18
+ def bar: { (:sym | String) -> (:sym | String) } -> (:sym | String)
18
19
  end
@@ -14,6 +14,7 @@ end
14
14
  __END__
15
15
  # Classes
16
16
  class Object
17
- F : ^(Integer) -> String
18
- def foo : { (:sym) -> String } -> String
17
+ F: ^(Integer) -> String
18
+ private
19
+ def foo: { (:sym) -> String } -> String
19
20
  end
@@ -15,6 +15,7 @@ foo
15
15
  __END__
16
16
  # Classes
17
17
  class Object
18
- def bar : { -> String } -> String
19
- def foo : -> (Integer | String)
18
+ private
19
+ def bar: { -> String } -> String
20
+ def foo: -> (Integer | String)
20
21
  end
@@ -14,5 +14,6 @@ smoke/block7.rb:8: [error] wrong argument type Integer<1> (expected Proc)
14
14
 
15
15
  # Classes
16
16
  class Object
17
- def foo : -> untyped
17
+ private
18
+ def foo: -> untyped
18
19
  end
@@ -21,7 +21,8 @@ foo
21
21
  __END__
22
22
  # Classes
23
23
  class Object
24
- def bar : { -> String } -> String
25
- def baz : { -> String } -> String
26
- def foo : -> (Integer | String)
24
+ private
25
+ def bar: { -> String } -> String
26
+ def baz: { -> String } -> String
27
+ def foo: -> (Integer | String)
27
28
  end
@@ -8,5 +8,6 @@ foo { }
8
8
  __END__
9
9
  # Classes
10
10
  class Object
11
- def foo : { -> nil } -> Integer
11
+ private
12
+ def foo: { -> nil } -> Integer
12
13
  end
@@ -8,5 +8,6 @@ foo { }
8
8
  __END__
9
9
  # Classes
10
10
  class Object
11
- def foo : { -> nil } -> [^-> nil]
11
+ private
12
+ def foo: { -> nil } -> [^-> nil]
12
13
  end
@@ -13,6 +13,7 @@ bar
13
13
  __END__
14
14
  # Classes
15
15
  class Object
16
- def foo : { (Integer) -> bot } -> bot
17
- def bar : -> String
16
+ private
17
+ def foo: { (Integer) -> bot } -> bot
18
+ def bar: -> String
18
19
  end
@@ -11,5 +11,6 @@ foo
11
11
  __END__
12
12
  # Classes
13
13
  class Object
14
- def foo : -> (Integer | String)
14
+ private
15
+ def foo: -> (Integer | String)
15
16
  end
@@ -0,0 +1,13 @@
1
+ def foo
2
+ begin
3
+ rescue
4
+ break 42
5
+ end while true
6
+ end
7
+
8
+ __END__
9
+ # Classes
10
+ class Object
11
+ private
12
+ def foo: -> Integer
13
+ end
@@ -12,5 +12,6 @@ foo
12
12
  __END__
13
13
  # Classes
14
14
  class Object
15
- def foo : -> ((:sym | Integer)?)
15
+ private
16
+ def foo: -> ((:sym | Integer)?)
16
17
  end
@@ -13,5 +13,6 @@ foo
13
13
  __END__
14
14
  # Classes
15
15
  class Object
16
- def foo : -> ((:sym | Integer)?)
16
+ private
17
+ def foo: -> ((:sym | Integer)?)
17
18
  end
@@ -0,0 +1,17 @@
1
+ def foo
2
+ case
3
+ when *[]
4
+ return 1
5
+ when false
6
+ return 1.0
7
+ when rand < 0.5
8
+ return "str"
9
+ end
10
+ end
11
+
12
+ __END__
13
+ # Classes
14
+ class Object
15
+ private
16
+ def foo: -> ((Integer | String)?)
17
+ end
@@ -25,7 +25,7 @@ end
25
25
  __END__
26
26
  # Classes
27
27
  class Object
28
- A : Integer
28
+ A: Integer
29
29
  end
30
30
 
31
31
  module Lib
@@ -37,18 +37,18 @@ module Lib
37
37
  end
38
38
 
39
39
  module App
40
- CONST3 : Foo::Bar
40
+ CONST3: Foo::Bar
41
41
 
42
42
  class Foo < Lib::Base
43
- CONST1 : Foo
43
+ CONST1: Foo
44
44
  include Lib::Mod
45
45
 
46
46
  class Bar
47
- CONST2 : Bar
47
+ CONST2: Bar
48
48
  end
49
49
  end
50
50
 
51
51
  class Baz < Foo
52
- CONST4 : Foo::Bar
52
+ CONST4: Foo::Bar
53
53
  end
54
54
  end
@@ -19,9 +19,9 @@ __END__
19
19
  class A
20
20
  class B
21
21
  class C
22
- def get_a : -> A
23
- def get_b : -> B
24
- def get_c : -> C
22
+ def get_a: -> A
23
+ def get_b: -> B
24
+ def get_c: -> C
25
25
  end
26
26
  end
27
27
  end
@@ -0,0 +1,15 @@
1
+ Foo = Class.new
2
+ Foo::Bar = 1
3
+ Foo.extend(Enumerable)
4
+ Foo.include(Enumerable)
5
+ class Foo::Baz
6
+ end
7
+ Foo.send(:private, :foo)
8
+
9
+ # XXX: should be supported better
10
+
11
+ __END__
12
+ # Classes
13
+ class Object
14
+ Foo: Class
15
+ end
@@ -5,5 +5,5 @@ end
5
5
  __END__
6
6
  # Classes
7
7
  class Foo
8
- self.@foo : Integer
8
+ self.@foo: Integer
9
9
  end
@@ -20,6 +20,6 @@ Test.bar("str")
20
20
  __END__
21
21
  # Classes
22
22
  class Test
23
- def self.foo : (Integer) -> Integer
24
- def self.bar : (String) -> String
23
+ def self.foo: (Integer) -> Integer
24
+ def self.bar: (String) -> String
25
25
  end
@@ -16,6 +16,6 @@ Test.bar("str")
16
16
  __END__
17
17
  # Classes
18
18
  class Test
19
- def self.foo : (Integer) -> Integer
20
- def self.bar : (String) -> String
19
+ def self.foo: (Integer) -> Integer
20
+ def self.bar: (String) -> String
21
21
  end
@@ -19,9 +19,11 @@ v.foo
19
19
  __END__
20
20
  # Classes
21
21
  class ForWin
22
- def self.foo : -> nil
22
+ private
23
+ def self.foo: -> nil
23
24
  end
24
25
 
25
26
  class ForLinux
26
- def self.foo : -> nil
27
+ private
28
+ def self.foo: -> nil
27
29
  end
@@ -31,16 +31,16 @@ Foo::Bar.new.get4 # Integer
31
31
  __END__
32
32
  # Classes
33
33
  class Object
34
- CONST : Integer
34
+ CONST: Integer
35
35
  end
36
36
 
37
37
  class Foo
38
- CONST : String
38
+ CONST: String
39
39
 
40
40
  class Bar
41
- def get1 : -> String
42
- def get2 : -> Integer
43
- def get3 : -> Integer
44
- def get4 : -> Integer
41
+ def get1: -> String
42
+ def get2: -> Integer
43
+ def get3: -> Integer
44
+ def get4: -> Integer
45
45
  end
46
46
  end
@@ -24,11 +24,12 @@ smoke/constant2.rb:15: [warning] already initialized constant Object::BAR
24
24
 
25
25
  # Classes
26
26
  class Object
27
- BAR : String
28
- def foo : (Integer | untyped) -> nil
29
- def log : (String) -> nil
27
+ BAR: String
28
+ private
29
+ def foo: (Integer | untyped) -> nil
30
+ def log: (String) -> nil
30
31
  end
31
32
 
32
33
  class C
33
- def foo : -> nil
34
+ def foo: -> nil
34
35
  end
@@ -5,5 +5,6 @@ foo
5
5
  __END__
6
6
  # Classes
7
7
  class Object
8
- def foo : -> untyped
8
+ private
9
+ def foo: -> untyped
9
10
  end
@@ -7,5 +7,6 @@ foo
7
7
  __END__
8
8
  # Classes
9
9
  class Object
10
- def foo : -> Complex
10
+ private
11
+ def foo: -> Complex
11
12
  end
@@ -8,5 +8,6 @@ foo(x || 1)
8
8
  __END__
9
9
  # Classes
10
10
  class Object
11
- def foo : (Integer) -> Integer
11
+ private
12
+ def foo: (Integer) -> Integer
12
13
  end
@@ -18,12 +18,13 @@ A.new.foo
18
18
  __END__
19
19
  # Classes
20
20
  class Object
21
- def log1 : (Integer) -> nil
22
- def log2 : (Integer) -> nil
21
+ private
22
+ def log1: (Integer) -> nil
23
+ def log2: (Integer) -> nil
23
24
  end
24
25
 
25
26
  class A
26
- FOO : Integer
27
- @@var : Integer
28
- def foo : -> nil
27
+ FOO: Integer
28
+ @@var: Integer
29
+ def foo: -> nil
29
30
  end