Uses of Interface
com.pnfsoftware.jeb.core.units.code.java.IJavaElement
Packages that use IJavaElement
Package
Description
This package contains types used to publicly access and manipulate JEB's DEX Decompiler (referred
 to as 
dexdec) Intermediate Representation (IR) objects.Types used to manipulate 
dexdec-generated (Dex decompiler) Java Abstract Syntax Tree
 (AST) objects.- 
Uses of IJavaElement in com.pnfsoftware.jeb.core.units.code.android.ir
Methods in com.pnfsoftware.jeb.core.units.code.android.ir that return IJavaElementModifier and TypeMethodDescriptionIDExpression.generateAST(IDMethodContext ctx, IJavaMethod m) Generate the Java AST element for this IR expression. - 
Uses of IJavaElement in com.pnfsoftware.jeb.core.units.code.java
Subinterfaces of IJavaElement in com.pnfsoftware.jeb.core.units.code.javaModifier and TypeInterfaceDescriptioninterfaceJava AST interface to represent a Java annotation.interfaceJava AST interface to represent a Java annotation element.interfaceJava AST interface to represent the element of an array.interfaceJava AST interface to represent assignments.interfaceJava AST interface to represent a sequence ofstatements.interfaceJava AST interface to represent abreakstatement.interfaceJava AST interface to represent a method invocation.interfaceJava AST interface to represent a Java class or interface.interfaceJava AST interface to represent compound statements.interfaceJava AST interface to represent a conditional expression.interfaceJava AST interface to represent a literal or constant value.interfaceJava AST interface to represent acontinuestatement.interfaceHigh-level Java AST interface to represent a decompilable Java element (a class, method, or field).interfaceJava AST interface to represent a definition statement.interfaceJava AST interface to represent ado-whileloop statement.interfaceHigh-level interface implemented by Java AST elements representing expressions.interfaceJava AST interface to represent a Java field.interfaceJava AST interface used to represent a standard for loop statement.interfaceJava AST interface used to represent a for-each (Java 5+) loop statement.interfaceJava AST interface to represent a "goto" statement.interfaceJava AST interface to represent a Java identifier, or variable.interfaceJava AST interface to represent a conditional "if" statement.interfaceJava AST interface to represent an instance field.interfaceJava AST interface to represent labels.interfaceHigh-level interface is used to represent Java AST expressions that can be assigned to, that is, expressions that can be left members in assignment statements.interfaceJava AST interface to represent a Java method.interfaceJava AST interface to represent a special "monitor" statement.interfaceJava AST interface to represent the instantiation of a new non-array object.interfaceJava AST interface to represent the instantiation of an array object.interfaceJava AST interface to represent arithmetic and logical expressions.interfaceJava AST interface to represent a Java predicate.interfaceJava AST interface to represent a Java predicate.interfaceJava AST interface to represent return statements of methods.interfaceBase interface for Java AST elements that represent statements.interfaceJava AST interface to represent a static field.interfaceJava AST interface to representswitchstatements.interfaceJava AST interface to represent a synchronized block of code.interfaceHigh-level interface extended by Return and Throw statements.interfaceJava AST interface to represent throw statements.interfaceJava AST interface to represent try-catch elements.interfaceJava AST interface to represent a type reference.interfaceJava AST interface to representwhileloop statements.Methods in com.pnfsoftware.jeb.core.units.code.java that return IJavaElementModifier and TypeMethodDescriptionJavaOutputSink.astParent()Make sure to call beforegenerateEnter.JavaOutputSink.astPop()JavaOutputSink.astPush(IJavaElement elt) IJavaElement.duplicate()Duplicate this element.static IJavaElementJUtil.findParent(IJavaElement root, IJavaElement elt) Retrieve the parent of an AST element (or first parent, if the element is reusable and has potentially multiple parents).IJavaSourceUnit.getASTElement()Get a reference to the Java class or method defined in this unit.protected abstract IJavaElementAbstractJElementOptimizer.optimizeElement(IJavaElement e, IJavaElement parent) Methods in com.pnfsoftware.jeb.core.units.code.java that return types with arguments of type IJavaElementModifier and TypeMethodDescriptionIJavaCompound.getSubElements(boolean excludeSubBlocks) This specialized version ofgetSubElements()allows the caller to exclude collecting sub-blocks of this compound.IJavaElement.getSubElements()Get the list of AST elements that constitute this AST element.Methods in com.pnfsoftware.jeb.core.units.code.java with parameters of type IJavaElementModifier and TypeMethodDescriptionvoidJavaOutputSink.addGeneratedAnon(IJavaElement container, IJavaClass c) Register an anonymous type (most likely a class) that's about to be rendered as inline code, inside a method or another class.JavaOutputSink.astPush(IJavaElement elt) static IJavaElementJUtil.findParent(IJavaElement root, IJavaElement elt) Retrieve the parent of an AST element (or first parent, if the element is reusable and has potentially multiple parents).static StringJUtil.generate(IJavaElement elt) JavaOutputSink.getGeneratedAnon(IJavaElement container) static List<IJavaIdentifier>JUtil.getIdentifiers(IJavaElement e) static StringJUtil.getStringConstant(IJavaElement e) booleanJavaOutputSink.isBeingGenerated(IJavaElement elt) static booleanJUtil.isClassMethodField(IJavaElement e) static booleanJUtil.isIdentOrDefinition(IJavaElement e, IJavaIdentifier ident) Determine whether the elements is the provided identifier or a simple definition of the identifier.static booleanJUtil.isIntegerConstant(IJavaElement e, int expected) static booleanJUtil.isMonitorExit(IJavaElement stm) static booleanJUtil.isMonitorExit(IJavaElement stm, IJavaExpression expectedLock) static booleanJUtil.isStringConstant(IJavaElement e) abstract intAbstractJBlockOptimizer.optimizeBlock(IJavaBlock b, IJavaElement parent) Optimize a block of AST code.protected abstract IJavaElementAbstractJElementOptimizer.optimizeElement(IJavaElement e, IJavaElement parent) protected intAbstractJBlockOptimizer.performInternal(IJavaBlock b, IJavaElement parent) The default implementation callsAbstractJBlockOptimizer.optimizeBlock(IJavaBlock, IJavaElement)on all blocks of the AST method to be optimized.booleanIJavaElement.replaceSubElement(IJavaElement target, IJavaElement repl) Replace one element by another one.booleanIJavaSwitch.replaceSubElement(IJavaElement oldElement, IJavaElement newElement) Note: case-replacements are currently not supported.booleanIJavaElement.visitDepthPost(IJVisitor visitor, IJavaElement parent) Depth-first search, post-order visit of an expression tree or sub-tree.booleanIJavaElement.visitDepthPost(IJVisitor visitor, IJavaElement parent, JVisitResults results) Depth-first search, post-order visit of an expression tree or sub-tree.booleanIJavaElement.visitDepthPost(IJVisitor visitor, IJavaElement parent, JVisitResults results, boolean doNotVisitBlocksInsideCompounds) Depth-first search, post-order visit of an expression tree or sub-tree.booleanIJavaElement.visitDepthPre(IJVisitor visitor, IJavaElement parent) Visit this AST tree.booleanIJavaElement.visitDepthPre(IJVisitor visitor, IJavaElement parent, JVisitResults results) Visit this AST tree.