fn readOffsetVarInt(r: *Io.Reader) !u64
fn readOffsetVarInt(r: *Io.Reader) !u64 { const Byte = packed struct { value: u7, has_next: bool }; var b: Byte = @bitCast(try r.takeByte()); var value: u64 = b.value; while (b.has_next) { b = @bitCast(try r.takeByte()); value = std.math.shlExact(u64, value + 1, 7) catch return error.InvalidFormat; value |= b.value; } return value; }