Files
Odin/core/strings.odin
2017-06-12 16:58:25 +01:00

22 lines
385 B
Odin

proc new_string(s: string) -> string {
var c = make([]u8, len(s)+1);
copy(c, []u8(s));
c[len(s)] = 0;
return string(c[0..<len(s)]);
}
proc new_c_string(s: string) -> ^u8 {
var c = make([]u8, len(s)+1);
copy(c, []u8(s));
c[len(s)] = 0;
return &c[0];
}
proc to_odin_string(c: ^u8) -> string {
var len = 0;
for (c+len)^ != 0 {
len++;
}
return string(slice_ptr(c, len));
}