index++;
}
// If end of buffer, can't disambiguate :(
if (index >= yy_buffer_read) {
// Can't disambiguate, so return as symbol
return new Symbol(ss);
}
// Return symbol if next token is '::' or '('
return (yy_buffer[index] == ':' && yy_buffer[index+1] == ':' ||
yy_buffer[index] == '(') ?
newSymbol(ss) : newSymbol(sym.QNAME, yytext());