lib/choir/src/backends/artifact/serialization/format.zig

daab053ee43316e1809a84551d573ddd1e5bf3d2

 1 const binary = @import("../../../serialization/root.zig").binary;
 2 
 3 pub const magic = "CHOIRART";
 4 pub const version: u32 = 2;
 5 pub const max_serialized_bytes: usize = 256 * 1024 * 1024;
 6 pub const max_string_bytes: usize = 1024 * 1024;
 7 pub const max_blob_bytes: usize = 64 * 1024 * 1024;
 8 pub const max_collection_entries: usize = 1 << 16;
 9 pub const max_total_entries: usize = 1 << 18;
10 
11 pub const limits = binary.Limits{
12     .serialized_bytes = max_serialized_bytes,
13     .string_bytes = max_string_bytes,
14     .blob_bytes = max_blob_bytes,
15     .collection_entries = max_collection_entries,
16     .total_entries = max_total_entries,
17 };
18 
19 pub const Error = binary.Error || error{
20     InvalidMagic,
21     UnsupportedVersion,
22     TrailingBytes,
23 };
24 
25 pub const WriteError = binary.WriteError;
26 pub const Writer = binary.Writer(limits);
27 pub const Reader = binary.Reader(limits);