Class DefaultAnnotatedTypeFormatter.FormattingVisitor
java.lang.Object
org.checkerframework.framework.type.DefaultAnnotatedTypeFormatter.FormattingVisitor
- All Implemented Interfaces:
AnnotatedTypeVisitor<String,Set<AnnotatedTypeMirror>>
- Direct Known Subclasses:
NullnessAnnotatedTypeFormatter.NullnessFormattingVisitor,UnitsAnnotatedTypeFormatter.UnitsFormattingVisitor
- Enclosing class:
DefaultAnnotatedTypeFormatter
protected static class DefaultAnnotatedTypeFormatter.FormattingVisitor
extends Object
implements AnnotatedTypeVisitor<String,Set<AnnotatedTypeMirror>>
A scanning visitor that prints the entire AnnotatedTypeMirror passed to visit.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final AnnotationFormatterThe object responsible for converting annotations to strings.protected booleanWhether the visitor is currently printing a raw type.protected booleanFor a given call to format, this setting specifies whether or not to printInvisibles.protected booleanPrints type variables in a less ambiguous manner using [] to delimit them.protected final booleanRepresents whether or not invisible annotations should be printed if the client of this class does not use the printInvisibleAnnos parameter.protected final booleanDefault value of currentPrintVerboseGenerics. -
Constructor Summary
ConstructorsConstructorDescriptionFormattingVisitor(AnnotationFormatter annoFormatter, boolean printVerboseGenerics, boolean defaultInvisiblesSetting) Creates the visitor. -
Method Summary
Modifier and TypeMethodDescriptionprotected StringformatFlatType(AnnotatedTypeMirror flatType) protected voidprintBound(String keyWord, AnnotatedTypeMirror field, Set<AnnotatedTypeMirror> visiting, StringBuilder sb) Print, to sb,keyWordfollowed byfield.protected voidSet verbose settings to the default.protected voidsetVerboseSettings(boolean printVerbose) Set the current verbose settings to use while printing.visit(AnnotatedTypeMirror type) A convenience method equivalent tov.visit(t, null).visit(AnnotatedTypeMirror type, Set<AnnotatedTypeMirror> annotatedTypeVariables) Visits a type.visitArray(AnnotatedTypeMirror.AnnotatedArrayType type, Set<AnnotatedTypeMirror> visiting) Visits an array type.visitDeclared(AnnotatedTypeMirror.AnnotatedDeclaredType type, Set<AnnotatedTypeMirror> visiting) Visits a declared type.visitExecutable(AnnotatedTypeMirror.AnnotatedExecutableType type, Set<AnnotatedTypeMirror> visiting) Visits an executable type.visitIntersection(AnnotatedTypeMirror.AnnotatedIntersectionType type, Set<AnnotatedTypeMirror> visiting) Visits an intersection type.visitNoType(AnnotatedTypeMirror.AnnotatedNoType type, Set<AnnotatedTypeMirror> visiting) Visits NoType type.visitNull(AnnotatedTypeMirror.AnnotatedNullType type, Set<AnnotatedTypeMirror> visiting) Visits anulltype.visitPrimitive(AnnotatedTypeMirror.AnnotatedPrimitiveType type, Set<AnnotatedTypeMirror> visiting) Visits a primitive type.visitTypeVariable(AnnotatedTypeMirror.AnnotatedTypeVariable type, Set<AnnotatedTypeMirror> visiting) Visits a type variable.visitUnion(AnnotatedTypeMirror.AnnotatedUnionType type, Set<AnnotatedTypeMirror> visiting) Visits an union type.visitWildcard(AnnotatedTypeMirror.AnnotatedWildcardType type, Set<AnnotatedTypeMirror> visiting) Visits a wildcard type.
-
Field Details
-
annoFormatter
The object responsible for converting annotations to strings. -
defaultInvisiblesSetting
protected final boolean defaultInvisiblesSettingRepresents whether or not invisible annotations should be printed if the client of this class does not use the printInvisibleAnnos parameter. -
currentPrintInvisibleSetting
protected boolean currentPrintInvisibleSettingFor a given call to format, this setting specifies whether or not to printInvisibles. If a user did not specify a printInvisible parameter in the call to format then this value will equal DefaultAnnotatedTypeFormatter.defaultInvisibleSettings for this object -
defaultPrintVerboseGenerics
protected final boolean defaultPrintVerboseGenericsDefault value of currentPrintVerboseGenerics. -
currentPrintVerboseGenerics
protected boolean currentPrintVerboseGenericsPrints type variables in a less ambiguous manner using [] to delimit them. Always prints both bounds even if they lower bound is an AnnotatedNull type. -
currentlyPrintingRaw
protected boolean currentlyPrintingRawWhether the visitor is currently printing a raw type.
-
-
Constructor Details
-
FormattingVisitor
public FormattingVisitor(AnnotationFormatter annoFormatter, boolean printVerboseGenerics, boolean defaultInvisiblesSetting) Creates the visitor.- Parameters:
annoFormatter- formatter used forAnnotationMirrorsprintVerboseGenerics- whether to verbosely print type variables and wildcardsdefaultInvisiblesSetting- whether to print invisible qualifiers
-
-
Method Details
-
setVerboseSettings
protected void setVerboseSettings(boolean printVerbose) Set the current verbose settings to use while printing. -
resetPrintVerboseSettings
protected void resetPrintVerboseSettings()Set verbose settings to the default. -
printBound
@SideEffectFree protected void printBound(String keyWord, AnnotatedTypeMirror field, Set<AnnotatedTypeMirror> visiting, StringBuilder sb) Print, to sb,keyWordfollowed byfield. NULL types are substituted with their annotations followed by " Void" -
visit
Description copied from interface:AnnotatedTypeVisitorA convenience method equivalent tov.visit(t, null).- Specified by:
visitin interfaceAnnotatedTypeVisitor<String,Set<AnnotatedTypeMirror>> - Parameters:
type- the type to visit- Returns:
- a visitor-specified result
-
visit
Description copied from interface:AnnotatedTypeVisitorVisits a type.- Specified by:
visitin interfaceAnnotatedTypeVisitor<String,Set<AnnotatedTypeMirror>> - Parameters:
type- the type to visitannotatedTypeVariables- a visitor-specified parameter- Returns:
- a visitor-specified result
-
visitDeclared
public String visitDeclared(AnnotatedTypeMirror.AnnotatedDeclaredType type, Set<AnnotatedTypeMirror> visiting) Description copied from interface:AnnotatedTypeVisitorVisits a declared type.- Specified by:
visitDeclaredin interfaceAnnotatedTypeVisitor<String,Set<AnnotatedTypeMirror>> - Parameters:
type- the type to visitvisiting- a visitor-specified parameter- Returns:
- a visitor-specified result
-
visitIntersection
public String visitIntersection(AnnotatedTypeMirror.AnnotatedIntersectionType type, Set<AnnotatedTypeMirror> visiting) Description copied from interface:AnnotatedTypeVisitorVisits an intersection type.- Specified by:
visitIntersectionin interfaceAnnotatedTypeVisitor<String,Set<AnnotatedTypeMirror>> - Parameters:
type- the type to visitvisiting- a visitor-specified parameter- Returns:
- a visitor-specified result
-
visitUnion
public String visitUnion(AnnotatedTypeMirror.AnnotatedUnionType type, Set<AnnotatedTypeMirror> visiting) Description copied from interface:AnnotatedTypeVisitorVisits an union type.- Specified by:
visitUnionin interfaceAnnotatedTypeVisitor<String,Set<AnnotatedTypeMirror>> - Parameters:
type- the type to visitvisiting- a visitor-specified parameter- Returns:
- a visitor-specified result
-
visitExecutable
public String visitExecutable(AnnotatedTypeMirror.AnnotatedExecutableType type, Set<AnnotatedTypeMirror> visiting) Description copied from interface:AnnotatedTypeVisitorVisits an executable type.- Specified by:
visitExecutablein interfaceAnnotatedTypeVisitor<String,Set<AnnotatedTypeMirror>> - Parameters:
type- the type to visitvisiting- a visitor-specified parameter- Returns:
- a visitor-specified result
-
visitArray
public String visitArray(AnnotatedTypeMirror.AnnotatedArrayType type, Set<AnnotatedTypeMirror> visiting) Description copied from interface:AnnotatedTypeVisitorVisits an array type.- Specified by:
visitArrayin interfaceAnnotatedTypeVisitor<String,Set<AnnotatedTypeMirror>> - Parameters:
type- the type to visitvisiting- a visitor-specified parameter- Returns:
- a visitor-specified result
-
visitTypeVariable
public String visitTypeVariable(AnnotatedTypeMirror.AnnotatedTypeVariable type, Set<AnnotatedTypeMirror> visiting) Description copied from interface:AnnotatedTypeVisitorVisits a type variable.- Specified by:
visitTypeVariablein interfaceAnnotatedTypeVisitor<String,Set<AnnotatedTypeMirror>> - Parameters:
type- the type to visitvisiting- a visitor-specified parameter- Returns:
- a visitor-specified result
-
visitPrimitive
@SideEffectFree public String visitPrimitive(AnnotatedTypeMirror.AnnotatedPrimitiveType type, Set<AnnotatedTypeMirror> visiting) Description copied from interface:AnnotatedTypeVisitorVisits a primitive type.- Specified by:
visitPrimitivein interfaceAnnotatedTypeVisitor<String,Set<AnnotatedTypeMirror>> - Parameters:
type- the type to visitvisiting- a visitor-specified parameter- Returns:
- a visitor-specified result
-
visitNoType
@SideEffectFree public String visitNoType(AnnotatedTypeMirror.AnnotatedNoType type, Set<AnnotatedTypeMirror> visiting) Description copied from interface:AnnotatedTypeVisitorVisits NoType type.- Specified by:
visitNoTypein interfaceAnnotatedTypeVisitor<String,Set<AnnotatedTypeMirror>> - Parameters:
type- the type to visitvisiting- a visitor-specified parameter- Returns:
- a visitor-specified result
-
visitNull
@SideEffectFree public String visitNull(AnnotatedTypeMirror.AnnotatedNullType type, Set<AnnotatedTypeMirror> visiting) Description copied from interface:AnnotatedTypeVisitorVisits anulltype.- Specified by:
visitNullin interfaceAnnotatedTypeVisitor<String,Set<AnnotatedTypeMirror>> - Parameters:
type- the type to visitvisiting- a visitor-specified parameter- Returns:
- a visitor-specified result
-
visitWildcard
public String visitWildcard(AnnotatedTypeMirror.AnnotatedWildcardType type, Set<AnnotatedTypeMirror> visiting) Description copied from interface:AnnotatedTypeVisitorVisits a wildcard type.- Specified by:
visitWildcardin interfaceAnnotatedTypeVisitor<String,Set<AnnotatedTypeMirror>> - Parameters:
type- the type to visitvisiting- a visitor-specified parameter- Returns:
- a visitor-specified result
-
formatFlatType
-