summaryrefslogtreecommitdiff
path: root/tnslc/vector.tnsl
diff options
context:
space:
mode:
authorKyle Gunger <kgunger12@gmail.com>2024-03-14 01:11:23 -0400
committerKyle Gunger <kgunger12@gmail.com>2024-03-14 01:11:23 -0400
commite25b738656928b38781458ed85880e8ae7bdd5a6 (patch)
tree3c21849a0139d778a65923081cf37a2ead9f03fb /tnslc/vector.tnsl
parent392984c0cf53fff4a64bc74e3f32ccba4c93dba8 (diff)
Test vector impl
Diffstat (limited to 'tnslc/vector.tnsl')
-rw-r--r--tnslc/vector.tnsl32
1 files changed, 32 insertions, 0 deletions
diff --git a/tnslc/vector.tnsl b/tnslc/vector.tnsl
new file mode 100644
index 0000000..1377938
--- /dev/null
+++ b/tnslc/vector.tnsl
@@ -0,0 +1,32 @@
+struct Vector {
+ ~void data,
+ int
+ size,
+ count,
+ _elsz
+}
+
+int VECT_DEFAULT_SIZE = 4
+
+/; method Vector
+
+ /; init (int elsz)
+ self._elsz = elsz
+ self.size = VECT_DEFAULT_SIZE
+ self.data = _alloc(elsz * self.size)
+ self.count = 0
+ ;/
+
+ /; get (int index) [~void]
+ return self.data
+ ;/
+
+ /; end
+ _delete(self.data)
+ self.size = 0
+ self._elsz = 0
+ self.count = 0
+ ;/
+
+;/
+