/// Returns the length field from a slice header. unsafe fn sliceLen(s: *[i32]) -> u32 { return s.len; } /// Returns the capacity field from a slice header. unsafe fn sliceCap(s: *[i32]) -> u32 { return s.cap; } /// Returns the pointer field from a slice header. unsafe fn slicePtr(s: *[i32]) -> *i32 { return s.ptr; } /// Copies a slice header into a new binding and returns it. unsafe fn sliceCopy(s: *[i32]) -> *[i32] { let c: *[i32] = s; return c; } /// Builds a slice header from a pointer and length. unsafe fn sliceOf(ptr: *i32, len: u32) -> *[i32] { return @sliceOf(ptr, len); } /// Builds a slice header from pointer, length, and capacity. unsafe fn sliceOfWithCap(ptr: *i32, len: u32, cap: u32) -> *[i32] { return @sliceOf(ptr, len, cap); }