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 › AstGen › GenZir › addExtendedNodeSmall Private Function addExtendedNodeSmall Doc Source Private Function std.zig.AstGen.GenZir.addExtendedNodeSmall
fn addExtendedNodeSmall (
gz : *GenZir ,
opcode : Zir .Inst .Extended ,
src_node : Ast .Node .Index ,
small : u16 ,
) !Zir .Inst .Ref Params gz : *GenZir opcode : Zir .Inst .Extended src_node : Ast .Node .Index small : u16 File zig/AstGen.zig: 11962
11962
11963
11964
11965
11966
11967
11968
11969
11970
11971
11972
11973
11974
11975
11976
11977
11978
11979
11980
11981
11982
11983
11984 fn addExtendedNodeSmall (
gz : *GenZir ,
opcode : Zir .Inst .Extended ,
src_node : Ast .Node .Index ,
small : u16 ,
) !Zir .Inst .Ref {
const astgen = gz .astgen ;
const gpa = astgen .gpa ;
try gz .instructions .ensureUnusedCapacity (gpa , 1 );
try astgen .instructions .ensureUnusedCapacity (gpa , 1 );
const new_index : Zir .Inst .Index = @fromBackingInt (@intCast (astgen .instructions .len ));
astgen .instructions .appendAssumeCapacity (.{
.tag = .extended ,
.data = .{ .extended = .{
.opcode = opcode ,
.small = small ,
.operand = @bitCast (@backingInt (gz .nodeIndexToRelative (src_node ))),
} },
});
gz .instructions .appendAssumeCapacity (new_index );
return new_index .toRef ();
}