diff options
| author | nodist <kevin.comas.git@gmail.com> | 2026-10-06 17:13:01 -0400 |
|---|---|---|
| committer | nodist <kevin.comas.git@gmail.com> | 2026-10-06 17:13:01 -0400 |
| commit | 7bd050ccf74222e1b659f2fd6826a86e6afbcc94 (patch) | |
| tree | 30bae9ca5dd110f32cd4abb10d42ea4d872b4d82 /include/kpl/class.h | |
| parent | de65adbc1b2d1b3efdbe6a023bb7435f84b2f3a7 (diff) | |
basic tests
Diffstat (limited to 'include/kpl/class.h')
| -rw-r--r-- | include/kpl/class.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/include/kpl/class.h b/include/kpl/class.h new file mode 100644 index 0000000..b1b7054 --- /dev/null +++ b/include/kpl/class.h @@ -0,0 +1,34 @@ +/* + * The kpl class a 64bit value with an table of functions + */ + +typedef uint8_t kpl_utf8[4]; + +typedef union { + uint8_t u8; + int8_t i8; + uint16_t u16; + int16_t i16; + uint32_t u32; + int32_t i32; + uint64_t u64; + int64_t i64; + kpl_utf8 utf8; + float f32; + double f64; + void *ptr; +} kpl_value; + +typedef struct { + kpl_value value; + int64_t tag; +} kpl_result; + +typedef struct { +// TODO KPL INTERFACE +} kpl_interface; + +typedef struct { + kpl_value value; + kpl_interface *interface; +} kpl_class; |
