Tag the constructor arguments in new-anonymous-class calls as named arguments.
This commit is contained in:
parent
49612a48a6
commit
aa49b9035c
|
|
@ -464,6 +464,12 @@ final class FormatVisitor : ASTVisitor
|
||||||
newCall.accept(this);
|
newCall.accept(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
override void visit(const NewAnonClassExpression newAnonClassCall)
|
||||||
|
{
|
||||||
|
visit(newAnonClassCall.constructorArguments);
|
||||||
|
newAnonClassCall.accept(this);
|
||||||
|
}
|
||||||
|
|
||||||
private void visit(const Arguments arguments)
|
private void visit(const Arguments arguments)
|
||||||
{
|
{
|
||||||
// Check if call has any arguments.
|
// Check if call has any arguments.
|
||||||
|
|
|
||||||
|
|
@ -31,4 +31,8 @@ void test()
|
||||||
{
|
{
|
||||||
return Struct(foo: field.foo, bar: field.bar, baz: field.baz);
|
return Struct(foo: field.foo, bar: field.bar, baz: field.baz);
|
||||||
return new Class(foo: field.foo, bar: field.bar, baz: field.baz);
|
return new Class(foo: field.foo, bar: field.bar, baz: field.baz);
|
||||||
|
// anonymous class
|
||||||
|
return new class(foo: field.foo, bar: field.bar, baz: field.baz) Class
|
||||||
|
{
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -39,4 +39,9 @@ void test() {
|
||||||
foo: field.foo,
|
foo: field.foo,
|
||||||
bar: field.bar,
|
bar: field.bar,
|
||||||
baz: field.baz);
|
baz: field.baz);
|
||||||
|
// anonymous class
|
||||||
|
return new class(
|
||||||
|
foo: field.foo,
|
||||||
|
bar: field.bar,
|
||||||
|
baz: field.baz) Class { };
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -30,4 +30,7 @@ void test()
|
||||||
{
|
{
|
||||||
return Struct(foo: field.foo, bar: field.bar, baz: field.baz);
|
return Struct(foo: field.foo, bar: field.bar, baz: field.baz);
|
||||||
return new Class(foo: field.foo, bar: field.bar, baz: field.baz);
|
return new Class(foo: field.foo, bar: field.bar, baz: field.baz);
|
||||||
|
// anonymous class
|
||||||
|
return new class(foo: field.foo, bar: field.bar, baz: field.baz) Class {
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -26,4 +26,7 @@ void main() {
|
||||||
void test() {
|
void test() {
|
||||||
return Struct(foo: field.foo, bar: field.bar, baz: field.baz);
|
return Struct(foo: field.foo, bar: field.bar, baz: field.baz);
|
||||||
return new Class(foo: field.foo, bar: field.bar, baz: field.baz);
|
return new Class(foo: field.foo, bar: field.bar, baz: field.baz);
|
||||||
|
// anonymous class
|
||||||
|
return new class(foo: field.foo, bar: field.bar, baz: field.baz) Class {
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue