diff options
| author | nodist <kevin.comas.git@gmail.com> | 2026-07-27 17:17:56 -0400 |
|---|---|---|
| committer | nodist <kevin.comas.git@gmail.com> | 2026-07-27 17:17:56 -0400 |
| commit | bb912b081ed339e4a5419bd3d2ffd7465f2f72d3 (patch) | |
| tree | 7f34b3af1a72672de1d12c8e23dda419c398dce3 /docs/type_system/bit.md | |
| parent | 003119b9f285e5610f56186bce845441409265ae (diff) | |
bottom up redesign
Diffstat (limited to 'docs/type_system/bit.md')
| -rw-r--r-- | docs/type_system/bit.md | 134 |
1 files changed, 0 insertions, 134 deletions
diff --git a/docs/type_system/bit.md b/docs/type_system/bit.md deleted file mode 100644 index b5ffed3..0000000 --- a/docs/type_system/bit.md +++ /dev/null @@ -1,134 +0,0 @@ -# Bit - ---- - -A sequence of bits that can fit into a general register - -```text -SIZE_FLAGS : BIT_ANY | BIT8 | BIT16 | BIT32 | BIT64 - -REPRESENTATION_FLAGS : NUMBER | INT | INT_UNSIGNED | INT_SIGNED | FLOAT | - UTF8 | UTF16 | UTF32 | - BOOL | - TYPE - -Bit[[SIZE_FLAGS | REPRESENTATION_FLAGS]] -``` - -## Type Body Object Definitions - -```c -typedef struct { - kpl_interface *interface; -} kpl_type_body_bit; -``` - -# Casting - -# Alias - -```text -Number `alias Bit[[BIT_ANY | NUMBER]] - -Int `alias Bit[[BIT_ANY | INT]] - -Int_unsiged `alias Bit[[BIT_ANY | INT_UNSIGNED]] - -U8 `alias Bit[[BIT8 | INT_UNSIGNED]] -U16 `alias Bit[[BIT16 | INT_UNSIGNED]] -U32 `alias Bit[[BIT32 | INT_UNSIGNED]] -U64 `alias Bit[[BIT64 | INT_UNSIGED]] - -Int_signed `alias Bit[[BIT_ANY | INT_SIGNED]] - -I8 `alias Bit[[BIT8 | INT_SIGNED]] -I16 `alias Bit[[BIT16 | INT_SIGNED]] -I32 `alias Bit[[BIT32 | INT_SIGNED]] -I64 `alias Bit[[BIT64 | INT_SIGNED]] - -Float `alias Bit[[BIT_ANY | FLOAT]] - -F32 `alias Bit[[BIT32 | FLOAT]] -F64 `alias Bit[[BIT64 | FLOAT]] - -Char `alias Bit[[BIT32 | UTF8]] - -Bool `alias Bit[[BIT8 | BOOL]] - -Type `alias Bit[[BIT64 | TYPE]] -``` - -# Operators - -## Arithmetic - -### Add `+` - -### Sub `-` - -### Mul `*` - -### Div `/` - -### ``mod` - -### ``exp` - -### ``ln` - -## Boolean - -### ``true` - -### ``false` - -### Not `!` - -### Equal `=` - -### Not Equal `!=` - -### And `&` - -### Or `|` - -### Greater `>` - -### Greater Equal `>=` - -### Less `<` - -### Less Equal `<=` - -## Bitwise - -### ``bit_not` - -### ``bit_and` - -### ``bit_or` - -### ``bit_xor` - -### ``bit_ls` - -### ``bit_rs` - -## Other - -### Compare `<=>` - -```c -typedef ssize_t kpl_interface_compare(const kpl_any any_a, const kpl_any any_b); -``` - -# Char - -```text -c : 'Σ' -`log c // Char $ 'Σ' -``` - -# Type - -KPL Types as values |
