Xalan-C++ API Documentation
Go to the documentation of this file.
18 #if !defined(XPATH_HEADER_GUARD_1357924680)
19 #define XPATH_HEADER_GUARD_1357924680
48 XALAN_DECLARE_XERCES_CLASS(Locator)
52 XALAN_CPP_NAMESPACE_BEGIN
78 static const XalanDOMChar PSEUDONAME_ANY[];
79 static const XalanDOMChar PSEUDONAME_ROOT[];
80 static const XalanDOMChar PSEUDONAME_TEXT[];
81 static const XalanDOMChar PSEUDONAME_COMMENT[];
82 static const XalanDOMChar PSEUDONAME_PI[];
83 static const XalanDOMChar PSEUDONAME_OTHER[];
84 static const XalanDOMChar PSEUDONAME_NODE[];
103 m_priority(eMatchScoreNone),
109 const XalanDOMChar* theString,
113 m_priority(thePriority),
114 m_targetType(theTargetType)
138 const XalanDOMChar* m_string;
142 eTargetType m_targetType;
166 MemoryManager& theManager,
167 const Locator* theLocator = 0);
171 MemoryManager& theManager,
172 const Locator* theLocator = 0);
177 return m_expression.getMemoryManager();
188 m_expression.shrink();
233 double& result)
const;
268 MemberFunctionPtr
function)
const;
317 return execute(context, prefixResolver, executionContext);
342 execute(context, prefixResolver, executionContext, result);
360 double& result)
const
367 execute(context, prefixResolver, executionContext, result);
393 execute(context, prefixResolver, executionContext, result);
413 MemberFunctionPtr
function)
const
420 execute(context, prefixResolver, executionContext, formatterListener,
function);
456 return execute(context, prefixResolver, executionContext, result);
476 getInitialOpCodePosition(),
499 getInitialOpCodePosition(),
516 double& result)
const
523 getInitialOpCodePosition(),
548 getInitialOpCodePosition(),
567 MemberFunctionPtr
function)
const
574 getInitialOpCodePosition(),
610 getInitialOpCodePosition(),
639 getInitialOpCodePosition(),
668 getInitialOpCodePosition(),
687 double& result)
const
698 getInitialOpCodePosition(),
729 getInitialOpCodePosition(),
747 MemberFunctionPtr
function)
const
758 getInitialOpCodePosition(),
800 getInitialOpCodePosition(),
832 case eMatchScoreNone:
836 case eMatchScoreNodeTest:
840 case eMatchScoreNSWild:
844 case eMatchScoreOther:
848 case eMatchScoreQName:
897 return executeMore(context, opPos + 2, executionContext);
919 s_functions.InstallFunction(funcName,
931 const XalanDOMChar* funcName,
934 s_functions.InstallFunction(funcName,
947 return s_functions.UninstallFunction(funcName);
959 return s_functions.UninstallFunction(funcName);
971 return s_functions.isInstalledFunction(theFunctionName);
992 template<
class OutputIteratorType>
996 s_functions.getInstalledFunctionNames(theIterator);
1002 s_functions.DestroyTable();
1008 return m_inStylesheet;
1014 m_inStylesheet = fValue;
1026 m_locator = theLocator;
1048 const Locator* theLocator = 0,
1063 return (this->*m_testFunction)(context, nodeType);
1069 return (this->*m_testFunction2)(context);
1075 m_executionContext = theRHS.m_executionContext;
1076 m_targetNamespace = theRHS.m_targetNamespace;
1077 m_targetLocalName = theRHS.m_targetLocalName;
1078 m_testFunction = theRHS.m_testFunction;
1079 m_testFunction2 = theRHS.m_testFunction2;
1091 const Locator* theLocator);
1136 testAttributeNCName(
1146 testAttributeNamespaceOnly(
1151 testAttributeTotallyWild(
1166 testElementNamespaceOnly(
1171 testElementTotallyWild(
1182 testElementNamespaceOnly2(
const XalanElement& context)
const;
1185 testElementTotallyWild2(
const XalanElement& context)
const;
1188 testNamespaceNCName(
1193 testNamespaceTotallyWild(
1206 matchLocalName(
const XalanNode& context)
const;
1209 matchNamespaceURI(
const XalanNode& context)
const;
1212 matchLocalNameAndNamespaceURI(
const XalanNode& context)
const;
1215 matchNamespace(
const XalanNode& context)
const;
1218 shouldStripSourceNode(
const XalanText& context)
const;
1227 TestFunctionPtr m_testFunction;
1229 TestFunctionPtr2 m_testFunction2;
1263 bool& theResult)
const;
1278 double& theResult)
const;
1310 MemberFunctionPtr
function)
const;
1327 step(executionContext, context, opPos + 2, theResult);
1357 bool& theResult)
const;
1372 double& theResult)
const;
1405 MemberFunctionPtr
function)
const;
1566 MemberFunctionPtr
function)
const;
1595 MemberFunctionPtr
function)
const;
1624 MemberFunctionPtr
function)
const;
1653 MemberFunctionPtr
function)
const;
1682 MemberFunctionPtr
function)
const;
1711 MemberFunctionPtr
function)
const;
1739 bool& result)
const;
1754 double& result)
const;
1786 MemberFunctionPtr
function)
const;
1822 bool& theResult)
const;
1833 double& theResult)
const;
1857 MemberFunctionPtr
function)
const;
1883 return executeMore(context, opPos + 2, executionContext);
1898 bool& theResult)
const
1900 executeMore(context, opPos + 2, executionContext, theResult);
1915 double& theResult)
const
1917 executeMore(context, opPos + 2, executionContext, theResult);
1934 executeMore(context, opPos + 2, executionContext, theResult);
1952 MemberFunctionPtr
function)
const
1982 if (theValue.
null() ==
false)
2019 bool& theResult)
const;
2044 MemberFunctionPtr
function)
const;
2112 return s_functions[funcID].execute(executionContext, context, argVec, m_locator);
2127 assert(context != 0);
2131 assert(
static_cast<double>(theResult) == theResult);
2133 return static_cast<double>(theResult);
2147 assert(
static_cast<double>(theResult) == theResult);
2149 return static_cast<double>(theResult);
2180 assert(context != 0);
2182 return !functionBoolean(context, opPos, executionContext);
2199 assert(context != 0);
2203 executeMore(context, opPos + 2, executionContext, result);
2217 assert(context != 0);
2271 assert(context != 0);
2292 executeMore(context, opPos + 2, executionContext, result);
2407 operator=(
const XPath&);
2415 eDefaultTargetDataSize = 5
2418 OpCodeMapPositionType
2419 getInitialOpCodePosition()
const
2421 #if defined(XALAN_XPATH_EXPRESSION_USE_ITERATORS)
2424 assert(m_expression.getOpCodeMapValue(
2427 return m_expression.getInitialOpCodePosition() + 2;
2431 locationPathPattern(
2434 OpCodeMapPositionType opPos)
const;
2651 const Locator* m_locator;
2658 bool m_inStylesheet;
2672 XALAN_CPP_NAMESPACE_END
2676 #endif // XPATH_HEADER_GUARD_1357924680
eTargetType getTargetType() const
void executeMore(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, double &theResult) const
Execute the XPath from the provided context.
const XObjectPtr extfunction(XalanNode *context, OpCodeMapPositionType, const XalanDOMString &theNamespace, const XalanDOMString &functionName, const Function::XObjectArgVectorType &argVec, XPathExecutionContext &executionContext) const
Handle an extension function.
void execute(XalanNode *context, const PrefixResolver &prefixResolver, XPathExecutionContext &executionContext, XalanDOMString &result) const
Execute the XPath from the provided context.
OpCodeMapPositionType findChildren(XPathExecutionContext &executionContext, XalanNode *context, OpCodeMapPositionType opPos, OpCodeMapValueType stepType, MutableNodeRefList &subQueryResults) const
NodeTester(const XalanDOMString &theNamespaceURI, const XalanDOMString &theLocalName, eMatchScore *theMatchScore=0)
void Union(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, FormatterListener &formatterListener, MemberFunctionPtr function) const
Computes the union of its operands which must be node-sets.
void setInStylesheet(bool fValue)
void literal(OpCodeMapPositionType opPos, FormatterListener &formatterListener, MemberFunctionPtr function) const
Get a literal value.
double functionStringLength(XalanNode *context, XPathExecutionContext &executionContext) const
Handle the built-in function "string-length".
XPathExpression::OpCodeMapPositionType OpCodeMapPositionType
void neg(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, FormatterListener &formatterListener, MemberFunctionPtr function) const
Return the negation of a number.
NodeRefListBase::size_type size_type
void shrink()
Shrink internal tables.
double numberlit(OpCodeMapPositionType opPos) const
Get a literal value.
This class defines an interface for classes that resolve namespace prefixes to their URIs.
void execute(XalanNode *context, const PrefixResolver &prefixResolver, const NodeRefListBase &contextNodeList, XPathExecutionContext &executionContext, bool &result) const
Execute the XPath from the provided context.
XPathExpression::OpCodeMapValueType OpCodeMapValueType
void step(XPathExecutionContext &executionContext, XalanNode *context, OpCodeMapPositionType opPos, MutableNodeRefList &queryResults) const
Execute a step in a location path.
Class to hold XPath return types.
static void installFunction(const XalanDOMString &funcName, const Function &func)
Install a built-in function.
const XObjectPtr executeMore(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Execute the XPath from the provided context.
const XObjectPtr execute(XPathExecutionContext &executionContext, MutableNodeRefList &result) const
Execute the XPath from the provided context.
static XPath * create(MemoryManager &theManager, const Locator *theLocator=0)
OpCodeMapPositionType findAttributes(XPathExecutionContext &executionContext, XalanNode *context, OpCodeMapPositionType opPos, OpCodeMapValueType stepType, MutableNodeRefList &subQueryResults) const
OpCodeMapType::value_type OpCodeMapValueType
const XObjectPtr variable(OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Get the value of a variable.
bool operator==(const ElemAttributeSet &theLHS, const ElemAttributeSet &theRHS)
bool And(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
OR two expressions and return the boolean result.
virtual const XObjectPtr extFunction(const XalanDOMString &theNamespace, const XalanDOMString &functionName, XalanNode *context, const XObjectArgVectorType &argVec, const Locator *locator)=0
Handle an extension function.
static void getInstalledFunctionNames(OutputIteratorType theIterator)
Add the names for the installed functions to a vector strings.
void group(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, XalanDOMString &theResult) const
Execute an expression as a group.
const XObjectPtr execute(XPathExecutionContext &executionContext) const
Execute the XPath from the provided context.
void execute(const PrefixResolver &prefixResolver, XPathExecutionContext &executionContext, double &result) const
Execute the XPath from the provided context.
XPathExecutionContext::CurrentNodePushAndPop CurrentNodePushAndPop
XPathExpression::TokenQueuePositionType TokenQueuePositionType
double functionPosition(XalanNode *context, XPathExecutionContext &executionContext) const
Handle the built-in function "position".
bool Or(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
OR two expressions and return the boolean result.
void execute(const PrefixResolver &prefixResolver, XPathExecutionContext &executionContext, FormatterListener &formatterListener, MemberFunctionPtr function) const
Execute the XPath from the provided context.
eMatchScore handleFoundIndexPositional(XPathExecutionContext &executionContext, XalanNode *localContext, OpCodeMapPositionType startOpPos) const
Class defines a table of functions that can be called in XPath expresions.
TargetData(const XalanDOMChar *theString, eMatchScore thePriority, eTargetType theTargetType)
const XObjectPtr runFunction(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Setup for and run a function.
OpCodeMapPositionType findNodesOnUnknownAxis(XPathExecutionContext &executionContext, XalanNode *context, OpCodeMapPositionType opPos, OpCodeMapValueType stepType, MutableNodeRefList &subQueryResults) const
const XObjectPtr execute(XalanNode *context, const PrefixResolver &prefixResolver, XPathExecutionContext &executionContext, MutableNodeRefList &result) const
Execute the XPath from the provided context.
bool notequals(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Tell if two expressions are functionally not equal.
TokenQueueSizeType TokenQueuePositionType
static double ceiling(double theValue)
Returns the ceiling of a number according to the XPath rules.
eMatchScore getDefaultPriority() const
void locationPath(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, FormatterListener &formatterListener, MemberFunctionPtr function) const
Execute a location path.
const XalanDOMChar * getString() const
void group(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, double &theResult) const
Execute an expression as a group.
const XObjectPtr execute(XalanNode *context, const PrefixResolver &prefixResolver, XPathExecutionContext &executionContext) const
Execute the XPath from the provided context.
virtual const PrefixResolver * getPrefixResolver() const =0
Retrieve the resolver for namespaces.
static const FunctionTableType & getFunctionTable()
Retrieve the table of installed functions.
eMatchScore doStepPredicate(XPathExecutionContext &executionContext, XalanNode *context, OpCodeMapPositionType opPos, OpCodeMapPositionType startOpPos, eMatchScore score) const
Potentially evaluate a predicate in a match pattern step.
OpCodeMapPositionType findAncestorsOrSelf(XPathExecutionContext &executionContext, XalanNode *context, OpCodeMapPositionType opPos, OpCodeMapValueType stepType, MutableNodeRefList &subQueryResults) const
void mult(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, FormatterListener &formatterListener, MemberFunctionPtr function) const
Multiply two arguments.
OpCodeMapPositionType findNamespace(XPathExecutionContext &executionContext, XalanNode *context, OpCodeMapPositionType opPos, OpCodeMapValueType stepType, MutableNodeRefList &subQueryResults) const
static bool uninstallFunction(const XalanDOMString &funcName)
Remove a named function from the function table.
OpCodeMapPositionType findFollowing(XPathExecutionContext &executionContext, XalanNode *context, OpCodeMapPositionType opPos, OpCodeMapValueType stepType, MutableNodeRefList &subQueryResults) const
eMatchScore initialize(const XalanDOMString &theNamespaceURI, const XalanDOMString &theLocalName)
XPathExecutionContext::GetCachedString GetCachedString
#define XALAN_XPATH_EXPORT
const XObjectPtr predicate(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Evaluate a predicate.
bool gt(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Tell if one argument is greater than the other argument.
MemoryManager & getMemoryManager()
XPathExecutionContext::PrefixResolverSetAndRestore PrefixResolverSetAndRestore
static void terminate()
Perform static shut down.
void Union(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, double &result) const
Computes the union of its operands which must be node-sets.
static void initialize(MemoryManager &theManager)
Perform static initialization.
bool functionBoolean(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Handle the built-in function "boolean".
void addNodesInDocOrder(const XalanNodeList &nodelist, XPathExecutionContext &executionContext)
Copy NodeList members into this nodelist, adding in document order.
XPathExpression & getExpression()
Retrieve a reference to the current expression.
const XObjectPtr group(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Execute an expression as a group.
NodeTester(const XPath &xpath, XPathExecutionContext &executionContext, OpCodeMapPositionType opPos, OpCodeMapValueType argLen, OpCodeMapValueType stepType)
eMatchScore getMatchScore(XalanNode *node, XPathExecutionContext &executionContext) const
Get the match score for the specified node.
virtual size_type getContextNodeListLength() const =0
void executeMore(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, bool &theResult) const
Execute the XPath from the provided context.
void execute(XalanNode *context, const PrefixResolver &prefixResolver, XPathExecutionContext &executionContext, bool &result) const
Execute the XPath from the provided context.
const XObjectPtr literal(OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Get a literal value.
static double floor(double theValue)
Returns the floor of a number according to the XPath rules.
void literal(OpCodeMapPositionType opPos, bool &theResult) const
Get a literal value as a boolean.
OpCodeMapPositionType findFollowingSiblings(XPathExecutionContext &executionContext, XalanNode *context, OpCodeMapPositionType opPos, OpCodeMapValueType stepType, MutableNodeRefList &subQueryResults) const
void setLocator(const Locator *theLocator)
double plus(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Give the sum of two arguments.
double functionCount(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Handle the built-in function "count".
const XObjectPtr execute(XalanNode *context, const PrefixResolver &prefixResolver, const NodeRefListBase &contextNodeList, XPathExecutionContext &executionContext, MutableNodeRefList &result) const
Execute the XPath from the provided context.
eMatchScore operator()(const XalanElement &context) const
void mod(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, FormatterListener &formatterListener, MemberFunctionPtr function) const
Return the remainder from a truncating division.
OpCodeMapPositionType findDescendants(XPathExecutionContext &executionContext, XalanNode *context, OpCodeMapPositionType opPos, OpCodeMapValueType stepType, MutableNodeRefList &subQueryResults) const
void execute(XalanNode *context, const PrefixResolver &prefixResolver, XPathExecutionContext &executionContext, double &result) const
Execute the XPath from the provided context.
XPath(MemoryManager &theManager, const Locator *theLocator=0)
Construct an XPath.
static double round(double theValue)
Round a number according to the XPath rules.
void literal(OpCodeMapPositionType opPos, double &theResult) const
Get a literal value as a number.
void execute(XPathExecutionContext &executionContext, XalanDOMString &result) const
Execute the XPath from the provided context.
virtual XalanNode * getCurrentNode() const =0
Retrieve the node currently being executed.
static bool uninstallFunction(const XalanDOMChar *funcName)
Remove a named function from the function table.
double div(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Divide a number.
OpCodeMapPositionType findParent(XPathExecutionContext &executionContext, XalanNode *context, OpCodeMapPositionType opPos, OpCodeMapValueType stepType, MutableNodeRefList &subQueryResults) const
double functionSum(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Handle the built-in function "sum".
XObjectPtr execute(const PrefixResolver &prefixResolver, XPathExecutionContext &executionContext, MutableNodeRefList &result) const
Execute the XPath from the provided context.
void minus(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, FormatterListener &formatterListener, MemberFunctionPtr function) const
Give the difference of two arguments.
static double getMatchScoreValue(eMatchScore score)
double neg(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Return the negation of a number.
OpCodeMapPositionType findAncestors(XPathExecutionContext &executionContext, XalanNode *context, OpCodeMapPositionType opPos, OpCodeMapValueType stepType, MutableNodeRefList &subQueryResults) const
OpCodeMapPositionType findPreceedingSiblings(XPathExecutionContext &executionContext, XalanNode *context, OpCodeMapPositionType opPos, OpCodeMapValueType stepType, MutableNodeRefList &subQueryResults) const
void executeMore(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, FormatterListener &formatterListener, MemberFunctionPtr function) const
Execute the XPath from the provided context.
static void installFunction(const XalanDOMChar *funcName, const Function &func)
Install a built-in function.
void div(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, FormatterListener &formatterListener, MemberFunctionPtr function) const
Divide a number.
OpCodeMapPositionType predicates(XPathExecutionContext &executionContext, OpCodeMapPositionType opPos, MutableNodeRefList &subQueryResults) const
static double getNegativeInfinity()
Double value that represents negative infinity.
void locationPath(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, double &theResult) const
Execute a location path.
void locationPath(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, MutableNodeRefList &theResult) const
Execute a location path.
void setDocumentOrder()
Set the known order of the nodes.
const XalanDOMString & functionLocalName(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Handle the built-in function "local-name".
NodeTester & operator=(const NodeTester &theRHS)
NodeTester(const NodeTester &theSource)
eMatchScore operator()(const XalanNode &context, XalanNode::NodeType nodeType) const
OpCodeMapType::const_iterator OpCodeMapPositionType
bool getInStylesheet() const
const XPathExpression & getExpression() const
Retrieve a reference to the current expression.
const XalanDOMString & functionName(XalanNode *context) const
Handle the built-in function "name".
OpCodeMapPositionType findNodeSet(XPathExecutionContext &executionContext, XalanNode *context, OpCodeMapPositionType opPos, OpCodeMapValueType stepType, MutableNodeRefList &subQueryResults) const
bool gte(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Tell if one argument is greater than or equal to the other argument.
Class to hold XObjectPtr return types.
void Union(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, bool &result) const
Computes the union of its operands which must be node-sets.
static bool isInstalledFunction(const XalanDOMString &theFunctionName)
Whether the named function is installed in the function table.
eMatchScore getMatchScore(XalanNode *node, const PrefixResolver &resolver, XPathExecutionContext &executionContext) const
Get the match score for the specified node.
void group(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, bool &theResult) const
Execute an expression as a group.
Local implementation of NodeRefList.
OpCodeMapPositionType findRoot(XPathExecutionContext &executionContext, XalanNode *context, OpCodeMapPositionType opPos, OpCodeMapValueType stepType, MutableNodeRefList &subQueryResults) const
static const XalanDOMString & getNameOfNode(const XalanNode &n)
Retrieve the name of the node, taking into account the differences between the DOM and XSLT data mode...
bool lt(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Tell if one argument is less than the other argument.
const XObjectPtr runExtFunction(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Setup for and run an extension function.
const XObjectPtr executeMore(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, MutableNodeRefList &theResult) const
Execute the XPath from the provided context.
bool equals(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Tell if two expressions are functionally equal.
void locationPath(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, bool &theResult) const
Execute a location path.
void numberlit(OpCodeMapPositionType opPos, bool &theResult) const
Get a literal value as a boolean.
void execute(XalanNode *context, const PrefixResolver &prefixResolver, const NodeRefListBase &contextNodeList, XPathExecutionContext &executionContext, FormatterListener &formatterListener, MemberFunctionPtr function) const
Execute the XPath from the provided context.
virtual const NodeRefListBase & nodeset() const
Cast result object to a nodelist.
OpCodeMapPositionType findSelf(XPathExecutionContext &executionContext, XalanNode *context, OpCodeMapPositionType opPos, OpCodeMapValueType stepType, MutableNodeRefList &subQueryResults) const
void execute(XalanNode *context, const PrefixResolver &prefixResolver, XPathExecutionContext &executionContext, FormatterListener &formatterListener, MemberFunctionPtr function) const
Execute the XPath from the provided context.
void doGetMatchScore(XalanNode *context, XPathExecutionContext &executionContext, eMatchScore &score) const
Helper function to get match score.
void group(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, FormatterListener &formatterListener, MemberFunctionPtr function) const
Execute an expression as a group.
double functionStringLength(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Handle the built-in function "string-length".
double functionLast(XPathExecutionContext &executionContext) const
Handle the built-in function "last".
double functionNumber(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Handle the built-in function "number".
double functionNumber(XalanNode *context, XPathExecutionContext &executionContext) const
Handle the built-in function "number".
bool functionNot(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Handle the built-in function "not".
void plus(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, FormatterListener &formatterListener, MemberFunctionPtr function) const
Give the sum of two arguments.
const XObjectPtr locationPath(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Execute a location path.
double mod(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Return the remainder from a truncating division.
const XalanDOMString & functionName(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Handle the built-in function "name".
void execute(XPathExecutionContext &executionContext, double &result) const
Execute the XPath from the provided context.
double functionRound(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Handle the built-in function "round".
void execute(XPathExecutionContext &executionContext, FormatterListener &formatterListener, MemberFunctionPtr function) const
Execute the XPath from the provided context.
const XalanDOMString & functionLocalName(XalanNode *context) const
Handle the built-in function "local-name".
double mult(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Multiply two arguments.
const Locator * getLocator() const
OpCodeMapPositionType findPreceeding(XPathExecutionContext &executionContext, XalanNode *context, OpCodeMapPositionType opPos, OpCodeMapValueType stepType, MutableNodeRefList &subQueryResults) const
void execute(const PrefixResolver &prefixResolver, XPathExecutionContext &executionContext, bool &result) const
Execute the XPath from the provided context.
void executeMore(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, XalanDOMString &theResult) const
Execute the XPath from the provided context.
void execute(XPathExecutionContext &executionContext, bool &result) const
Execute the XPath from the provided context.
const XObjectPtr Union(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Computes the union of its operands which must be node-sets.
double functionFloor(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Handle the built-in function "floor".
@ eOP_XPATH
[OP_XPATH] [length] {expression}
void execute(XalanNode *context, const PrefixResolver &prefixResolver, const NodeRefListBase &contextNodeList, XPathExecutionContext &executionContext, double &result) const
Execute the XPath from the provided context.
void numberlit(OpCodeMapPositionType opPos, FormatterListener &formatterListener, MemberFunctionPtr function) const
Get a literal value.
virtual NodeType getNodeType() const =0
An enum value representing the type of the underlying object.
XERCES_CPP_NAMESPACE_QUALIFIER Locator LocatorType
static void destroyTable()
XPathFunctionTable FunctionTableType
void execute(const PrefixResolver &prefixResolver, XPathExecutionContext &executionContext, XalanDOMString &result) const
Execute the XPath from the provided context.
void group(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, MutableNodeRefList &theResult) const
Execute an expression as a group.
Local implementation of MutableNodeRefList.
const XObjectPtr numberlit(OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Get a literal value.
eMatchScore initialize(XPathConstructionContext &theConstructionContext, const XalanDOMString &theNameTest, const PrefixResolver &thePrefixResolver, const Locator *theLocator)
NodeTester(XPathConstructionContext &theContext, const XalanDOMString &theNameTest, const PrefixResolver &thePrefixResolver, const Locator *theLocator=0, eMatchScore *theMatchScore=0)
void numberlit(OpCodeMapPositionType opPos, XalanDOMString &theResult) const
Get a literal value.
void literal(OpCodeMapPositionType opPos, XalanDOMString &theResult) const
Get a literal value.
const XObjectPtr execute(const PrefixResolver &prefixResolver, XPathExecutionContext &executionContext) const
Execute the XPath from the provided context.
bool lte(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Tell if one argument is less than or equal to the other argument.
double functionCeiling(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Handle the built-in function "ceiling".
eMatchScore handleFoundIndex(XPathExecutionContext &executionContext, XalanNode *localContext, OpCodeMapPositionType startOpPos) const
static double number(bool theBoolean)
Static conversion function.
const XObjectPtr execute(XalanNode *context, const PrefixResolver &prefixResolver, const NodeRefListBase &contextNodeList, XPathExecutionContext &executionContext) const
Execute the XPath from the provided context.
void execute(XalanNode *context, const PrefixResolver &prefixResolver, const NodeRefListBase &contextNodeList, XPathExecutionContext &executionContext, XalanDOMString &result) const
Execute the XPath from the provided context.
void locationPath(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, XalanDOMString &theResult) const
Execute a location path.
double getNumericOperand(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Get a numeric operand for an expression.
XalanNode * stepPattern(XPathExecutionContext &executionContext, XalanNode *context, OpCodeMapPositionType opPos, eMatchScore &scoreHolder) const
Execute a step in a match pattern's location path.
XalanVector< TargetData > TargetDataVectorType
void Union(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, XalanDOMString &result) const
Computes the union of its operands which must be node-sets.
void getTargetData(TargetDataVectorType &targetData) const
Add the data for the target of match pattern to a vector.
void Union(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext, MutableNodeRefList &result) const
Computes the union of its operands which must be node-sets.
virtual size_type getContextNodeListPosition(const XalanNode &contextNode) const =0
double minus(XalanNode *context, OpCodeMapPositionType opPos, XPathExecutionContext &executionContext) const
Give the difference of two arguments.
Interpreting class diagrams
Doxygen and
GraphViz are
used to generate this API documentation from the Xalan-C header files.
Xalan-C++ XSLT Processor Version 1.11
Copyright © 1999-2012 The Apache Software Foundation.
All Rights Reserved.
|
|