org.apache.xpath.compiler

Class OpCodes

public class OpCodes extends Object

Operations codes for XPath. 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.) * means that it occurs zero or more times, + means that it occurs one or more times, ? means that it is optional. returns: indicates what the production should return.
Field Summary
static intAXES_END_TYPES
The end of the axes types.
static intAXES_START_TYPES
[FROM_stepType] [length, including predicates] [length of just the step, without the predicates] {node test} {predicates}?
static intELEMWILDCARD
[ELEMWILDCARD] Means ELEMWILDCARD ("*"), used instead of string index in some places.
static intEMPTY
[EMPTY] Empty slot to indicate NULL.
static intENDOP
[ENDOP] Some operators may like to have a terminator.
static intFROM_ANCESTORS
ancestor axes opcode.
static intFROM_ANCESTORS_OR_SELF
ancestor-or-self axes opcode.
static intFROM_ATTRIBUTES
attribute axes opcode.
static intFROM_CHILDREN
children axes opcode.
static intFROM_DESCENDANTS
descendants axes opcode.
static intFROM_DESCENDANTS_OR_SELF
descendants-of-self axes opcode.
static intFROM_FOLLOWING
following axes opcode.
static intFROM_FOLLOWING_SIBLINGS
following-siblings axes opcode.
static intFROM_NAMESPACE
namespace axes opcode.
static intFROM_PARENT
parent axes opcode.
static intFROM_PRECEDING
preceding axes opcode.
static intFROM_PRECEDING_SIBLINGS
preceding-sibling axes opcode.
static intFROM_ROOT
'/' axes opcode.
static intFROM_SELF
self axes opcode.
static intMATCH_ANY_ANCESTOR
For match patterns.
static intMATCH_ATTRIBUTE
For match patterns.
static intMATCH_IMMEDIATE_ANCESTOR
For match patterns.
static intNODENAME
[NODENAME] [index to ns token or EMPTY] [index to name token] returns: XBoolean
static intNODETYPE_ANYELEMENT
[NODETYPE_ANY] No size or arguments. returns: XBoolean
static intNODETYPE_COMMENT
[NODETYPE_COMMENT] No size or arguments.
static intNODETYPE_FUNCTEST
[NODETYPE_ANY] No size or arguments. returns: XBoolean
static intNODETYPE_NODE
[NODETYPE_NODE] No size or arguments.
static intNODETYPE_PI
[NODETYPE_PI] [index to token] Note: must not overlap function OP number!
static intNODETYPE_ROOT
[NODETYPE_ROOT] No size or arguments. returns: XBoolean
static intNODETYPE_TEXT
[NODETYPE_TEXT] No size or arguments.
static intOP_AND
[OP_AND] [length] {boolean expression} {boolean expression} returns: XBoolean
static intOP_ARGUMENT
[OP_ARGUMENT] (Function argument.) [length] {expression} returns: XNodeSet XNumber XString XBoolean XRTree XObject
static intOP_BOOL
[OP_BOOL] (cast operation) [length] {expression} returns: XBoolean
static intOP_DIV
[OP_DIV] [length] {number expression} {number expression} returns: XNumber
static intOP_EQUALS
[OP_EQUALS] [length] {expression} {expression} returns: XBoolean
static intOP_EXTFUNCTION
[OP_EXTFUNCTION] (Extension function.) [length] [index to namespace token] [index to function name token] {OP_ARGUMENT} returns: XNodeSet XNumber XString XBoolean XRTree XObject
static intOP_FUNCTION
[OP_FUNCTION] [length] [FUNC_name] {OP_ARGUMENT} [ENDOP] returns: XNodeSet XNumber XString XBoolean XRTree XObject
static intOP_GROUP
[OP_GROUP] [length] {expression} returns: XNodeSet XNumber XString XBoolean XRTree XObject
static intOP_GT
[OP_GT] (greater-than) [length] {number expression} {number expression} returns: XBoolean
static intOP_GTE
[OP_GTE] (greater-than-or-equals) [length] {number expression} {number expression} returns: XBoolean
static intOP_LITERAL
[OP_LITERAL] [3] [index to token] returns: XString
static intOP_LOCATIONPATH
[OP_LOCATIONPATH] [length] {FROM_stepType} | {function} {predicate} [ENDOP] (Note that element and attribute namespaces and names can be wildcarded '*'.) returns: XNodeSet
static intOP_LOCATIONPATHPATTERN
[OP_LOCATIONPATHPATTERN] [length] {FROM_stepType} | {function}{predicate} [ENDOP] returns: XNodeSet
static intOP_LT
[OP_LT] (less-than) [length] {number expression} {number expression} returns: XBoolean
static intOP_LTE
[OP_LTE] (less-than-or-equals) [length] {number expression} {number expression} returns: XBoolean
static intOP_MATCHPATTERN
[OP_MATCHPATTERN] [length] {PathExpr}+ returns: XNodeSet
static intOP_MINUS
[OP_MINUS] [length] {number expression} {number expression} returns: XNumber
static intOP_MOD
[OP_MOD] [length] {number expression} {number expression} returns: XNumber
static intOP_MULT
[OP_MULT] [length] {number expression} {number expression} returns: XNumber
static intOP_NEG
[OP_NEG] [length] {number expression} returns: XNumber
static intOP_NOTEQUALS
[OP_NOTEQUALS] [length] {expression} {expression} returns: XBoolean
static intOP_NUMBER
[OP_NUMBER] (cast operation) [length] {expression} returns: XBoolean
static intOP_NUMBERLIT
[OP_NUMBERLIT] (Number literal.)
static intOP_OR
[OP_OR] [length] {boolean expression} {boolean expression} returns: XBoolean
static intOP_PLUS
[OP_PLUS] [length] {number expression} {number expression} returns: XNumber
static intOP_PREDICATE
[OP_PREDICATE] [length] {expression} [ENDOP] (For safety) returns: XBoolean or XNumber
static intOP_QUO
[OP_QUO] [length] {number expression} {number expression} returns: XNumber
static intOP_STRING
[OP_STRING] (cast operation) [length] {expression} returns: XString
static intOP_UNION
[OP_UNION] [length] {PathExpr}+ returns: XNodeSet
static intOP_VARIABLE
[OP_VARIABLE] [4] [index to namespace token, or EMPTY] [index to function name token] returns: XString
static intOP_XPATH
[OP_XPATH] [length] {expression} returns: XNodeSet XNumber XString XBoolean XRTree XObject

