aboutsummaryrefslogtreecommitdiff
path: root/code/lib/vector.felan
diff options
context:
space:
mode:
authorA404M <ahmadmahmoudiprogrammer@gmail.com>2025-06-09 15:15:28 +0330
committerA404M <ahmadmahmoudiprogrammer@gmail.com>2025-06-09 15:15:28 +0330
commit922b6c51fbcdabd3823e311c46fe55af193196e1 (patch)
tree976876bcbdc18308b8ca8672684e2c751a7e0350 /code/lib/vector.felan
parente711e6e55e9c83563db9bb04af7516632f27b91d (diff)
fixing bug in anytype
Diffstat (limited to 'code/lib/vector.felan')
-rw-r--r--code/lib/vector.felan22
1 files changed, 22 insertions, 0 deletions
diff --git a/code/lib/vector.felan b/code/lib/vector.felan
new file mode 100644
index 0000000..6ad1991
--- /dev/null
+++ b/code/lib/vector.felan
@@ -0,0 +1,22 @@
+@import("operator.felan");
+@import("memory.felan");
+
+vector :: (comptime t:type)->type{
+ return struct {
+ ptr : *t;
+ size : u64;
+ capacity : u64;
+ };
+};
+
+vector_new :: (comptime t:type) -> (vector(t)) {
+ v : vector(t) = undefined;
+ v.ptr = malloc(0,@type_of(v.ptr.*));
+ v.size = 0u64;
+ v.capacity = 0u64;
+ return v;
+};
+
+delete :: (vec:vector(anytype)) -> void {
+ free(vec.ptr);
+};