Modifier and Type | Field and Description |
---|---|
private static QName |
QNAME_NAME |
AXIS_ANCESTOR, AXIS_ANCESTOR_OR_SELF, AXIS_ATTRIBUTE, AXIS_CHILD, AXIS_DESCENDANT, AXIS_DESCENDANT_OR_SELF, AXIS_FOLLOWING, AXIS_FOLLOWING_SIBLING, AXIS_NAMESPACE, AXIS_PARENT, AXIS_PRECEDING, AXIS_PRECEDING_SIBLING, AXIS_SELF, FUNCTION_BOOLEAN, FUNCTION_CEILING, FUNCTION_CONCAT, FUNCTION_CONTAINS, FUNCTION_COUNT, FUNCTION_FALSE, FUNCTION_FLOOR, FUNCTION_FORMAT_NUMBER, FUNCTION_ID, FUNCTION_KEY, FUNCTION_LANG, FUNCTION_LAST, FUNCTION_LOCAL_NAME, FUNCTION_NAME, FUNCTION_NAMESPACE_URI, FUNCTION_NORMALIZE_SPACE, FUNCTION_NOT, FUNCTION_NULL, FUNCTION_NUMBER, FUNCTION_POSITION, FUNCTION_ROUND, FUNCTION_STARTS_WITH, FUNCTION_STRING, FUNCTION_STRING_LENGTH, FUNCTION_SUBSTRING, FUNCTION_SUBSTRING_AFTER, FUNCTION_SUBSTRING_BEFORE, FUNCTION_SUM, FUNCTION_TRANSLATE, FUNCTION_TRUE, NODE_TYPE_COMMENT, NODE_TYPE_NODE, NODE_TYPE_PI, NODE_TYPE_TEXT
Constructor and Description |
---|
TreeCompiler() |
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
and(java.lang.Object[] arguments)
Produces an EXPRESSION object representing logical conjunction of
all arguments
|
java.lang.Object |
divide(java.lang.Object left,
java.lang.Object right)
Produces an EXPRESSION object representing left divided by
right
|
java.lang.Object |
equal(java.lang.Object left,
java.lang.Object right)
Produces an EXPRESSION object representing the comparison:
left equals to right
|
java.lang.Object |
expressionPath(java.lang.Object expression,
java.lang.Object[] predicates,
java.lang.Object[] steps)
Produces an EXPRESSION object representing a filter expression
|
java.lang.Object |
function(int code,
java.lang.Object[] args)
Produces an EXPRESSION object representing the computation of
a core function with the supplied arguments.
|
java.lang.Object |
function(java.lang.Object name,
java.lang.Object[] args)
Produces an EXPRESSION object representing the computation of
a library function with the supplied arguments.
|
java.lang.Object |
greaterThan(java.lang.Object left,
java.lang.Object right)
Produces an EXPRESSION object representing the comparison:
left greater than right
|
java.lang.Object |
greaterThanOrEqual(java.lang.Object left,
java.lang.Object right)
Produces an EXPRESSION object representing the comparison:
left greater than or equal to right
|
private boolean |
isNameAttributeTest(Expression arg)
Learn whether arg is a name attribute test.
|
java.lang.Object |
lessThan(java.lang.Object left,
java.lang.Object right)
Produces an EXPRESSION object representing the comparison:
left less than right
|
java.lang.Object |
lessThanOrEqual(java.lang.Object left,
java.lang.Object right)
Produces an EXPRESSION object representing the comparison:
left less than or equal to right
|
java.lang.Object |
literal(java.lang.String value)
Produces an EXPRESSION object that represents a string constant.
|
java.lang.Object |
locationPath(boolean absolute,
java.lang.Object[] steps)
Produces an EXPRESSION object representing a location path
|
java.lang.Object |
minus(java.lang.Object argument)
Produces an EXPRESSION object representing unary negation of the argument
|
java.lang.Object |
minus(java.lang.Object left,
java.lang.Object right)
Produces an EXPRESSION object representing left minus right
|
java.lang.Object |
mod(java.lang.Object left,
java.lang.Object right)
Produces an EXPRESSION object representing left modulo
right
|
java.lang.Object |
multiply(java.lang.Object left,
java.lang.Object right)
Produces an EXPRESSION object representing left multiplied by
right
|
java.lang.Object |
nodeNameTest(java.lang.Object qname)
Produces a NODE_TEST object that represents a node name test.
|
java.lang.Object |
nodeTypeTest(int nodeType)
Produces a NODE_TEST object that represents a node type test.
|
java.lang.Object |
notEqual(java.lang.Object left,
java.lang.Object right)
Produces an EXPRESSION object representing the comparison:
left is not equal to right
|
java.lang.Object |
number(java.lang.String value)
Produces an EXPRESSION object that represents a numeric constant.
|
java.lang.Object |
or(java.lang.Object[] arguments)
Produces an EXPRESSION object representing logical disjunction of
all arguments
|
java.lang.Object |
processingInstructionTest(java.lang.String instruction)
Produces a NODE_TEST object that represents a processing instruction
test.
|
java.lang.Object |
qname(java.lang.String prefix,
java.lang.String name)
Produces an QNAME that represents a name with an optional prefix.
|
java.lang.Object |
step(int axis,
java.lang.Object nodeTest,
java.lang.Object[] predicates)
Produces a STEP object that represents a node test.
|
java.lang.Object |
sum(java.lang.Object[] arguments)
Produces an EXPRESSION object representing the sum of all argumens
|
private Expression[] |
toExpressionArray(java.lang.Object[] array)
Get an Object[] as an Expression[].
|
private Step[] |
toStepArray(java.lang.Object[] array)
Get an Object[] as a Step[].
|
java.lang.Object |
union(java.lang.Object[] arguments)
Produces an EXPRESSION object representing union of all node sets
|
java.lang.Object |
variableReference(java.lang.Object qName)
Produces an EXPRESSION object representing variable reference
|
private static final QName QNAME_NAME
public java.lang.Object number(java.lang.String value)
Compiler
public java.lang.Object literal(java.lang.String value)
Compiler
public java.lang.Object qname(java.lang.String prefix, java.lang.String name)
Compiler
public java.lang.Object sum(java.lang.Object[] arguments)
Compiler
public java.lang.Object minus(java.lang.Object left, java.lang.Object right)
Compiler
public java.lang.Object multiply(java.lang.Object left, java.lang.Object right)
Compiler
public java.lang.Object divide(java.lang.Object left, java.lang.Object right)
Compiler
public java.lang.Object mod(java.lang.Object left, java.lang.Object right)
Compiler
public java.lang.Object lessThan(java.lang.Object left, java.lang.Object right)
Compiler
public java.lang.Object lessThanOrEqual(java.lang.Object left, java.lang.Object right)
Compiler
lessThanOrEqual
in interface Compiler
left
- is an EXPRESSION objectright
- is an EXPRESSION objectpublic java.lang.Object greaterThan(java.lang.Object left, java.lang.Object right)
Compiler
greaterThan
in interface Compiler
left
- is an EXPRESSION objectright
- is an EXPRESSION objectpublic java.lang.Object greaterThanOrEqual(java.lang.Object left, java.lang.Object right)
Compiler
greaterThanOrEqual
in interface Compiler
left
- is an EXPRESSION objectright
- is an EXPRESSION objectpublic java.lang.Object equal(java.lang.Object left, java.lang.Object right)
Compiler
public java.lang.Object notEqual(java.lang.Object left, java.lang.Object right)
Compiler
public java.lang.Object minus(java.lang.Object argument)
Compiler
public java.lang.Object variableReference(java.lang.Object qName)
Compiler
variableReference
in interface Compiler
qName
- is a QNAME objectpublic java.lang.Object function(int code, java.lang.Object[] args)
Compiler
public java.lang.Object function(java.lang.Object name, java.lang.Object[] args)
Compiler
public java.lang.Object and(java.lang.Object[] arguments)
Compiler
public java.lang.Object or(java.lang.Object[] arguments)
Compiler
public java.lang.Object union(java.lang.Object[] arguments)
Compiler
public java.lang.Object locationPath(boolean absolute, java.lang.Object[] steps)
Compiler
locationPath
in interface Compiler
absolute
- indicates whether the path is absolutesteps
- are STEP objectspublic java.lang.Object expressionPath(java.lang.Object expression, java.lang.Object[] predicates, java.lang.Object[] steps)
Compiler
expressionPath
in interface Compiler
expression
- is an EXPRESSION objectpredicates
- are EXPRESSION objectssteps
- are STEP objectspublic java.lang.Object nodeNameTest(java.lang.Object qname)
Compiler
nodeNameTest
in interface Compiler
qname
- is a QNAME objectpublic java.lang.Object nodeTypeTest(int nodeType)
Compiler
nodeTypeTest
in interface Compiler
nodeType
- is a NODE_TEST objectpublic java.lang.Object processingInstructionTest(java.lang.String instruction)
Compiler
processingInstructionTest
in interface Compiler
instruction
- is a NODE_TEST objectpublic java.lang.Object step(int axis, java.lang.Object nodeTest, java.lang.Object[] predicates)
Compiler
private Expression[] toExpressionArray(java.lang.Object[] array)
array
- Object[]private Step[] toStepArray(java.lang.Object[] array)
array
- Object[]private boolean isNameAttributeTest(Expression arg)
arg
- Expression to test