mirror of
https://github.com/odin-lang/Odin.git
synced 2026-06-06 02:34:05 +00:00
Merge pull request #4957 from Barinzaya/fix-mem-make_map
Fix `mem.make_map`
This commit is contained in:
@@ -953,6 +953,22 @@ make_dynamic_array_len_cap :: proc(
|
||||
return runtime.make_dynamic_array_len_cap(T, len, cap, allocator, loc)
|
||||
}
|
||||
|
||||
/*
|
||||
Create a map with no initial allocation.
|
||||
|
||||
This procedure creates a map of type `T` with no initial allocation, which will
|
||||
use the allocator specified by `allocator` as its backing allocator when it
|
||||
allocates.
|
||||
*/
|
||||
@(require_results)
|
||||
make_map :: proc(
|
||||
$T: typeid/map[$K]$E,
|
||||
allocator := context.allocator,
|
||||
loc := #caller_location,
|
||||
) -> (m: T) {
|
||||
return runtime.make_map(T, allocator, loc)
|
||||
}
|
||||
|
||||
/*
|
||||
Allocate a map.
|
||||
|
||||
@@ -961,13 +977,13 @@ This procedure creates a map of type `T` with initial capacity specified by
|
||||
allocator.
|
||||
*/
|
||||
@(require_results)
|
||||
make_map :: proc(
|
||||
make_map_cap :: proc(
|
||||
$T: typeid/map[$K]$E,
|
||||
#any_int cap: int = 1<<runtime.MAP_MIN_LOG2_CAPACITY,
|
||||
#any_int cap: int,
|
||||
allocator := context.allocator,
|
||||
loc := #caller_location,
|
||||
) -> (m: T, err: Allocator_Error) {
|
||||
return runtime.make_map(T, cap, allocator, loc)
|
||||
return runtime.make_map_cap(T, cap, allocator, loc)
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -1060,6 +1076,7 @@ make :: proc{
|
||||
make_dynamic_array_len,
|
||||
make_dynamic_array_len_cap,
|
||||
make_map,
|
||||
make_map_cap,
|
||||
make_multi_pointer,
|
||||
make_soa_slice,
|
||||
make_soa_dynamic_array,
|
||||
|
||||
Reference in New Issue
Block a user