Class PointBasedHeap.Rewriter
- java.lang.Object
-
- it.unive.lisa.analysis.heap.BaseHeapDomain.Rewriter
-
- it.unive.lisa.analysis.heap.pointbased.PointBasedHeap.Rewriter
-
- All Implemented Interfaces:
it.unive.lisa.symbolic.ExpressionVisitor<it.unive.lisa.analysis.lattices.ExpressionSet<it.unive.lisa.symbolic.value.ValueExpression>>
- Direct Known Subclasses:
FieldSensitivePointBasedHeap.Rewriter
- Enclosing class:
- PointBasedHeap
public class PointBasedHeap.Rewriter extends it.unive.lisa.analysis.heap.BaseHeapDomain.Rewriter
ABaseHeapDomain.Rewriter
for thePointBasedHeap
domain.
-
-
Constructor Summary
Constructors Constructor Description Rewriter()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description it.unive.lisa.analysis.lattices.ExpressionSet<it.unive.lisa.symbolic.value.ValueExpression>
visit(it.unive.lisa.symbolic.heap.AccessChild expression, it.unive.lisa.analysis.lattices.ExpressionSet<it.unive.lisa.symbolic.value.ValueExpression> receiver, it.unive.lisa.analysis.lattices.ExpressionSet<it.unive.lisa.symbolic.value.ValueExpression> child, java.lang.Object... params)
it.unive.lisa.analysis.lattices.ExpressionSet<it.unive.lisa.symbolic.value.ValueExpression>
visit(it.unive.lisa.symbolic.heap.HeapAllocation expression, java.lang.Object... params)
it.unive.lisa.analysis.lattices.ExpressionSet<it.unive.lisa.symbolic.value.ValueExpression>
visit(it.unive.lisa.symbolic.heap.HeapDereference expression, it.unive.lisa.analysis.lattices.ExpressionSet<it.unive.lisa.symbolic.value.ValueExpression> arg, java.lang.Object... params)
it.unive.lisa.analysis.lattices.ExpressionSet<it.unive.lisa.symbolic.value.ValueExpression>
visit(it.unive.lisa.symbolic.heap.HeapReference expression, it.unive.lisa.analysis.lattices.ExpressionSet<it.unive.lisa.symbolic.value.ValueExpression> arg, java.lang.Object... params)
it.unive.lisa.analysis.lattices.ExpressionSet<it.unive.lisa.symbolic.value.ValueExpression>
visit(it.unive.lisa.symbolic.value.Identifier expression, java.lang.Object... params)
it.unive.lisa.analysis.lattices.ExpressionSet<it.unive.lisa.symbolic.value.ValueExpression>
visit(it.unive.lisa.symbolic.value.PushAny expression, java.lang.Object... params)
-
-
-
Method Detail
-
visit
public it.unive.lisa.analysis.lattices.ExpressionSet<it.unive.lisa.symbolic.value.ValueExpression> visit(it.unive.lisa.symbolic.heap.AccessChild expression, it.unive.lisa.analysis.lattices.ExpressionSet<it.unive.lisa.symbolic.value.ValueExpression> receiver, it.unive.lisa.analysis.lattices.ExpressionSet<it.unive.lisa.symbolic.value.ValueExpression> child, java.lang.Object... params) throws it.unive.lisa.analysis.SemanticException
- Throws:
it.unive.lisa.analysis.SemanticException
-
visit
public it.unive.lisa.analysis.lattices.ExpressionSet<it.unive.lisa.symbolic.value.ValueExpression> visit(it.unive.lisa.symbolic.heap.HeapAllocation expression, java.lang.Object... params) throws it.unive.lisa.analysis.SemanticException
- Throws:
it.unive.lisa.analysis.SemanticException
-
visit
public it.unive.lisa.analysis.lattices.ExpressionSet<it.unive.lisa.symbolic.value.ValueExpression> visit(it.unive.lisa.symbolic.heap.HeapReference expression, it.unive.lisa.analysis.lattices.ExpressionSet<it.unive.lisa.symbolic.value.ValueExpression> arg, java.lang.Object... params) throws it.unive.lisa.analysis.SemanticException
- Throws:
it.unive.lisa.analysis.SemanticException
-
visit
public it.unive.lisa.analysis.lattices.ExpressionSet<it.unive.lisa.symbolic.value.ValueExpression> visit(it.unive.lisa.symbolic.heap.HeapDereference expression, it.unive.lisa.analysis.lattices.ExpressionSet<it.unive.lisa.symbolic.value.ValueExpression> arg, java.lang.Object... params) throws it.unive.lisa.analysis.SemanticException
- Throws:
it.unive.lisa.analysis.SemanticException
-
visit
public it.unive.lisa.analysis.lattices.ExpressionSet<it.unive.lisa.symbolic.value.ValueExpression> visit(it.unive.lisa.symbolic.value.Identifier expression, java.lang.Object... params) throws it.unive.lisa.analysis.SemanticException
- Specified by:
visit
in interfaceit.unive.lisa.symbolic.ExpressionVisitor<it.unive.lisa.analysis.lattices.ExpressionSet<it.unive.lisa.symbolic.value.ValueExpression>>
- Overrides:
visit
in classit.unive.lisa.analysis.heap.BaseHeapDomain.Rewriter
- Throws:
it.unive.lisa.analysis.SemanticException
-
visit
public it.unive.lisa.analysis.lattices.ExpressionSet<it.unive.lisa.symbolic.value.ValueExpression> visit(it.unive.lisa.symbolic.value.PushAny expression, java.lang.Object... params) throws it.unive.lisa.analysis.SemanticException
- Specified by:
visit
in interfaceit.unive.lisa.symbolic.ExpressionVisitor<it.unive.lisa.analysis.lattices.ExpressionSet<it.unive.lisa.symbolic.value.ValueExpression>>
- Overrides:
visit
in classit.unive.lisa.analysis.heap.BaseHeapDomain.Rewriter
- Throws:
it.unive.lisa.analysis.SemanticException
-
-