[Checkers] Declarative specification of qualifier hierarchy
Michael Ernst
mernst at csail.mit.edu
Wed Mar 26 15:06:01 EDT 2008
> > I have been working on creating a new
> > GraphSubtypeRelation where the checkers would simply specify the subtype
> > graph of the annotations.
>
> A quick note: this is an important feature, and since it's been an open
> issue for a while, I have some thoughts on its design,
A declarative specification has a number of advantages.
Here's an idea that eliminates code from the checker itself: specify the
qualifier hierarchy just using meta-annotations, such as
@Supertype(Readonly.class)
@interface Mutable { ... }
Also, an @IsDefaultQualifier might specify which annotation is the default
for backward compatibility. (This idea of using meta-annotations might
have come from someone else; I don't remember.)
I imagine other approaches are possible.
Perhaps the others could describe their approaches, so that we can choose
the best design before implementing.
-Mike
More information about the checkers
mailing list