pub fn read(allocator: std.mem.Allocator, reader: *std.Io.Reader, max_size: u64) ReadError!IconDir
pub fn read(allocator: std.mem.Allocator, reader: *std.Io.Reader, max_size: u64) ReadError!IconDir { return readInner(allocator, reader, max_size) catch |err| switch (err) { error.OutOfMemory, error.InvalidHeader, error.InvalidImageType, error.ImpossibleDataSize, error.ReadFailed, => |e| return e, error.EndOfStream => error.UnexpectedEOF, }; }