public static void parse(File sourceFile) throws Exception { if (ByteCodeTranslator.verbose) { System.out.println("Parsing: " + sourceFile.getAbsolutePath()); } ClassReader r = new ClassReader(new FileInputStream(sourceFile)); /*if(ByteCodeTranslator.verbose) { System.out.println("Class: " + r.getClassName() + " derives from: " + r.getSuperName() + " interfaces: " + Arrays.asList(r.getInterfaces())); }*/ Parser p = new Parser(); p.clsName = r.getClassName().replace('/', '_').replace('$', '_'); if (p.clsName.startsWith("java_lang_annotation") || p.clsName.startsWith("java_lang_Deprecated") || p.clsName.startsWith("java_lang_Override") || p.clsName.startsWith("java_lang_SuppressWarnings")) { return; } p.cls = new ByteCodeClass(p.clsName); r.accept(p, ClassReader.EXPAND_FRAMES); classes.add(p.cls); }