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/ › unicode.zig › utf8ToUtf16LeStringLiteralImpl
utf8ToUtf16LeStringLiteralImpl
unicode.utf8ToUtf16LeStringLiteralImpl
fn utf8ToUtf16LeStringLiteralImpl (comptime utf8 : []const u8 , comptime surrogates : Surrogates ) *const [calcUtf16LeLenImpl (utf8 , surrogates ) catch |err | @compileError (err ):0 ]u16
File
Code
fn utf8ToUtf16LeStringLiteralImpl (comptime utf8 : []const u8 , comptime surrogates : Surrogates ) *const [calcUtf16LeLenImpl (utf8 , surrogates ) catch |err | @compileError (err ):0 ]u16 {
return comptime blk : {
const len : usize = calcUtf16LeLenImpl (utf8 , surrogates ) catch unreachable ;
var utf16le : [len :0 ]u16 = @splat (0 );
const utf16le_len = utf8ToUtf16LeImpl (&utf16le , utf8 [0 ..], surrogates ) catch |err | @compileError (err );
assert (len == utf16le_len );
const final = utf16le ;
break :blk &final ;
};
}