summaryrefslogtreecommitdiff
path: root/src/translators/symbols_generator.rs
Commit message (Collapse)AuthorAge
* Add location() method to SourceSpan structBen Bridle2024-10-31
| | | | | | | | | | | | | A SourceSpan contains up to two SourceLocations: the location of the span in the parsed source file (called in_merged), and the location of the span in an original source file as per a path comment in the parsed source file (called in_source). In places where only one location can be reported, the in_source location is preferred but is not guaranteed to exist, so the in_merged location is used as a fallback. Because this pattern is used in multiple places, it was added as a method to SourceSpan and all occurrences of the pattern were replaced with a method call.
* Write line and column information to symbols fileBen Bridle2024-10-29
| | | | | Previously only the path to the source file was being written, not the location of the symbol within the file.
* Rewrite assemblerBen Bridle2024-10-28
This is an almost complete rewrite of the entire assembler from the ground up, with a different parsing strategy and a whole new symbol resolution mechanism for automatically including library files. The assembly syntax has also been slightly modified, with padding tokens now being prefixed with '#' instead of '$', and a block-style anonymous-label syntax which uses the '{' and '}' characters.