Package edu.umd.cs.findbugs.ba.jsr305
Class TypeQualifierAnnotationLookupResult
- java.lang.Object
-
- edu.umd.cs.findbugs.ba.jsr305.TypeQualifierAnnotationLookupResult
-
- Direct Known Subclasses:
ParameterAnnotationLookupResult,ReturnTypeAnnotationLookupResult
public class TypeQualifierAnnotationLookupResult extends java.lang.ObjectThe result of looking up a TypeQualifierAnnotation. Because type qualifiers are inherited, a full result of looking resolving a TypeQualifierAnnotation may include annotations on one or more supertypes. Potentially, the supertype annotations may conflict with each other, and/or conflict with the annotation on the annotated entity. This object makes it possible to report such conflicts, while still providing a convenient interface for getting the "effective" TypeQualifierAnnotation.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classTypeQualifierAnnotationLookupResult.PartialResultPartial result of looking up a TypeQualifierAnnotation.
-
Field Summary
Fields Modifier and Type Field Description private java.util.List<TypeQualifierAnnotationLookupResult.PartialResult>partialResultList
-
Constructor Summary
Constructors Constructor Description TypeQualifierAnnotationLookupResult()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) voidaddPartialResult(TypeQualifierAnnotationLookupResult.PartialResult partialResult)protected TypeQualifierAnnotationcombine(TypeQualifierAnnotation a, TypeQualifierAnnotation b)Subclasses must override this method to combine TypeQualifierAnnotations found in multiple superclasses.TypeQualifierAnnotationgetEffectiveTypeQualifierAnnotation()Get the effective TypeQualifierAnnotation.java.lang.StringtoString()
-
-
-
Field Detail
-
partialResultList
private final java.util.List<TypeQualifierAnnotationLookupResult.PartialResult> partialResultList
-
-
Method Detail
-
addPartialResult
void addPartialResult(TypeQualifierAnnotationLookupResult.PartialResult partialResult)
-
getEffectiveTypeQualifierAnnotation
@CheckForNull public TypeQualifierAnnotation getEffectiveTypeQualifierAnnotation()
Get the effective TypeQualifierAnnotation.- Returns:
- the effective TypeQualifierAnnotation, or null if no effective TypeQualifierAnnotation can be found
-
combine
protected TypeQualifierAnnotation combine(TypeQualifierAnnotation a, TypeQualifierAnnotation b)
Subclasses must override this method to combine TypeQualifierAnnotations found in multiple superclasses.- Parameters:
a- a TypeQualifierAnnotationb- another TypeQualifierAnnotation- Returns:
- combined TypeQualifierAnnotation compatible with both input TypeQualifierAnnotations, or null if no such TypeQualifierAnnotation exists
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-