Field Detail

AXES_END_TYPES

public static final int AXES_END_TYPES
The end of the axes types.

AXES_START_TYPES

public static final int AXES_START_TYPES
[FROM_stepType] [length, including predicates] [length of just the step, without the predicates] {node test} {predicates}? returns: XBoolean

UNKNOWN: advanced

ELEMWILDCARD

public static final int ELEMWILDCARD
[ELEMWILDCARD] Means ELEMWILDCARD ("*"), used instead of string index in some places.

UNKNOWN: advanced

EMPTY

public static final int EMPTY
[EMPTY] Empty slot to indicate NULL.

ENDOP

public static final int ENDOP
[ENDOP] Some operators may like to have a terminator.

UNKNOWN: advanced

FROM_ANCESTORS

public static final int FROM_ANCESTORS
ancestor axes opcode.

FROM_ANCESTORS_OR_SELF

public static final int FROM_ANCESTORS_OR_SELF
ancestor-or-self axes opcode.

FROM_ATTRIBUTES

public static final int FROM_ATTRIBUTES
attribute axes opcode.

FROM_CHILDREN

public static final int FROM_CHILDREN
children axes opcode.

FROM_DESCENDANTS

public static final int FROM_DESCENDANTS
descendants axes opcode.

FROM_DESCENDANTS_OR_SELF

public static final int FROM_DESCENDANTS_OR_SELF
descendants-of-self axes opcode.

FROM_FOLLOWING

public static final int FROM_FOLLOWING
following axes opcode.

FROM_FOLLOWING_SIBLINGS

public static final int FROM_FOLLOWING_SIBLINGS
following-siblings axes opcode.

FROM_NAMESPACE

