mirror of
https://github.com/Ed94/Odin.git
synced 2026-08-06 15:48:51 +00:00
MemFree as a procedure group for both rawptr and cstring
This commit is contained in:
Vendored
+18
-1
@@ -1029,7 +1029,6 @@ foreign lib {
|
|||||||
SetTraceLogLevel :: proc(logLevel: TraceLogLevel) --- // Set the current threshold (minimum) log level
|
SetTraceLogLevel :: proc(logLevel: TraceLogLevel) --- // Set the current threshold (minimum) log level
|
||||||
MemAlloc :: proc(size: c.uint) -> rawptr --- // Internal memory allocator
|
MemAlloc :: proc(size: c.uint) -> rawptr --- // Internal memory allocator
|
||||||
MemRealloc :: proc(ptr: rawptr, size: c.uint) -> rawptr --- // Internal memory reallocator
|
MemRealloc :: proc(ptr: rawptr, size: c.uint) -> rawptr --- // Internal memory reallocator
|
||||||
MemFree :: proc(ptr: rawptr) --- // Internal memory free
|
|
||||||
|
|
||||||
// Set custom callbacks
|
// Set custom callbacks
|
||||||
// WARNING: Callbacks setup is intended for advance users
|
// WARNING: Callbacks setup is intended for advance users
|
||||||
@@ -1688,6 +1687,24 @@ TextFormatAlloc :: proc(text: cstring, args: ..any) -> cstring {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Internal memory free
|
||||||
|
MemFree :: proc{
|
||||||
|
MemFreePtr,
|
||||||
|
MemFreeCstring,
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@(default_calling_convention="c")
|
||||||
|
foreign lib {
|
||||||
|
@(link_name="MemFree")
|
||||||
|
MemFreePtr :: proc(ptr: rawptr) ---
|
||||||
|
}
|
||||||
|
|
||||||
|
MemFreeCstring :: proc "c" (s: cstring) {
|
||||||
|
MemFreePtr(rawptr(s))
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
MemAllocator :: proc "contextless" () -> mem.Allocator {
|
MemAllocator :: proc "contextless" () -> mem.Allocator {
|
||||||
return mem.Allocator{MemAllocatorProc, nil}
|
return mem.Allocator{MemAllocatorProc, nil}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user