in lib/src/ast.dart [297:310]
OptionsNode flattenOptions() {
if (negated || ranges.any((range) => !range.isSingleton)) {
return super.flattenOptions();
}
// If a range explicitly lists a set of characters, return each character as
// a separate expansion.
return OptionsNode(ranges.map((range) {
return SequenceNode([
LiteralNode(String.fromCharCodes([range.min]),
caseSensitive: caseSensitive)
], caseSensitive: caseSensitive);
}), caseSensitive: caseSensitive);
}