org.apache.xpath.compiler

## Class OpCodes

- java.lang.Object
- - org.apache.xpath.compiler.OpCodes

-     public class OpCodes
      extends java.lang.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

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `AXES_END_TYPES` The end of the axes types.
    `static int` | `AXES_START_TYPES` [FROM_stepType] [length, including predicates] [length of just the step, without the predicates] {node test} {predicates}?
    `static int` | `ELEMWILDCARD` [ELEMWILDCARD] Means ELEMWILDCARD ("*"), used instead of string index in some places.
    `static int` | `EMPTY` [EMPTY] Empty slot to indicate NULL.
    `static int` | `ENDOP` [ENDOP] Some operators may like to have a terminator.
    `static int` | `FROM_ANCESTORS` ancestor axes opcode.
    `static int` | `FROM_ANCESTORS_OR_SELF` ancestor-or-self axes opcode.
    `static int` | `FROM_ATTRIBUTES` attribute axes opcode.
    `static int` | `FROM_CHILDREN` children axes opcode.
    `static int` | `FROM_DESCENDANTS` descendants axes opcode.
    `static int` | `FROM_DESCENDANTS_OR_SELF` descendants-of-self axes opcode.
    `static int` | `FROM_FOLLOWING` following axes opcode.
    `static int` | `FROM_FOLLOWING_SIBLINGS` following-siblings axes opcode.
    `static int` | `FROM_NAMESPACE` namespace axes opcode.
    `static int` | `FROM_PARENT` parent axes opcode.
    `static int` | `FROM_PRECEDING` preceding axes opcode.
    `static int` | `FROM_PRECEDING_SIBLINGS` preceding-sibling axes opcode.
    `static int` | `FROM_ROOT` '/' axes opcode.
    `static int` | `FROM_SELF` self axes opcode.
    `static int` | `MATCH_ANY_ANCESTOR` For match patterns.
    `static int` | `MATCH_ATTRIBUTE` For match patterns.
    `static int` | `MATCH_IMMEDIATE_ANCESTOR` For match patterns.
    `static int` | `NODENAME` [NODENAME] [index to ns token or EMPTY] [index to name token] returns: XBoolean
    `static int` | `NODETYPE_ANYELEMENT` [NODETYPE_ANY] No size or arguments.
    `static int` | `NODETYPE_COMMENT` [NODETYPE_COMMENT] No size or arguments.
    `static int` | `NODETYPE_FUNCTEST` [NODETYPE_ANY] No size or arguments.
    `static int` | `NODETYPE_NODE` [NODETYPE_NODE] No size or arguments.
    `static int` | `NODETYPE_PI` [NODETYPE_PI] [index to token] Note: must not overlap function OP number!
    `static int` | `NODETYPE_ROOT` [NODETYPE_ROOT] No size or arguments.
    `static int` | `NODETYPE_TEXT` [NODETYPE_TEXT] No size or arguments.
    `static int` | `OP_AND` [OP_AND] [length] {boolean expression} {boolean expression} returns: XBoolean
    `static int` | `OP_ARGUMENT` [OP_ARGUMENT] (Function argument.)
    `static int` | `OP_BOOL` [OP_BOOL] (cast operation) [length] {expression} returns: XBoolean
    `static int` | `OP_DIV` [OP_DIV] [length] {number expression} {number expression} returns: XNumber
    `static int` | `OP_EQUALS` [OP_EQUALS] [length] {expression} {expression} returns: XBoolean
    `static int` | `OP_EXTFUNCTION` [OP_EXTFUNCTION] (Extension function.)
    `static int` | `OP_FUNCTION` [OP_FUNCTION] [length] [FUNC_name] {OP_ARGUMENT} [ENDOP] returns: XNodeSet XNumber XString XBoolean XRTree XObject
    `static int` | `OP_GROUP` [OP_GROUP] [length] {expression} returns: XNodeSet XNumber XString XBoolean XRTree XObject
    `static int` | `OP_GT` [OP_GT] (greater-than) [length] {number expression} {number expression} returns: XBoolean
    `static int` | `OP_GTE` [OP_GTE] (greater-than-or-equals) [length] {number expression} {number expression} returns: XBoolean
    `static int` | `OP_LITERAL` [OP_LITERAL] [3] [index to token] returns: XString
    `static int` | `OP_LOCATIONPATH` [OP_LOCATIONPATH] [length] {FROM_stepType} | {function} {predicate} [ENDOP] (Note that element and attribute namespaces and names can be wildcarded '*'.)
    `static int` | `OP_LOCATIONPATHPATTERN` [OP_LOCATIONPATHPATTERN] [length] {FROM_stepType} | {function}{predicate} [ENDOP] returns: XNodeSet
    `static int` | `OP_LT` [OP_LT] (less-than) [length] {number expression} {number expression} returns: XBoolean
    `static int` | `OP_LTE` [OP_LTE] (less-than-or-equals) [length] {number expression} {number expression} returns: XBoolean
    `static int` | `OP_MATCHPATTERN` [OP_MATCHPATTERN] [length] {PathExpr}+ returns: XNodeSet
    `static int` | `OP_MINUS` [OP_MINUS] [length] {number expression} {number expression} returns: XNumber
    `static int` | `OP_MOD` [OP_MOD] [length] {number expression} {number expression} returns: XNumber
    `static int` | `OP_MULT` [OP_MULT] [length] {number expression} {number expression} returns: XNumber
    `static int` | `OP_NEG` [OP_NEG] [length] {number expression} returns: XNumber
    `static int` | `OP_NOTEQUALS` [OP_NOTEQUALS] [length] {expression} {expression} returns: XBoolean
    `static int` | `OP_NUMBER` [OP_NUMBER] (cast operation) [length] {expression} returns: XBoolean
    `static int` | `OP_NUMBERLIT` [OP_NUMBERLIT] (Number literal
    `static int` | `OP_OR` [OP_OR] [length] {boolean expression} {boolean expression} returns: XBoolean
    `static int` | `OP_PLUS` [OP_PLUS] [length] {number expression} {number expression} returns: XNumber
    `static int` | `OP_PREDICATE` [OP_PREDICATE] [length] {expression} [ENDOP] (For safety) returns: XBoolean or XNumber
    `static int` | `OP_QUO` [OP_QUO] [length] {number expression} {number expression} returns: XNumber
    `static int` | `OP_STRING` [OP_STRING] (cast operation) [length] {expression} returns: XString
    `static int` | `OP_UNION` [OP_UNION] [length] {PathExpr}+ returns: XNodeSet
    `static int` | `OP_VARIABLE` [OP_VARIABLE] [4] [index to namespace token, or EMPTY] [index to function name token] returns: XString
    `static int` | `OP_XPATH` [OP_XPATH] [length] {expression} returns: XNodeSet XNumber XString XBoolean XRTree XObject

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `OpCodes()`

  - ### Method Summary

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### ENDOP

          public static final int ENDOP

      [ENDOP] Some operators may like to have a terminator.
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### EMPTY

          public static final int EMPTY

      [EMPTY] Empty slot to indicate NULL.
      See Also:
        Constant Field Values

    - #### ELEMWILDCARD

          public static final int ELEMWILDCARD

      [ELEMWILDCARD] Means ELEMWILDCARD ("*"), used instead of string index in some places.
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_XPATH

          public static final int OP_XPATH

      [OP_XPATH] [length] {expression} returns: XNodeSet XNumber XString XBoolean XRTree XObject
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_OR

          public static final int OP_OR

      [OP_OR] [length] {boolean expression} {boolean expression} returns: XBoolean
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_AND

          public static final int OP_AND

      [OP_AND] [length] {boolean expression} {boolean expression} returns: XBoolean
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_NOTEQUALS

          public static final int OP_NOTEQUALS

      [OP_NOTEQUALS] [length] {expression} {expression} returns: XBoolean
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_EQUALS

          public static final int OP_EQUALS

      [OP_EQUALS] [length] {expression} {expression} returns: XBoolean
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_LTE

          public static final int OP_LTE

      [OP_LTE] (less-than-or-equals) [length] {number expression} {number expression} returns: XBoolean
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_LT

          public static final int OP_LT

      [OP_LT] (less-than) [length] {number expression} {number expression} returns: XBoolean
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_GTE

          public static final int OP_GTE

      [OP_GTE] (greater-than-or-equals) [length] {number expression} {number expression} returns: XBoolean
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_GT

          public static final int OP_GT

      [OP_GT] (greater-than) [length] {number expression} {number expression} returns: XBoolean
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_PLUS

          public static final int OP_PLUS

      [OP_PLUS] [length] {number expression} {number expression} returns: XNumber
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_MINUS

          public static final int OP_MINUS

      [OP_MINUS] [length] {number expression} {number expression} returns: XNumber
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_MULT

          public static final int OP_MULT

      [OP_MULT] [length] {number expression} {number expression} returns: XNumber
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_DIV

          public static final int OP_DIV

      [OP_DIV] [length] {number expression} {number expression} returns: XNumber
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_MOD

          public static final int OP_MOD

      [OP_MOD] [length] {number expression} {number expression} returns: XNumber
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_QUO

          public static final int OP_QUO

      [OP_QUO] [length] {number expression} {number expression} returns: XNumber
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_NEG

          public static final int OP_NEG

      [OP_NEG] [length] {number expression} returns: XNumber
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_STRING

          public static final int OP_STRING

      [OP_STRING] (cast operation) [length] {expression} returns: XString
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_BOOL

          public static final int OP_BOOL

      [OP_BOOL] (cast operation) [length] {expression} returns: XBoolean
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_NUMBER

          public static final int OP_NUMBER

      [OP_NUMBER] (cast operation) [length] {expression} returns: XBoolean
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_UNION

          public static final int OP_UNION

      [OP_UNION] [length] {PathExpr}+ returns: XNodeSet
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_LITERAL

          public static final int OP_LITERAL

      [OP_LITERAL] [3] [index to token] returns: XString
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_VARIABLE

          public static final int OP_VARIABLE

      [OP_VARIABLE] [4] [index to namespace token, or EMPTY] [index to function name token] returns: XString
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_GROUP

          public static final int OP_GROUP

      [OP_GROUP] [length] {expression} returns: XNodeSet XNumber XString XBoolean XRTree XObject
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### 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
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_FUNCTION

          public static final int OP_FUNCTION

      [OP_FUNCTION] [length] [FUNC_name] {OP_ARGUMENT} [ENDOP] returns: XNodeSet XNumber XString XBoolean XRTree XObject
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_ARGUMENT

          public static final int OP_ARGUMENT

      [OP_ARGUMENT] (Function argument.) [length] {expression} returns: XNodeSet XNumber XString XBoolean XRTree XObject
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_NUMBERLIT

          public static final int OP_NUMBERLIT

      [OP_NUMBERLIT] (Number literal.) [3] [index to token] returns: XString
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### 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
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_PREDICATE

          public static final int OP_PREDICATE

      [OP_PREDICATE] [length] {expression} [ENDOP] (For safety) returns: XBoolean or XNumber
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_MATCHPATTERN

          public static final int OP_MATCHPATTERN

      [OP_MATCHPATTERN] [length] {PathExpr}+ returns: XNodeSet
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### OP_LOCATIONPATHPATTERN

          public static final int OP_LOCATIONPATHPATTERN

      [OP_LOCATIONPATHPATTERN] [length] {FROM_stepType} | {function}{predicate} [ENDOP] returns: XNodeSet
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### NODETYPE_COMMENT

          public static final int NODETYPE_COMMENT

      [NODETYPE_COMMENT] No size or arguments. Note: must not overlap function OP number! returns: XBoolean
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### NODETYPE_TEXT

          public static final int NODETYPE_TEXT

      [NODETYPE_TEXT] No size or arguments. Note: must not overlap function OP number! returns: XBoolean
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### NODETYPE_PI

          public static final int NODETYPE_PI

      [NODETYPE_PI] [index to token] Note: must not overlap function OP number! returns: XBoolean
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### NODETYPE_NODE

          public static final int NODETYPE_NODE

      [NODETYPE_NODE] No size or arguments. Note: must not overlap function OP number! returns: XBoolean
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### NODENAME

          public static final int NODENAME

      [NODENAME] [index to ns token or EMPTY] [index to name token] returns: XBoolean
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### NODETYPE_ROOT

          public static final int NODETYPE_ROOT

      [NODETYPE_ROOT] No size or arguments. returns: XBoolean
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### NODETYPE_ANYELEMENT

          public static final int NODETYPE_ANYELEMENT

      [NODETYPE_ANY] No size or arguments. returns: XBoolean
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### NODETYPE_FUNCTEST

          public static final int NODETYPE_FUNCTEST

      [NODETYPE_ANY] No size or arguments. returns: XBoolean
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### 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
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### FROM_ANCESTORS

          public static final int FROM_ANCESTORS

      ancestor axes opcode.
      See Also:
        Constant Field Values

    - #### FROM_ANCESTORS_OR_SELF

          public static final int FROM_ANCESTORS_OR_SELF

      ancestor-or-self axes opcode.
      See Also:
        Constant Field Values

    - #### FROM_ATTRIBUTES

          public static final int FROM_ATTRIBUTES

      attribute axes opcode.
      See Also:
        Constant Field Values

    - #### FROM_CHILDREN

          public static final int FROM_CHILDREN

      children axes opcode.
      See Also:
        Constant Field Values

    - #### FROM_DESCENDANTS

          public static final int FROM_DESCENDANTS

      descendants axes opcode.
      See Also:
        Constant Field Values

    - #### FROM_DESCENDANTS_OR_SELF

          public static final int FROM_DESCENDANTS_OR_SELF

      descendants-of-self axes opcode.
      See Also:
        Constant Field Values

    - #### FROM_FOLLOWING

          public static final int FROM_FOLLOWING

      following axes opcode.
      See Also:
        Constant Field Values

    - #### FROM_FOLLOWING_SIBLINGS

          public static final int FROM_FOLLOWING_SIBLINGS

      following-siblings axes opcode.
      See Also:
        Constant Field Values

    - #### FROM_PARENT

          public static final int FROM_PARENT

      parent axes opcode.
      See Also:
        Constant Field Values

    - #### FROM_PRECEDING

          public static final int FROM_PRECEDING

      preceding axes opcode.
      See Also:
        Constant Field Values

    - #### FROM_PRECEDING_SIBLINGS

          public static final int FROM_PRECEDING_SIBLINGS

      preceding-sibling axes opcode.
      See Also:
        Constant Field Values

    - #### FROM_SELF

          public static final int FROM_SELF

      self axes opcode.
      See Also:
        Constant Field Values

    - #### FROM_NAMESPACE

          public static final int FROM_NAMESPACE

      namespace axes opcode.
      See Also:
        Constant Field Values

    - #### FROM_ROOT

          public static final int FROM_ROOT

      '/' axes opcode.
      See Also:
        Constant Field Values

    - #### MATCH_ATTRIBUTE

          public static final int MATCH_ATTRIBUTE

      For match patterns.
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### MATCH_ANY_ANCESTOR

          public static final int MATCH_ANY_ANCESTOR

      For match patterns.
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### MATCH_IMMEDIATE_ANCESTOR

          public static final int MATCH_IMMEDIATE_ANCESTOR

      For match patterns.
      See Also:
        Constant Field Values
      Usage:
        **For advanced use only**

    - #### AXES_END_TYPES

          public static final int AXES_END_TYPES

      The end of the axes types.
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### OpCodes

          public OpCodes()

Copyright © 2023 Apache XML Project. All Rights Reserved.