Adding parsing and AST->IR lowering for RevealMode + Overrides + added reveal { G } syntax #230
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.
This begins to implement the first bullet in #219 (comment).
I added a number of things:
reveal { G }
syntax similar to thecompatible { G }
syntax we already have for introducing theRevealMode
(this is useful for testing and whatnot)RevealMode
andOverrides[V0](P0: Trait<P1..Pn>)
syntaxDebug
,Fold
,Zip
stuff for the new variants and typesUnresolved questions for @nikomatsakis before this is merged:
Overrides
in clauses.rs? Right now I've just left it asunimplemented!()
LocalImplAllowed
and create program clauses for the trait ref, but do we also have to take the associated type ID into account?I'm going to do the second part of this ("Modify the lowering for default type to include the
Overrides
clause") after this PR.