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 classA visitor which traverses a class tree and reports type information of various sub-trees. -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final AnnotatedTypeFactoryTheAnnotatedTypeFactoryfor the current analysis.protected final @Nullable GenericAnnotatedTypeFactory<? extends CFAbstractValue<?>, ? extends CFAbstractStore<? extends CFAbstractValue<?>, ?>, ? extends CFAbstractTransfer<?, ?, ?>, ? extends CFAbstractAnalysis<?, ?, ?>> TheGenericAnnotatedTypeFactoryfor the current analysis.protected final AnnotatedTypeFormatterThis 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 AnnotatedTypeFormatterCreates theAnnotatedTypeFormatterto use for output.protected abstract AbstractTypeInformationPresenter.TypeInformationReporterCreates theAbstractTypeInformationPresenter.TypeInformationReporterto use.voidThe entry point for presenting type information of trees in the given class.
-
Field Details
-
atypeFactory
TheAnnotatedTypeFactoryfor the current analysis. -
genFactory
protected final @Nullable GenericAnnotatedTypeFactory<? extends CFAbstractValue<?>,? extends CFAbstractStore<? extends CFAbstractValue<?>, genFactory?>, ? extends CFAbstractTransfer<?, ?, ?>, ? extends CFAbstractAnalysis<?, ?, ?>> TheGenericAnnotatedTypeFactoryfor the current analysis. null if the factory is not an instance ofGenericAnnotatedTypeFactory; otherwise,factoryandgenFactoryrefer 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- theAnnotatedTypeFactoryfor the current analysis
-
-
Method Details
-
process
The entry point for presenting type information of trees in the given class.- Specified by:
processin interfaceTypeInformationPresenter- Parameters:
tree- aClassTreethat has been annotated by the factorytreePath- aTreePathtotree
-
createTypeInformationReporter
protected abstract AbstractTypeInformationPresenter.TypeInformationReporter createTypeInformationReporter(ClassTree tree) Creates theAbstractTypeInformationPresenter.TypeInformationReporterto use.- Parameters:
tree- aClassTreethat has been annotated by the factory- Returns:
- the
AbstractTypeInformationPresenter.TypeInformationReporterto use
-
createTypeFormatter
Creates theAnnotatedTypeFormatterto use for output.- Returns:
- the
AnnotatedTypeFormatterto use for output
-