public class PatternParser20 extends XPathParser implements PatternParser
XPathParser.TemporaryContainer
allowXPath30Syntax, catchDepth, charChecker, codeInjector, defaultContainer, env, language, languageVersion, rangeVariables, scanOnly, SEQUENCE_TYPE, t, XPATH, XQUERY, XSLT_PATTERN
Constructor and Description |
---|
PatternParser20() |
Modifier and Type | Method and Description |
---|---|
protected void |
customizeTokenizer(Tokenizer t)
Callback to tailor the tokenizer
|
Expression |
makeTracer(int startOffset,
Expression exp,
int construct,
StructuredQName qName)
If tracing, wrap an expression in a trace instruction
|
protected Expression |
parseBasicStep(boolean firstInPattern)
Parse a basic step expression (without the predicates)
|
Expression |
parseExpression()
Override the parsing of top-level expressions
|
Expression |
parseFunctionArgument()
Parse an argument to a function call.
|
protected Expression |
parseFunctionCall()
Parse a function call appearing within a pattern.
|
Pattern |
parsePattern(String pattern,
StaticContext env)
Parse a string representing an XSLT pattern
|
protected Expression |
parsePredicate()
Parse an expression appearing within a predicate.
|
protected void |
testPermittedAxis(byte axis) |
atStartOfRelativePath, currentTokenDisplay, declareRangeVariable, disallowedAtStartOfRelativePath, expect, findRangeVariable, getCodeInjector, getDefaultContainer, getLanguage, getMissingFunctionExplanation, getRangeVariables, getStaticContext, getTokenizer, grumble, grumble, grumble, grumble, isKeyword, isNamespaceTestAllowed, isReservedInQuery, makeCurriedFunction, makeLocalNameTest, makeNameCode, makeNamespaceTest, makeNameTest, makeNodeName, makeStringLiteral, makeStructuredQName, makeStructuredQNameSilently, nextToken, normalizeEQName, parse, parseAnnotations, parseBinaryExpression, parseConstructor, parseDynamicFunctionCall, parseExprSingle, parseExtensionExpression, parseFLWORExpression, parseFunctionItemType, parseInlineFunction, parseItemType, parseLiteralFunctionItem, parseMapExpression, parseMapItemType, parseNodeTest, parseNumericLiteral, parsePathExpression, parseRelativePath, parseRemainingPath, parseSequenceType, parseSequenceType, parseSimpleMappingExpression, parseStepExpression, parseStringLiteral, parseSwitchExpression, parseTryCatchExpression, parseTypeswitchExpression, parseValidateExpression, parseVariableReference, reportMissingFunction, resolveFunctionName, setCodeInjector, setDefaultContainer, setLanguage, setLocation, setLocation, setLocation, setRangeVariables, setRangeVariableStack, setScanOnly, undeclareRangeVariable, warning
public Pattern parsePattern(String pattern, StaticContext env) throws XPathException
parsePattern
in interface PatternParser
pattern
- the pattern expressed as a Stringenv
- the static context for the patternXPathException
- if the pattern contains a syntax errorprotected void customizeTokenizer(Tokenizer t)
customizeTokenizer
in class XPathParser
t
- the Tokenizer to be customizedpublic Expression parseExpression() throws XPathException
parseExpression
in class XPathParser
XPathException
protected Expression parseBasicStep(boolean firstInPattern) throws XPathException
parseBasicStep
in class XPathParser
firstInPattern
- true only if we are parsing the first step in a
RelativePathPattern in the XSLT Pattern syntaxXPathException
- if any error is encounteredprotected void testPermittedAxis(byte axis) throws XPathException
testPermittedAxis
in class XPathParser
XPathException
protected Expression parsePredicate() throws XPathException
parsePredicate
in class XPathParser
XPathException
protected Expression parseFunctionCall() throws XPathException
parseFunctionCall
in class XPathParser
XPathException
public Expression parseFunctionArgument() throws XPathException
XPathParser
parseFunctionArgument
in class XPathParser
XPathException
- if the argument expression does not parse correctlypublic Expression makeTracer(int startOffset, Expression exp, int construct, StructuredQName qName)
XPathParser
makeTracer
in class XPathParser
startOffset
- the position of the expression in the soruceexp
- the expression to be wrappedconstruct
- integer constant identifying the kind of constructqName
- the name of the construct (if applicable)Copyright (c) 2004-2014 Saxonica Limited. All rights reserved.