Wrapper libraries (release and/or support and/or evangelize) #220
Labels
design
An issue that is resolved by making a decision, about whether and how something should work.
new-feature
Adding something entirely new for users, not improving what's there
nullness
For issues specific to nullness analysis.
Milestone
A variety of APIs read annotations from program elements: reflection, the javac API, etc.
JSpecify-aware wrapper libraries for these could do a lot to further JSpecify's goals. Essentially, wherever our specifications define that scenarios X and Y are isomorphic, we'd like APIs that make X and Y indistinguishable. Examples:
@Implies
; say that the annotation is present whether it is directly or indirectly (Declaring that one annotation aliases or specializes another (@Implies
) [working decision: no] #35)Of course this has nothing to do with preventing anyone from querying at the lower level / more literally. (For example you'd need to do this to report that one of our annotations was used redundantly.)
These would help people adopt our specs and overall lead to more spec-compliance in the world. I also like that the mere existence of these libraries gives users some very simple and concrete ways to understand what our annotations even mean.
(This issue should eventually be split up.)
The text was updated successfully, but these errors were encountered: