pub fn utf8ToUtf16LeAlloc(allocator: Allocator, utf8: []const u8) error
pub fn utf8ToUtf16LeAlloc(allocator: Allocator, utf8: []const u8) error{ InvalidUtf8, OutOfMemory }![]u16 { // optimistically guess that it will not require surrogate pairs var result = try std.array_list.Managed(u16).initCapacity(allocator, utf8.len); errdefer result.deinit(); try utf8ToUtf16LeArrayListImpl(&result, utf8, .cannot_encode_surrogate_half); return result.toOwnedSlice(); }