Class ParserImpl
java.lang.Object
com.schibsted.spt.data.jslt.parser.ParserImpl
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static ExpressionNode
buildArraySlicer
(ParseContext ctx, SimpleNode node, ExpressionNode parent) private static ExpressionNode
buildChainLink
(ParseContext ctx, SimpleNode node, ExpressionNode parent) private static ExpressionNode
buildDotChain
(ParseContext ctx, SimpleNode chainLink, ExpressionNode parent) private static ForExpression
buildForExpression
(ParseContext ctx, SimpleNode node) private static LetExpression[]
buildLets
(ParseContext ctx, SimpleNode parent) private static ObjectExpression
buildObject
(ParseContext ctx, SimpleNode node) private static ObjectComprehension
buildObjectComprehension
(ParseContext ctx, SimpleNode node) private static ExpressionNode
chainable2Expr
(ParseContext ctx, SimpleNode node) private static ExpressionNode[]
children2Exprs
(ParseContext ctx, SimpleNode node) private static void
collectFunctions
(ParseContext ctx, SimpleNode parent) private static MatcherExpression
collectMatcher
(ParseContext ctx, SimpleNode node) private static void
collectMinuses
(ParseContext ctx, SimpleNode node, List<String> minuses) private static List
<PairExpression> collectPairs
(ParseContext ctx, SimpleNode pair) private static List
<PairExpression> collectPairs
(ParseContext ctx, SimpleNode pair, List<PairExpression> pairs) private static String[]
collectParams
(SimpleNode node) private static ExpressionImpl
compile
(ParseContext ctx, SimpleNode root) static Expression
compileExpression
(ParseContext ctx, JsltParser parser) private static ExpressionImpl
compileImport
(Collection<Function> functions, ParseContext parent, String jslt) private static ExpressionImpl
compileModule
(ParseContext ctx, JsltParser parser) private static int
countChildren
(SimpleNode node, int type) private static SimpleNode
descendTo
(SimpleNode node, int type) private static JstlFile
doImport
(ParseContext parent, String source, SimpleNode node, String prefix) private static SimpleNode
getChild
(SimpleNode node, int ix) private static SimpleNode
getLastChild
(SimpleNode node) private static String
identOrString
(ParseContext ctx, Token token) private static char
interpretHexDigit
(char digit) private static char
interpretUnicodeEscape
(String string, int start) private static Location
makeLocation
(ParseContext ctx, SimpleNode node) private static Location
makeLocation
(ParseContext ctx, Token token) private static String
makeString
(ParseContext ctx, Token literal) private static ExpressionNode
node2addexpr
(ParseContext ctx, SimpleNode node) private static ExpressionNode
node2andexpr
(ParseContext ctx, SimpleNode node) private static ExpressionNode
node2baseExpr
(ParseContext ctx, SimpleNode node) private static ExpressionNode
node2compexpr
(ParseContext ctx, SimpleNode node) private static ExpressionNode
node2expr
(ParseContext ctx, SimpleNode node) private static ExpressionNode
node2mulexpr
(ParseContext ctx, SimpleNode node) private static ExpressionNode
node2orexpr
(ParseContext ctx, SimpleNode node) private static void
processImports
(ParseContext ctx, SimpleNode parent)
-
Constructor Details
-
ParserImpl
public ParserImpl()
-
-
Method Details
-
compileExpression
-
compileImport
private static ExpressionImpl compileImport(Collection<Function> functions, ParseContext parent, String jslt) -
compileModule
-
compile
-
node2expr
-
node2orexpr
-
node2andexpr
-
node2compexpr
-
node2addexpr
-
node2mulexpr
-
node2baseExpr
-
chainable2Expr
-
buildDotChain
private static ExpressionNode buildDotChain(ParseContext ctx, SimpleNode chainLink, ExpressionNode parent) -
buildChainLink
private static ExpressionNode buildChainLink(ParseContext ctx, SimpleNode node, ExpressionNode parent) -
buildArraySlicer
private static ExpressionNode buildArraySlicer(ParseContext ctx, SimpleNode node, ExpressionNode parent) -
buildForExpression
-
identOrString
-
makeString
-
interpretUnicodeEscape
-
interpretHexDigit
private static char interpretHexDigit(char digit) -
children2Exprs
-
processImports
-
doImport
private static JstlFile doImport(ParseContext parent, String source, SimpleNode node, String prefix) -
buildLets
-
collectFunctions
-
collectParams
-
buildObject
-
collectMatcher
-
collectMinuses
-
collectPairs
-
collectPairs
private static List<PairExpression> collectPairs(ParseContext ctx, SimpleNode pair, List<PairExpression> pairs) -
buildObjectComprehension
-
getChild
-
getLastChild
-
descendTo
-
countChildren
-
makeLocation
-
makeLocation
-