Class AbstractTypeInformationPresenter
java.lang.Object
org.checkerframework.framework.util.visualize.AbstractTypeInformationPresenter
- All Implemented Interfaces:
TypeInformationPresenter
- Direct Known Subclasses:
LspTypeInformationPresenter
public abstract class AbstractTypeInformationPresenter
extends Object
implements TypeInformationPresenter
Presents formatted type information for various AST trees in a class.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected class
A visitor which traverses a class tree and reports type information of various sub-trees. -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final AnnotatedTypeFactory
TheAnnotatedTypeFactory
for the current analysis.protected final @Nullable GenericAnnotatedTypeFactory
<? extends CFAbstractValue<?>, ? extends CFAbstractStore<? extends CFAbstractValue<?>, ?>, ? extends CFAbstractTransfer<?, ?, ?>, ? extends CFAbstractAnalysis<?, ?, ?>> TheGenericAnnotatedTypeFactory
for the current analysis.protected final AnnotatedTypeFormatter
This formats the ATMs that the presenter is going to present. -
Constructor Summary
ConstructorsConstructorDescriptionAbstractTypeInformationPresenter
(AnnotatedTypeFactory atypeFactory) Constructs a presenter for the given factory. -
Method Summary
Modifier and TypeMethodDescriptionprotected AnnotatedTypeFormatter
Creates theAnnotatedTypeFormatter
to use for output.protected abstract AbstractTypeInformationPresenter.TypeInformationReporter
Creates theAbstractTypeInformationPresenter.TypeInformationReporter
to use.void
The entry point for presenting type information of trees in the given class.
-
Field Details
-
atypeFactory
TheAnnotatedTypeFactory
for the current analysis. -
genFactory
protected final @Nullable GenericAnnotatedTypeFactory<? extends CFAbstractValue<?>,? extends CFAbstractStore<? extends CFAbstractValue<?>, genFactory?>, ? extends CFAbstractTransfer<?, ?, ?>, ? extends CFAbstractAnalysis<?, ?, ?>> TheGenericAnnotatedTypeFactory
for the current analysis. null if the factory is not an instance ofGenericAnnotatedTypeFactory
; otherwise,factory
andgenFactory
refer to the same object. -
typeFormatter
This formats the ATMs that the presenter is going to present.
-
-
Constructor Details
-
AbstractTypeInformationPresenter
Constructs a presenter for the given factory.- Parameters:
atypeFactory
- theAnnotatedTypeFactory
for the current analysis
-
-
Method Details
-
process
The entry point for presenting type information of trees in the given class.- Specified by:
process
in interfaceTypeInformationPresenter
- Parameters:
tree
- aClassTree
that has been annotated by the factorytreePath
- aTreePath
totree
-
createTypeInformationReporter
protected abstract AbstractTypeInformationPresenter.TypeInformationReporter createTypeInformationReporter(ClassTree tree) Creates theAbstractTypeInformationPresenter.TypeInformationReporter
to use.- Parameters:
tree
- aClassTree
that has been annotated by the factory- Returns:
- the
AbstractTypeInformationPresenter.TypeInformationReporter
to use
-
createTypeFormatter
Creates theAnnotatedTypeFormatter
to use for output.- Returns:
- the
AnnotatedTypeFormatter
to use for output
-