Interface IJavaGlobalContext

All Superinterfaces:
IJavaElementFactory

@Ser public interface IJavaGlobalContext extends IJavaElementFactory
dexdec global context for AST generation. This interface contains references to objects necessary to access and manipulate ASTs generated by the decompiler.
  • Method Details

    • getDecompiler

      IDexDecompilerUnit getDecompiler()
      Retrieve the owning dex decompiler.
      Returns:
      dex decompiler, or null if unavailable
    • getTypeFactory

      IJavaTypeFactory getTypeFactory()
      Retrieve the Java type factory.
      Returns:
      type factory
    • getOperatorFactory

      IJavaOperatorFactory getOperatorFactory()
      Retrieve the Java operator factory.
      Returns:
      operator factory
    • getConstantFactory

      IJavaConstantFactory getConstantFactory()
      Retrieve the Java constant factory.
      Returns:
      constant factory
    • getClassFactory

      IJavaClassFactory getClassFactory()
      Retrieve the Java class factory.
      Returns:
      class factory
    • getMethodFactory

      IJavaMethodFactory getMethodFactory()
      Retrieve the Java method factory.
      Returns:
      method factory
    • getFieldFactory

      IJavaFieldFactory getFieldFactory()
      Retrieve the Java field factory.
      Returns:
      field factory
    • createMasterOptimizer

      IJMasterOptimizer createMasterOptimizer(IJavaDecompilableElement elt, boolean registerBuiltinOptimizers, boolean initializeWithDexdecSettings, boolean registerExternalOptimizers)
      Create a master optimizer targeting the provided AST element.
      Parameters:
      elt - a method or class
      registerBuiltinOptimizers - true to register built-in optimizers
      initializeWithDexdecSettings - true to initialize using dex decompiler settings
      registerExternalOptimizers - true to register external optimizer plugins
      Returns:
      master optimizer
    • createMasterOptimizer

      default IJMasterOptimizer createMasterOptimizer(IJavaDecompilableElement elt)
      Create a pre-initialized master optimizer targeting the provided AST element. This convenience method is equivalent to createMasterOptimizer(elt, true, true, true).
      Parameters:
      elt - a method or class
      Returns:
      master optimizer