canExpressionChangePos static method

bool canExpressionChangePos(
  1. SequenceExpression node
)

Implementation

static bool canExpressionChangePos(SequenceExpression node) {
  var count = 0;
  for (final child in node.expressions) {
    switch (child.kind) {
      case ExpressionKind.andPredicate:
      case ExpressionKind.notPredicate:
        continue;
      default:
    }

    if (child.isOptional) {
      if (count == 0) {
        count++;
      }

      continue;
    }

    if (count++ > 0) {
      return true;
    }
  }

  return false;
}