Package org.basex.query.func.fn
Class FnPosition
- java.lang.Object
-
- org.basex.query.expr.ExprInfo
-
- org.basex.query.expr.Expr
-
- org.basex.query.expr.ParseExpr
-
- org.basex.query.expr.Arr
-
- org.basex.query.func.StandardFunc
-
- org.basex.query.func.fn.FnPosition
-
public final class FnPosition extends StandardFunc
Function implementation.- Author:
- BaseX Team 2005-23, BSD License, Christian Gruen
-
-
Field Summary
-
Fields inherited from class org.basex.query.func.StandardFunc
definition, sc
-
-
Constructor Summary
Constructors Constructor Description FnPosition()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
accept(ASTVisitor visitor)
Traverses this expression, notifying the visitor of declared and used variables, and checking the tree for other recursive properties.Int
item(QueryContext qc, InputInfo ii)
Evaluates the expression and returns the resulting item, orEmpty.VALUE
if the expression yields an empty sequence.Expr
optimizePos(CmpV.OpV op, CompileContext cc)
Optimizes an expression for positional access.Expr
simplifyFor(CompileContext.Simplify mode, CompileContext cc)
Simplifies the expression.-
Methods inherited from class org.basex.query.func.StandardFunc
checkPerm, coerceFunc, compileData, copy, dataLock, defined, description, embed, equals, has, opt, optFirst, optFirst, optimize, serialize, simplifyArgs, toBaseUri, toBindings, toCollation, toCollationOrDefault, toContent, toContent, toData, toDate, toDBNode, toEncodingOrNull, toFunction, toFunction, toIO, toIO, toMs, toName, toNodeOrAtomItem, toOptions, toOptions, toPath, toPath, toStr, toString, toXml, toZeroStr, updating, vacuous
-
Methods inherited from class org.basex.query.expr.Arr
allAreValues, arg, args, checkUp, compile, copyAll, count, exprSize, flatten, inline, inlineable, mayBePositional, removeEmpty, simplifyAll
-
Methods inherited from class org.basex.query.expr.ParseExpr
adoptType, atomValue, checkAllUp, checkNoEmpty, checkNoEmpty, checkNoneUp, checkNoUp, checkType, checkType, checkUp, copyType, ctxValue, data, ebv, info, iter, refineType, seqType, size, test, toArray, toArray, toAtomItem, toB64, toB64, toB64OrNull, toBin, toBin, toBoolean, toBoolean, toBooleanOrFalse, toBytes, toBytes, toDouble, toDouble, toElem, toElem, toFloat, toFunction, toItem, toItem, toLong, toLong, toMap, toMap, toNode, toNode, toNodeOrNull, toNumber, toNumberOrNull, toQNm, toQNmOrNull, toString, toString, toStringOrNull, toToken, toToken, toTokenOrNull, toZeroToken, value
-
Methods inherited from class org.basex.query.expr.Expr
arg, atomItem, atomIter, ddo, funcType, hasFreeVars, indexAccessible, isSimple, markTailCalls, mergeEbv, simplify, typeCheck, uses, visitAll
-
Methods inherited from class org.basex.query.expr.ExprInfo
toErrorString, toString
-
-
-
-
Method Detail
-
item
public Int item(QueryContext qc, InputInfo ii) throws QueryException
Description copied from class:Expr
Evaluates the expression and returns the resulting item, orEmpty.VALUE
if the expression yields an empty sequence. If this method is not implemented,Expr.value(QueryContext)
must be implemented instead.- Overrides:
item
in classParseExpr
- Parameters:
qc
- query contextii
- input info (only required bySeq
instances, which have no input info)- Returns:
- item or
Empty.VALUE
- Throws:
QueryException
- query exception
-
accept
public boolean accept(ASTVisitor visitor)
Description copied from class:Expr
Traverses this expression, notifying the visitor of declared and used variables, and checking the tree for other recursive properties.
-
simplifyFor
public Expr simplifyFor(CompileContext.Simplify mode, CompileContext cc) throws QueryException
Description copied from class:Expr
Simplifies the expression. Overwritten by many expressions; callsExpr.simplify(Simplify, CompileContext)
otherwise.- Overrides:
simplifyFor
in classExpr
- Parameters:
mode
- mode of simplificationcc
- compilation context- Returns:
- simplified or original expression
- Throws:
QueryException
- query exception- See Also:
CompileContext.Simplify
-
optimizePos
public Expr optimizePos(CmpV.OpV op, CompileContext cc)
Description copied from class:Expr
- Overrides:
optimizePos
in classExpr
- Parameters:
op
- comparison operatorcc
- compilation context- Returns:
- boolean result, optimized or original expression
-
-