Uses of Interface
com.schibsted.spt.data.jslt.impl.ExpressionNode
Packages that use ExpressionNode
Package
Description
This package contains implementation-internal interfaces and classes.
The implementation of the JSLT parser.
-
Uses of ExpressionNode in com.schibsted.spt.data.jslt.impl
Classes in com.schibsted.spt.data.jslt.impl that implement ExpressionNodeModifier and TypeClassDescriptionclass
Common superclass for function and macro expressions, to avoid having to repeat so much code.class
class
Shared abstract superclass for comparison operators and others.class
class
class
Indexing and slicing of arrays and also strings.class
class
class
class
class
class
class
These expression cannot be generated in the syntax, but are used to mark that an object matcher (* : .) is being used inside an array, which is not allowed.class
class
class
class
class
class
class
class
Represents the '* - ...class
class
class
class
class
class
class
Represents a ("key" : expr) pair inside a JSON object.class
class
class
class
class
class
Fields in com.schibsted.spt.data.jslt.impl declared as ExpressionNodeModifier and TypeFieldDescriptionprivate ExpressionNode
ExpressionImpl.actual
protected ExpressionNode[]
AbstractInvocationExpression.arguments
private ExpressionNode
FunctionDeclaration.body
private ExpressionNode[]
ArrayExpression.children
private ExpressionNode
MatcherExpression.expr
private ExpressionNode
ForExpression.ifExpr
private ExpressionNode
ObjectComprehension.ifExpr
private ExpressionNode
ObjectComprehension.key
private ExpressionNode
PairExpression.key
protected ExpressionNode
AbstractOperator.left
private ExpressionNode
ArraySlicer.left
private ExpressionNode
ObjectComprehension.loop
private ExpressionNode
ForExpression.loopExpr
private ExpressionNode
IfExpression.orelse
private ExpressionNode
ArraySlicer.parent
private ExpressionNode
DotExpression.parent
protected ExpressionNode
AbstractOperator.right
private ExpressionNode
ArraySlicer.right
private ExpressionNode
IfExpression.test
private ExpressionNode
IfExpression.then
private ExpressionNode
LetExpression.value
private ExpressionNode
ObjectComprehension.value
private ExpressionNode
PairExpression.value
private ExpressionNode
ForExpression.valueExpr
Methods in com.schibsted.spt.data.jslt.impl that return ExpressionNodeModifier and TypeMethodDescriptionLetExpression.getDeclaration()
LetInfo.getDeclaration()
VariableInfo.getDeclaration()
The expression that computes this variable's value.AbstractOperator.getLeft()
AbstractOperator.getRight()
AbstractInvocationExpression.optimize()
AbstractNode.optimize()
AbstractOperator.optimize()
ArrayExpression.optimize()
ArraySlicer.optimize()
DotExpression.optimize()
ExpressionNode.optimize()
ForExpression.optimize()
FunctionDeclaration.optimize()
FunctionExpression.optimize()
IfExpression.optimize()
LetExpression.optimize()
MatcherExpression.optimize()
ObjectComprehension.optimize()
ObjectExpression.optimize()
PairExpression.optimize()
VariableExpression.optimize()
Methods in com.schibsted.spt.data.jslt.impl that return types with arguments of type ExpressionNodeModifier and TypeMethodDescriptionAbstractInvocationExpression.getChildren()
AbstractNode.getChildren()
AbstractOperator.getChildren()
ArrayExpression.getChildren()
ArraySlicer.getChildren()
DotExpression.getChildren()
ExpressionImpl.getChildren()
ExpressionNode.getChildren()
ForExpression.getChildren()
IfExpression.getChildren()
LetExpression.getChildren()
MatcherExpression.getChildren()
ObjectComprehension.getChildren()
ObjectExpression.getChildren()
PairExpression.getChildren()
Methods in com.schibsted.spt.data.jslt.impl with parameters of type ExpressionNodeModifier and TypeMethodDescriptioncom.fasterxml.jackson.databind.JsonNode
BuiltinFunctions.Fallback.call
(Scope scope, com.fasterxml.jackson.databind.JsonNode input, ExpressionNode[] parameters) com.fasterxml.jackson.databind.JsonNode
ExperimentalModule.GroupBy.call
(Scope scope, com.fasterxml.jackson.databind.JsonNode input, ExpressionNode[] parameters) com.fasterxml.jackson.databind.JsonNode
Macro.call
(Scope scope, com.fasterxml.jackson.databind.JsonNode input, ExpressionNode[] parameters) Invokes the macro, which can then modify the input node and evaluate the parameters as needed.private int
ArraySlicer.resolveIndex
(Scope scope, ExpressionNode expr, com.fasterxml.jackson.databind.JsonNode input, int size, int ifnull) Constructors in com.schibsted.spt.data.jslt.impl with parameters of type ExpressionNodeModifierConstructorDescriptionAbstractInvocationExpression
(ExpressionNode[] arguments, Location location) AbstractOperator
(ExpressionNode left, ExpressionNode right, String operator, Location location) AndOperator
(ExpressionNode left, ExpressionNode right, Location location) ArrayExpression
(ExpressionNode[] children, Location location) ArraySlicer
(ExpressionNode left, boolean colon, ExpressionNode right, ExpressionNode parent, Location location) BiggerComparison
(ExpressionNode left, ExpressionNode right, Location location) BiggerOrEqualComparison
(ExpressionNode left, ExpressionNode right, Location location) ComparisonOperator
(ExpressionNode left, ExpressionNode right, String operator, Location location) DivideOperator
(ExpressionNode left, ExpressionNode right, Location location) DotExpression
(String key, ExpressionNode parent, Location location) EqualsComparison
(ExpressionNode left, ExpressionNode right, Location location) ExpressionImpl
(LetExpression[] lets, Map<String, Function> functions, ExpressionNode actual) ForExpression
(ExpressionNode valueExpr, LetExpression[] lets, ExpressionNode loopExpr, ExpressionNode ifExpr, Location location) FunctionDeclaration
(String name, String[] parameters, LetExpression[] lets, ExpressionNode body) FunctionExpression
(String name, ExpressionNode[] arguments, Location location) IfExpression
(ExpressionNode test, LetExpression[] thenlets, ExpressionNode then, LetExpression[] elselets, ExpressionNode orelse, Location location) LetExpression
(String variable, ExpressionNode value, Location location) MacroExpression
(Macro macro, ExpressionNode[] arguments, Location location) MatcherExpression
(ExpressionNode expr, List<String> minuses, Location location) MinusOperator
(ExpressionNode left, ExpressionNode right, Location location) MultiplyOperator
(ExpressionNode left, ExpressionNode right, Location location) NumericOperator
(ExpressionNode left, ExpressionNode right, String name, Location location) ObjectComprehension
(ExpressionNode loop, LetExpression[] lets, ExpressionNode key, ExpressionNode value, ExpressionNode ifExpr, Location location, JsonFilter filter) OrOperator
(ExpressionNode left, ExpressionNode right, Location location) PairExpression
(ExpressionNode key, ExpressionNode value, Location location) PipeOperator
(ExpressionNode left, ExpressionNode right, Location location) PlusOperator
(ExpressionNode left, ExpressionNode right, Location location) SmallerComparison
(ExpressionNode left, ExpressionNode right, Location location) SmallerOrEqualsComparison
(ExpressionNode left, ExpressionNode right, Location location) UnequalsComparison
(ExpressionNode left, ExpressionNode right, Location location) -
Uses of ExpressionNode in com.schibsted.spt.data.jslt.parser
Methods in com.schibsted.spt.data.jslt.parser that return ExpressionNodeModifier and TypeMethodDescriptionprivate static ExpressionNode
ParserImpl.buildArraySlicer
(ParseContext ctx, SimpleNode node, ExpressionNode parent) private static ExpressionNode
ParserImpl.buildChainLink
(ParseContext ctx, SimpleNode node, ExpressionNode parent) private static ExpressionNode
ParserImpl.buildDotChain
(ParseContext ctx, SimpleNode chainLink, ExpressionNode parent) private static ExpressionNode
ParserImpl.chainable2Expr
(ParseContext ctx, SimpleNode node) private static ExpressionNode[]
ParserImpl.children2Exprs
(ParseContext ctx, SimpleNode node) private static ExpressionNode
ParserImpl.node2addexpr
(ParseContext ctx, SimpleNode node) private static ExpressionNode
ParserImpl.node2andexpr
(ParseContext ctx, SimpleNode node) private static ExpressionNode
ParserImpl.node2baseExpr
(ParseContext ctx, SimpleNode node) private static ExpressionNode
ParserImpl.node2compexpr
(ParseContext ctx, SimpleNode node) private static ExpressionNode
ParserImpl.node2expr
(ParseContext ctx, SimpleNode node) private static ExpressionNode
ParserImpl.node2mulexpr
(ParseContext ctx, SimpleNode node) private static ExpressionNode
ParserImpl.node2orexpr
(ParseContext ctx, SimpleNode node) Methods in com.schibsted.spt.data.jslt.parser with parameters of type ExpressionNodeModifier and TypeMethodDescriptionprivate static ExpressionNode
ParserImpl.buildArraySlicer
(ParseContext ctx, SimpleNode node, ExpressionNode parent) private static ExpressionNode
ParserImpl.buildChainLink
(ParseContext ctx, SimpleNode node, ExpressionNode parent) private static ExpressionNode
ParserImpl.buildDotChain
(ParseContext ctx, SimpleNode chainLink, ExpressionNode parent)