build method
Implementation
@override
String build(Context context, ParserResult? result) {
if (table.isEmpty) {
throw ArgumentError.value(
table, 'table', 'The map of characters must not be empty: $this');
}
context.refersToStateSource = true;
final fast = result == null;
final isUnicode = table.keys.any((e) => e > 0xffff);
final String template;
if (isUnicode) {
if (fast) {
template = _template32Fast;
} else {
template = _template32;
}
} else {
if (fast) {
template = _template16Fast;
} else {
template = _template16;
}
}
final values = {
'cases': _buildCases(),
};
return render(template, values, [result]);
}