build static method

UDocNormalizedText build(
  1. String source
)

Implementation

static UDocNormalizedText build(String source) {
  final StringBuffer buffer = StringBuffer();
  final List<int> indices = <int>[];
  final List<int> runes = source.runes.toList();
  int rawIndex = 0;
  for (final int code in runes) {
    final int charLength = code > 0xFFFF ? 2 : 1;
    final String piece = UDocText.normalize(String.fromCharCode(code));
    for (int i = 0; i < piece.length; i++) {
      buffer.write(piece[i]);
      indices.add(rawIndex);
    }
    rawIndex += charLength;
  }
  return UDocNormalizedText(buffer.toString(), indices);
}