aboutsummaryrefslogtreecommitdiff
path: root/core/mem
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2021-08-22 12:54:04 +0100
committergingerBill <bill@gingerbill.org>2021-08-22 12:54:04 +0100
commit445ed9be2b526de355d7fac550747b25c8fd7f20 (patch)
tree2196b5c25f947a322752ae42e971b1d771353cb0 /core/mem
parent8694a0f68a2b5c18ea19e1b8a526aacfd51fc85b (diff)
Use multi-pointers when appropriate
Diffstat (limited to 'core/mem')
-rw-r--r--core/mem/mem.odin7
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)];
}