Package gnu.kawa.xml
Class TreeScanner
java.lang.Object
gnu.mapping.PropertySet
gnu.mapping.Procedure
gnu.mapping.ProcedureN
gnu.mapping.MethodProc
gnu.kawa.xml.TreeScanner
- All Implemented Interfaces:
Named,Externalizable,Serializable
- Direct Known Subclasses:
AncestorAxis,AncestorOrSelfAxis,AttributeAxis,ChildAxis,DescendantAxis,DescendantOrSelfAxis,FollowingAxis,FollowingSiblingAxis,ParentAxis,PrecedingAxis,PrecedingSiblingAxis,SelfAxis
Abstract class that scans part of a node tree.
Takes a node argument, and writes matching "relative" nodes
out to a PositionConsumer as a sequence of position pairs.
This is uses to implement "path expressions" as in XPath/XSLT/XQuery.
For example, the ChildAxis sub-class writes out all child nodes
of the argument that match the 'type' NodePredicate.
- See Also:
-
Field Summary
FieldsFields 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_EXCEPTIONFields inherited from class gnu.mapping.ProcedureN
applyToObject, noArgsFields inherited from class gnu.mapping.Procedure
applyMethodType, applyToConsumerDefault, applyToConsumerMethod, applyToObjectDefault, applyToObjectMethod, compilerKey, compilerXKey, inlineIfConstantSymbol, validateApplyKey, validateXApplyKeyFields inherited from class gnu.mapping.PropertySet
nameKey -
Method Summary
Modifier and TypeMethodDescriptionstatic ObjectapplyToConsumerTS(Procedure proc, CallContext ctx) getDesc()intnumArgs()ReturnminArgs()|(maxArgs<<12).voidabstract voidscan(AbstractSequence seq, int ipos, PositionConsumer out) toString()voidMethods inherited from class gnu.mapping.MethodProc
applyToConsumerDefaultMP, getParameterType, isApplicable, matchFailAsException, mostSpecific, numParameters, overrideEquivalent, resolveParameterTypesMethods inherited from class gnu.mapping.ProcedureN
applyToObjectMethods inherited from class gnu.mapping.Procedure
apply0, apply1, apply2, apply3, apply4, applyL, applyN, applyToConsumerDefault, applyToObjectDefault, checkArgCount, checkBadCode, getApplyMethod, getApplyToConsumerMethod, getApplyToObjectMethod, getReturnType, getSetter, getSourceLocation, isSideEffectFree, lookupApplyHandle, maxArgs, maxArgs, minArgs, minArgs, set0, set1, setN, setSetter, setSourceLocationMethods inherited from class gnu.mapping.PropertySet
getName, getProperty, getSymbol, removeProperty, setName, setProperty, setProperty, setSymbol
-
Field Details
-
applyToConsumerTS
-
type
-
-
Method Details
-
getNodePredicate
-
scan
-
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. -
applyToConsumerTS
- Throws:
Throwable
-
writeExternal
- Specified by:
writeExternalin interfaceExternalizable- Throws:
IOException
-
readExternal
- Specified by:
readExternalin interfaceExternalizable- Throws:
IOExceptionClassNotFoundException
-
getDesc
-
toString
-