visitSequence method

  1. @override
void visitSequence(
  1. SequenceExpression node
)
override

Implementation

@override
void visitSequence(SequenceExpression node) {
  final expressions = node.expressions;
  final length = expressions.length;
  final affected = <Expression>[];
  var skip = false;
  for (var i = 0; i < length; i++) {
    final child = expressions[i];
    child.accept(this);
    if (!skip) {
      affected.add(child);
      if (!child.isOptional) {
        skip = true;
      }
    }
  }

  for (final child in affected) {
    _addCharacters(node, child.startCharacters);
  }
}