public class BasicContextSensitivityStrategy extends java.lang.Object implements IContextSensitivityStrategy
Constructor and Description |
---|
BasicContextSensitivityStrategy() |
Modifier and Type | Method and Description |
---|---|
HeapContext |
makeActivationAndArgumentsHeapContext(State state,
ObjectLabel function,
Value thisval,
FunctionCalls.CallInfo callInfo,
GenericSolver.SolverInterface c)
Constructs a heap context for objects related to a call.
|
HeapContext |
makeConstructorHeapContext(State state,
ObjectLabel function,
FunctionCalls.CallInfo callInfo,
GenericSolver.SolverInterface c)
Constructs a heap context for an object created at 'new'.
|
Context |
makeForInEntryContext(Context currentContext,
BeginForInNode n,
Value v)
Constructs a context for entering a for-in body.
|
Context |
makeFunctionEntryContext(State state,
ObjectLabel function,
FunctionCalls.CallInfo callInfo,
Value thisval,
GenericSolver.SolverInterface c)
Constructs a context for call.
|
HeapContext |
makeFunctionHeapContext(Function fun,
GenericSolver.SolverInterface c)
Constructs a heap context for a function object.
|
Context |
makeInitialContext()
Constructs the initial context.
|
Context |
makeLoopExitContext(Context currentContext,
EndLoopNode node)
Constructs a context for leaving a loop.
|
Context |
makeNextLoopUnrollingContext(Context currentContext,
BeginLoopNode node)
Constructs a context for (re-)entering a loop.
|
HeapContext |
makeObjectLiteralHeapContext(AbstractNode node,
State state)
Constructs a heap context for an object literal.
|
void |
requestContextSensitiveParameter(Function function,
java.lang.String parameter)
Requests that a parameter is treated context sensitively.
|
public HeapContext makeActivationAndArgumentsHeapContext(State state, ObjectLabel function, Value thisval, FunctionCalls.CallInfo callInfo, GenericSolver.SolverInterface c)
IContextSensitivityStrategy
makeActivationAndArgumentsHeapContext
in interface IContextSensitivityStrategy
public HeapContext makeConstructorHeapContext(State state, ObjectLabel function, FunctionCalls.CallInfo callInfo, GenericSolver.SolverInterface c)
IContextSensitivityStrategy
makeConstructorHeapContext
in interface IContextSensitivityStrategy
public Context makeForInEntryContext(Context currentContext, BeginForInNode n, Value v)
IContextSensitivityStrategy
makeForInEntryContext
in interface IContextSensitivityStrategy
public Context makeFunctionEntryContext(State state, ObjectLabel function, FunctionCalls.CallInfo callInfo, Value thisval, GenericSolver.SolverInterface c)
IContextSensitivityStrategy
makeFunctionEntryContext
in interface IContextSensitivityStrategy
public HeapContext makeFunctionHeapContext(Function fun, GenericSolver.SolverInterface c)
IContextSensitivityStrategy
makeFunctionHeapContext
in interface IContextSensitivityStrategy
public Context makeInitialContext()
IContextSensitivityStrategy
makeInitialContext
in interface IContextSensitivityStrategy
public Context makeLoopExitContext(Context currentContext, EndLoopNode node)
IContextSensitivityStrategy
makeLoopExitContext
in interface IContextSensitivityStrategy
public Context makeNextLoopUnrollingContext(Context currentContext, BeginLoopNode node)
IContextSensitivityStrategy
makeNextLoopUnrollingContext
in interface IContextSensitivityStrategy
public HeapContext makeObjectLiteralHeapContext(AbstractNode node, State state)
IContextSensitivityStrategy
makeObjectLiteralHeapContext
in interface IContextSensitivityStrategy
public void requestContextSensitiveParameter(Function function, java.lang.String parameter)
IContextSensitivityStrategy
requestContextSensitiveParameter
in interface IContextSensitivityStrategy
Copyright © 2009-2019 Aarhus University