public class XQueryParserPE extends XQueryParser
XPathParser.NestedLocationexecutable, importedModules, queryVersion, XQUERY10, XQUERY30, XQUERY31allowXPath30Syntax, allowXPath31Syntax, catchDepth, charChecker, codeInjector, env, EXTENDED_ITEM_TYPE, language, languageVersion, qNameParser, rangeVariables, scanOnly, SEQUENCE_TYPE, t, XPATH, XQUERY, XSLT_PATTERN| Constructor and Description |
|---|
XQueryParserPE(String queryVersion) |
| Modifier and Type | Method and Description |
|---|---|
protected LocalBinding |
findRangeVariable(StructuredQName qName)
Locate a range variable with a given name.
|
int |
getPermittedFunctions()
Get the permitted set of standard functions in this environment
|
protected boolean |
isReservedInQuery(String uri) |
protected Expression |
makeCurriedFunction(int offset,
StructuredQName name,
Expression[] args,
IntSet placeMarkers)
Process a function call in which one or more of the argument positions are
represented as "?" placemarkers (indicating partial application or currying)
|
XQueryParser |
newParser()
Create a new parser of the same kind
|
protected Expression |
parseArrowPostfix(Expression lhs)
Parse an XPath 3.1 arrow operator ("=>")
|
protected Expression |
parseDynamicFunctionCall(Expression functionItem)
Parse a dynamic function call
|
Expression |
parseFunctionArgument()
Parse a function argument.
|
ItemType |
parseFunctionItemType()
Parse the item type used for function items (XQuery 3.0 higher order functions)
Syntax (changed by WG decision on 2009-09-22):
function '(' '*' ') |
function '(' (SeqType (',' SeqType)*)? ')' 'as' SeqType
The "function(" has already been read
|
protected Expression |
parseInlineFunction(Map<StructuredQName,Annotation> annotations)
Parse an inline function
"function" "(" ParamList? ")" ("as" SequenceType)? EnclosedExpr
On entry, "function (" has already been read
|
protected Expression |
parseNamedFunctionReference()
Parse a literal function item (introduced in XQuery 3.0)
Syntax: QName # integer
The QName and # have already been read
|
applyModuleImport, atStartOfRelativePath, checkAnnotations, checkStreamability, customizeTokenizer, ensureSchemaAware, getExecutable, getLanguage, isStreaming, lookAhead, makeLetExpression, makeSimpleContent, makeStringJoin, makeStringLiteral, makeXQueryExpression, normalizeEQName, parseAnnotations, parseAnnotationsList, parseConstructor, parseExtensionExpression, parseFLWORExpression, parseFunctionDeclaration, parseLibraryModule, parseOutputDeclaration, parseRevalidationDeclaration, parseStringTemplate, parseSwitchExpression, parseTryCatchExpression, parseTypeswitchExpression, parseUpdatingFunctionDeclaration, parseValidateExpression, readCollationName, setDisableCycleChecks, setExecutable, setStreaming, stringify, testPermittedAxis, unescape, URILiteralcheckLanguageVersion30, checkLanguageVersion31, currentTokenDisplay, declareRangeVariable, disallowedAtStartOfRelativePath, expect, getCodeInjector, getMissingFunctionExplanation, getQNameParser, getRangeVariables, getStaticContext, getTokenizer, grumble, grumble, grumble, grumble, isAllowAbsentExpression, isAllowXPath31Syntax, isKeyword, isNamespaceTestAllowed, isReservedFunctionName30, isReservedFunctionName31, makeLocalNameTest, makeLocation, makeNameCode, makeNamespaceTest, makeNameTest, makeNodeName, makeStructuredQName, makeStructuredQNameSilently, makeTracer, nextToken, parse, parseArrayCurlyConstructor, parseArrayItemType, parseArraySquareConstructor, parseBasicStep, parseBinaryExpression, parseExpression, parseExprSingle, parseExtendedItemType, parseExtendedSequenceType, parseFunctionCall, parseItemType, parseLookup, parseMapExpression, parseMapItemType, parseNodeTest, parseNumericLiteral, parseParenthesizedExpression, parsePathExpression, parsePredicate, parseRelativePath, parseRemainingPath, parseSequenceType, parseSequenceType, parseSimpleMappingExpression, parseStepExpression, parseStringLiteral, parseVariableReference, reportMissingFunction, resolveFunctionName, setAllowAbsentExpression, setCatchDepth, setCodeInjector, setLanguage, setLocation, setLocation, setLocation, setQNameParser, setRangeVariables, setRangeVariableStack, setScanOnly, undeclareRangeVariable, warning, whyDisallowedTypepublic XQueryParserPE(String queryVersion)
public XQueryParser newParser()
newParser in class XQueryParserpublic int getPermittedFunctions()
getPermittedFunctions in class XQueryParserprotected boolean isReservedInQuery(String uri)
isReservedInQuery in class XPathParserprotected Expression parseNamedFunctionReference() throws XPathException
parseNamedFunctionReference in class XPathParserXPathException - if a static error is encounteredpublic ItemType parseFunctionItemType() throws XPathException
parseFunctionItemType in class XPathParserXPathException - if a static error occurs (including the case
where XPath 3.0 syntax is not enabled)public Expression parseFunctionArgument() throws XPathException
parseFunctionArgument in class XPathParserXPathException - if the argument expression does not parse correctlyprotected Expression parseDynamicFunctionCall(Expression functionItem) throws XPathException
parseDynamicFunctionCall in class XPathParserfunctionItem - the expression that determines the function to be calledXPathException - if a static error is foundprotected Expression parseInlineFunction(Map<StructuredQName,Annotation> annotations) throws XPathException
parseInlineFunction in class XPathParserannotations - the function annotations, which have already been read, or null if there are noneXPathException - if a syntax error is foundprotected Expression makeCurriedFunction(int offset, StructuredQName name, Expression[] args, IntSet placeMarkers) throws XPathException
makeCurriedFunction in class XPathParseroffset - the location of the expression in the query sourcename - the function name (as if there were no currying)args - the arguments (with EmptySequence in the placemarker positions)placeMarkers - the positions of the placemarkers @return the curried functionXPathException - if the syntax is incorrectprotected Expression parseArrowPostfix(Expression lhs) throws XPathException
parseArrowPostfix in class XPathParserXPathExceptionprotected LocalBinding findRangeVariable(StructuredQName qName)
findRangeVariable in class XPathParserqName - identifies the name of the range variableCopyright (c) 2004-2014 Saxonica Limited. All rights reserved.