@Override public boolean shouldVisit(JavaClass obj) { boolean isFinal = (obj.getAccessFlags() & Const.ACC_FINAL) != 0 || (obj.getAccessFlags() & Const.ACC_PUBLIC) == 0; return !isFinal; }
@Override public void visit(JavaClass obj) { super.visit(obj); int flags = obj.getAccessFlags(); publicClass = (flags & Const.ACC_PUBLIC) != 0 && !getDottedClassName().startsWith("sun."); packageName = extractPackage(getClassName()); isEclipseNLS = "org.eclipse.osgi.util.NLS".equals(obj.getSuperclassName()); }
fout.write(EOL); String aflg; out.write(aflg = Utility.accessToString(c.getAccessFlags(), true)); if (aflg != null) { out.write(SPACE);
@Override public void visitClassContext(ClassContext classContext) { try { JavaClass cls = classContext.getJavaClass(); superclassName = cls.getSuperclassName(); JavaClass[] interfaces = null; if (cls.isClass() && ((cls.getAccessFlags() & Const.ACC_ABSTRACT) != 0)) { interfaces = cls.getAllInterfaces(); interfaceMethods = new HashSet<>(); for (JavaClass aInterface : interfaces) { Method[] infMethods = aInterface.getMethods(); for (Method meth : infMethods) { interfaceMethods.add(meth.getName() + meth.getSignature()); } } } } catch (ClassNotFoundException cnfe) { bugReporter.reportMissingClass(cnfe); } super.visitClassContext(classContext); }
@Override public void visitClassContext(ClassContext classContext) { if (!enabled()) { return; } JavaClass jClass = classContext.getJavaClass(); XClass xClass = classContext.getXClass(); try { if (!isJunit3TestCase(xClass)) { return; } if ((jClass.getAccessFlags() & Const.ACC_ABSTRACT) == 0) { if (!hasTestMethods(jClass)) { bugReporter.reportBug(new BugInstance(this, "IJU_NO_TESTS", LOW_PRIORITY).addClass(jClass)); } } directChildOfTestCase = "junit.framework.TestCase".equals(jClass.getSuperclassName()); jClass.accept(this); } catch (ClassNotFoundException cnfe) { bugReporter.reportMissingClass(cnfe); } }
return; int flags = obj.getAccessFlags(); isAbstract = (flags & Const.ACC_ABSTRACT) != 0 || (flags & Const.ACC_INTERFACE) != 0; isAnonymousInnerClass = anonymousInnerClassNamePattern.matcher(getClassName()).matches();
@Override public void parse(final ClassNameAndSuperclassInfo.Builder builder) throws InvalidClassFileFormatException { builder.setCodeBaseEntry(codeBaseEntry); builder.setAccessFlags(javaClass.getAccessFlags()); ClassDescriptor classDescriptor = DescriptorFactory.createClassDescriptorFromDottedClassName(javaClass.getClassName()); if (expectedClassDescriptor != null && expectedClassDescriptor.equals(classDescriptor)) { throw new InvalidClassFileFormatException("Expected " + expectedClassDescriptor, classDescriptor, codeBaseEntry); } builder.setClassDescriptor(classDescriptor); builder.setSuperclassDescriptor(DescriptorFactory.createClassDescriptorFromDottedClassName(javaClass.getSuperclassName())); String[] allInterfaces = javaClass.getInterfaceNames(); ClassDescriptor[] allInterfaceDescriptiors; if (allInterfaces.length == 0) { allInterfaceDescriptiors = ClassDescriptor.EMPTY_ARRAY; } else { allInterfaceDescriptiors = new ClassDescriptor[allInterfaces.length]; for (int i = 0; i < allInterfaces.length; i++) { allInterfaceDescriptiors[i] = DescriptorFactory.createClassDescriptorFromDottedClassName(allInterfaces[i]); } } builder.setInterfaceDescriptorList(allInterfaceDescriptiors); }
return; int accessFlags = obj.getAccessFlags(); if ((accessFlags & Const.ACC_INTERFACE) != 0) { return;
@Override public boolean shouldVisit(JavaClass obj) { boolean isFinal = (obj.getAccessFlags() & ACC_FINAL) != 0 || (obj.getAccessFlags() & ACC_PUBLIC) == 0; return !isFinal; }
@Override public void visit(JavaClass obj) { super.visit(obj); int flags = obj.getAccessFlags(); publicClass = (flags & ACC_PUBLIC) != 0 && !getDottedClassName().startsWith("sun."); packageName = extractPackage(getClassName()); isEclipseNLS = "org.eclipse.osgi.util.NLS".equals(obj.getSuperclassName()); }
+ (("".equals(package_name)) ? class_name : package_name + "." + class_name) + "\", \"" + super_name + "\", " + "\"" + clazz.getSourceFileName() + "\", " + printFlags(clazz.getAccessFlags(), FLAGS.CLASS) + ", " + "new String[] { " + inter + " });"); _out.println();
"\", \"" + super_name + "\", " + "\"" + clazz.getSourceFileName() + "\", " + printFlags(clazz.getAccessFlags(), true) + ", " + "new String[] { " + inter + " });\n");
@Override public void visitClassContext(ClassContext classContext) { try { JavaClass cls = classContext.getJavaClass(); superclassName = cls.getSuperclassName(); JavaClass[] interfaces = null; if (cls.isClass() && ((cls.getAccessFlags() & Constants.ACC_ABSTRACT) != 0)) { interfaces = cls.getAllInterfaces(); interfaceMethods = new HashSet<String>(); for (JavaClass aInterface : interfaces) { Method[] infMethods = aInterface.getMethods(); for (Method meth : infMethods) { interfaceMethods.add(meth.getName() + meth.getSignature()); } } } } catch (ClassNotFoundException cnfe) { bugReporter.reportMissingClass(cnfe); } super.visitClassContext(classContext); }
@Override public void visitClassContext(ClassContext classContext) { if (!enabled()) { return; } JavaClass jClass = classContext.getJavaClass(); XClass xClass = classContext.getXClass(); try { if (!isJunit3TestCase(xClass)) { return; } if ((jClass.getAccessFlags() & ACC_ABSTRACT) == 0) { if (!hasTestMethods(jClass)) { bugReporter.reportBug(new BugInstance(this, "IJU_NO_TESTS", LOW_PRIORITY).addClass(jClass)); } } directChildOfTestCase = "junit.framework.TestCase".equals(jClass.getSuperclassName()); jClass.accept(this); } catch (ClassNotFoundException cnfe) { bugReporter.reportMissingClass(cnfe); } }
return; int flags = obj.getAccessFlags(); isAbstract = (flags & ACC_ABSTRACT) != 0 || (flags & ACC_INTERFACE) != 0; isAnonymousInnerClass = anonymousInnerClassNamePattern.matcher(getClassName()).matches();
constantPool = new ConstantPool(cls); accessFlags = cls.getAccessFlags(); thisClassConstantPoolIndex = cls.getClassNameIndex(); superClassConstantPoolIndex = cls.getSuperClass().getClassNameIndex();
@Override public void parse(final ClassNameAndSuperclassInfo.Builder builder) throws InvalidClassFileFormatException { builder.setCodeBaseEntry(codeBaseEntry); builder.setAccessFlags(javaClass.getAccessFlags()); ClassDescriptor classDescriptor = DescriptorFactory.createClassDescriptorFromDottedClassName(javaClass.getClassName()); if (expectedClassDescriptor != null && expectedClassDescriptor.equals(classDescriptor)) { throw new InvalidClassFileFormatException("Expected " + expectedClassDescriptor, classDescriptor, codeBaseEntry); } builder.setClassDescriptor(classDescriptor); builder.setSuperclassDescriptor(DescriptorFactory.createClassDescriptorFromDottedClassName(javaClass.getSuperclassName())); String[] allInterfaces = javaClass.getInterfaceNames(); ClassDescriptor[] allInterfaceDescriptiors; if (allInterfaces.length == 0) { allInterfaceDescriptiors = ClassDescriptor.EMPTY_ARRAY; } else { allInterfaceDescriptiors = new ClassDescriptor[allInterfaces.length]; for (int i = 0; i < allInterfaces.length; i++) { allInterfaceDescriptiors[i] = DescriptorFactory.createClassDescriptorFromDottedClassName(allInterfaces[i]); } } builder.setInterfaceDescriptorList(allInterfaceDescriptiors); }
/** * Initialize with existing class. * @param clazz JavaClass object (e.g. read from file) */ public ClassGen(JavaClass clazz) { class_name_index = clazz.getClassNameIndex(); superclass_name_index = clazz.getSuperclassNameIndex(); class_name = clazz.getClassName(); super_class_name = clazz.getSuperclassName(); file_name = clazz.getSourceFileName(); access_flags = clazz.getAccessFlags(); cp = new ConstantPoolGen(clazz.getConstantPool()); major = clazz.getMajor(); minor = clazz.getMinor(); Attribute[] attributes = clazz.getAttributes(); Method[] methods = clazz.getMethods(); Field[] fields = clazz.getFields(); String[] interfaces = clazz.getInterfaceNames(); for(int i=0; i < interfaces.length; i++) addInterface(interfaces[i]); for(int i=0; i < attributes.length; i++) addAttribute(attributes[i]); for(int i=0; i < methods.length; i++) addMethod(methods[i]); for(int i=0; i < fields.length; i++) addField(fields[i]); }
super(clazz.getAccessFlags()); class_name_index = clazz.getClassNameIndex(); superclass_name_index = clazz.getSuperclassNameIndex();
TypeDeclaration typeDecl= new TypeDeclaration(type, jc.getAccessFlags(), annotationsValues); fileUnit.isInterface= Modifier.isInterface(typeDecl.getAccess());