Package com.schibsted.spt.data.jslt.impl
Class Scope
- java.lang.Object
-
- com.schibsted.spt.data.jslt.impl.Scope
-
- Direct Known Subclasses:
OptimizerScope
public class Scope extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description private static int
BITMASK
private com.fasterxml.jackson.databind.JsonNode[]
globalStackFrame
private static int
INVERSE
private java.util.Deque<com.fasterxml.jackson.databind.JsonNode[]>
localStackFrames
-
Constructor Summary
Constructors Constructor Description Scope(int stackFrameSize)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
enterFunction(int stackFrameSize)
static Scope
getRoot(int stackFrameSize)
com.fasterxml.jackson.databind.JsonNode
getValue(int slot)
void
leaveFunction()
static Scope
makeScope(java.util.Map<java.lang.String,com.fasterxml.jackson.databind.JsonNode> variables, int stackFrameSize, java.util.Map<java.lang.String,java.lang.Integer> parameterSlots)
Creates an initialized scope with values for variables supplied by client code into the JSLT expression.void
setValue(int slot, com.fasterxml.jackson.databind.JsonNode value)
-
-
-
Field Detail
-
globalStackFrame
private com.fasterxml.jackson.databind.JsonNode[] globalStackFrame
-
localStackFrames
private java.util.Deque<com.fasterxml.jackson.databind.JsonNode[]> localStackFrames
-
BITMASK
private static final int BITMASK
- See Also:
- Constant Field Values
-
INVERSE
private static final int INVERSE
- See Also:
- Constant Field Values
-
-
Method Detail
-
getRoot
public static Scope getRoot(int stackFrameSize)
-
makeScope
public static Scope makeScope(java.util.Map<java.lang.String,com.fasterxml.jackson.databind.JsonNode> variables, int stackFrameSize, java.util.Map<java.lang.String,java.lang.Integer> parameterSlots)
Creates an initialized scope with values for variables supplied by client code into the JSLT expression.
-
enterFunction
public void enterFunction(int stackFrameSize)
-
leaveFunction
public void leaveFunction()
-
getValue
public com.fasterxml.jackson.databind.JsonNode getValue(int slot)
-
setValue
public void setValue(int slot, com.fasterxml.jackson.databind.JsonNode value)
-
-