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 standard library.
std › compress › zstd › Decompress › streamIndirectInner Private Function streamIndirectInner Doc Source Private Function std.compress.zstd.Decompress.streamIndirectInner
fn streamIndirectInner (d : *Decompress ) Reader .Error !usize Params File compress/zstd/Decompress.zig: 208
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226 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 ;
}