Zig 0.17.0-dev (Split by item)
This is an example of documentation generated by
ZigDoc , an alternative to Zig's built-in
Auto Doc feature. See also
examples in other modes/formats . The project being documented here (as the example) is the Zig library itself.
Zig › std/ › compress/ › zstd/ › Decompress.zig › streamIndirectInner
streamIndirectInner
Decompress.streamIndirectInner
fn streamIndirectInner (d : *Decompress ) Reader .Error !usize
File
Code
fn streamIndirectInner (d : *Decompress ) Reader .Error !usize {
const r = &d .reader ;
if (r .buffer .len - r .end < zstd .block_size_max ) rebase (r , zstd .block_size_max );
assert (r .buffer .len - r .end >= zstd .block_size_max );
var writer : Writer = .{
.buffer = r .buffer ,
.end = r .end ,
.vtable = &.{
.drain = Writer .unreachableDrain ,
.rebase = Writer .unreachableRebase ,
},
};
defer r .end = writer .end ;
_ = stream (d , &writer , .limited (writer .buffer .len - writer .end )) catch |err | switch (err ) {
error .WriteFailed => unreachable ,
else => |e | return e ,
};
return 0 ;
}