visitSequence method
Implementation
@override
void visitSequence(SequenceExpression node) {
final resultUsed = node.resultUsed;
final hasAction = node.actionIndex != null;
final expressions = node.expressions;
final hasVariables =
expressions.where((e) => e.variable != null).isNotEmpty;
if (resultUsed && !hasVariables && !hasAction) {
final first = expressions.first;
_setResultUsed(first, true);
}
for (var i = 0; i < expressions.length; i++) {
final child = expressions[i];
if (child.variable != null) {
if (resultUsed || hasAction) {
_setResultUsed(child, true);
}
}
child.accept(this);
}
}