blob: f305b5116757b8d431bf9330421eda1205f3b72e [file] [log] [blame]
// Copyright (c) 2020, 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.
// @dart = 2.7
/*member: a:OutputUnit(1, {lib})*/
a() => print("123");
/*member: b:OutputUnit(1, {lib})*/
b() => print("123");
/*member: c:OutputUnit(1, {lib})*/
c() => print("123");
/*member: d:OutputUnit(1, {lib})*/
d() => print("123");
/*class: B:OutputUnit(1, {lib}), type=OutputUnit(1, {lib})*/
class B {
/*member: B.:OutputUnit(1, {lib})*/
B() {
b();
}
}
/*class: B2:OutputUnit(1, {lib}), type=OutputUnit(1, {lib})*/
/*member: B2.:OutputUnit(1, {lib})*/
class B2 extends B {
// No constructor creates a synthetic constructor that has an implicit
// super-call.
}
/*class: A:OutputUnit(1, {lib}), type=OutputUnit(1, {lib})*/
class A {
/*member: A.:OutputUnit(1, {lib})*/
A() {
a();
}
}
/*class: A2:OutputUnit(1, {lib}), type=OutputUnit(1, {lib})*/
class A2 extends A {
// Implicit super call.
/*member: A2.:OutputUnit(1, {lib})*/
A2();
}
/*class: C1:OutputUnit(1, {lib}), type=OutputUnit(1, {lib})*/
class C1 {}
/*class: C2:OutputUnit(1, {lib}), type=OutputUnit(1, {lib})*/
class C2 {
/*member: C2.:OutputUnit(1, {lib})*/
C2() {
c();
}
}
/*class: C2p:none, type=none*/
class C2p {
C2() {
c();
}
}
/*class: C3:OutputUnit(1, {lib}), type=OutputUnit(1, {lib})*/
/*member: C3.:OutputUnit(1, {lib})*/
class C3 extends C2 with C1 {
// Implicit redirecting "super" call via mixin.
}
/*class: E:OutputUnit(1, {lib}), type=OutputUnit(1, {lib})*/
class E {}
/*class: F:OutputUnit(1, {lib}), type=OutputUnit(1, {lib})*/
class F {}
/*class: G:OutputUnit(1, {lib}), type=OutputUnit(1, {lib})*/
/*member: G.:OutputUnit(1, {lib})*/
class G extends C3 with C1, E, F {}
/*class: D1:OutputUnit(1, {lib}), type=OutputUnit(1, {lib})*/
class D1 {}
/*class: D2:OutputUnit(1, {lib}), type=OutputUnit(1, {lib})*/
class D2 {
/*member: D2.:OutputUnit(1, {lib})*/
D2(x) {
d();
}
}
// Implicit redirecting "super" call with a parameter via mixin.
/*class: D3:OutputUnit(1, {lib}), type=OutputUnit(1, {lib})*/
class D3 = D2 with D1;