summaryrefslogtreecommitdiff
path: root/docs/application/type.md
diff options
context:
space:
mode:
authornodist <kevin.comas.git@gmail.com>2026-07-10 15:14:36 -0400
committernodist <kevin.comas.git@gmail.com>2026-07-10 15:14:36 -0400
commit20106935981d50971da0a7708a5bfdbec256049c (patch)
treea8f117787719de25813814b46ceb3e27c6541cfc /docs/application/type.md
parent4b46d1e1b306a8573113aa971c5f8811256e2bd0 (diff)
array methods and return qualifier
Diffstat (limited to 'docs/application/type.md')
-rw-r--r--docs/application/type.md18
1 files changed, 15 insertions, 3 deletions
diff --git a/docs/application/type.md b/docs/application/type.md
index 40546c1..bb9534b 100644
--- a/docs/application/type.md
+++ b/docs/application/type.md
@@ -9,11 +9,12 @@ typedef enum : uint8_t {
// ...
} kpl_type_template;
-typedef enum {
+typedef enum : uint8_t {
CONST = 1 << 0,
EMPTY = 1 << 1,
REF = 1 << 2,
- SHARED = 1 << 3
+ SHARED = 1 << 3,
+ RETURN = 1 << 4
} kpl_type_qualifiers;
typedef union {
@@ -32,5 +33,16 @@ typedef struct {
kpl_type_body body;
} kpl_type;
-// TODO SLAB WITH POOL
+uint16_t array_index, slab_count;
+
+typedef struct _kpl_type_slab {
+ struct _kpl_type_slab *next;
+ kpl_type array[UINT16_MAX];
+} kpl_type_slab;
+
+kpl_type_slab *type_slab;
+
+kpl_ptr type_pool;
+
+kpl_mutex type_mutex;
```