diff options
| author | gingerBill <bill@gingerbill.org> | 2021-08-22 12:54:04 +0100 |
|---|---|---|
| committer | gingerBill <bill@gingerbill.org> | 2021-08-22 12:54:04 +0100 |
| commit | 445ed9be2b526de355d7fac550747b25c8fd7f20 (patch) | |
| tree | 2196b5c25f947a322752ae42e971b1d771353cb0 /core/mem | |
| parent | 8694a0f68a2b5c18ea19e1b8a526aacfd51fc85b (diff) | |
Use multi-pointers when appropriate
Diffstat (limited to 'core/mem')
| -rw-r--r-- | core/mem/mem.odin | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/core/mem/mem.odin b/core/mem/mem.odin index 4c6d33a00..fddb1dd72 100644 --- a/core/mem/mem.odin +++ b/core/mem/mem.odin @@ -135,16 +135,15 @@ ptr_sub :: proc(a, b: $P/^$T) -> int { } slice_ptr :: proc(ptr: ^$T, len: int) -> []T { - assert(len >= 0); - return transmute([]T)Raw_Slice{data = ptr, len = len}; + return ([^]T)(ptr)[:len]; } byte_slice :: #force_inline proc "contextless" (data: rawptr, len: int) -> []byte { - return transmute([]u8)Raw_Slice{data=data, len=max(len, 0)}; + return ([^]u8)(data)[:max(len, 0)]; } @(deprecated="use byte_slice") slice_ptr_to_bytes :: proc(data: rawptr, len: int) -> []byte { - return transmute([]u8)Raw_Slice{data=data, len=max(len, 0)}; + return ([^]u8)(data)[:max(len, 0)]; } |