summaryrefslogtreecommitdiff
path: root/parser/decl.go
AgeCommit message (Collapse)Author
2023-11-24parser: fix allocation of local variablesMarc Vertes
A 'New' instruction is added in VM to manage initialisation of typed variables in the stack. The instantiated type symbols are now added to global data. Accessing and setting values by address is now working.
2023-11-15parser: parse struct type declarationsMarc Vertes
Recursive structs and embedded structs are not supported yet.
2023-11-15parser: hande const declarationsMarc Vertes
Only symbols are produced, no bytecode is emitted. The constant expressions are evaluated at compile time using the stdlib package go/constant. The parser handles implicit repetition of the last non-empty expression list. The iota symbol is reset to 0 and incremented for each line of a const block. To be done in a next commit: type conversions.
2023-11-13parser: initial support for type declarations.Marc Vertes
The parsing logic for type declarations is there. Note that no tokens are produced, only symbols. The different type kinds will be added next.
2023-11-10parser: implement support for var declarationsMarc Vertes
The full Go syntax is supported, blocks or line, mutiple comma separated variables, assignments. In local and global frame.