parseDoubleBracketStr method

Token parseDoubleBracketStr()

Implementation

Token parseDoubleBracketStr() {
  final char = peek();
  String lexeme = read('[[').lexeme;

  while (!eof()) {
    // Look for terminating right block token
    final bool foundTerminal =
        peek().lexeme == ']' && peek(offset: 1).lexeme == ']';

    if (foundTerminal) {
      lexeme += read(']]').lexeme;
      break;
    }

    lexeme += advance().lexeme;
  }

  return char.toToken(TokenType.kString, lexeme: lexeme);
}