Class CheckRelaxingNullnessAnnotation
java.lang.Object
org.objectweb.asm.ClassVisitor
org.objectweb.asm.tree.ClassNode
edu.umd.cs.findbugs.asm.ClassNodeDetector
edu.umd.cs.findbugs.detect.CheckRelaxingNullnessAnnotation
- All Implemented Interfaces:
Detector2, Priorities
Checks that overriding methods do not relax
Nonnull (made
CheckForNull) on return values or CheckForNull (made
Nonnull) on parameters.
The code accepts also old (deprecated) nullness annotations from
edu.umd.cs.findbugs.annotations package.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate final classprivate class -
Field Summary
Fields inherited from class ClassNodeDetector
bugReporter, xclassFields inherited from class org.objectweb.asm.tree.ClassNode
access, attrs, fields, innerClasses, interfaces, invisibleAnnotations, invisibleTypeAnnotations, methods, module, name, nestHostClass, nestMembers, outerClass, outerMethod, outerMethodDesc, permittedSubclasses, recordComponents, signature, sourceDebug, sourceFile, superName, version, visibleAnnotations, visibleTypeAnnotationsFields inherited from class org.objectweb.asm.ClassVisitor
api, cvFields inherited from interface Priorities
EXP_PRIORITY, HIGH_PRIORITY, IGNORE_PRIORITY, LOW_PRIORITY, NORMAL_PRIORITY -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) static booleanareRelated(String sig, String superSig) (package private) static booleancompatibleParameters(String signature, String superSignature) (package private) static booleancontainsNullness(Collection<AnnotationValue> annotations, NullnessAnnotation nullness) (package private) static booleancontainsRelaxedNonNull(List<org.objectweb.asm.tree.AnnotationNode> methodAnnotations) (package private) static Map<Integer, NullnessAnnotation> getNonnullOrNullableParams(List<org.objectweb.asm.tree.AnnotationNode>[] parameterAnnotations) (package private) static NullnessAnnotationgetNullness(String annotationDesc) org.objectweb.asm.MethodVisitorvisitMethod(int methodAccess, String methodName, String desc, String methodSignature, String[] exceptions) Methods inherited from class ClassNodeDetector
finishPass, getClassInfo, visitClassMethods inherited from class org.objectweb.asm.tree.ClassNode
accept, check, visit, visitAnnotation, visitAttribute, visitEnd, visitField, visitInnerClass, visitModule, visitNestHost, visitNestMember, visitOuterClass, visitPermittedSubclass, visitRecordComponent, visitSource, visitTypeAnnotationMethods inherited from class org.objectweb.asm.ClassVisitor
getDelegateMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface Detector2
getDetectorClassName
-
Constructor Details
-
CheckRelaxingNullnessAnnotation
-
-
Method Details
-
visitMethod
-
containsRelaxedNonNull
static boolean containsRelaxedNonNull(@CheckForNull List<org.objectweb.asm.tree.AnnotationNode> methodAnnotations) -
getNonnullOrNullableParams
@CheckForNull static Map<Integer, NullnessAnnotation> getNonnullOrNullableParams(@CheckForNull List<org.objectweb.asm.tree.AnnotationNode>[] parameterAnnotations) -
getNullness
-
containsNullness
static boolean containsNullness(Collection<AnnotationValue> annotations, NullnessAnnotation nullness) -
compatibleParameters
-
areRelated
-