blob: 2a81ddcd3b40a1c64117500da50fdb221644b9be [file] [log] [blame]
40 columns |
>>> Collapse newlines between annotations.
@a
@b
@c
class A {}
<<<
@a
@b
@c
class A {}
>>> On class.
@meta class X {}
@a @b class A {}
@meta class Y = X with Z;
<<<
@meta
class X {}
@a
@b
class A {}
@meta
class Y = X with Z;
>>> On mixin.
@meta mixin M {}
@meta base mixin N {}
<<<
@meta
mixin M {}
@meta
base mixin N {}
>>> On extension.
@meta extension A on B {}
<<<
@meta
extension A on B {}
>>> On extension type.
@meta extension type A(int x) {}
<<<
@meta
extension type A(int x) {}
>>> On extension type representation parameter.
extension type A(@a @b int x) {}
<<<
extension type A(@a @b int x) {}
>>> On old style typedef.
@meta typedef void X(y);
<<<
@meta
typedef void X(y);
>>> On function typedef.
@foo typedef Fn = Function();
<<<
@foo
typedef Fn = Function();
>>> On non-function typedef.
@foo typedef Hash< @a K, @b( 1 ) V > = Map < K , V > ;
<<<
@foo
typedef Hash<@a K, @b(1) V> = Map<K, V>;
>>> On type parameter.
class Foo<
@a
@b
T> {}
<<<
class Foo<@a @b T> {}