TypeExpr.php
Table of Contents
Classes
- TypeExpr
- Internal, compiled representation of a `.dxns` type expression -- the
vocabulary of DXNS.md §1 (`any`, `never`, `primitive`, `reference`,
`list-of`, `list-items`, `set-of`, `tuple-of`, `tuple-of-all`, `map-of`, `array-of`, `tagged`, `doc`, `if`,
`ordered-map-of`, `sorted-set-of`, `enum`, `one-of`, `any-of`,
`all-of`, `not`, `nilable`, `refine`) {@see Compiler} turns a parsed `.dxns` value
into, and what {@see self::matches()} checks a decoded/to-be-encoded
value against. (The 13th `dxn/DXN.md` §4 form, `struct`, isn't a
distinct compiled shape here either -- a `%schema{}` entry compiles
straight to {@see Compiled}, never to a `TypeExpr` a *field* could
hold; `reference` is what a field uses to point at one.)