diff options
Diffstat (limited to 'code/lib/vector.felan')
-rw-r--r-- | code/lib/vector.felan | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/code/lib/vector.felan b/code/lib/vector.felan index 6ad1991..a33d386 100644 --- a/code/lib/vector.felan +++ b/code/lib/vector.felan @@ -17,6 +17,22 @@ vector_new :: (comptime t:type) -> (vector(t)) { return v; }; +__get_item__ :: (left:vector(anytype),index:i64) -> (@type_of(left.ptr.*)) { + return (left.ptr + index).*; +}; + +__set_item__ :: (left:vector(anytype),index:i64,item:@type_of(left.ptr.*)) -> (@type_of(left.ptr.*)) { + return (left.ptr + index).* = item; +}; + +__get_item_address__ :: (left:vector(anytype),index:i64) -> (@type_of(left.ptr)) { + return (left.ptr + index); +}; + +push_back :: (vec:vector(anytype),value:@type_of(vec.ptr.*)) -> void { + @putc('h'); +}; + delete :: (vec:vector(anytype)) -> void { free(vec.ptr); }; |