Prev Class | Next Class | Frames | No Frames |
Summary: Nested | Field | Method | Constr | Detail: Nested | Field | Method | Constr |
java.lang.Object
org.apache.xpath.compiler.OpMap
public class OpMap
extends java.lang.Object
Field Summary | |
static int |
|
Method Summary | |
void |
|
int |
|
int |
|
static int |
|
static int |
|
int |
|
int |
|
static int |
|
int |
|
int |
|
OpMapVector |
|
String |
|
String |
|
String |
|
int |
|
Object |
|
ObjectVector |
|
int |
|
void |
|
String |
|
public static final int MAPINDEX_LENGTH
The length is always the opcode position + 1. Length is always expressed as the opcode+length bytes, so it is always 2 or greater.
- Field Value:
- 1
public void error(String msg, Object[] args) throws javax.xml.transform.TransformerException
Tell the user of an error, and probably throw an exception.
- Parameters:
msg
- An error msgkey that corresponds to one of the constants found inXPATHErrorResources
, which is a key for a format string.args
- An array of arguments represented in the format string, which may be null.
public int getArgLength(int opPos)
Get the length of an operation.
- Parameters:
opPos
- The position of the operation in the op map.
- Returns:
- The size of the operation.
public int getArgLengthOfStep(int opPos)
Given a location step, get the length of that step.
- Parameters:
opPos
- Position of location step in op map.
- Returns:
- The length of the step.
public static int getFirstChildPos(int opPos)
Go to the first child of a given operation.
- Parameters:
opPos
- position of operation.
- Returns:
- The position of the first child of the operation.
public static int getFirstChildPosOfStep(int opPos)
Get the first child position of a given location step.
- Parameters:
opPos
- Position of location step in the location map.
- Returns:
- The first child position of the step.
public int getFirstPredicateOpPos(int opPos) throws javax.xml.transform.TransformerException
Given an FROM_stepType position, return the position of the first predicate, if there is one, or else this will point to the end of the FROM_stepType. Example: int posOfPredicate = xpath.getNextOpPos(stepPos); boolean hasPredicates = OpCodes.OP_PREDICATE == xpath.getOp(posOfPredicate);
- Parameters:
opPos
- position of FROM_stepType op.
- Returns:
- position of predicate in FROM_stepType structure.
public int getNextOpPos(int opPos)
Given an operation position, return the end position, i.e. the beginning of the next operation.
- Parameters:
opPos
- An op position of an operation for which there is a size entry following.
- Returns:
- position of next operation in m_opMap.
public static int getNextOpPos(int[] opMap, int opPos)
Given an operation position, return the end position, i.e. the beginning of the next operation.
- Parameters:
opMap
- The operations map.opPos
- index to operation, for which there is a size entry following.
- Returns:
- position of next operation in m_opMap.
public int getNextStepPos(int opPos)
Given a location step position, return the end position, i.e. the beginning of the next step.
- Parameters:
opPos
- the position of a location step.
- Returns:
- the position of the next location step.
public int getOp(int opPos)
Given an operation position, return the current op.
- Parameters:
opPos
- index into op map.
- Returns:
- the op that corresponds to the opPos argument.
public OpMapVector getOpMap()
Get the opcode list that describes the XPath operations. It contains operations codes and indexes into the m_tokenQueue. I use an array instead of a full parse tree in order to cut down on the number of objects created.
- Returns:
- An IntVector that is the opcode list that describes the XPath operations.
public String getPatternString()
Return the expression as a string for diagnostics.
- Returns:
- The expression string.
public String getStepLocalName(int opPosOfStep)
Get the local name of the step.
- Parameters:
opPosOfStep
- The position of the FROM_XXX step.
- Returns:
- OpCodes.EMPTY, OpCodes.ELEMWILDCARD, or the local name.
public String getStepNS(int opPosOfStep)
Get the namespace of the step.
- Parameters:
opPosOfStep
- The position of the FROM_XXX step.
- Returns:
- The step's namespace, NodeTest.WILD, or null for null namespace.
public int getStepTestType(int opPosOfStep)
Get the test type of the step, i.e. NODETYPE_XXX value.
- Parameters:
opPosOfStep
- The position of the FROM_XXX step.
- Returns:
- NODETYPE_XXX value.
public Object getToken(int pos)
Get the XPath as a list of tokens.
- Parameters:
pos
- index into token queue.
- Returns:
- The token, normally a string.
public ObjectVector getTokenQueue()
Get the XPath as a list of tokens.
- Returns:
- ObjectVector of tokens.
public int getTokenQueueSize()
Get size of the token queue.
- Returns:
- The size of the token queue.
public void setOp(int opPos, int value)
Set the op at index to the given int.
- Parameters:
opPos
- index into op map.value
- Value to set
public String toString()
Return the expression as a string for diagnostics.
- Returns:
- The expression string.