Xalan-C++ API Reference
1.12.0
|
#include <xalanc/XPath/XPathExpression.hpp>
Classes | |
class | InvalidArgumentCountException |
Exception class thrown when an invalid number of XPath arguments is encountered. More... | |
class | InvalidArgumentException |
Exception class thrown when an invalid XPath argument is encountered. More... | |
class | InvalidOpCodeException |
Exception class thrown when an invalid XPath operation code is encountered. More... | |
class | XPathExpressionException |
Exception class thrown when an invalid XPath expression is encountered. More... | |
Public Member Functions | |
XPathExpression (MemoryManager &theManager) | |
~XPathExpression () | |
MemoryManager & | getMemoryManager () |
void | reset () |
Reset the expression. More... | |
void | shrink () |
Shrink internal tables. More... | |
OpCodeMapSizeType | opCodeMapSize () const |
Retrieve number of elements in the operations code map. More... | |
OpCodeMapValueType | opCodeMapLength () const |
Retrieve length of the operations code map stored in the map. More... | |
OpCodeMapPositionType | getInitialOpCodePosition () const |
bool | isValidOpCodePosition (OpCodeMapPositionType opPos) const |
bool | isValidOpCodePosition (OpCodeMapSizeType theIndex) const |
OpCodeMapValueType | getOpCodeMapValue (OpCodeMapSizeType theIndex) const |
Retrieve the value of an operation code at a specified index in the op code map. More... | |
OpCodeMapValueType | getOpCodeMapValue (OpCodeMapPositionType opPos) const |
Retrieve the value of an operation code at a specified position in the list. More... | |
void | setOpCodeMapValue (OpCodeMapSizeType theOpCodeMapIndex, const OpCodeMapValueType &theValue) |
Set the value of an operation code at a specified index in the OpCode map. More... | |
OpCodeMapValueType | getOpCodeArgumentLength (OpCodeMapPositionType opPos) const |
OpCodeMapValueType | getOpCodeLengthFromOpMap (OpCodeMapPositionType opPos, MemoryManager &theManager) const |
Retrieve the length of an operation code at a specified position in the op map. More... | |
OpCodeMapValueType | getOpCodeLengthFromOpMap (OpCodeMapSizeType theIndex, MemoryManager &theManager) const |
Retrieve the length of an operation code at a specified index in the op map. More... | |
OpCodeMapPositionType | getNextOpCodePosition (OpCodeMapPositionType opPos) const |
Retrieve the position of the next operation code at a specified position in the list. More... | |
OpCodeMapSizeType | getNextOpCodePosition (OpCodeMapSizeType theIndex) const |
Retrieve the position of the next operation code at a specified index in the list. More... | |
void | setOpCodeArgs (eOpCodes theOpCode, OpCodeMapSizeType theIndex, const OpCodeMapValueVectorType &theArgs) |
Set the arguments for an operation code at a specified index in the list. More... | |
OpCodeMapSizeType | appendOpCode (eOpCodes theOpCode) |
Add an operation code to the list. More... | |
OpCodeMapSizeType | appendOpCode (eOpCodes theOpCode, const OpCodeMapValueVectorType &theArgs) |
Add an operation code with supplied arguments to the list. More... | |
void | replaceOpCode (OpCodeMapSizeType theIndex, eOpCodes theOldOpCode, eOpCodes theNewOpCode) |
Replace an operation code with supplied code. More... | |
OpCodeMapValueType | insertOpCode (eOpCodes theOpCode, OpCodeMapSizeType theIndex) |
Insert an operation code at a specified index in the list. More... | |
void | updateOpCodeLength (OpCodeMapSizeType theIndex) |
Update the length of an operation code at a specified index in the list. More... | |
void | updateShiftedOpCodeLength (OpCodeMapValueType theOpCode, OpCodeMapSizeType theOriginalIndex, OpCodeMapSizeType theNewIndex) |
Update the length of an operation code that has moved to a new index in the list. More... | |
void | updateOpCodeLength (OpCodeMapValueType theOpCode, OpCodeMapSizeType theIndex) |
Update the length of an operation code at a specified index in the list. More... | |
void | updateOpCodeLengthAfterNodeTest (OpCodeMapSizeType theIndex) |
Update the length of an operation code after a node test code. More... | |
bool | hasMoreTokens () const |
Whether there are any more tokens in the token queue. More... | |
TokenQueueSizeType | tokenQueueSize () const |
Retrieve number of elements in the token queue. More... | |
bool | isValidTokenQueuePosition (TokenQueueSizeType thePosition) const |
TokenQueueSizeType | getTokenPosition () const |
Retrieve the current position in the token queue. More... | |
void | resetTokenPosition () |
Set the current position in the token queue to zero. More... | |
const XToken * | getToken (TokenQueuePositionType thePosition) const |
Retrieve a token at the specified position in the token queue. More... | |
const XToken * | getNextToken () |
Retrieve the next token in the token queue. More... | |
const XToken * | getPreviousToken () |
Retrieve the previous token in the token queue. More... | |
const XToken * | getRelativeToken (TokenQueuePositionType theOffset, eRelativeDirection theDirection) const |
Retrieve a token at the specified offset relative to the current position in the token queue. More... | |
void | pushToken (const XalanDOMString &theToken) |
Push a token onto the token queue. More... | |
void | pushToken (double theNumber, const XalanDOMString &theString) |
Push a token onto the token queue. More... | |
void | insertToken (const XalanDOMString &theToken) |
Insert a token onto the token queue at the current position. More... | |
void | insertToken (double theNumber, const XalanDOMString &theString) |
Insert a token onto the token queue at the current position. More... | |
void | replaceRelativeToken (TokenQueuePositionType theOffset, eRelativeDirection theDirection, const XalanDOMString &theString) |
Replace a token in the token queue. More... | |
void | dumpOpCodeMap (PrintWriter &thePrintWriter, OpCodeMapSizeType theStartPosition=0) const |
Diagnostic function to output the operation code map. More... | |
void | dumpOpCodeMap (OstreamType &theStream, OpCodeMapSizeType theStartPosition=0) const |
Diagnostic function to output the operation code map. More... | |
void | dumpTokenQueue (PrintWriter &thePrintWriter, TokenQueueSizeType theStartPosition=0) const |
Diagnostic function to output the token queue. More... | |
void | dumpTokenQueue (OstreamType &theStream, TokenQueueSizeType theStartPosition=0) const |
Diagnostic function to output the token queue. More... | |
void | dumpRemainingTokenQueue (PrintWriter &thePrintWriter) const |
Diagnostic function to output the remaining tokens in the token queue. More... | |
void | dumpRemainingTokenQueue (OstreamType &theStream, MemoryManager &theMemoryManager) const |
Diagnostic function to output the remaining tokens in the token queue. More... | |
void | pushValueOnOpCodeMap (const OpCodeMapType::value_type &theValue) |
Push a value onto the operations code map. More... | |
void | pushArgumentOnOpCodeMap (const XToken &theXToken) |
Push a token onto the token queue and its index onto the operations code map. More... | |
void | pushArgumentOnOpCodeMap (const XalanDOMString &theString) |
Push a token onto the token queue and its index onto the operations code map. More... | |
void | pushArgumentOnOpCodeMap (double theNumber, const XalanDOMString &theString) |
Push a token onto the token queue and its index onto the operations code map. More... | |
void | pushNumberLiteralOnOpCodeMap (double theNumber) |
Push a number literal onto the vector of number literals and its index onto the operations code map. More... | |
double | getNumberLiteral (int theIndex) const |
Get a number literal from the vector of number literals. More... | |
void | pushCurrentTokenOnOpCodeMap () |
Push the current position in the token queue onto the operations code map. More... | |
void | setCurrentPattern (const XalanDOMString &thePattern) |
Change the current pattern in the pattern map. More... | |
const XalanDOMString & | getCurrentPattern () const |
Retrieve the current pattern in the pattern map. More... | |
Static Public Member Functions | |
static bool | isNodeTestOpCode (OpCodeMapValueType theOpCode) |
Whether the operation code is one of the node test types, for example, "ancestor::" or "child::". More... | |
Definition at line 58 of file XPathExpression.hpp.
typedef XalanVector<double> xalanc::XPathExpression::NumberLiteralValueVectorType |
Definition at line 72 of file XPathExpression.hpp.
Definition at line 81 of file XPathExpression.hpp.
Definition at line 77 of file XPathExpression.hpp.
Definition at line 68 of file XPathExpression.hpp.
typedef XalanVector<int> xalanc::XPathExpression::OpCodeMapType |
Definition at line 64 of file XPathExpression.hpp.
Definition at line 67 of file XPathExpression.hpp.
Definition at line 70 of file XPathExpression.hpp.
typedef std::ostream xalanc::XPathExpression::OstreamType |
Definition at line 62 of file XPathExpression.hpp.
Definition at line 84 of file XPathExpression.hpp.
typedef int xalanc::XPathExpression::TokenQueueSizeType |
Definition at line 83 of file XPathExpression.hpp.
Definition at line 65 of file XPathExpression.hpp.
Definition at line 82 of file XPathExpression.hpp.
The length is always the opcode position + 1.
Length is always expressed as the opcode+length bytes, so it is always 2 or greater. This is the offset from the op code where the length is stored. It will always remain one.
Enumerator | |
---|---|
s_opCodeMapLengthIndex |
Definition at line 712 of file XPathExpression.hpp.
List of operations codes.
Code for the descriptions of the operations codes: [UPPER CASE] indicates a literal value, [lower case] is a description of a value, ([length] always indicates the length of the operation, including the operations code and the length integer.) {UPPER CASE} indicates the given production, {description} is the description of a new production, (For instance, {boolean expression} means some expression that should be resolved to a boolean.)
returns: indicates what the production should return.
Enumerator | |
---|---|
eELEMWILDCARD | [ELEMWILDCARD] Means ELEMWILDCARD ("*"), used instead of string index in some places. |
eEMPTY | [EMPTY] Empty slot to indicate NULL. |
eENDOP | [ENDOP] Some operators may like to have a terminator. |
eOP_XPATH | [OP_XPATH] [length] {expression} |
eOP_OR | [OP_OR] [length] {boolean expression} {boolean expression} returns: XBoolean |
eOP_AND | [OP_AND] [length] {boolean expression} {boolean expression} returns: XBoolean |
eOP_NOTEQUALS | [OP_NOTEQUALS] [length] {expression} {expression} returns: XBoolean |
eOP_EQUALS | [OP_EQUALS] [length] {expression} {expression} returns: XBoolean |
eOP_LTE | [OP_LTE] (less-than-or-equals) [length] {number expression} {number expression} returns: XBoolean |
eOP_LT | [OP_LT] (less-than) [length] {number expression} {number expression} returns: XBoolean |
eOP_GTE | [OP_GTE] (greater-than-or-equals) [length] {number expression} {number expression} returns: XBoolean |
eOP_GT | [OP_GT] (greater-than) [length] {number expression} {number expression} returns: XBoolean |
eOP_PLUS | [OP_PLUS] [length] {number expression} {number expression} returns: XNumber |
eOP_MINUS | [OP_MINUS] [length] {number expression} {number expression} returns: XNumber |
eOP_MULT | [OP_MULT] [length] {number expression} {number expression} returns: XNumber |
eOP_DIV | [OP_DIV] [length] {number expression} {number expression} returns: XNumber |
eOP_MOD | [OP_MOD] [length] {number expression} {number expression} returns: XNumber |
eOP_NEG | [OP_NEG] [length] {number expression} returns: XNumber |
eOP_BOOL | [OP_BOOL] (cast operation) [length] {expression} returns: XBoolean |
eOP_UNION | [OP_UNION] [length] {PathExpr}+ returns: XNodeSet |
eOP_LITERAL | [OP_LITERAL] [3] [index to token] returns: XString |
eOP_VARIABLE | [OP_VARIABLE] [3] [index to token] returns: XString |
eOP_GROUP | [OP_GROUP] [length] {expression} |
eOP_NUMBERLIT | OP_NUMBERLIT [3] [index to token] returns: XString |
eOP_ARGUMENT | OP_ARGUMENT [length] {expression} |
eOP_EXTFUNCTION | OP_EXTFUNCTION [length] [index to namespace token] [index to function name token] {OP_ARGUMENT}* |
eOP_FUNCTION | [OP_FUNCTION] [length] [FUNC_ID] [arg count] {OP_ARGUMENT}* [ENDOP] |
eOP_LOCATIONPATH | [OP_LOCATIONPATH] [length] {FROM_stepType} | {function}{predicate}* [ENDOP] (Note that element and attribute namespaces and names can be wildcarded '*'.) returns: XNodeSet |
eOP_PREDICATE | [OP_PREDICATE] [length] {expression} [ENDOP] (For safety) |
eNODETYPE_COMMENT | [NODETYPE_COMMENT] No size or arguments. returns: XBoolean |
eNODETYPE_TEXT | [NODETYPE_TEXT] No size or arguments. returns: XBoolean |
eNODETYPE_PI | [NODETYPE_PI] [index to token] returns: XBoolean |
eNODETYPE_NODE | [NODETYPE_NODE] No size or arguments. returns: XBoolean |
eNODENAME | [NODENAME] [index to ns token or EMPTY] [index to name token] returns: XBoolean |
eNODETYPE_ROOT | [NODETYPE_ROOT] No size or arguments. returns: XBoolean |
eNODETYPE_ANYELEMENT | [NODETYPE_ANY] No size or arguments. returns: XBoolean |
eFROM_ANCESTORS | [FROM_stepType] [length, including predicates] [length of just the step, without the predicates] {node test} {predicates}? returns: XBoolean |
eFROM_ANCESTORS_OR_SELF | |
eFROM_ATTRIBUTES | |
eFROM_CHILDREN | |
eFROM_DESCENDANTS | |
eFROM_DESCENDANTS_OR_SELF | |
eFROM_FOLLOWING | |
eFROM_FOLLOWING_SIBLINGS | |
eFROM_PARENT | |
eFROM_PRECEDING | |
eFROM_PRECEDING_SIBLINGS | |
eFROM_SELF | |
eFROM_NAMESPACE | |
eFROM_ROOT | |
eOP_MATCHPATTERN | [OP_UNION] [length] {PathExpr}+ returns: XNodeSet |
eOP_LOCATIONPATHPATTERN | [OP_UNION] [length] {PathExpr}+ returns: XNodeSet |
eMATCH_ATTRIBUTE | |
eMATCH_ANY_ANCESTOR | |
eMATCH_IMMEDIATE_ANCESTOR | |
eMATCH_ANY_ANCESTOR_WITH_PREDICATE | |
eMATCH_ANY_ANCESTOR_WITH_FUNCTION_CALL | |
eOP_PREDICATE_WITH_POSITION | [OP_PREDICATE_WITH_POSITION] [length] {expression} [ENDOP] (For safety) |
eOP_FUNCTION_POSITION | These are values for intrinsic functions which have been compiled directly into the op map. |
eOP_FUNCTION_LAST | |
eOP_FUNCTION_COUNT | |
eOP_FUNCTION_NOT | |
eOP_FUNCTION_TRUE | |
eOP_FUNCTION_FALSE | |
eOP_FUNCTION_BOOLEAN | |
eOP_FUNCTION_NAME_0 | |
eOP_FUNCTION_NAME_1 | |
eOP_FUNCTION_LOCALNAME_0 | |
eOP_FUNCTION_LOCALNAME_1 | |
eOP_FUNCTION_FLOOR | |
eOP_FUNCTION_CEILING | |
eOP_FUNCTION_ROUND | |
eOP_FUNCTION_NUMBER_0 | |
eOP_FUNCTION_NUMBER_1 | |
eOP_FUNCTION_STRING_0 | |
eOP_FUNCTION_STRING_1 | |
eOP_FUNCTION_STRINGLENGTH_0 | |
eOP_FUNCTION_STRINGLENGTH_1 | |
eOP_FUNCTION_NAMESPACEURI_0 | |
eOP_FUNCTION_NAMESPACEURI_1 | |
eOP_FUNCTION_SUM | |
eOP_FUNCTION_CONCAT | |
eOpCodeNextAvailable |
Definition at line 104 of file XPathExpression.hpp.
Enumerator | |
---|---|
eRelativeBackward | |
eRelativeForward |
Definition at line 1159 of file XPathExpression.hpp.
|
explicit |
xalanc::XPathExpression::~XPathExpression | ( | ) |
OpCodeMapSizeType xalanc::XPathExpression::appendOpCode | ( | eOpCodes | theOpCode | ) |
Add an operation code to the list.
theOpCode | operation code |
|
inline |
Add an operation code with supplied arguments to the list.
theOpCode | operation code |
theArgs | vector or arguments to supply |
Definition at line 960 of file XPathExpression.hpp.
void xalanc::XPathExpression::dumpOpCodeMap | ( | OstreamType & | theStream, |
OpCodeMapSizeType | theStartPosition = 0 |
||
) | const |
Diagnostic function to output the operation code map.
theStream | output stream |
theStartPosition | starting position in map |
void xalanc::XPathExpression::dumpOpCodeMap | ( | PrintWriter & | thePrintWriter, |
OpCodeMapSizeType | theStartPosition = 0 |
||
) | const |
Diagnostic function to output the operation code map.
thePrintWriter | output device |
theStartPosition | starting position in map |
void xalanc::XPathExpression::dumpRemainingTokenQueue | ( | OstreamType & | theStream, |
MemoryManager & | theMemoryManager | ||
) | const |
Diagnostic function to output the remaining tokens in the token queue.
theStream | The output stream |
theMemoryManager | The MemoryManager instance. |
void xalanc::XPathExpression::dumpRemainingTokenQueue | ( | PrintWriter & | thePrintWriter | ) | const |
Diagnostic function to output the remaining tokens in the token queue.
thePrintWriter | output device |
void xalanc::XPathExpression::dumpTokenQueue | ( | OstreamType & | theStream, |
TokenQueueSizeType | theStartPosition = 0 |
||
) | const |
Diagnostic function to output the token queue.
thePrintWriter | output device |
theStartPosition | starting position in token queue |
void xalanc::XPathExpression::dumpTokenQueue | ( | PrintWriter & | thePrintWriter, |
TokenQueueSizeType | theStartPosition = 0 |
||
) | const |
Diagnostic function to output the token queue.
thePrintWriter | output device |
theStartPosition | starting position in token queue |
|
inline |
Retrieve the current pattern in the pattern map.
Definition at line 1439 of file XPathExpression.hpp.
|
inline |
Definition at line 781 of file XPathExpression.hpp.
|
inline |
Definition at line 723 of file XPathExpression.hpp.
|
inline |
Retrieve the position of the next operation code at a specified position in the list.
opPos | position in list |
Definition at line 899 of file XPathExpression.hpp.
|
inline |
Retrieve the position of the next operation code at a specified index in the list.
theIndex | theIndex in list |
Definition at line 916 of file XPathExpression.hpp.
|
inline |
Retrieve the next token in the token queue.
Definition at line 1129 of file XPathExpression.hpp.
|
inline |
Get a number literal from the vector of number literals.
theIndex | The index of the desired value. |
Definition at line 1407 of file XPathExpression.hpp.
|
inline |
Definition at line 861 of file XPathExpression.hpp.
OpCodeMapValueType xalanc::XPathExpression::getOpCodeLengthFromOpMap | ( | OpCodeMapPositionType | opPos, |
MemoryManager & | theManager | ||
) | const |
Retrieve the length of an operation code at a specified position in the op map.
opPos | position in the op map |
OpCodeMapValueType xalanc::XPathExpression::getOpCodeLengthFromOpMap | ( | OpCodeMapSizeType | theIndex, |
MemoryManager & | theManager | ||
) | const |
Retrieve the length of an operation code at a specified index in the op map.
theIndex | The index in the op map |
|
inline |
Retrieve the value of an operation code at a specified position in the list.
opPos | position in list |
Definition at line 831 of file XPathExpression.hpp.
|
inline |
Retrieve the value of an operation code at a specified index in the op code map.
theIndex | The index in list |
Definition at line 815 of file XPathExpression.hpp.
|
inline |
Retrieve the previous token in the token queue.
Definition at line 1147 of file XPathExpression.hpp.
|
inline |
Retrieve a token at the specified offset relative to the current position in the token queue.
theOffset | offset from current position |
theDirection | the direction in which to move |
Definition at line 1174 of file XPathExpression.hpp.
|
inline |
Retrieve a token at the specified position in the token queue.
thePosition | position in queue |
Definition at line 1116 of file XPathExpression.hpp.
|
inline |
Retrieve the current position in the token queue.
Definition at line 1095 of file XPathExpression.hpp.
|
inline |
Whether there are any more tokens in the token queue.
Definition at line 1067 of file XPathExpression.hpp.
OpCodeMapValueType xalanc::XPathExpression::insertOpCode | ( | eOpCodes | theOpCode, |
OpCodeMapSizeType | theIndex | ||
) |
Insert an operation code at a specified index in the list.
theOpCode | operation code |
theIndex | index in list |
|
inline |
Insert a token onto the token queue at the current position.
theToken | the string value to push |
Definition at line 1232 of file XPathExpression.hpp.
|
inline |
Insert a token onto the token queue at the current position.
theNumber | the number value to push |
theString | the string value to push |
Definition at line 1250 of file XPathExpression.hpp.
|
static |
Whether the operation code is one of the node test types, for example, "ancestor::" or "child::".
theOpCode | operation code |
|
inline |
Definition at line 791 of file XPathExpression.hpp.
|
inline |
Definition at line 802 of file XPathExpression.hpp.
|
inline |
Definition at line 1084 of file XPathExpression.hpp.
|
inline |
Retrieve length of the operations code map stored in the map.
The length of the entire map is stored after the first op code. That offset is determined by this const static member. Note that as expressions are defined recursively, this is really just the length of the first expression in the map, which is the top of the parse tree. Any subexpression will also have a length entry at the same offset from the beginning of the subexpression.
Definition at line 762 of file XPathExpression.hpp.
|
inline |
Retrieve number of elements in the operations code map.
Definition at line 745 of file XPathExpression.hpp.
void xalanc::XPathExpression::pushArgumentOnOpCodeMap | ( | const XalanDOMString & | theString | ) |
Push a token onto the token queue and its index onto the operations code map.
theString | The string data for the token. The instance will keep a pointer to this string, so it must be persistent. |
void xalanc::XPathExpression::pushArgumentOnOpCodeMap | ( | const XToken & | theXToken | ) |
Push a token onto the token queue and its index onto the operations code map.
theXToken | the XToken to push |
void xalanc::XPathExpression::pushArgumentOnOpCodeMap | ( | double | theNumber, |
const XalanDOMString & | theString | ||
) |
Push a token onto the token queue and its index onto the operations code map.
theNumber | The numeric data for the token. This must be consistent with the lexical value in theString. |
theString | The string data for the token. The instance will keep a pointer to this string, so it must be persistent. |
void xalanc::XPathExpression::pushCurrentTokenOnOpCodeMap | ( | ) |
Push the current position in the token queue onto the operations code map.
void xalanc::XPathExpression::pushNumberLiteralOnOpCodeMap | ( | double | theNumber | ) |
Push a number literal onto the vector of number literals and its index onto the operations code map.
theToken | number value of the token to push |
|
inline |
Push a token onto the token queue.
theToken | the string value to push |
Definition at line 1197 of file XPathExpression.hpp.
|
inline |
Push a token onto the token queue.
theNumber | the number value to push |
theString | the string value to push |
Definition at line 1214 of file XPathExpression.hpp.
|
inline |
Push a value onto the operations code map.
theToken | string value of the token to push |
Definition at line 1353 of file XPathExpression.hpp.
void xalanc::XPathExpression::replaceOpCode | ( | OpCodeMapSizeType | theIndex, |
eOpCodes | theOldOpCode, | ||
eOpCodes | theNewOpCode | ||
) |
Replace an operation code with supplied code.
theIndex | The index of the old operation code |
theOldOpCode | The old operation code |
theNewOpCode | The new operation code |
|
inline |
Replace a token in the token queue.
theOffset | the offset at which to replace the token. |
theString | The string data for the token. The instance will keep a pointer to this string, so it must be persistent. |
Definition at line 1269 of file XPathExpression.hpp.
void xalanc::XPathExpression::reset | ( | ) |
Reset the expression.
|
inline |
Set the current position in the token queue to zero.
Definition at line 1104 of file XPathExpression.hpp.
|
inline |
Change the current pattern in the pattern map.
thePattern | match pattern to make current |
Definition at line 1428 of file XPathExpression.hpp.
void xalanc::XPathExpression::setOpCodeArgs | ( | eOpCodes | theOpCode, |
OpCodeMapSizeType | theIndex, | ||
const OpCodeMapValueVectorType & | theArgs | ||
) |
Set the arguments for an operation code at a specified index in the list.
opPos | position in list |
theOpCode | operation code |
theIndex | index in list |
theArgs | vector or arguments to supply |
|
inline |
Set the value of an operation code at a specified index in the OpCode map.
theOpCodeMapIndex | The index in the OpCode map |
theValue | value of operation code |
Definition at line 851 of file XPathExpression.hpp.
void xalanc::XPathExpression::shrink | ( | ) |
Shrink internal tables.
|
inline |
Retrieve number of elements in the token queue.
Definition at line 1078 of file XPathExpression.hpp.
|
inline |
Update the length of an operation code at a specified index in the list.
This presumes that the other opcodes have been appended to the expression, and that the specified op code's length needs to be set. The size includes the normal length of the opcode, plus the length of its subexpressions.
theIndex | index in list |
Definition at line 1007 of file XPathExpression.hpp.
void xalanc::XPathExpression::updateOpCodeLength | ( | OpCodeMapValueType | theOpCode, |
OpCodeMapSizeType | theIndex | ||
) |
Update the length of an operation code at a specified index in the list.
This presumes that the other opcodes have been appended to the expression, and that the specified op code's length needs to be set. The size includes the normal length of the opcode, plus the length of its subexpressions.
theOpCode | operation code at specified index |
theIndex | index in list |
void xalanc::XPathExpression::updateOpCodeLengthAfterNodeTest | ( | OpCodeMapSizeType | theIndex | ) |
Update the length of an operation code after a node test code.
theIndex | index in list |
void xalanc::XPathExpression::updateShiftedOpCodeLength | ( | OpCodeMapValueType | theOpCode, |
OpCodeMapSizeType | theOriginalIndex, | ||
OpCodeMapSizeType | theNewIndex | ||
) |
Update the length of an operation code that has moved to a new index in the list.
theOpCode | operation code |
theOriginalIndex | original index in list |
theNewIndex | new index in list |
Copyright © 1999-2020 The Apache Software Foundation. All Rights Reserved.
Generated on Sun May 31 2020 10:37:41 for Xalan-C++ API Reference by 1.8.17