blob: ad5e78bfeb1ad05ffd2d8f995abc7a696da9013c [file] [log] [blame]
// Copyright (c) 2022, 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.
import 'api_test_macro.dart';
main() {}
var field;
get getter => null;
set setter(_) => null;
@ClassMacro()
class Class1 {
var field1;
Class1();
}
@ClassMacro()
abstract class Class2 {}
@ClassMacro()
class Class3 extends Class2 implements Interface1 {
var field1;
var field2;
Class3.new();
Class3.named();
factory Class3.fact() => Class3.named();
factory Class3.redirect() = Class3.named;
void method1() {}
void method2() {}
get getter1 => null;
set setter1(_) {}
get property1 => null;
set property1(_) {}
static var staticField1;
static void staticMethod1() {}
}
@ClassMacro()
class Class4 extends Class1 with Mixin1 {}
@ClassMacro()
class Class5 extends Class2
with Mixin1, Mixin2
implements Interface1, Interface2 {}
mixin Mixin1 {}
mixin Mixin2 {}
@ClassMacro()
abstract class Interface1 {}
@ClassMacro()
abstract class Interface2 {}
@FunctionMacro()
void topLevelFunction1(Class1 a, {Class1? b, required Class2? c}) {}
@FunctionMacro()
external Class2 topLevelFunction2(Class1 a, [Class2? b]);