in lib/src/codepage.dart [256:277]
CodePageDecoder _createDecoder(String characters) {
var result = Uint32List(256);
var i = 0;
var allChars = 0;
for (var char in characters.runes) {
if (i >= 256) {
throw ArgumentError.value(
characters, "characters", "Must contain 256 characters");
}
result[i] = char;
allChars |= char;
}
if (i < 256) {
throw ArgumentError.value(
characters, "characters", "Must contain 256 characters");
}
if (allChars <= 0xFFFF) {
// It's in the BMP.
return _BmpCodePageDecoder(characters);
}
return _NonBmpCodePageDecoder._(result);
}