public static final int FROM_NAMESPACE
namespace axes opcode.

FROM_PARENT

public static final int FROM_PARENT
parent axes opcode.

FROM_PRECEDING

public static final int FROM_PRECEDING
preceding axes opcode.

FROM_PRECEDING_SIBLINGS

public static final int FROM_PRECEDING_SIBLINGS
preceding-sibling axes opcode.

FROM_ROOT

public static final int FROM_ROOT
'/' axes opcode.

FROM_SELF

public static final int FROM_SELF
self axes opcode.

MATCH_ANY_ANCESTOR

public static final int MATCH_ANY_ANCESTOR
For match patterns.

UNKNOWN: advanced

MATCH_ATTRIBUTE

public static final int MATCH_ATTRIBUTE
For match patterns.

UNKNOWN: advanced

MATCH_IMMEDIATE_ANCESTOR

public static final int MATCH_IMMEDIATE_ANCESTOR
For match patterns.

UNKNOWN: advanced

NODENAME

public static final int NODENAME
[NODENAME] [index to ns token or EMPTY] [index to name token] returns: XBoolean

UNKNOWN: advanced

NODETYPE_ANYELEMENT

public static final int NODETYPE_ANYELEMENT
[NODETYPE_ANY] No size or arguments. returns: XBoolean

UNKNOWN: advanced

NODETYPE_COMMENT

public static final int NODETYPE_COMMENT
[NODETYPE_COMMENT] No size or arguments. Note: must not overlap function OP number! returns: XBoolean

UNKNOWN: advanced

NODETYPE_FUNCTEST

public static final int NODETYPE_FUNCTEST
[NODETYPE_ANY] No size or arguments. returns: XBoolean

UNKNOWN: advanced

NODETYPE_NODE

public static final int NODETYPE_NODE
[NODETYPE_NODE] No size or arguments. Note: must not overlap function OP number! returns: XBoolean

UNKNOWN: advanced

NODETYPE_PI

public static final int NODETYPE_PI
[NODETYPE_PI] [index to token] Note: must not overlap function OP number! returns: XBoolean

UNKNOWN: advanced

NODETYPE_ROOT

public static final int NODETYPE_ROOT
[NODETYPE_ROOT] No size or arguments. returns: XBoolean

UNKNOWN: advanced

NODETYPE_TEXT

public static final int NODETYPE_TEXT
[NODETYPE_TEXT] No size or arguments. Note: must not overlap function OP number! returns: XBoolean

UNKNOWN: advanced

OP_AND

public static final int OP_AND
[OP_AND] [length] {boolean expression} {boolean expression} returns: XBoolean

UNKNOWN: advanced

OP_ARGUMENT

public static final int OP_ARGUMENT
[OP_ARGUMENT] (Function argument.) [length] {expression} returns: XNodeSet XNumber XString XBoolean XRTree XObject

UNKNOWN: advanced

OP_BOOL

public static final int OP_BOOL
[OP_BOOL] (cast operation) [length] {expression} returns: XBoolean

UNKNOWN: advanced

OP_DIV

public static final int OP_DIV
[OP_DIV] [length] {number expression} {number expression} returns: XNumber

UNKNOWN: advanced

OP_EQUALS

public static final int OP_EQUALS
[OP_EQUALS] [length] {expression} {expression} returns: XBoolean

UNKNOWN: advanced

OP_EXTFUNCTION

public static final int OP_EXTFUNCTION
[OP_EXTFUNCTION] (Extension function.) [length] [index to namespace token] [index to function name token] {OP_ARGUMENT} returns: XNodeSet XNumber XString XBoolean XRTree XObject

UNKNOWN: advanced

OP_FUNCTION

public static final int OP_FUNCTION
[OP_FUNCTION] [length] [FUNC_name] {OP_ARGUMENT} [ENDOP] returns: XNodeSet XNumber XString XBoolean XRTree XObject

UNKNOWN: advanced

OP_GROUP

public static final int OP_GROUP
[OP_GROUP] [length] {expression} returns: XNodeSet XNumber XString XBoolean XRTree XObject

UNKNOWN: advanced

OP_GT

