blob: 4152cd8cb7df1ef291c49142bb49f723341970f7 [file] [log] [blame]
// Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
class Callable {
call(x) {
return "string";
}
}
class CallableGetter {
get call => new Callable();
}
main() {
var closure = (x) => x;
var int1 = closure(1);
var int2 = closure.call(1);
var int3 = closure.call.call(1);
var int4 = closure.call.call.call(1);
var callable = new Callable();
var string1 = callable(1);
var string2 = callable.call(1);
var string3 = callable.call.call(1);
var string4 = callable.call.call.call(1);
var callableGetter = new CallableGetter();
var string5 = callableGetter(1);
var string6 = callableGetter.call(1);
var string7 = callableGetter.call.call(1);
var string8 = callableGetter.call.call.call(1);
var nothing1 = closure();
var nothing2 = closure.call();
var nothing3 = closure.call.call();
var nothing4 = closure.call.call.call();
var nothing5 = callable();
var nothing6 = callable.call();
var nothing7 = callable.call.call();
var nothing8 = callable.call.call.call();
var nothing9 = callableGetter();
var nothing10 = callableGetter.call();
var nothing11 = callableGetter.call.call();
var nothing12 = callableGetter.call.call.call();
}
var closure = (x) => x;
var int1 = closure(1);
var int2 = closure.call(1);
var int3 = closure.call.call(1);
var int4 = closure.call.call.call(1);
var callable = new Callable();
var string1 = callable(1);
var string2 = callable.call(1);
var string3 = callable.call.call(1);
var string4 = callable.call.call.call(1);
var callableGetter = new CallableGetter();
var string5 = callableGetter(1);
var string6 = callableGetter.call(1);
var string7 = callableGetter.call.call(1);
var string8 = callableGetter.call.call.call(1);
var nothing1 = closure();
var nothing2 = closure.call();
var nothing3 = closure.call.call();
var nothing4 = closure.call.call.call();
var nothing5 = callable();
var nothing6 = callable.call();
var nothing7 = callable.call.call();
var nothing8 = callable.call.call.call();
var nothing9 = callableGetter();
var nothing10 = callableGetter.call();
var nothing11 = callableGetter.call.call();
var nothing12 = callableGetter.call.call.call();