Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Teach CascadeStrings about files #219

Open
dburgener opened this issue May 3, 2023 · 0 comments
Open

Teach CascadeStrings about files #219

dburgener opened this issue May 3, 2023 · 0 comments

Comments

@dburgener
Copy link
Owner

Now that CompileError uses SimpleFiles under the hood, we can just pass around file_ids instead of file references, which makes this feasible. It will simplify error handling, and eliminate the class of errors where a file and range can be mismatched.

dburgener added a commit that referenced this issue May 9, 2023
The actual validation and error reporting part here is straightforward.
Most of the complexity of this commit comes from tracking the file the
alias is declared in through to the error site.  That is both complex,
and will likely hurt performance due to file clone()s in a non-error
path.

The good news is that we'll likely get all the performance back, and
reduce code complexity once we implement #219.  When we do that, it's
probably worth revisiting this commit to make sure everything is cleaned
up appropriately and we're not tracking files around for no reason.
dburgener added a commit that referenced this issue May 9, 2023
The actual validation and error reporting part here is straightforward.
Most of the complexity of this commit comes from tracking the file the
alias is declared in through to the error site.  That is both complex,
and will likely hurt performance due to file clone()s in a non-error
path.

The good news is that we'll likely get all the performance back, and
reduce code complexity once we implement #219.  When we do that, it's
probably worth revisiting this commit to make sure everything is cleaned
up appropriately and we're not tracking files around for no reason.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant