From 51d055dc7e1a6edbaedb7ea80b1e678eff924fe0 Mon Sep 17 00:00:00 2001 From: nodist Date: Wed, 10 Jun 2026 13:34:38 -0400 Subject: specify type representation --- docs/type_system/select.md | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 docs/type_system/select.md (limited to 'docs/type_system/select.md') diff --git a/docs/type_system/select.md b/docs/type_system/select.md new file mode 100644 index 0000000..b2f8f61 --- /dev/null +++ b/docs/type_system/select.md @@ -0,0 +1,24 @@ +# Select + +--- + +A symbol associated with a type + +```text +Select[[SINGLE | MULTIPLE] Type; Collection[.symbol : Const[Value]]] +``` + +# Alias + +```text +Enum[Generic.T; Collection[.symbol : Const[Value]]] `alias Select[[SINGLE]; Generic.T; Collection[.symbol : Const[Value]]] + +Mask[Generic.T; Collection[.symbol : Const[Value]]] `alias Select[[MULTIPLE]; Generic.T; Collection[.symbol : Const[Value]]] +``` + +## Definition Example + +```text +E : Enum[I64; .a; .b; .c] +`log E // Enum[I64; .a : 0; .b : 1; .c : 2] +``` -- cgit v1.2.3