| Commit message (Collapse) | Author | Age |
|
|
|
|
|
| |
This better matches the naming convention of the other source locator
types, and better differentiates a SourcePosition from other kinds of
position.
|
| |
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
The path displayed for each discovered library was the path of the
parent directory, not the path of the library file.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
When reporting an undefined symbol, the full token string of the symbol
was being displayed. This was fine for Bedrock, which had at most one
symbol per token, but for Torque you can have multiple symbols
extracted from the same source string. The symbol name is displayed
instead.
|
|
|
|
|
| |
When gathering source files from paths, log each path traversed or
parsed.
|
|
|
|
|
|
|
|
| |
Previously, the extension of a source file had to match the provided
extension. This was unnecessarily limited, and prevented arbitrary
text files from being passed as source files.
If no extension is provided, any file can be loaded as a source file.
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
This is a struct that provides various methods for consuming characters
from a character stream and for tracking the provenance of each parsed
token.
|
| |
|
|
|