Interface ICDecompilableElement
- All Superinterfaces:
ICElement,ICSourceElement
Top-level C AST interface representing a decompilable element under an
ICSource.-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final intstatic final intstatic final intstatic final int -
Method Summary
Modifier and TypeMethodDescriptionbooleanaddDecompilationNote(String note) Deep duplication of the element.default ICClassFactoryConvenience method.default ICConstantFactoryConvenience method.default ICElementFactoryConvenience method.default ICFieldFactoryConvenience method.intgetFlags()intgetIndex()default ICMethodFactoryConvenience method.default ICOperatorFactoryConvenience method.intRetrieve the status code of this decompilation output, one ofSTATUS_xxx.default ICTypeFactoryConvenience method.booleanvoidreset()voidSet the AST object decompilation status.voidsetStatusCode(int status) Update the status code for this AST.Methods inherited from interface com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.ICElement
addPhysicalOffset, addPhysicalOffsets, evaluate, format, generate, getData, getElementType, getPhysicalOffset, getPhysicalOffsets, getSubElements, replaceSubElement, setData, setPhysicalOffsets, toString, visitDepthPost, visitDepthPost, visitDepthPost, visitDepthPre, visitDepthPre, visitDepthPre
-
Field Details
-
STATUS_NORMAL
static final int STATUS_NORMAL- See Also:
-
STATUS_UNINITIALIZED
static final int STATUS_UNINITIALIZED- See Also:
-
STATUS_ERROR
static final int STATUS_ERROR- See Also:
-
STATUS_LIMITED
static final int STATUS_LIMITED- See Also:
-
STATUS_STALE
static final int STATUS_STALE- See Also:
-
-
Method Details
-
getAddress
String getAddress() -
reset
void reset() -
isExternal
boolean isExternal() -
getIndex
int getIndex() -
getFlags
int getFlags() -
setStatus
Set the AST object decompilation status.This method is used by the decompiler engine to indicate whether the decompilation succeeded. In practice, this means: was the decompiler able to decompile and fill the method body appropriately? Typically, a hard failure results in an empty body. A dependency update results in a stale body (the output is kept as-if, even though it is no longer accurate). The AST renderer uses this flag to add and customize the decompiled output (for instance, add comments to let the user know that the method could not be decompiled)
- Parameters:
status-message-
-
setStatusCode
void setStatusCode(int status) Update the status code for this AST.- Parameters:
status- any ofSTATUS_xxx
-
getStatusCode
int getStatusCode()Retrieve the status code of this decompilation output, one ofSTATUS_xxx.- Returns:
-
getStatusMessage
String getStatusMessage() -
getGlobalContext
ICGlobalContext getGlobalContext() -
getFieldFactory
Convenience method.- Returns:
-
getMethodFactory
Convenience method.- Returns:
-
getClassFactory
Convenience method.- Returns:
-
getTypeFactory
Convenience method.- Returns:
-
getConstantFactory
Convenience method.- Returns:
-
getOperatorFactory
Convenience method.- Returns:
-
getElementFactory
Convenience method.- Returns:
-
addDecompilationNote
- Parameters:
note-- Returns:
-
getDecompilationNotes
- Returns:
-
duplicate
ICDecompilableElement duplicate()Description copied from interface:ICElementDeep duplication of the element. Sub-elements are duplicated.Note:
ICClass,ICMethod,ICField,ICIdentifier,ICConstant,ICTypeandICLabelare not duplicated.- Specified by:
duplicatein interfaceICElement- Specified by:
duplicatein interfaceICSourceElement
-