trait IntervalAnalysisWidening extends ValueAnalysisMisc with Dependencies[CfgNode]
Linear Supertypes
Known Subclasses
Ordering
- Alphabetic
- By Inheritance
Inherited
- IntervalAnalysisWidening
- Dependencies
- ValueAnalysisMisc
- AnyRef
- Any
- Hide All
- Show All
Visibility
- Public
- All
Abstract Value Members
-
abstract
val
cfg: ProgramCfg
- Definition Classes
- IntervalAnalysisWidening → ValueAnalysisMisc
-
implicit abstract
val
declData: DeclarationData
- Definition Classes
- ValueAnalysisMisc
-
abstract
def
indep(n: CfgNode): Set[CfgNode]
Incoming dependencies.
Incoming dependencies. Used when computing the join from predecessors.
- n
an element from the worklist
- returns
the elements that the given element depends on
- Definition Classes
- Dependencies
- abstract val liftedstatelattice: LiftLattice[statelattice.type]
-
abstract
def
outdep(n: CfgNode): Set[CfgNode]
Outgoing dependencies.
Outgoing dependencies. Used when propagating dataflow to successors.
- n
an element from the worklist
- returns
the elements that depend on the given element
- Definition Classes
- Dependencies
-
abstract
val
valuelattice: IntervalLattice.type
The lattice of abstract values.
The lattice of abstract values.
- Definition Classes
- IntervalAnalysisWidening → ValueAnalysisMisc
Concrete Value Members
-
val
declaredVars: Set[ADeclaration]
Set of declared variables, used by
statelattice
.Set of declared variables, used by
statelattice
.- Definition Classes
- ValueAnalysisMisc
-
def
eval(exp: AExpr, env: Element)(implicit declData: DeclarationData): Element
Default implementation of eval.
Default implementation of eval.
- Definition Classes
- ValueAnalysisMisc
-
def
localTransfer(n: CfgNode, s: Element): Element
Transfer function for state lattice elements.
Transfer function for state lattice elements.
- Definition Classes
- ValueAnalysisMisc
- def loophead(n: CfgNode): Boolean
-
val
statelattice: MapLattice[ADeclaration, valuelattice.type]
The lattice of abstract states.
The lattice of abstract states.
- Definition Classes
- ValueAnalysisMisc
- def widen(x: Element, y: Element): Element
- def widenInterval(x: Element, y: Element): Element