Opened 4 years ago
#191 new enhancement
Resolve For Assertions/Traits
Reported by: | ajbeach | Owned by: | |
---|---|---|---|
Priority: | minor | Component: | cfa-cc |
Version: | 1.0 | Keywords: | |
Cc: |
Description
I would like to add an extra argument to the resolver's findSingleExpression
or to add a similar function that has a similar role but makes sure the result time satisfies a given trait.
As we take advantage of the trait system there are now language constructs that allow any type given that it satisfies some assertions (usually expressed as a built in trait). Although it can resolve these conditions in code there does not appear to be a way to do it from a keyword. If there is there is some code that should be updated.
I have run into this when creating throw
and throwResume
implementations and it has forced me to split up some passes into a pre- and a post-resolver component. I believe suspend
also has some issue.
So far this hasn't actually prevented anything from working. If you add the right pre-resolver pass that converts things to functions you can still get it to work. However I believe this would simplify implementing language syntax that connects to traits.