Package pascal.taie.ir.stmt
Interface Stmt
- All Superinterfaces:
Indexable
,Serializable
- All Known Implementing Classes:
AssignLiteral
,AssignStmt
,Binary
,Cast
,Catch
,Copy
,DefinitionStmt
,FieldStmt
,Goto
,If
,InstanceOf
,Invoke
,JumpStmt
,LoadArray
,LoadField
,LookupSwitch
,Monitor
,New
,Nop
,Return
,StoreArray
,StoreField
,SwitchStmt
,TableSwitch
,Throw
,Unary
Representation of statements in Tai-e IR.
-
Method Summary
Modifier and TypeMethodDescription<T> T
accept
(StmtVisitor<T> visitor) boolean
getDef()
int
getIndex()
int
getUses()
void
setIndex
(int index) void
setLineNumber
(int lineNumber)
-
Method Details
-
getIndex
int getIndex() -
setIndex
void setIndex(int index) -
getLineNumber
int getLineNumber()- Returns:
- the line number of this Stmt in the original source file. If the line number is unavailable, return -1.
-
setLineNumber
void setLineNumber(int lineNumber) -
getDef
- Returns:
- the (optional) left-value expression defined in this Stmt. In Tai-e IR, each Stmt can define at most one expression.
-
getUses
- Returns:
- a list of right-value expressions used in this Stmt.
-
canFallThrough
boolean canFallThrough()- Returns:
- true if execution after this statement could continue at the following statement, otherwise false.
-
accept
-