encodeRmlFileInputs function
Encodes files for the compiler. A file with null bytes is withheld.
Implementation
Uint8List encodeRmlFileInputs(List<RmlFileInput> files) {
final out = BytesBuilder(copy: false);
_writeVarUint(out, files.length);
for (final file in files) {
final path = utf8.encode(file.path);
_writeVarUint(out, path.length);
out.add(path);
final bytes = file.bytes;
_writeVarUint(out, bytes == null ? _flagBytesOmitted : 0);
_writeVarUint(out, bytes?.length ?? 0);
if (bytes != null) {
out.add(bytes);
}
}
return out.takeBytes();
}