12345678910111213141516171819202122232425262728 |
- class Foo {
- public function new() {}
- public function test() {}
- public function doWithBar(?bar:Bar) {
- trace(bar);
- }
- }
- @:keep
- class Bar {
- public function new() {}
- }
- function doThingsImpl(foo) {
- $type(foo); // Unknown<0>
- foo.doWithBar();
- $type(foo); // Unknown<0> : { doWithBar : () -> Unknown<1> }
- $type(foo.doWithBar); // () -> Unknown<0>
- if (foo != null)
- trace(foo);
- $type(foo); // Null<{ doWithBar : () -> Unknown<0> }>
- $type(foo.doWithBar); // () -> Unknown<0>
- foo.test(); // Null<{ doWithBar : () -> Unknown<0> }> has no field test
- }
- function main() {}
|