mirror of
https://github.com/odin-lang/Odin.git
synced 2026-02-19 01:18:22 +00:00
Fix container.Array and container.Ring
This commit is contained in:
@@ -10,6 +10,8 @@ Array :: struct(T: typeid) {
|
||||
allocator: mem.Allocator,
|
||||
}
|
||||
|
||||
ARRAY_DEFAULT_CAPACITY :: 16;
|
||||
|
||||
/*
|
||||
array_init :: proc {
|
||||
array_init_none,
|
||||
@@ -42,11 +44,12 @@ array_set_capacity
|
||||
array_grow
|
||||
*/
|
||||
|
||||
|
||||
array_init_none :: proc(a: ^$A/Array, allocator := context.allocator) {
|
||||
array_init_len(a, 0, allocator);
|
||||
array_init_len_cap(a, 0, ARRAY_DEFAULT_CAPACITY, allocator);
|
||||
}
|
||||
array_init_len :: proc(a: ^$A/Array, len: int, allocator := context.allocator) {
|
||||
array_init_len_cap(a, 0, 16, allocator);
|
||||
array_init_len_cap(a, len, len, allocator);
|
||||
}
|
||||
array_init_len_cap :: proc(a: ^$A/Array($T), len: int, cap: int, allocator := context.allocator) {
|
||||
a.allocator = allocator;
|
||||
|
||||
@@ -64,7 +64,7 @@ ring_len :: proc(r: ^$R/Ring) -> int {
|
||||
n := 0;
|
||||
if r != nil {
|
||||
n = 1;
|
||||
for p := ring_next(p); p != r; p = p.next {
|
||||
for p := ring_next(&p); p != r; p = p.next {
|
||||
n += 1;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user