mirror of
https://github.com/dart-lang/sdk
synced 2024-09-16 03:07:49 +00:00
ebb3dea075
R=ahe@google.com, paulberry@google.com, sigmund@google.com BUG= Review-Url: https://codereview.chromium.org/2981783002 .
49 lines
1.6 KiB
Plaintext
49 lines
1.6 KiB
Plaintext
library;
|
|
import self as self;
|
|
import "dart:core" as core;
|
|
|
|
class Callable extends core::Object {
|
|
default constructor •() → void
|
|
: super core::Object::•()
|
|
;
|
|
method call(dynamic x) → dynamic {
|
|
return "string";
|
|
}
|
|
}
|
|
class CallableGetter extends core::Object {
|
|
default constructor •() → void
|
|
: super core::Object::•()
|
|
;
|
|
get call() → dynamic
|
|
return new self::Callable::•();
|
|
}
|
|
static method main() → dynamic {
|
|
dynamic closure = (dynamic x) → dynamic => x;
|
|
dynamic int1 = closure.call(1);
|
|
dynamic int2 = closure.call(1);
|
|
dynamic int3 = closure.call.call(1);
|
|
dynamic int4 = closure.call.call.call(1);
|
|
dynamic callable = new self::Callable::•();
|
|
dynamic string1 = callable.call(1);
|
|
dynamic string2 = callable.call(1);
|
|
dynamic string3 = callable.call.call(1);
|
|
dynamic string4 = callable.call.call.call(1);
|
|
dynamic callableGetter = new self::CallableGetter::•();
|
|
dynamic string5 = callableGetter.call(1);
|
|
dynamic string6 = callableGetter.call(1);
|
|
dynamic string7 = callableGetter.call.call(1);
|
|
dynamic string8 = callableGetter.call.call.call(1);
|
|
dynamic nothing1 = closure.call();
|
|
dynamic nothing2 = closure.call();
|
|
dynamic nothing3 = closure.call.call();
|
|
dynamic nothing4 = closure.call.call.call();
|
|
dynamic nothing5 = callable.call();
|
|
dynamic nothing6 = callable.call();
|
|
dynamic nothing7 = callable.call.call();
|
|
dynamic nothing8 = callable.call.call.call();
|
|
dynamic nothing9 = callableGetter.call();
|
|
dynamic nothing10 = callableGetter.call();
|
|
dynamic nothing11 = callableGetter.call.call();
|
|
dynamic nothing12 = callableGetter.call.call.call();
|
|
}
|