Tristan B. Velloza Kildaire
8a11eabd96
* Data - Moved AST manipulation imports to the top - Made `VariableAssignment` cloneable - Made `Variable` cloneable * Data - When trying to `clone()` an `Expression`, do a runtime type check to check if we can (else `null` is used) * Expressions - Moved AST-manipulation related import to the top * Expressions - `BinaryOperatorExpression` now overrides `clone()` from `MCloneable` * Expressions - `IntegerLiteral` now implements `MCloneable` * Expressions - `CastedExpression` now implements `clone()` for `MCloneable` * Containers - Moved all AST maniuplation-related imports to the top * Containers - Made `Struct` support `MCloneable`'s `clone()` method * Data - Only clone the `VariableAssignment` if the `Variable` has one * Containers (unit test) - Added test which tests the `clone()` on a `Struct` |
||
---|---|---|
.github/workflows | ||
branding | ||
rando | ||
source/tlang | ||
.gitignore | ||
README.md | ||
dub.json | ||
extern_test.sh | ||
macro_ast_replacemenet.png | ||
macro_ast_replacemenet.xcf | ||
macro_ast_replacement_sizeof_example.png | ||
macro_ast_replacement_sizeof_example.xcf | ||
malloc_test.sh | ||
tets.d | ||
texterned.c | ||
todo1.md | ||
wip.txt |
README.md
tlang
Official Tristan Language project compiler
Documentation
Docs are available here.
Building
To build you will need dmd
and dub
installed. You can then run the following:
dub test --coverage
dub build
The first command is optional but you want to make sure the compiler is working so you may as well run all the unit tests - it won't take too long.
Usage
A list of all commands can be found by typing in the following:
./tlang