Here are the classes, structs, unions and interfaces with brief descriptions:
[detail level 12]
| ▼NAST | |
| CArithmetic | Arithmetic nodes, for example '+ a0 12' (add the value 12 to register a0) |
| CGlobalRegister | A reference to one of the ten global registers, whose values are only reset after updating an entire grid |
| CLiteral | A (number) literal |
| CLocalRegister | A reference to one of the ten local registers, whose values are initially zero on entry into the cell |
| CNeighbours | AST node for a neighbours expression |
| COp | Value representing the operation to use in an arithmetic / assignment statement |
| CRange | A range within a range expression |
| CRangeExpr | A range expression, for example [ a0 | (2,3) => 1] (if the value of register a0 is 2-3 inclusive, evaluate to 1, otherwise evaluate to 0) |
| CRegister | Abstract base class for all register types in the AST |
| CStatement | Root class for all statement AST nodes in the Cellular Automata grammar |
| CStatementList | A list of statements that will be executed sequentially |
| CVRegister | The v register, which represents the current value in the grid |
| ▼NCompiler | |
| CState | |
| ▼NInterpreter | |
| CState | The current state for the interpreter |
| ▼NParser | |
| CCellAtomGrammar | Singleton class encapsulating the grammar for the CellAtom language |
| CCellAtomParser | Class representing a parser for the CellAtom language |