Uses of Interface
pascal.taie.ir.stmt.Stmt
Package
Description
This package provides functionality to analyze exceptions.
Provides the classes necessary to build and represent a call graph.
Provides the classes necessary to represent an inter-procedural
control-flow graph (ICFG).
Provide functionality related to context sensitivity.
Provide data structures and algorithms of context-sensitive
pointer analysis solver.
Provide plugin interface of pointer analysis and
some instances (implementations).
This package implements modification side-effect analysis (MOD) which
computes the objects that may be modified by each method and statement.
Provide classes related to intermediate representation of method bodies.
-
Uses of Stmt in pascal.taie.analysis
-
Uses of Stmt in pascal.taie.analysis.bugfinder.nullpointer
Modifier and TypeMethodDescriptionprotected DataflowAnalysis<Stmt,
pascal.taie.analysis.bugfinder.nullpointer.IsNullFact> IsNullAnalysis.makeAnalysis
(CFG<Stmt> cfg) Modifier and TypeMethodDescriptionprotected DataflowAnalysis<Stmt,
pascal.taie.analysis.bugfinder.nullpointer.IsNullFact> IsNullAnalysis.makeAnalysis
(CFG<Stmt> cfg) -
Uses of Stmt in pascal.taie.analysis.dataflow.analysis
Modifier and TypeMethodDescriptionprotected pascal.taie.analysis.dataflow.analysis.LiveVariable.Analysis
LiveVariable.makeAnalysis
(CFG<Stmt> cfg) protected pascal.taie.analysis.dataflow.analysis.ReachingDefinition.Analysis
ReachingDefinition.makeAnalysis
(CFG<Stmt> cfg) -
Uses of Stmt in pascal.taie.analysis.dataflow.analysis.availexp
Modifier and TypeMethodDescriptionprotected pascal.taie.analysis.dataflow.analysis.availexp.AvailableExpression.Analysis
AvailableExpression.makeAnalysis
(CFG<Stmt> cfg) -
Uses of Stmt in pascal.taie.analysis.dataflow.analysis.constprop
Modifier and TypeMethodDescriptionboolean
ConstantPropagation.Analysis.transferNode
(Stmt stmt, CPFact in, CPFact out) Modifier and TypeMethodDescriptionprotected ConstantPropagation.Analysis
ConstantPropagation.makeAnalysis
(CFG<Stmt> cfg) boolean
ConstantPropagation.Analysis.needTransferEdge
(CFGEdge<Stmt> edge) ConstantPropagation.Analysis.transferEdge
(CFGEdge<Stmt> edge, CPFact nodeFact) -
Uses of Stmt in pascal.taie.analysis.dataflow.fact
Modifier and TypeMethodDescriptiondefault Fact
NodeResult
is designed to be compatible with CFGs of both stmt nodes and block nodes.default boolean
NodeResult.isRelevant
(Stmt stmt) Typically, allstmt
s are relevant inNodeResult
. -
Uses of Stmt in pascal.taie.analysis.dataflow.inter
Modifier and TypeMethodDescriptionInterConstantPropagation.newBoundaryFact
(Stmt boundary) protected boolean
InterConstantPropagation.transferCallNode
(Stmt stmt, CPFact in, CPFact out) protected boolean
InterConstantPropagation.transferNonCallNode
(Stmt stmt, CPFact in, CPFact out) Modifier and TypeMethodDescriptionprotected CPFact
InterConstantPropagation.transferCallEdge
(CallEdge<Stmt> edge, CPFact callSiteOut) protected CPFact
InterConstantPropagation.transferCallToReturnEdge
(CallToReturnEdge<Stmt> edge, CPFact out) protected CPFact
InterConstantPropagation.transferNormalEdge
(NormalEdge<Stmt> edge, CPFact out) protected CPFact
InterConstantPropagation.transferReturnEdge
(ReturnEdge<Stmt> edge, CPFact returnOut) -
Uses of Stmt in pascal.taie.analysis.deadcode
-
Uses of Stmt in pascal.taie.analysis.defuse
-
Uses of Stmt in pascal.taie.analysis.exception
Modifier and TypeMethodDescriptionCatchResult.getCaughtExplicitOf
(Stmt stmt) CatchResult.getCaughtImplicitOf
(Stmt stmt) CatchResult.getCaughtOf
(Stmt stmt) static Map<Stmt,
List<ExceptionEntry>> CatchAnalysis.getPotentialCatchers
(IR ir) Modifier and TypeMethodDescriptionCatchResult.getCaughtExplicitOf
(Stmt stmt) CatchResult.getCaughtImplicitOf
(Stmt stmt) CatchResult.getCaughtOf
(Stmt stmt) CatchResult.getUncaughtExplicitOf
(Stmt stmt) CatchResult.getUncaughtImplicitOf
(Stmt stmt) CatchResult.getUncaughtOf
(Stmt stmt) ThrowResult.mayThrowImplicitly
(Stmt stmt) -
Uses of Stmt in pascal.taie.analysis.graph.callgraph
-
Uses of Stmt in pascal.taie.analysis.graph.cfg
-
Uses of Stmt in pascal.taie.analysis.graph.icfg
-
Uses of Stmt in pascal.taie.analysis.pta.core.cs
-
Uses of Stmt in pascal.taie.analysis.pta.core.solver
Modifier and TypeMethodDescriptionvoid
DefaultSolver.addStmts
(CSMethod csMethod, Collection<Stmt> stmts) void
Solver.addStmts
(CSMethod csMethod, Collection<Stmt> stmts) Adds stmts to the analyzed program. -
Uses of Stmt in pascal.taie.analysis.pta.plugin
Modifier and TypeMethodDescriptionvoid
void
void
void
default void
Invoked when a new reachable stmt is discovered. -
Uses of Stmt in pascal.taie.analysis.pta.plugin.exception
-
Uses of Stmt in pascal.taie.analysis.pta.plugin.invokedynamic
-
Uses of Stmt in pascal.taie.analysis.pta.plugin.natives
Modifier and TypeMethodDescriptionArrayModel.arraysCopyOf
(Invoke invoke) UnsafeModel.compareAndSwapObject
(Invoke invoke) DoPriviledgedModel.doPrivilegedPA
(Invoke invoke) DoPriviledgedModel.doPrivilegedPEA
(Invoke invoke) ArrayModel.systemArraycopy
(Invoke invoke) -
Uses of Stmt in pascal.taie.analysis.pta.plugin.reflection
-
Uses of Stmt in pascal.taie.analysis.pta.plugin.util
Modifier and TypeFieldDescriptionAbstractIRModel.handlers
Deprecated.protected final Map<JMethod,
Collection<Stmt>> AbstractIRModel.method2GenStmts
Deprecated.protected final Map<JMethod,
Collection<Stmt>> IRModelPlugin.method2GenStmts
Modifier and TypeMethodDescriptionvoid
void
Modifier and TypeMethodDescriptionprotected void
AbstractIRModel.registerHandler
(JMethod api, Function<Invoke, Collection<Stmt>> handler) Deprecated. -
Uses of Stmt in pascal.taie.analysis.sideeffect
Modifier and TypeMethodDescriptionSideEffect.getModifiedObjects
(Stmt stmt) boolean
SideEffect.isRelevant
(Stmt stmt) -
Uses of Stmt in pascal.taie.ir
Modifier and TypeMethodDescriptionDefaultIR.getObject
(int i) DefaultIR.getStmt
(int i) IR.getStmt
(int i) -
Uses of Stmt in pascal.taie.ir.proginfo
Modifier and TypeMethodDescriptionExceptionEntry.end()
Returns the value of theend
record component.ExceptionEntry.start()
Returns the value of thestart
record component.ModifierConstructorDescriptionExceptionEntry
(Stmt start, Stmt end, Catch handler, ClassType catchType) Creates an instance of aExceptionEntry
record class. -
Uses of Stmt in pascal.taie.ir.stmt
Modifier and TypeClassDescriptionclass
Representation of statement that assigns literals, e.g., a = 10.class
AssignStmt<L extends LValue,
R extends RValue> Representation of assign statements.class
Representation of assign statement for binary expression, e.g., a = b + c.class
Representation of cast statement, e.g., a = (T) b.class
Representation of catch exception, e.g., catch (e).class
Representation of copy statement, e.g., a = b.class
DefinitionStmt<L extends LValue,
R extends RValue> Representation of all definition statements, i.e., exp1 = exp2.class
Load/Store field statements.class
Representation of goto statement, e.g., goto L.class
Representation of if statement, e.g., if a == b goto S;class
Representation of instanceof statement, e.g., a = (b instanceof T).class
Representation of invocation statement, e.g., r = o.m(...) or o.m(...).class
class
Representation of load array statement, e.g., x = a[..].class
Representation of following load field statements: load instance field: x = o.f load static field: x = T.fclass
class
Representation of monitorenter/monitorexit instruction.class
Representation of following kinds of new statements: new instance: o = new T new array: o = new T[..] new multi-array: o = new T[..][..]class
Representation of nop statement which does nothing.class
Representation of return statement, e.g., return; or return x.class
Representation of store array statement, e.g., a[..] = x.class
Representation of following store field statements: store instance field: o.f = x store static field: T.f = xclass
Representation of switch statement, e.g., switch (v) { case 1: ...class
class
Representation of throw exception statement, e.g., throw e.class
Representation of following kinds of unary assign statements: negation: x = -y array length: x = arr.lengthModifier and TypeFieldDescriptionprotected Stmt
SwitchStmt.defaultTarget
The jump target for default case.Modifier and TypeFieldDescriptionSwitchStmt.targets
List of jump targets of the switch-statement, one target for each case.Modifier and TypeMethodDescriptionSwitchStmt.getDefaultTarget()
Goto.getTarget()
If.getTarget()
SwitchStmt.getTarget
(int i) Modifier and TypeMethodDescriptionLookupSwitch.getCaseTargets()
SwitchStmt.getCaseTargets()
TableSwitch.getCaseTargets()
Goto.getTargets()
If.getTargets()
JumpStmt.getTargets()
SwitchStmt.getTargets()
Modifier and TypeMethodDescriptionvoid
SwitchStmt.setDefaultTarget
(Stmt defaultTarget) void
void
Convert a target statement to its String representation.default T
StmtVisitor.visitDefault
(Stmt stmt)