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 › SplitBackwardsIterator › next Public Function next Doc Source Public Function std.mem.SplitBackwardsIterator.next
pub fn next (self : *Self ) ?[]const T Params File mem.zig: 3487
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504 pub fn next (self : *Self ) ?[]const T {
const end = self .index orelse return null ;
const start = if (switch (delimiter_type ) {
.sequence => findLast (T , self .buffer [0 ..end ], self .delimiter ),
.any => findLastAny (T , self .buffer [0 ..end ], self .delimiter ),
.scalar => findScalarLast (T , self .buffer [0 ..end ], self .delimiter ),
}) |delim_start | blk : {
self .index = delim_start ;
break :blk delim_start + switch (delimiter_type ) {
.sequence => self .delimiter .len ,
.any , .scalar => 1 ,
};
} else blk : {
self .index = null ;
break :blk 0 ;
};
return self .buffer [start ..end ];
}
Returns a slice of the next field, or null if splitting is complete.