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
public class ArraySlicer extends AbstractNode
Indexing and slicing of arrays and also strings.
-
-
Field Summary
Fields Modifier and Type Field Description private booleancolonprivate ExpressionNodeleftprivate ExpressionNodeparentprivate ExpressionNoderight-
Fields inherited from class com.schibsted.spt.data.jslt.impl.AbstractNode
location
-
-
Constructor Summary
Constructors Constructor Description ArraySlicer(ExpressionNode left, boolean colon, ExpressionNode right, ExpressionNode parent, Location location)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description com.fasterxml.jackson.databind.JsonNodeapply(Scope scope, com.fasterxml.jackson.databind.JsonNode input)voiddump(int level)java.util.List<ExpressionNode>getChildren()ExpressionNodeoptimize()private intresolveIndex(Scope scope, ExpressionNode expr, com.fasterxml.jackson.databind.JsonNode input, int size, int ifnull)java.lang.StringtoString()-
Methods inherited from class com.schibsted.spt.data.jslt.impl.AbstractNode
computeMatchContexts, getLocation, prepare
-
-
-
-
Field Detail
-
left
private ExpressionNode left
-
colon
private boolean colon
-
right
private ExpressionNode right
-
parent
private ExpressionNode parent
-
-
Constructor Detail
-
ArraySlicer
public ArraySlicer(ExpressionNode left, boolean colon, ExpressionNode right, ExpressionNode parent, Location location)
-
-
Method Detail
-
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
public java.util.List<ExpressionNode> getChildren()
- Specified by:
getChildrenin interfaceExpressionNode- Overrides:
getChildrenin classAbstractNode
-
optimize
public ExpressionNode optimize()
- Specified by:
optimizein interfaceExpressionNode- Overrides:
optimizein classAbstractNode
-
dump
public void dump(int level)
- Specified by:
dumpin interfaceExpressionNode- Overrides:
dumpin classAbstractNode
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-