Package com.schibsted.spt.data.jslt.impl
Class ArraySlicer
java.lang.Object
com.schibsted.spt.data.jslt.impl.AbstractNode
com.schibsted.spt.data.jslt.impl.ArraySlicer
- All Implemented Interfaces:
ExpressionNode
Indexing and slicing of arrays and also strings.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate boolean
private ExpressionNode
private ExpressionNode
private ExpressionNode
Fields inherited from class com.schibsted.spt.data.jslt.impl.AbstractNode
location
-
Constructor Summary
ConstructorsConstructorDescriptionArraySlicer
(ExpressionNode left, boolean colon, ExpressionNode right, ExpressionNode parent, Location location) -
Method Summary
Modifier and TypeMethodDescriptioncom.fasterxml.jackson.databind.JsonNode
void
dump
(int level) optimize()
private int
resolveIndex
(Scope scope, ExpressionNode expr, com.fasterxml.jackson.databind.JsonNode input, int size, int ifnull) toString()
Methods inherited from class com.schibsted.spt.data.jslt.impl.AbstractNode
computeMatchContexts, getLocation, prepare
-
Field Details
-
left
-
colon
private boolean colon -
right
-
parent
-
-
Constructor Details
-
ArraySlicer
public ArraySlicer(ExpressionNode left, boolean colon, ExpressionNode right, ExpressionNode parent, Location location)
-
-
Method Details
-
apply
public com.fasterxml.jackson.databind.JsonNode apply(Scope scope, com.fasterxml.jackson.databind.JsonNode input) -
resolveIndex
private int resolveIndex(Scope scope, ExpressionNode expr, com.fasterxml.jackson.databind.JsonNode input, int size, int ifnull) -
getChildren
- Specified by:
getChildren
in interfaceExpressionNode
- Overrides:
getChildren
in classAbstractNode
-
optimize
- Specified by:
optimize
in interfaceExpressionNode
- Overrides:
optimize
in classAbstractNode
-
dump
public void dump(int level) - Specified by:
dump
in interfaceExpressionNode
- Overrides:
dump
in classAbstractNode
-
toString
-