visitLiteral method
Implementation
@override
void visitLiteral(LiteralExpression node) {
final text = node.text;
if (text.isEmpty) {
_addAllCharactersWithEof(node);
} else {
final characters = SparseBoolList();
int c;
final leading = text.codeUnitAt(0);
if ((leading & 0xFC00) == 0xD800 && text.length > 1) {
final trailing = text.codeUnitAt(1);
if ((trailing & 0xFC00) == 0xDC00) {
c = 0x10000 + ((leading & 0x3FF) << 10) + (trailing & 0x3FF);
} else {
c = leading;
}
} else {
c = leading;
}
final group = GroupedRangeList<bool>(c, c, true);
characters.addGroup(group);
_addCharacters(node, characters);
}
}