c = nextChar(7);
builder.append("![CDATA");
while (true) {
builder.append(c);
if (peek(1) == Tokenizer.EOL) {
return new CDATAToken(line, col, builder.toString(), getLineNo(), getColumn());
} else {
if (peek(1) == ']' && peek(2) == ']' && peek(3) == '>') {
builder.append("]]>");
break;
}
}
c = nextChar();
}
nextChar(3);
return new CDATAToken(line, col, builder.toString(), getLineNo(), getColumn());
// DOCTYPE DECLARATIONS
} else {
while (c != '>') {
builder.append(c);