Interface ICStatement
- All Superinterfaces:
ICElement
- All Known Subinterfaces:
ICAssignment
,ICBlock
,ICBreak
,ICCall
,ICCompound
,ICConditionalStatement
,ICContinue
,ICControlBreaker
,ICCustomStatement
,ICDecl
,ICDoWhileStm
,ICForStm
,ICGenericBreakable
,ICGenericLoop
,ICGenericWhileLoop
,ICGoto
,ICIfStm
,ICJumpFar
,ICLabel
,ICReturn
,ICSwitchStm
,ICTerminalStatement
,ICThrow
,ICWhileStm
Base interface for C AST elements that represent statements in a
code block
.-
Method Summary
Modifier and TypeMethodDescriptionDeep duplication of the element.long
void
setIntermediateOffset
(long irOffset) Called by the code that converts the IR instructions to AST statements
Optional for "artificial" AST elements.
The goal is to maintain a relationship between AST elements and the IR instructions that generated them.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
-
Method Details
-
getIntermediateOffset
long getIntermediateOffset()- Returns:
-
setIntermediateOffset
void setIntermediateOffset(long irOffset) Called by the code that converts the IR instructions to AST statements
Optional for "artificial" AST elements.
The goal is to maintain a relationship between AST elements and the IR instructions that generated them. Ideally, the same relationship is maintained between IR instructions and machine code. This allows clients to establish correspondence between AST (source) and opcodes (assembly).- Parameters:
irOffset
- IR code first instruction offset for the statement
-
duplicate
ICStatement duplicate()Description copied from interface:ICElement
Deep duplication of the element. Sub-elements are duplicated.Note:
ICClass
,ICMethod
,ICField
,ICIdentifier
,ICConstant
,ICType
andICLabel
are not duplicated.
-