com.caucho.xpath.expr
Class AbstractStringExpr

java.lang.Object
  extended by com.caucho.xpath.Expr
      extended by com.caucho.xpath.expr.AbstractStringExpr
Direct Known Subclasses:
BaseURI, Functions.BaseURI, ResolveURI, Trace

public abstract class AbstractStringExpr
extends Expr

Implements the builtin XPath string expressions.


Field Summary
 
Fields inherited from class com.caucho.xpath.Expr
ADD, AND, ATTRIBUTE, BASE_URI, BOOLEAN, BOOLEAN_EQ, BOOLEAN_NEQ, CEILING, CONCAT, CONST, CONTAINS, COUNT, DIV, ELEMENT, EQ, FALSE, FLOOR, FORMAT_NUMBER, FUNCTION_AVAILABLE, GE, GENERATE_ID, GT, ID, IF, LANG, LAST, LAST_FUN, LE, LOCAL_PART, LT, MOD, MUL, NAMESPACE, NEG, NEQ, NODE_SET, NORMALIZE, NOT, NUMBER, NUMBER_EQ, NUMBER_GE, NUMBER_GT, NUMBER_LE, NUMBER_LT, NUMBER_NEQ, OR, POSITION, QNAME, QUO, ROUND, SELF, SELF_NAME, STARTS_WITH, STRING, STRING_EQ, STRING_LENGTH, STRING_NEQ, SUB, SUBSTRING, SUBSTRING_AFTER, SUBSTRING_BEFORE, SUM, SYSTEM_PROPERTY, TRANSLATE, TRUE
 
Constructor Summary
AbstractStringExpr()
           
 
Method Summary
 boolean evalBoolean(org.w3c.dom.Node node, ExprEnvironment env)
          Evaluate the expression as a boolean, i.e.
 double evalNumber(org.w3c.dom.Node node, ExprEnvironment env)
          Evaluate the expression as a double, i.e.
 java.lang.Object evalObject(org.w3c.dom.Node node, ExprEnvironment env)
          Evaluate the expression as an object, i.e.
abstract  java.lang.String evalString(org.w3c.dom.Node node, ExprEnvironment env)
          Evaluates the expression as an string.
 boolean isString()
          The StringExpr returns a string value.
protected static java.lang.String normalize(java.lang.String string)
          Normalize the string, converting all whitespace to a space and eliminating consecutive spaces.
 
Methods inherited from class com.caucho.xpath.Expr
addParam, addVar, evalBoolean, evalNodeSet, evalNodeSet, evalNumber, evalObject, evalString, evalString, evalString, evalVar, getListContext, isBoolean, isNodeSet, isNumber, setListContext, setVar, stringToNumber, toBoolean, toDouble, toNode, toNodeList, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractStringExpr

public AbstractStringExpr()
Method Detail

isString

public boolean isString()
The StringExpr returns a string value.

Overrides:
isString in class Expr

evalString

public abstract java.lang.String evalString(org.w3c.dom.Node node,
                                            ExprEnvironment env)
                                     throws XPathException
Evaluates the expression as an string.

Specified by:
evalString in class Expr
Parameters:
node - the current node
env - the variable environment.
Returns:
the string representation of the expression.
Throws:
XPathException

evalBoolean

public boolean evalBoolean(org.w3c.dom.Node node,
                           ExprEnvironment env)
                    throws XPathException
Evaluate the expression as a boolean, i.e. evaluate it as a string and then convert it to a boolean.

Specified by:
evalBoolean in class Expr
Parameters:
node - the current node
env - the variable environment.
Returns:
the boolean representation of the expression.
Throws:
XPathException

evalNumber

public double evalNumber(org.w3c.dom.Node node,
                         ExprEnvironment env)
                  throws XPathException
Evaluate the expression as a double, i.e. evaluate it as a string and then convert it to a double.

Specified by:
evalNumber in class Expr
Parameters:
node - the current node
env - the variable environment.
Returns:
the numeric representation of the expression.
Throws:
XPathException

evalObject

public java.lang.Object evalObject(org.w3c.dom.Node node,
                                   ExprEnvironment env)
                            throws XPathException
Evaluate the expression as an object, i.e. return the string value.

Specified by:
evalObject in class Expr
Parameters:
node - the current node
env - the variable environment.
Returns:
the boolean representation of the expression.
Throws:
XPathException

normalize

protected static java.lang.String normalize(java.lang.String string)
Normalize the string, converting all whitespace to a space and eliminating consecutive spaces.