@TypeQualifiers(value={ReadOnly.class,Mutable.class,Immutable.class,I.class,AssignsFields.class,checkers.igj.IGJBottom.class}) public class IGJChecker extends BaseTypeChecker
ReadOnly
, Mutable
,
Immutable
, I
-- a polymorphic qualifier, Assignable
,
and AssignsFields
. The language is specified by the FSE 2007 paper.SourceChecker.CheckerError
Modifier and Type | Field and Description |
---|---|
protected AnnotationMirror |
ASSIGNS_FIELDS
Supported annotations for IGJ.
|
protected AnnotationMirror |
BOTTOM_QUAL
Supported annotations for IGJ.
|
protected AnnotationMirror |
I
Supported annotations for IGJ.
|
protected AnnotationMirror |
IMMUTABLE
Supported annotations for IGJ.
|
protected AnnotationMirror |
MUTABLE
Supported annotations for IGJ.
|
protected AnnotationMirror |
READONLY
Supported annotations for IGJ.
|
currentPath, currentRoot, DETAILS_SEPARATOR, messager, messages, trees
processingEnv
Constructor and Description |
---|
IGJChecker() |
Modifier and Type | Method and Description |
---|---|
QualifierHierarchy |
createQualifierHierarchy(MultiGraphQualifierHierarchy.MultiGraphFactory factory)
Factory method to easily change what QualifierHierarchy is
created.
|
protected TypeHierarchy |
createTypeHierarchy()
Creates the type subtyping checker using the current type qualifier
hierarchy.
|
void |
initChecker()
Initialize the checker.
|
createFactory, createQualifierHierarchy, createQualifierHierarchyFactory, createSourceVisitor, createSupportedTypeQualifiers, getQualifierHierarchy, getSupportedLintOptions, getSupportedTypeQualifiers, getTypeHierarchy, invokeConstructorFor
createSupportedLintOptions, errorAbort, errorAbort, formatStackTrace, fullMessageOf, getLintOption, getLintOption, getMessages, getProcessingEnvironment, getProperties, getSupportedAnnotationTypes, getSupportedOptions, getSupportedSourceVersion, getSuppressWarningsKey, message, printStats, report, setLintOption, setSupportedLintOptions, shouldAddShutdownHook, shouldSkipDefs, shouldSkipDefs, shouldSkipUses, shutdownHook, typeProcess, typeProcessingStart
init, process, typeProcessingOver
getCompletions, isInitialized, toString
protected AnnotationMirror READONLY
protected AnnotationMirror MUTABLE
protected AnnotationMirror IMMUTABLE
protected AnnotationMirror I
protected AnnotationMirror ASSIGNS_FIELDS
protected AnnotationMirror BOTTOM_QUAL
public void initChecker()
SourceChecker
initChecker
in class BaseTypeChecker
AbstractProcessor.init(ProcessingEnvironment)
public QualifierHierarchy createQualifierHierarchy(MultiGraphQualifierHierarchy.MultiGraphFactory factory)
BaseTypeChecker
createQualifierHierarchy
in class BaseTypeChecker
protected TypeHierarchy createTypeHierarchy()
BaseTypeChecker
createTypeHierarchy
in class BaseTypeChecker