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 › Io › Writer › Allocating › testAllocating Private Function testAllocating Doc Source Private Function std.Io.Writer.Allocating.testAllocating
fn testAllocating (comptime alignment : std .mem .Alignment ) !void Params File Io/Writer.zig: 2890
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911 fn testAllocating (comptime alignment : std .mem .Alignment ) !void {
var a : Allocating = .initAligned (testing .allocator , alignment );
defer a .deinit ();
const w = &a .writer ;
const x : i32 = 42 ;
const y : i32 = 1234 ;
try w .print ("x: {}\ny: {}\n" , .{ x , y });
const expected = "x: 42\ny: 1234\n" ;
try testing .expectEqualSlices (u8 , expected , a .written ());
// exercise *Aligned methods
var l = a .toArrayListAligned (alignment );
defer l .deinit (testing .allocator );
try testing .expectEqualSlices (u8 , expected , l .items );
a = .fromArrayListAligned (testing .allocator , alignment , &l );
try testing .expectEqualSlices (u8 , expected , a .written ());
const slice : []align (alignment .toByteUnits ()) u8 = @alignCast (try a .toOwnedSlice ());
try testing .expectEqualSlices (u8 , expected , slice );
a = .initOwnedSliceAligned (testing .allocator , alignment , slice );
try testing .expectEqualSlices (u8 , expected , a .writer .buffer );
}