Example #1
0
  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);
  }