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 › mem › SplitIterator › next Public Function next Doc Source Public Function std.mem.SplitIterator.next
pub fn next (self : *Self ) ?[]const T Params File mem.zig: 3421
3421
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438 pub fn next (self : *Self ) ?[]const T {
const start = self .index orelse return null ;
const end = if (switch (delimiter_type ) {
.sequence => findPos (T , self .buffer , start , self .delimiter ),
.any => findAnyPos (T , self .buffer , start , self .delimiter ),
.scalar => findScalarPos (T , self .buffer , start , self .delimiter ),
}) |delim_start | blk : {
self .index = delim_start + switch (delimiter_type ) {
.sequence => self .delimiter .len ,
.any , .scalar => 1 ,
};
break :blk delim_start ;
} else blk : {
self .index = null ;
break :blk self .buffer .len ;
};
return self .buffer [start ..end ];
}
Returns a slice of the next field, or null if splitting is complete.