From 035c75d6a9312762ea74a83af67430700596b1fd Mon Sep 17 00:00:00 2001 From: gingerBill Date: Fri, 11 Nov 2022 11:23:59 +0000 Subject: Add `contextless` where appropriate --- core/container/small_array/small_array.odin | 34 ++++++++++++++--------------- 1 file changed, 17 insertions(+), 17 deletions(-) (limited to 'core/container/small_array/small_array.odin') diff --git a/core/container/small_array/small_array.odin b/core/container/small_array/small_array.odin index 4dd16f30c..b8210d1b0 100644 --- a/core/container/small_array/small_array.odin +++ b/core/container/small_array/small_array.odin @@ -8,40 +8,40 @@ Small_Array :: struct($N: int, $T: typeid) where N >= 0 { } -len :: proc(a: $A/Small_Array) -> int { +len :: proc "contextless" (a: $A/Small_Array) -> int { return a.len } -cap :: proc(a: $A/Small_Array) -> int { +cap :: proc "contextless" (a: $A/Small_Array) -> int { return builtin.len(a.data) } -space :: proc(a: $A/Small_Array) -> int { +space :: proc "contextless" (a: $A/Small_Array) -> int { return builtin.len(a.data) - a.len } -slice :: proc(a: ^$A/Small_Array($N, $T)) -> []T { +slice :: proc "contextless" (a: ^$A/Small_Array($N, $T)) -> []T { return a.data[:a.len] } -get :: proc(a: $A/Small_Array($N, $T), index: int) -> T { +get :: proc "contextless" (a: $A/Small_Array($N, $T), index: int) -> T { return a.data[index] } -get_ptr :: proc(a: ^$A/Small_Array($N, $T), index: int) -> ^T { +get_ptr :: proc "contextless" (a: ^$A/Small_Array($N, $T), index: int) -> ^T { return &a.data[index] } -set :: proc(a: ^$A/Small_Array($N, $T), index: int, item: T) { +set :: proc "contextless" (a: ^$A/Small_Array($N, $T), index: int, item: T) { a.data[index] = item } -resize :: proc(a: ^$A/Small_Array, length: int) { +resize :: proc "contextless" (a: ^$A/Small_Array, length: int) { a.len = min(length, builtin.len(a.data)) } -push_back :: proc(a: ^$A/Small_Array($N, $T), item: T) -> bool { +push_back :: proc "contextless" (a: ^$A/Small_Array($N, $T), item: T) -> bool { if a.len < cap(a^) { a.data[a.len] = item a.len += 1 @@ -50,7 +50,7 @@ push_back :: proc(a: ^$A/Small_Array($N, $T), item: T) -> bool { return false } -push_front :: proc(a: ^$A/Small_Array($N, $T), item: T) -> bool { +push_front :: proc "contextless" (a: ^$A/Small_Array($N, $T), item: T) -> bool { if a.len < cap(a^) { a.len += 1 data := slice(a) @@ -61,14 +61,14 @@ push_front :: proc(a: ^$A/Small_Array($N, $T), item: T) -> bool { return false } -pop_back :: proc(a: ^$A/Small_Array($N, $T), loc := #caller_location) -> T { +pop_back :: proc "odin" (a: ^$A/Small_Array($N, $T), loc := #caller_location) -> T { assert(condition=(N > 0 && a.len > 0), loc=loc) item := a.data[a.len-1] a.len -= 1 return item } -pop_front :: proc(a: ^$A/Small_Array($N, $T), loc := #caller_location) -> T { +pop_front :: proc "odin" (a: ^$A/Small_Array($N, $T), loc := #caller_location) -> T { assert(condition=(N > 0 && a.len > 0), loc=loc) item := a.data[0] s := slice(a) @@ -77,7 +77,7 @@ pop_front :: proc(a: ^$A/Small_Array($N, $T), loc := #caller_location) -> T { return item } -pop_back_safe :: proc(a: ^$A/Small_Array($N, $T)) -> (item: T, ok: bool) { +pop_back_safe :: proc "contextless" (a: ^$A/Small_Array($N, $T)) -> (item: T, ok: bool) { if N > 0 && a.len > 0 { item = a.data[a.len-1] a.len -= 1 @@ -86,7 +86,7 @@ pop_back_safe :: proc(a: ^$A/Small_Array($N, $T)) -> (item: T, ok: bool) { return } -pop_front_safe :: proc(a: ^$A/Small_Array($N, $T)) -> (item: T, ok: bool) { +pop_front_safe :: proc "contextless" (a: ^$A/Small_Array($N, $T)) -> (item: T, ok: bool) { if N > 0 && a.len > 0 { item = a.data[0] s := slice(a) @@ -97,16 +97,16 @@ pop_front_safe :: proc(a: ^$A/Small_Array($N, $T)) -> (item: T, ok: bool) { return } -consume :: proc(a: ^$A/Small_Array($N, $T), count: int, loc := #caller_location) { +consume :: proc "odin" (a: ^$A/Small_Array($N, $T), count: int, loc := #caller_location) { assert(condition=a.len >= count, loc=loc) a.len -= count } -clear :: proc(a: ^$A/Small_Array($N, $T)) { +clear :: proc "contextless" (a: ^$A/Small_Array($N, $T)) { resize(a, 0) } -push_back_elems :: proc(a: ^$A/Small_Array($N, $T), items: ..T) { +push_back_elems :: proc "contextless" (a: ^$A/Small_Array($N, $T), items: ..T) { n := copy(a.data[a.len:], items[:]) a.len += n } -- cgit v1.2.3