Package org.basex.query.func.fn
Class FnData
Function implementation.
- Author:
- BaseX Team 2005-21, BSD License, Christian Gruen
-
Field Summary
Fields inherited from class org.basex.query.func.StandardFunc
definition, sc -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanIndicates if the function will evaluate the current context.item(QueryContext qc, InputInfo ii) Evaluates the expression and returns the resulting item, orEmpty.VALUEif the expression yields an empty sequence.iter(QueryContext qc) Evaluates the expression and returns an iterator on the resulting items.protected Expropt(CompileContext cc) Performs function specific optimizations.protected voidSimplifies the types of all arguments.simplifyFor(CompileContext.Simplify mode, CompileContext cc) This function is called at compile time for expressions whose operands might be simplified.value(QueryContext qc) Evaluates the expression and returns the resulting value.Methods inherited from class org.basex.query.func.fn.ContextFn
accept, contextAccess, contextArg, count, ctxArg, has, inline, simplifyEbvMethods inherited from class org.basex.query.func.StandardFunc
checkAdmin, checkArity, checkArity, checkCreate, checkData, checkPath, checkPath, coerceFunc, compileData, copy, data, data, dataLock, dateTimeToMs, description, equals, optFirst, optFirst, optimize, plan, plan, serialize, toBaseUri, toBindings, toCollation, toDate, toDBNode, toEncodingOrNull, toNodeOrAtomItem, toOptions, toPath, toPath, toQuery, toQuery, vacuousMethods inherited from class org.basex.query.expr.Arr
allAreValues, args, checkUp, compile, copyAll, exprSize, flatten, inline, inlineable, mayBePositional, simplifyAllMethods inherited from class org.basex.query.expr.ParseExpr
adoptType, atomValue, checkAllUp, checkNoEmpty, checkNoEmpty, checkNoneUp, checkNoUp, checkType, checkType, checkUp, copyType, ctxValue, ebv, refineType, seqType, size, test, toArray, toArray, toAtomItem, toB64, toB64, toBin, toBin, toBoolean, toBoolean, toBytes, toBytes, toDouble, toDouble, toElem, toFloat, toFunc, toItem, toItem, toLong, toLong, toMap, toMap, toNode, toNode, toNodeOrNull, toNumber, toNumberOrNull, toQNm, toQNm, toToken, toToken, toTokenOrNull, toZeroTokenMethods inherited from class org.basex.query.expr.Expr
arg, atomItem, atomIter, ddo, funcType, hasFreeVars, indexAccessible, isSimple, markTailCalls, mergeEbv, typeCheck, uses, visitAllMethods inherited from class org.basex.query.expr.ExprInfo
toErrorString, toString
-
Constructor Details
-
FnData
public FnData()
-
-
Method Details
-
iter
Description copied from class:ExprEvaluates the expression and returns an iterator on the resulting items. The implementation of this method is optional.- Overrides:
iterin classParseExpr- Parameters:
qc- query context- Returns:
- iterator
- Throws:
QueryException- query exception
-
value
Description copied from class:ExprEvaluates the expression and returns the resulting value. If this method is not implemented,Expr.item(QueryContext, InputInfo)must be implemented instead.- Overrides:
valuein classParseExpr- Parameters:
qc- query context- Returns:
- value
- Throws:
QueryException- query exception
-
item
Description copied from class:ExprEvaluates the expression and returns the resulting item, orEmpty.VALUEif the expression yields an empty sequence. If this method is not implemented,Expr.value(QueryContext)must be implemented instead.- Overrides:
itemin classParseExpr- Parameters:
qc- query contextii- input info (only required bySeqinstances, which have no input info)- Returns:
- item or
Empty.VALUE - Throws:
QueryException- query exception
-
opt
Description copied from class:StandardFuncPerforms function specific optimizations.- Overrides:
optin classStandardFunc- Parameters:
cc- compilation context- Returns:
- optimized or original expression
-
simplifyArgs
Description copied from class:StandardFuncSimplifies the types of all arguments. This function is overwritten by functions that rely on the original argument type.- Overrides:
simplifyArgsin classStandardFunc- Parameters:
cc- compilation context- Throws:
QueryException- query exception
-
simplifyFor
Description copied from class:ExprThis function is called at compile time for expressions whose operands might be simplified.- Overrides:
simplifyForin classExpr- Parameters:
mode- mode of simplificationcc- compilation context- Returns:
- simplified or original expression
- Throws:
QueryException- query exception- See Also:
-
inlineable
public boolean inlineable()Description copied from class:ContextFnIndicates if the function will evaluate the current context.- Overrides:
inlineablein classContextFn- Returns:
- result of check
-