Package jadx.core.dex.info

Examples of jadx.core.dex.info.AccessInfo


    return field.getDecompiledLine();
  }

  @Override
  public Icon getIcon() {
    AccessInfo af = field.getAccessFlags();
    OverlayIcon icon = Utils.makeIcon(af, ICON_FLD_PUB, ICON_FLD_PRI, ICON_FLD_PRO, ICON_FLD_DEF);
    if (af.isTransient()) {
      icon.add(ICON_TRANSIENT);
    }
    if (af.isVolatile()) {
      icon.add(ICON_VOLATILE);
    }
    return icon;
  }
View Full Code Here


      code.attachDefinition(mth);
      return false;
    }
    annotationGen.addForMethod(code, mth);

    AccessInfo clsAccFlags = mth.getParentClass().getAccessFlags();
    AccessInfo ai = mth.getAccessFlags();
    // don't add 'abstract' and 'public' to methods in interface
    if (clsAccFlags.isInterface()) {
      ai = ai.remove(AccessFlags.ACC_ABSTRACT);
      ai = ai.remove(AccessFlags.ACC_PUBLIC);
    }
    // don't add 'public' for annotations
    if (clsAccFlags.isAnnotation()) {
      ai = ai.remove(AccessFlags.ACC_PUBLIC);
    }
    code.startLineWithNum(mth.getSourceLine());
    code.add(ai.makeString());

    if (classGen.addGenericMap(code, mth.getGenericMap())) {
      code.add(' ');
    }
    if (mth.getAccessFlags().isConstructor()) {
View Full Code Here

    addClassDeclaration(code);
    addClassBody(code);
  }

  public void addClassDeclaration(CodeWriter clsCode) {
    AccessInfo af = cls.getAccessFlags();
    if (af.isInterface()) {
      af = af.remove(AccessFlags.ACC_ABSTRACT);
    } else if (af.isEnum()) {
      af = af.remove(AccessFlags.ACC_FINAL)
          .remove(AccessFlags.ACC_ABSTRACT)
          .remove(AccessFlags.ACC_STATIC);
    }

    // 'static' modifier not allowed for top classes (not inner)
    if (!cls.getClassInfo().isInner()) {
      af = af.remove(AccessFlags.ACC_STATIC);
    }

    annotationGen.addForClass(clsCode);
    insertSourceFileInfo(clsCode, cls);
    clsCode.startLine(af.makeString());
    if (af.isInterface()) {
      if (af.isAnnotation()) {
        clsCode.add('@');
      }
      clsCode.add("interface ");
    } else if (af.isEnum()) {
      clsCode.add("enum ");
    } else {
      clsCode.add("class ");
    }
    clsCode.add(cls.getShortName());

    addGenericMap(clsCode, cls.getGenericMap());
    clsCode.add(' ');

    ClassInfo sup = cls.getSuperClass();
    if (sup != null
        && !sup.getFullName().equals(Consts.CLASS_OBJECT)
        && !sup.getFullName().equals(Consts.CLASS_ENUM)) {
      clsCode.add("extends ");
      useClass(clsCode, sup);
      clsCode.add(' ');
    }

    if (!cls.getInterfaces().isEmpty() && !af.isAnnotation()) {
      if (cls.getAccessFlags().isInterface()) {
        clsCode.add("extends ");
      } else {
        clsCode.add("implements ");
      }
View Full Code Here

TOP

Related Classes of jadx.core.dex.info.AccessInfo

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.