blob: cfcb2fcc2b394c4b7c2e7c7482f7fcd20ee58ec1 [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.
staticMethod() {
return "sdfg";
}
class Foo {
instanceMethod() {
return 123;
}
}
external bool externalStatic();
abstract class ExternalValue {}
abstract class Bar {
ExternalValue externalInstanceMethod();
}
external Bar createBar();
class Box {
var field;
}
stringArgument(x) {}
intArgument(x) {}
class FinalBox {
final finalField;
FinalBox(this.finalField);
}
class SubFinalBox extends FinalBox {
SubFinalBox(value) : super(value);
}
class DynamicReceiver1 {
dynamicallyCalled(x) {}
}
class DynamicReceiver2 {
dynamicallyCalled(x) {}
}
void makeDynamicCall(receiver) {
receiver.dynamicallyCalled("sdfg");
}
main() {
var x = staticMethod();
var y = new Foo().instanceMethod();
var z = externalStatic();
var w = createBar().externalInstanceMethod();
stringArgument("sdfg");
intArgument(42);
var box = new Box();
box.field = "sdfg";
var a = box.field;
var finalBox = new FinalBox("dfg");
var b = finalBox.finalField;
var subBox = new SubFinalBox("dfg");
var c = subBox.finalField;
makeDynamicCall(new DynamicReceiver1());
makeDynamicCall(new DynamicReceiver2());
var list = ["string"];
var d = list[0];
}