summaryrefslogtreecommitdiff
path: root/array.h
diff options
context:
space:
mode:
authorCarson Fleming <[email protected]>2026-01-24 22:28:22 -0500
committerCarson Fleming <[email protected]>2026-01-24 22:28:22 -0500
commite72088d79804e4f689196f4bc700fb9348c77209 (patch)
tree195e8b20cf633a0b9fc2ef6754c08742a9ce30e1 /array.h
downloadsafec-e72088d79804e4f689196f4bc700fb9348c77209.tar.gz
initial commit
Diffstat (limited to 'array.h')
-rw-r--r--array.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/array.h b/array.h
new file mode 100644
index 0000000..848e1a7
--- /dev/null
+++ b/array.h
@@ -0,0 +1,23 @@
+#ifndef __SAFEC_ARRAY_H
+#define __SAFEC_ARRAY_H
+#include <stddef.h>
+
+/* TODO: it might be good to just have itemsz and char* data */
+typedef struct {
+ size_t length;
+ void** data;
+} array_t;
+
+void array_set(array_t* array, size_t idx, void* val);
+void* array_get(const array_t* array, size_t idx);
+
+typedef struct {
+ size_t length;
+ char* data;
+} str_t;
+
+void str_set(str_t* str, size_t idx, char val);
+char str_get(const str_t* str, size_t idx);
+/* TODO: I would like to implement string slicing as part of this */
+/* TODO: reimplement string.h functions for this new string construct */
+#endif