Package gnu.xquery.util
Class RelativeStep
- java.lang.Object
-
- gnu.mapping.PropertySet
-
- gnu.mapping.Procedure
-
- gnu.mapping.ProcedureN
-
- gnu.mapping.MethodProc
-
- gnu.xquery.util.RelativeStep
-
- All Implemented Interfaces:
Inlineable,Named
public class RelativeStep extends MethodProc implements Inlineable
Implements XPath path expression. The XPath expression E1/E2 is compiled into: (relative-step E1 (lambda (dot position last) E2)).
-
-
Field Summary
Fields Modifier and Type Field Description static RelativeSteprelativeStep-
Fields inherited from class gnu.mapping.MethodProc
applyToConsumerDefaultMP, argTypes, NO_MATCH, NO_MATCH_AMBIGUOUS, NO_MATCH_BAD_TYPE, NO_MATCH_GUARD_FALSE, NO_MATCH_TOO_FEW_ARGS, NO_MATCH_TOO_MANY_ARGS, NO_MATCH_UNUSED_KEYWORD, THROW_ON_EXCEPTION
-
Fields inherited from class gnu.mapping.ProcedureN
applyToObject, noArgs
-
Fields inherited from class gnu.mapping.Procedure
applyMethodType, applyToConsumerDefault, applyToConsumerMethod, applyToObjectDefault, applyToObjectMethod, compilerKey, compilerXKey, inlineIfConstantSymbol, validateApplyKey, validateXApplyKey
-
Fields inherited from class gnu.mapping.PropertySet
nameKey
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static ObjectapplyToConsumer(Procedure proc, CallContext ctx)voidcompile(ApplyExp exp, Compilation comp, Target target)static TreeScannerextractStep(Expression exp)TypegetReturnType(Expression[] args)Semi-deprecated - instead should be set at Inline time.intnumArgs()ReturnminArgs()|(maxArgs<<12).-
Methods inherited from class gnu.mapping.MethodProc
applyToConsumerDefaultMP, getParameterType, isApplicable, matchFailAsException, mostSpecific, numParameters, overrideEquivalent, resolveParameterTypes
-
Methods inherited from class gnu.mapping.ProcedureN
applyToObject
-
Methods inherited from class gnu.mapping.Procedure
apply0, apply1, apply2, apply3, apply4, applyL, applyN, applyToConsumerDefault, applyToObjectDefault, checkArgCount, checkBadCode, getApplyMethod, getApplyToConsumerMethod, getApplyToObjectMethod, getSetter, getSourceLocation, isSideEffectFree, lookupApplyHandle, maxArgs, maxArgs, minArgs, minArgs, set0, set1, setN, setSetter, setSourceLocation, toString
-
Methods inherited from class gnu.mapping.PropertySet
getName, getProperty, getSymbol, removeProperty, setName, setProperty, setProperty, setSymbol
-
-
-
-
Field Detail
-
relativeStep
public static final RelativeStep relativeStep
-
-
Method Detail
-
numArgs
public int numArgs()
Description copied from class:ProcedureReturnminArgs()|(maxArgs<<12). We use a single virtual function to reduce the number of methods in the system, as well as the number of virtual method table entries. We shift by 12 so the number can normally be represented using a sipush instruction, without requiring a constant pool entry.
-
applyToConsumer
public static Object applyToConsumer(Procedure proc, CallContext ctx) throws Throwable
- Throws:
Throwable
-
compile
public void compile(ApplyExp exp, Compilation comp, Target target)
- Specified by:
compilein interfaceInlineable
-
getReturnType
public Type getReturnType(Expression[] args)
Description copied from class:ProcedureSemi-deprecated - instead should be set at Inline time. FIXME- Overrides:
getReturnTypein classProcedure
-
extractStep
public static TreeScanner extractStep(Expression exp)
-
-