parseUtf16BeCodeUnits method

TreeSitterTree parseUtf16BeCodeUnits(
  1. List<int> codeUnits, {
  2. TreeSitterTree? oldTree,
  3. Iterable<TreeSitterInputEdit> edits = const [],
  4. bool annotateLocals = true,
})

Parses UTF-16 code units whose in-memory bytes are big-endian.

This is the direct counterpart of Tree-sitter 0.25's Parser::parse_utf16_be: on a little-endian host each supplied word is byte-swapped before it is interpreted as a Unicode code unit.

Implementation

TreeSitterTree parseUtf16BeCodeUnits(
  List<int> codeUnits, {
  TreeSitterTree? oldTree,
  Iterable<TreeSitterInputEdit> edits = const [],
  bool annotateLocals = true,
}) {
  final source = TreeSitterUtf16Input(
    (byteOffset, _) => byteOffset == 0 ? codeUnits : const [],
    encoding: TreeSitterUtf16Encoding.bigEndian,
  ).collect().source;
  return _parseUtf16Source(
    source,
    endian: Endian.big,
    oldTree: oldTree,
    edits: edits,
    annotateLocals: annotateLocals,
  );
}