blob: a72ae2d7c68ad04874c0910ae3f145bc4e945a1a [file] [log] [blame]
// Copyright (c) 2011, 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.
//
// Use qualified symbols at various places.
// @dart = 2.9
library Prefix14Test.dart;
import "package:expect/expect.dart";
import "../library12.dart" as lib12;
typedef lib12.Library12 myFunc(lib12.Library12 param);
class myInterface implements lib12.Library12Interface {
myInterface(lib12.Library12 this.myfld);
lib12.Library12 addObjects(lib12.Library12 value1, lib12.Library12 value2) {
myfld.fld = (value1.fld + value2.fld + myfld.fld);
return myfld;
}
lib12.Library12 myfld;
}
class myClass extends lib12.Library12 {
myClass(int value) : super(value);
static lib12.Library12 func1() {
var i = new lib12.Library12(10);
return i;
}
static lib12.Library12 func2(lib12.Library12 param) {
return param;
}
}
class myClass1 {
myClass1(int value) : fld1 = new lib12.Library12(value);
lib12.Library12 fld1;
}
class myClass2 {
myClass2(lib12.Library12 this.fld2);
lib12.Library12 fld2;
}
main() {
var o;
o = myClass.func1();
Expect.equals(2, o.func());
o = new myClass(10);
Expect.equals(10, o.fld);
myFunc func = myClass.func2;
Expect.equals(2, func(new lib12.Library12(10)).func());
Expect.equals(10, func(new lib12.Library12(10)).fld);
o = new myClass1(100);
Expect.equals(2, o.fld1.func());
Expect.equals(100, o.fld1.fld);
o = new myClass2(new lib12.Library12(200));
Expect.equals(2, o.fld2.func());
Expect.equals(200, o.fld2.fld);
o = new myInterface(new lib12.Library12(100));
Expect.equals(2, o.myfld.func());
Expect.equals(100, o.myfld.fld);
o = o.addObjects(new lib12.Library12(200), new lib12.Library12(300));
Expect.equals(2, o.func());
Expect.equals(600, o.fld);
}