Package it.unive.lisa.analysis
-
Interface Summary Interface Description AbstractState<A extends AbstractState<A,H,V,T>,H extends HeapDomain<H>,V extends ValueDomain<V>,T extends TypeDomain<T>> An abstract state of the analysis, composed by a heap state modeling the memory layout and a value state modeling values of program variables and memory locations.Lattice<L extends Lattice<L>> An interface for elements that follow a lattice structure.SemanticDomain<D extends SemanticDomain<D,E,I>,E extends SymbolicExpression,I extends Identifier> A domain able to determine how abstract information evolves thanks to the semantics of statements and expressions.SemanticEvaluator An entity that can perform semantic evaluations that is not aSemanticDomain
. -
Class Summary Class Description AnalysisState<A extends AbstractState<A,H,V,T>,H extends HeapDomain<H>,V extends ValueDomain<V>,T extends TypeDomain<T>> The abstract analysis state at a given program point.BaseLattice<L extends BaseLattice<L>> A base implementation of theLattice
interface, handling base cases of the methods exposed by that interface.CFGWithAnalysisResults<A extends AbstractState<A,H,V,T>,H extends HeapDomain<H>,V extends ValueDomain<V>,T extends TypeDomain<T>> ScopeToken A token that can be used for pushing and popping scopes on local variables throughSemanticDomain.pushScope(ScopeToken)
andSemanticDomain.popScope(ScopeToken)
.SimpleAbstractState<H extends HeapDomain<H>,V extends ValueDomain<V>,T extends TypeDomain<T>> An abstract state of the analysis, composed by a heap state modeling the memory layout and a value state modeling values of program variables and memory locations.StatementStore<A extends AbstractState<A,H,V,T>,H extends HeapDomain<H>,V extends ValueDomain<V>,T extends TypeDomain<T>> A functional lattice that stores instances ofAnalysisState
computed on statements. -
Enum Summary Enum Description SemanticDomain.Satisfiability The satisfiability of an expression. -
Exception Summary Exception Description SemanticException An exception that occurred during semantic computation.SemanticExceptionWrapper A runtime exception that wraps aSemanticException
, so that it can be thrown within lambdas.