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 library itself.
Zig › std/ › zig/ › llvm/ › Builder.zig › metadataString
metadataString
Builder.metadataString
pub fn metadataString (self : *Builder , bytes : []const u8 ) Allocator .Error !Metadata .String
File
Code
pub fn metadataString (self : *Builder , bytes : []const u8 ) Allocator .Error !Metadata .String {
assert (bytes .len > 0 );
try self .metadata_string_bytes .ensureUnusedCapacity (self .gpa , bytes .len );
try self .metadata_string_indices .ensureUnusedCapacity (self .gpa , 1 );
try self .metadata_string_map .ensureUnusedCapacity (self .gpa , 1 );
const gop = self .metadata_string_map .getOrPutAssumeCapacityAdapted (
bytes ,
Metadata .String .Adapter { .builder = self },
);
if (!gop .found_existing ) {
self .metadata_string_bytes .appendSliceAssumeCapacity (bytes );
self .metadata_string_indices .appendAssumeCapacity (
@intCast (self .metadata_string_bytes .items .len ),
);
}
return @fromBackingInt (@intCast (gop .index ));
}