Allow underscores at the start of a variable #599
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Allow one or more underscores at the start of a variable name, like so:
This changes the lexer to allow underscores at the start of an identifier, and only emits
ask::Kind::Underscore
if it's strictly_
.Interestingly, this seems to match the behavior in Rust. They both treat more than one underscore as a valid identifier. So this would work in both Rust and Rune:
(Assuming you mark
___
asmut
in Rust.)Personally, I find this behavior odd. But maybe matching the Rust compiler behavior is best?
Fixes #435.