in src/main/java/com/amazon/checkerframework/cryptopolicy/CryptoPolicyComplianceAnnotatedTypeFactory.java [57:75]
public boolean isSubtype(final AnnotationMirror subtype, final AnnotationMirror supertype) {
if (AnnotationUtils.areSameByClass(supertype, UnknownCryptoAlgorithm.class)
|| AnnotationUtils.areSameByClass(subtype, CryptoPolicyBottom.class)) {
return true;
} else if (AnnotationUtils.areSameByClass(subtype, UnknownCryptoAlgorithm.class)
|| AnnotationUtils.areSameByClass(supertype, CryptoPolicyBottom.class)) {
return false;
} else if (AnnotationUtils.areSameByClass(subtype, CryptoWhiteListed.class)
&& AnnotationUtils.areSameByClass(supertype, CryptoWhiteListed.class)) {
// both are whitelists
return compareCryptoListTypes(subtype, supertype);
} else if (AnnotationUtils.areSameByClass(subtype, CryptoBlackListed.class)
&& AnnotationUtils.areSameByClass(supertype, CryptoBlackListed.class)) {
// both are black listed
return compareCryptoListTypes(subtype, supertype);
} else {
return false;
}
}