summaryrefslogtreecommitdiff
path: root/src/resolver.rs
Commit message (Collapse)AuthorAge
* Track related symbols in resolverBen Bridle2025-02-10
| | | | | | | | As well as the already-implemented tracking of the existing definition of redefinitions, the resolver will now also track the definition that resolves each reference, and the references resolved by each definition. Instead of using tuples to hold this information, named wrapper structs have been created for each category.
* Log when a source file is merged into the resolverBen Bridle2025-02-08
|
* Support namespaces when resolving symbolsBen Bridle2025-02-08
| | | | | | A definition can resolve a reference in the same or a deeper namespace, allowing for proper scoping and shadowing. Multiple definitions in the same namespace cannot share a name.
* Implement source unit compilation, symbol resolution, error reportingBen Bridle2025-02-05
This library can now carry out all stages of assembly from collecting source fragments to resolving symbols to pruning unused libraries to generating a single compiled source file. Pretty-printing of state has also been implemented in this library. The source tree hierarchy, symbol resolution errors, and file read errors can all be printed in a tidy format.