public static final int OP_GT
[OP_GT] (greater-than) [length] {number expression} {number expression} returns: XBoolean

UNKNOWN: advanced

OP_GTE

public static final int OP_GTE
[OP_GTE] (greater-than-or-equals) [length] {number expression} {number expression} returns: XBoolean

UNKNOWN: advanced

OP_LITERAL

public static final int OP_LITERAL
[OP_LITERAL] [3] [index to token] returns: XString

UNKNOWN: advanced

OP_LOCATIONPATH

public static final int OP_LOCATIONPATH
[OP_LOCATIONPATH] [length] {FROM_stepType} | {function} {predicate} [ENDOP] (Note that element and attribute namespaces and names can be wildcarded '*'.) returns: XNodeSet

UNKNOWN: advanced

OP_LOCATIONPATHPATTERN

public static final int OP_LOCATIONPATHPATTERN
[OP_LOCATIONPATHPATTERN] [length] {FROM_stepType} | {function}{predicate} [ENDOP] returns: XNodeSet

UNKNOWN: advanced

OP_LT

public static final int OP_LT
[OP_LT] (less-than) [length] {number expression} {number expression} returns: XBoolean

UNKNOWN: advanced

OP_LTE

public static final int OP_LTE
[OP_LTE] (less-than-or-equals) [length] {number expression} {number expression} returns: XBoolean

UNKNOWN: advanced

OP_MATCHPATTERN

public static final int OP_MATCHPATTERN
[OP_MATCHPATTERN] [length] {PathExpr}+ returns: XNodeSet

UNKNOWN: advanced

OP_MINUS

public static final int OP_MINUS
[OP_MINUS] [length] {number expression} {number expression} returns: XNumber

UNKNOWN: advanced

OP_MOD

public static final int OP_MOD
[OP_MOD] [length] {number expression} {number expression} returns: XNumber

UNKNOWN: advanced

OP_MULT

public static final int OP_MULT
[OP_MULT] [length] {number expression} {number expression} returns: XNumber

UNKNOWN: advanced

OP_NEG

public static final int OP_NEG
[OP_NEG] [length] {number expression} returns: XNumber

UNKNOWN: advanced

OP_NOTEQUALS

public static final int OP_NOTEQUALS
[OP_NOTEQUALS] [length] {expression} {expression} returns: XBoolean

UNKNOWN: advanced

OP_NUMBER

public static final int OP_NUMBER
[OP_NUMBER] (cast operation) [length] {expression} returns: XBoolean

UNKNOWN: advanced

OP_NUMBERLIT

public static final int OP_NUMBERLIT
[OP_NUMBERLIT] (Number literal.) [3] [index to token] returns: XString

UNKNOWN: advanced

OP_OR

public static final int OP_OR
[OP_OR] [length] {boolean expression} {boolean expression} returns: XBoolean

UNKNOWN: advanced

OP_PLUS

public static final int OP_PLUS
[OP_PLUS] [length] {number expression} {number expression} returns: XNumber

UNKNOWN: advanced

OP_PREDICATE

public static final int OP_PREDICATE
[OP_PREDICATE] [length] {expression} [ENDOP] (For safety) returns: XBoolean or XNumber

UNKNOWN: advanced

OP_QUO

public static final int OP_QUO
[OP_QUO] [length] {number expression} {number expression} returns: XNumber

UNKNOWN: advanced

OP_STRING

public static final int OP_STRING
[OP_STRING] (cast operation) [length] {expression} returns: XString

UNKNOWN: advanced

OP_UNION

public static final int OP_UNION
[OP_UNION] [length] {PathExpr}+ returns: XNodeSet

UNKNOWN: advanced

OP_VARIABLE

public static final int OP_VARIABLE
[OP_VARIABLE] [4] [index to namespace token, or EMPTY] [index to function name token] returns: XString

UNKNOWN: advanced

OP_XPATH

public static final int OP_XPATH
[OP_XPATH] [length] {expression} returns: XNodeSet XNumber XString XBoolean XRTree XObject

UNKNOWN: advanced

Copyright B) 2006 Apache XML Project. All Rights Reserved.