public static ClassDescriptor[] createClassDescriptor(String[] classNames) { if (classNames.length == 0) { return ClassDescriptor.EMPTY_ARRAY; } ClassDescriptor[] result = new ClassDescriptor[classNames.length]; for (int i = 0; i < classNames.length; i++) { result[i] = createClassDescriptor(classNames[i]); } return result; }
public static ClassDescriptor createClassOrObjectDescriptorFromSignature(String signature) { if (signature.charAt(0) == '[') { return createClassDescriptor("java/lang/Object"); } return createClassDescriptorFromSignature(signature); }
/** * @return a ClassDescriptor for the method's class */ @Override public ClassDescriptor getClassDescriptor() { return DescriptorFactory.createClassDescriptor(slashedClassName); }
public CheckExpectedWarnings(BugReporter bugReporter) { bugCollection = bugReporter.getBugCollection(); if (bugCollection != null) { reporter = bugReporter; expectWarning = DescriptorFactory.createClassDescriptor(ExpectWarning.class); noWarning = DescriptorFactory.createClassDescriptor(NoWarning.class); desireWarning = DescriptorFactory.createClassDescriptor(DesireWarning.class); desireNoWarning = DescriptorFactory.createClassDescriptor(DesireNoWarning.class); } }
/** * @deprecated Use {@link DescriptorFactory#createClassDescriptor(String[])} * instead */ @Deprecated public static ClassDescriptor[] createClassDescriptor(String[] classNames) { return DescriptorFactory.createClassDescriptor(classNames); }
/** * @deprecated Use * {@link DescriptorFactory#createClassDescriptor(JavaClass)} * instead */ @Deprecated public static ClassDescriptor createClassDescriptor(JavaClass c) { return DescriptorFactory.createClassDescriptor(c); }
public static ClassDescriptor createClassDescriptorFromDottedClassName(String dottedClassName) { return createClassDescriptor(dottedClassName.replace('.', '/')); } }
public static ClassDescriptor createClassDescriptorFromSignature(String signature) { int length = signature.length(); if (length == 0) { throw new IllegalArgumentException("Empty signature"); } if (signature.charAt(0) == 'L' && signature.endsWith(";")) { signature = signature.substring(1, signature.length() - 1); } return createClassDescriptor(signature); }
@SuppressWarnings("unchecked") public static @Nonnull <A extends Annotation> TypeQualifierValue<A> getValue(Class <A> clazz, @CheckForNull Object value) { return (TypeQualifierValue<A>) getValue(DescriptorFactory.createClassDescriptor(clazz), value); }
public InconsistentAnnotations(BugReporter reporter) { ClassDescriptor nonnullClassDesc = DescriptorFactory.createClassDescriptor(javax.annotation.Nonnull.class); this.nonnullTypeQualifierValue = TypeQualifierValue.getValue(nonnullClassDesc, null); this.reporter = reporter; }
/** * Create a class descriptor from a resource name. * * @param resourceName * the resource name * @return the class descriptor */ public static ClassDescriptor createClassDescriptorFromResourceName(String resourceName) { if (!isClassResource(resourceName)) { throw new IllegalArgumentException("Resource " + resourceName + " is not a class"); } return createClassDescriptor(resourceName.substring(0, resourceName.length() - 6)); }
/** * @deprecated Use {@link DescriptorFactory#createClassDescriptor(String)} * instead */ @Deprecated public static ClassDescriptor createClassDescriptor(@SlashedClassName String className) { return DescriptorFactory.createClassDescriptor(className); }
@Override public void visitInnerClass(String name, String outerName, String innerName, int access) { if (name.equals(slashedClassName) && outerName != null) { if (cBuilder instanceof ClassInfo.Builder) { ClassDescriptor outerClassDescriptor = DescriptorFactory.createClassDescriptor(outerName); ((ClassInfo.Builder) cBuilder).setImmediateEnclosingClass(outerClassDescriptor); ((ClassInfo.Builder) cBuilder).setAccessFlags(access); } } }
/** * Return whether or not the given class is an application class. * * @param cls * the class to lookup * @return true if the class is an application class, false if not an * application class or if the class cannot be located */ public boolean isApplicationClass(JavaClass cls) { // return getSubtypes().isApplicationClass(cls); return getSubtypes2().isApplicationClass(DescriptorFactory.createClassDescriptor(cls)); }
static XClass getXClass(@SlashedClassName String c) throws CheckedAnalysisException { return getXClass(DescriptorFactory.createClassDescriptor(c)); }
@Override public void visit(int version, int access, String name, String signature, String superName, String[] interfaces) { ClassParserUsingASM.this.slashedClassName = name; cBuilder.setClassfileVersion(version >>> 16, version & 0xffff); cBuilder.setAccessFlags(access); cBuilder.setClassDescriptor(DescriptorFactory.createClassDescriptor(name)); cBuilder.setInterfaceDescriptorList(DescriptorFactory.createClassDescriptor(interfaces)); if (superName != null) { cBuilder.setSuperclassDescriptor(DescriptorFactory.createClassDescriptor(superName)); } if (cBuilder instanceof ClassInfo.Builder) { ((ClassInfo.Builder) cBuilder).setSourceSignature(signature); } }
public ReflectiveClasses(BugReporter bugReporter) { AnalysisContext.currentXFactory().addReflectiveClasses(DescriptorFactory.createClassDescriptor(java.lang.System.class)); }
private void process(@SlashedClassName String className) { ClassDescriptor d = DescriptorFactory.createClassDescriptor(className); AnalysisContext.currentXFactory().addReflectiveClasses(d); } }
public static XClass getXClass(@SlashedClassName String className) throws CheckedAnalysisException { return Global.getAnalysisCache().getClassAnalysis(XClass.class, DescriptorFactory.createClassDescriptor(className)); }
public @CheckForNull AnnotatedObject getContainingScope0() { try { if (immediateEnclosingClass != null) { return Global.getAnalysisCache().getClassAnalysis(XClass.class, getImmediateEnclosingClass()); } if (getClassName().endsWith("package-info")) { return null; } ClassDescriptor p = DescriptorFactory.createClassDescriptor(getSlashedPackageName() + "/" + "package-info"); return Global.getAnalysisCache().getClassAnalysis(XClass.class, p); } catch (CheckedAnalysisException e) { return null; } }