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 › zig › llvm › Builder › WipFunction › alloca Public Function alloca Doc Source 6782
6783
6784
6785
6786
6787
6788
6789
6790
6791
6792
6793
6794
6795
6796
6797
6798
6799
6800
6801
6802
6803
6804
6805
6806
6807
6808
6809 pub fn alloca (
self : *WipFunction ,
kind : Instruction .Alloca .Kind ,
ty : Type ,
len : Value ,
alignment : Alignment ,
addr_space : AddrSpace ,
name : []const u8 ,
) Allocator .Error !Value {
assert (len == .none or len .typeOfWip (self ).isInteger (self .builder ));
_ = try self .builder .ptrType (addr_space );
try self .ensureUnusedExtraCapacity (1 , Instruction .Alloca , 0 );
const instruction = try self .addInst (name , .{
.tag = switch (kind ) {
.normal => .alloca ,
.inalloca => .@"alloca inalloca" ,
},
.data = self .addExtraAssumeCapacity (Instruction .Alloca {
.type = ty ,
.len = switch (len ) {
.none => .@"1" ,
else => len ,
},
.info = .{ .alignment = alignment , .addr_space = addr_space },
}),
});
return instruction .toValue ();
}