union Streams [src]

Fields

one: []const u8
four: [4][]const u8

Source

pub const Streams = union(enum) { one: []const u8, four: [4][]const u8, fn decode(size_format: u2, stream_data: []const u8) !Streams { if (size_format == 0) { return .{ .one = stream_data }; } if (stream_data.len < 6) return error.MalformedLiteralsSection; const stream_1_length: usize = std.mem.readInt(u16, stream_data[0..2], .little); const stream_2_length: usize = std.mem.readInt(u16, stream_data[2..4], .little); const stream_3_length: usize = std.mem.readInt(u16, stream_data[4..6], .little); const stream_1_start = 6; const stream_2_start = stream_1_start + stream_1_length; const stream_3_start = stream_2_start + stream_2_length; const stream_4_start = stream_3_start + stream_3_length; if (stream_data.len < stream_4_start) return error.MalformedLiteralsSection; return .{ .four = .{ stream_data[stream_1_start .. stream_1_start + stream_1_length], stream_data[stream_2_start .. stream_2_start + stream_2_length], stream_data[stream_3_start .. stream_3_start + stream_3_length], stream_data[stream_4_start..], } }; } }