arrow-meta
arrow-meta copied to clipboard
[Feature Epic] Refined types
This covers the complete Refined types feature.
Requirements
- [x] Declarations: If class is annotated with @Refinement, show line marker with icon explaining what’s happening. Line marker is there, but we need to polish what to show inside. (#712)
- ~Declaration: Be able to autofold to show only the predicates (literals).~
- ~Listen to caret and collapse all union types in the document except for the current line one. That gets expanded on click.~
- ~When clicking a folded refinement -> unfold.~
- ~Call sites: Line marker that shows a refinement being used, explains what’s happening and links to the refinement declaration.~
- [ ] Call sites: When a predicate is not complied we must show an error highlight clarifying which one is not complying. Show all literals in Light grey and the one failing highlighted in red.
- [ ] Tests for the feature
- [ ] Documentation
Is the @refinement annotation part of the libarary, I tried to use it in my code with no luck. I am using "0.11.0". I can use @optics annotation without any issues. @raulraja please help here.