summaryrefslogtreecommitdiff
path: root/docs/type_system/bits.md
diff options
context:
space:
mode:
authornodist <kevin.comas.git@gmail.com>2026-05-21 15:26:56 -0400
committernodist <kevin.comas.git@gmail.com>2026-05-21 15:26:56 -0400
commitc71cd186644570eb25c45ded7837b0e7aa54987a (patch)
treeb13b3700c2d5c7b23ffbe781615448f1ed184425 /docs/type_system/bits.md
parent83729ca507a3266f3793c3ff2db7229a86e80aa6 (diff)
int and float under bits type
Diffstat (limited to 'docs/type_system/bits.md')
-rw-r--r--docs/type_system/bits.md51
1 files changed, 51 insertions, 0 deletions
diff --git a/docs/type_system/bits.md b/docs/type_system/bits.md
new file mode 100644
index 0000000..122500c
--- /dev/null
+++ b/docs/type_system/bits.md
@@ -0,0 +1,51 @@
+# Bits
+
+---
+
+A sequence of bits that can fit into a register
+
+```text
+Bits_size `alias Enum[.bit_any; .bit8; .bit16; .bit32; .bit64; .bit80; .bit128]
+
+Bits_representation `alias Enum[
+ .numeric; .float; .int; .int_unsiged; .int_signed
+ .ascii; .utf8; .utf16; .utf32
+ .bool
+ .mask
+]
+
+Bits[Bits_size; Bits_representation]
+```
+
+## Alias
+
+```text
+Number `alias Bits[.bit_any; .numeric]
+
+Int `alias Bits[.bit_any; .int]
+
+Int_unsiged `alias Bits[.bit_any; .int_unsiged]
+
+U8 `alias Bits[.bit8; .int_unsiged]
+U16 `alias Bits[.bit16; .int_unsiged]
+U32 `alias Bits[.bit32; .int_unsiged]
+U64 `alias Bits[.bit64; .int_unsiged]
+
+Int_signed `alias Bits[.bit_any; .int_signed]
+
+I8 `alias Bits[.bit8; .int_signed]
+I16 `alias Bits[.bit16; .int_signed]
+I32 `alias Bits[.bit32; .int_signed]
+I64 `alias Bits[.bit64; .int_signed]
+
+Float `alias Bits[.bit_any; .float]
+
+F32 `alias Bits[.bit32; .float]
+F64 `alias Bits[.bit64; .float]
+
+Char `alias Bits[.bit32; .utf8]
+
+Bool `alias Bits[.bit8; .bool]
+
+Mask `alias Bits[.bit64; .mask]
+```