Fix null checks in ToSourceVisitor.

Change-Id: Iebac674c6a6b631fb59932c16caab1a55df0f7bd
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/213408
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
This commit is contained in:
Konstantin Shcheglov 2021-09-14 21:17:37 +00:00 committed by commit-bot@chromium.org
parent aa4cf21424
commit e39818f306

View file

@ -264,11 +264,12 @@ class ToSourceVisitor implements AstVisitor<void> {
@override
void visitDefaultFormalParameter(DefaultFormalParameter node) {
_visitNode(node.parameter);
if (node.separator != null) {
if (node.separator!.lexeme != ':') {
var separator = node.separator;
if (separator != null) {
if (separator.lexeme != ':') {
sink.write(' ');
}
sink.write(node.separator!.lexeme);
sink.write(separator.lexeme);
_visitNode(node.defaultValue, prefix: ' ');
}
}
@ -728,14 +729,8 @@ class ToSourceVisitor implements AstVisitor<void> {
@override
void visitMethodInvocation(MethodInvocation node) {
if (node.isCascaded) {
sink.write(node.operator!.lexeme);
} else {
if (node.target != null) {
node.target!.accept(this);
sink.write(node.operator!.lexeme);
}
}
_visitNode(node.target);
_visitToken(node.operator);
_visitNode(node.methodName);
_visitNode(node.typeArguments);
_visitNode(node.argumentList);