lux.xpath
Class FunCall

java.lang.Object
  extended by lux.xpath.AbstractExpression
      extended by lux.xpath.FunCall
All Implemented Interfaces:
Visitable
Direct Known Subclasses:
FunctionDefinition, SearchCall

public class FunCall
extends AbstractExpression


Nested Class Summary
 
Nested classes/interfaces inherited from class lux.xpath.AbstractExpression
AbstractExpression.Type
 
Field Summary
static QName FN_COLLECTION
           
static QName FN_CONTAINS
           
static QName FN_COUNT
           
static QName FN_DATA
           
static QName FN_EMPTY
           
static QName FN_EXISTS
           
static QName FN_LAST
           
static String FN_NAMESPACE
           
static QName FN_NOT
           
static QName FN_ROOT
           
static QName FN_STRING_JOIN
           
static QName FN_SUBSEQUENCE
           
static FunCall LastExpression
           
static String LOCAL_NAMESPACE
           
static QName LUX_COUNT
           
static QName LUX_EXISTS
           
static QName LUX_FIELD_VALUES
           
static String LUX_NAMESPACE
           
static QName LUX_SEARCH
           
static String XS_NAMESPACE
           
 
Fields inherited from class lux.xpath.AbstractExpression
subs, sup
 
Constructor Summary
FunCall(QName name, ValueType returnType, AbstractExpression... arguments)
           
 
Method Summary
 AbstractExpression accept(ExpressionVisitor visitor)
           
 AbstractExpression getLastContextStep()
          This method is called by the optimizer in order to determine an element or attribute QName (or wildcard) against which some expression is being compared, in order to generate an appropriate text query.
 QName getName()
           
 int getPrecedence()
           
 ValueType getReturnType()
           
 AbstractExpression getRoot()
           
 boolean isDocumentOrdered()
           
 void setArguments(AbstractExpression... args)
           
 void toString(StringBuilder buf)
          Each subclass must implement the toString(StringBuilder) method by rendering itself as a syntatically valid XPath/XQuery expression in the given buffer.
 
Methods inherited from class lux.xpath.AbstractExpression
acceptSubs, appendSub, getBindingContext, getSubs, getSuper, getTail, getType, isAbsolute, replaceRoot, setSubs, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

LUX_NAMESPACE

public static final String LUX_NAMESPACE
See Also:
Constant Field Values

LUX_SEARCH

public static final QName LUX_SEARCH

LUX_COUNT

public static final QName LUX_COUNT

LUX_EXISTS

public static final QName LUX_EXISTS

LUX_FIELD_VALUES

public static final QName LUX_FIELD_VALUES

FN_NAMESPACE

public static final String FN_NAMESPACE
See Also:
Constant Field Values

FN_ROOT

public static final QName FN_ROOT

FN_LAST

public static final QName FN_LAST

FN_DATA

public static final QName FN_DATA

FN_SUBSEQUENCE

public static final QName FN_SUBSEQUENCE

FN_COUNT

public static final QName FN_COUNT

FN_EXISTS

public static final QName FN_EXISTS

FN_NOT

public static final QName FN_NOT

FN_EMPTY

public static final QName FN_EMPTY

FN_COLLECTION

public static final QName FN_COLLECTION

FN_STRING_JOIN

public static final QName FN_STRING_JOIN

FN_CONTAINS

public static final QName FN_CONTAINS

LOCAL_NAMESPACE

public static final String LOCAL_NAMESPACE
See Also:
Constant Field Values

XS_NAMESPACE

public static final String XS_NAMESPACE
See Also:
Constant Field Values

LastExpression

public static final FunCall LastExpression
Constructor Detail

FunCall

public FunCall(QName name,
               ValueType returnType,
               AbstractExpression... arguments)
Method Detail

setArguments

public void setArguments(AbstractExpression... args)

toString

public void toString(StringBuilder buf)
Description copied from class: AbstractExpression
Each subclass must implement the toString(StringBuilder) method by rendering itself as a syntatically valid XPath/XQuery expression in the given buffer.

Specified by:
toString in class AbstractExpression

getName

public QName getName()

getPrecedence

public int getPrecedence()
Specified by:
getPrecedence in class AbstractExpression
Returns:
100; the outer precedence.

accept

public AbstractExpression accept(ExpressionVisitor visitor)

getReturnType

public ValueType getReturnType()

isDocumentOrdered

public boolean isDocumentOrdered()
Overrides:
isDocumentOrdered in class AbstractExpression
Returns:
whether this expression is proven to return results in document order. This method returns true iff all its subs return true, or it has none. Warning: incorrect results may occur if document-ordering is falsely asserted.

getLastContextStep

public AbstractExpression getLastContextStep()
Description copied from class: AbstractExpression
This method is called by the optimizer in order to determine an element or attribute QName (or wildcard) against which some expression is being compared, in order to generate an appropriate text query.

Overrides:
getLastContextStep in class AbstractExpression
Returns:
for "transparent" functions that return their argument, like data() and typecasts, the argument's rightmost subexpression (last context step) is returned. For other functions, the function expression itself is returned.

getRoot

public AbstractExpression getRoot()
Overrides:
getRoot in class AbstractExpression
Returns:
the root of this expression: this will either be a Root(/), a function returning document nodes, or null.


Copyright © 2013. All Rights Reserved.