Sophie

Sophie

distrib > Mageia > 7 > i586 > by-pkgid > b3bdfe6d859a3d6920ff2c44b38e9a6f > files > 1651

saxon-manual-9.4.0.9-2.mga7.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.6.0_18) on Fri Dec 09 20:48:04 GMT 2011 -->
<TITLE>
ArithmeticExpression
</TITLE>

<META NAME="date" CONTENT="2011-12-09">

<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">

<SCRIPT type="text/javascript">
function windowTitle()
{
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="ArithmeticExpression";
    }
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>

</HEAD>

<BODY BGCOLOR="white" onload="windowTitle();">
<HR>


<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../net/sf/saxon/expr/AndExpression.html" title="class in net.sf.saxon.expr"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../net/sf/saxon/expr/ArithmeticExpression10.html" title="class in net.sf.saxon.expr"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../index.html?net/sf/saxon/expr/ArithmeticExpression.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="ArithmeticExpression.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->

<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
net.sf.saxon.expr</FONT>
<BR>
Class ArithmeticExpression</H2>
<PRE>
<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</A>
  <IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">net.sf.saxon.expr.Expression</A>
      <IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html" title="class in net.sf.saxon.expr">net.sf.saxon.expr.BinaryExpression</A>
          <IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>net.sf.saxon.expr.ArithmeticExpression</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD><A HREF="http://download.oracle.com/javase/6/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/javax/xml/transform/SourceLocator.html?is-external=true" title="class or interface in javax.xml.transform">SourceLocator</A>, <A HREF="../../../../net/sf/saxon/event/LocationProvider.html" title="interface in net.sf.saxon.event">LocationProvider</A>, <A HREF="../../../../net/sf/saxon/event/SaxonLocator.html" title="interface in net.sf.saxon.event">SaxonLocator</A>, <A HREF="../../../../net/sf/saxon/trace/InstructionInfo.html" title="interface in net.sf.saxon.trace">InstructionInfo</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/org/xml/sax/Locator.html?is-external=true" title="class or interface in org.xml.sax">Locator</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public class <B>ArithmeticExpression</B><DT>extends <A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html" title="class in net.sf.saxon.expr">BinaryExpression</A></DL>
</PRE>

<P>
Arithmetic Expression: an expression using one of the operators
 plus, minus, multiply, div, idiv, mod. Note that this code does not handle backwards
 compatibility mode: see <A HREF="../../../../net/sf/saxon/expr/ArithmeticExpression10.html" title="class in net.sf.saxon.expr"><CODE>ArithmeticExpression10</CODE></A>
<P>

<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../serialized-form.html#net.sf.saxon.expr.ArithmeticExpression">Serialized Form</A></DL>
<HR>

<P>
<!-- =========== FIELD SUMMARY =========== -->

<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/ArithmeticExpression.html#simplified">simplified</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_net.sf.saxon.expr.BinaryExpression"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from class net.sf.saxon.expr.<A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html" title="class in net.sf.saxon.expr">BinaryExpression</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#operand0">operand0</A>, <A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#operand1">operand1</A>, <A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#operator">operator</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_net.sf.saxon.expr.Expression"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from class net.sf.saxon.expr.<A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../net/sf/saxon/expr/Expression.html#EFFECTIVE_BOOLEAN_VALUE">EFFECTIVE_BOOLEAN_VALUE</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#EVALUATE_METHOD">EVALUATE_METHOD</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#EVENT_FEED_METHOD">EVENT_FEED_METHOD</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#ITEM_FEED_METHOD">ITEM_FEED_METHOD</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#ITERATE_METHOD">ITERATE_METHOD</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#locationId">locationId</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#MAX_SEQUENCE_LENGTH">MAX_SEQUENCE_LENGTH</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#MAX_STRING_LENGTH">MAX_STRING_LENGTH</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#PROCESS_METHOD">PROCESS_METHOD</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#PUSH_SELECTION">PUSH_SELECTION</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#staticProperties">staticProperties</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#UNBOUNDED_LOWER">UNBOUNDED_LOWER</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#UNBOUNDED_UPPER">UNBOUNDED_UPPER</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#WATCH_METHOD">WATCH_METHOD</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->

<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/ArithmeticExpression.html#ArithmeticExpression(net.sf.saxon.expr.Expression, int, net.sf.saxon.expr.Expression)">ArithmeticExpression</A></B>(<A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A>&nbsp;p0,
                     int&nbsp;operator,
                     <A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A>&nbsp;p1)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create an arithmetic expression</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->

<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="../../../../net/sf/saxon/value/AtomicValue.html" title="class in net.sf.saxon.value">AtomicValue</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/ArithmeticExpression.html#compute(net.sf.saxon.value.AtomicValue, int, net.sf.saxon.value.AtomicValue, net.sf.saxon.expr.XPathContext)">compute</A></B>(<A HREF="../../../../net/sf/saxon/value/AtomicValue.html" title="class in net.sf.saxon.value">AtomicValue</A>&nbsp;value0,
        int&nbsp;operator,
        <A HREF="../../../../net/sf/saxon/value/AtomicValue.html" title="class in net.sf.saxon.value">AtomicValue</A>&nbsp;value1,
        <A HREF="../../../../net/sf/saxon/expr/XPathContext.html" title="interface in net.sf.saxon.expr">XPathContext</A>&nbsp;context)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Static method to apply arithmetic to two values</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/ArithmeticExpression.html#copy()">copy</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Copy an expression.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../net/sf/saxon/om/Item.html" title="interface in net.sf.saxon.om">Item</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/ArithmeticExpression.html#evaluateItem(net.sf.saxon.expr.XPathContext)">evaluateItem</A></B>(<A HREF="../../../../net/sf/saxon/expr/XPathContext.html" title="interface in net.sf.saxon.expr">XPathContext</A>&nbsp;context)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Evaluate the expression.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../net/sf/saxon/expr/Calculator.html" title="class in net.sf.saxon.expr">Calculator</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/ArithmeticExpression.html#getCalculator()">getCalculator</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the calculator allocated to evaluate this expression</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/ArithmeticExpression.html#getExpressionName()">getExpressionName</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get a name identifying the kind of expression, in terms meaningful to a user.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../net/sf/saxon/value/IntegerValue.html" title="class in net.sf.saxon.value">IntegerValue</A>[]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/ArithmeticExpression.html#getIntegerBounds()">getIntegerBounds</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;For an expression that returns an integer or a sequence of integers, get
 a lower and upper bound on the values of the integers that may be returned, from
 static analysis.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../net/sf/saxon/type/ItemType.html" title="interface in net.sf.saxon.type">ItemType</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/ArithmeticExpression.html#getItemType(net.sf.saxon.type.TypeHierarchy)">getItemType</A></B>(<A HREF="../../../../net/sf/saxon/type/TypeHierarchy.html" title="class in net.sf.saxon.type">TypeHierarchy</A>&nbsp;th)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Determine the data type of the expression, insofar as this is known statically</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/ArithmeticExpression.html#mapOpCode(int)">mapOpCode</A></B>(int&nbsp;op)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Map operator codes from those in the Token class to those in the Calculator class</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/ArithmeticExpression.html#simplify(net.sf.saxon.expr.parser.ExpressionVisitor)">simplify</A></B>(<A HREF="../../../../net/sf/saxon/expr/parser/ExpressionVisitor.html" title="class in net.sf.saxon.expr.parser">ExpressionVisitor</A>&nbsp;visitor)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Simplify an expression</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/ArithmeticExpression.html#typeCheck(net.sf.saxon.expr.parser.ExpressionVisitor, net.sf.saxon.expr.parser.ExpressionVisitor.ContextItemType)">typeCheck</A></B>(<A HREF="../../../../net/sf/saxon/expr/parser/ExpressionVisitor.html" title="class in net.sf.saxon.expr.parser">ExpressionVisitor</A>&nbsp;visitor,
          <A HREF="../../../../net/sf/saxon/expr/parser/ExpressionVisitor.ContextItemType.html" title="class in net.sf.saxon.expr.parser">ExpressionVisitor.ContextItemType</A>&nbsp;contextItemType)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Type-check the expression statically.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_net.sf.saxon.expr.BinaryExpression"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class net.sf.saxon.expr.<A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html" title="class in net.sf.saxon.expr">BinaryExpression</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#computeCardinality()">computeCardinality</A>, <A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#computeSpecialProperties()">computeSpecialProperties</A>, <A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#displayOperator()">displayOperator</A>, <A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#equals(java.lang.Object)">equals</A>, <A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#explain(net.sf.saxon.trace.ExpressionPresenter)">explain</A>, <A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#explainExtraAttributes(net.sf.saxon.trace.ExpressionPresenter)">explainExtraAttributes</A>, <A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#getArguments()">getArguments</A>, <A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#getOperands()">getOperands</A>, <A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#getOperator()">getOperator</A>, <A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#hashCode()">hashCode</A>, <A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#isAssociative(int)">isAssociative</A>, <A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#isCommutative(int)">isCommutative</A>, <A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#isInverse(int, int)">isInverse</A>, <A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#iterateSubExpressions()">iterateSubExpressions</A>, <A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#optimize(net.sf.saxon.expr.parser.ExpressionVisitor, net.sf.saxon.expr.parser.ExpressionVisitor.ContextItemType)">optimize</A>, <A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#promote(net.sf.saxon.expr.parser.PromotionOffer, net.sf.saxon.expr.Expression)">promote</A>, <A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#replaceSubExpression(net.sf.saxon.expr.Expression, net.sf.saxon.expr.Expression)">replaceSubExpression</A>, <A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#setFlattened(boolean)">setFlattened</A>, <A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#toString()">toString</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_net.sf.saxon.expr.Expression"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class net.sf.saxon.expr.<A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../net/sf/saxon/expr/Expression.html#addToPathMap(net.sf.saxon.expr.parser.PathMap, net.sf.saxon.expr.parser.PathMap.PathMapNodeSet)">addToPathMap</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#adoptChildExpression(net.sf.saxon.expr.Expression)">adoptChildExpression</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#checkForUpdatingSubexpressions()">checkForUpdatingSubexpressions</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#checkPermittedContents(net.sf.saxon.type.SchemaType, net.sf.saxon.expr.StaticContext, boolean)">checkPermittedContents</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#computeDependencies()">computeDependencies</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#computeStaticProperties()">computeStaticProperties</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#doPromotion(net.sf.saxon.expr.Expression, net.sf.saxon.expr.parser.PromotionOffer)">doPromotion</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#dynamicError(java.lang.String, java.lang.String, net.sf.saxon.expr.XPathContext)">dynamicError</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#effectiveBooleanValue(net.sf.saxon.expr.XPathContext)">effectiveBooleanValue</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#evaluateAsString(net.sf.saxon.expr.XPathContext)">evaluateAsString</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#evaluatePendingUpdates(net.sf.saxon.expr.XPathContext, net.sf.saxon.expr.PendingUpdateList)">evaluatePendingUpdates</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#explain(java.io.OutputStream)">explain</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#getCardinality()">getCardinality</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#getColumnNumber()">getColumnNumber</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#getColumnNumber(long)">getColumnNumber</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#getConstructType()">getConstructType</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#getContainer()">getContainer</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#getDependencies()">getDependencies</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#getEvaluationMethod()">getEvaluationMethod</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#getExecutable()">getExecutable</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#getHostLanguage()">getHostLanguage</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#getImplementationMethod()">getImplementationMethod</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#getIntrinsicDependencies()">getIntrinsicDependencies</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#getLineNumber()">getLineNumber</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#getLineNumber(long)">getLineNumber</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#getLocationId()">getLocationId</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#getLocationProvider()">getLocationProvider</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#getObjectName()">getObjectName</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#getProperties()">getProperties</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#getProperty(java.lang.String)">getProperty</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#getPublicId()">getPublicId</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#getSlotsUsed()">getSlotsUsed</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#getSpecialProperties()">getSpecialProperties</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#getSystemId()">getSystemId</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#getSystemId(long)">getSystemId</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#hasLoopingSubexpression(net.sf.saxon.expr.Expression)">hasLoopingSubexpression</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#hasVariableBinding(net.sf.saxon.expr.Binding)">hasVariableBinding</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#implementsStaticTypeCheck()">implementsStaticTypeCheck</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#isSubtreeExpression()">isSubtreeExpression</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#isUpdatingExpression()">isUpdatingExpression</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#isVacuousExpression()">isVacuousExpression</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#iterate(net.sf.saxon.expr.XPathContext)">iterate</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#iterateEvents(net.sf.saxon.expr.XPathContext)">iterateEvents</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#iterateSameFocusSubExpressions()">iterateSameFocusSubExpressions</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#markTailFunctionCalls(net.sf.saxon.om.StructuredQName, int)">markTailFunctionCalls</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#process(net.sf.saxon.expr.XPathContext)">process</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#resetLocalStaticProperties()">resetLocalStaticProperties</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#setContainer(net.sf.saxon.expr.Container)">setContainer</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#setEvaluationMethod(int)">setEvaluationMethod</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#setFiltered(boolean)">setFiltered</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#setLocationId(int)">setLocationId</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#staticTypeCheck(net.sf.saxon.value.SequenceType, boolean, net.sf.saxon.expr.parser.RoleLocator, net.sf.saxon.TypeCheckerEnvironment)">staticTypeCheck</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#suppressValidation(int)">suppressValidation</A>, <A HREF="../../../../net/sf/saxon/expr/Expression.html#typeError(java.lang.String, java.lang.String, net.sf.saxon.expr.XPathContext)">typeError</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>

<!-- ============ FIELD DETAIL =========== -->

<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="simplified"><!-- --></A><H3>
simplified</H3>
<PRE>
protected boolean <B>simplified</B></PRE>
<DL>
<DL>
</DL>
</DL>

<!-- ========= CONSTRUCTOR DETAIL ======== -->

<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="ArithmeticExpression(net.sf.saxon.expr.Expression, int, net.sf.saxon.expr.Expression)"><!-- --></A><H3>
ArithmeticExpression</H3>
<PRE>
public <B>ArithmeticExpression</B>(<A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A>&nbsp;p0,
                            int&nbsp;operator,
                            <A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A>&nbsp;p1)</PRE>
<DL>
<DD>Create an arithmetic expression
<P>
<DL>
<DT><B>Parameters:</B><DD><CODE>p0</CODE> - the first operand<DD><CODE>operator</CODE> - the operator, for example <A HREF="../../../../net/sf/saxon/expr/parser/Token.html#PLUS"><CODE>Token.PLUS</CODE></A><DD><CODE>p1</CODE> - the second operand</DL>
</DL>

<!-- ============ METHOD DETAIL ========== -->

<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="getExpressionName()"><!-- --></A><H3>
getExpressionName</H3>
<PRE>
public <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <B>getExpressionName</B>()</PRE>
<DL>
<DD>Get a name identifying the kind of expression, in terms meaningful to a user.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../net/sf/saxon/expr/Expression.html#getExpressionName()">getExpressionName</A></CODE> in class <CODE><A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>a name identifying the kind of expression, in terms meaningful to a user.
         The name will always be in the form of a lexical XML QName, and should match the name used
         in explain() output displaying the expression.</DL>
</DD>
</DL>
<HR>

<A NAME="simplify(net.sf.saxon.expr.parser.ExpressionVisitor)"><!-- --></A><H3>
simplify</H3>
<PRE>
public <A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>simplify</B>(<A HREF="../../../../net/sf/saxon/expr/parser/ExpressionVisitor.html" title="class in net.sf.saxon.expr.parser">ExpressionVisitor</A>&nbsp;visitor)
                    throws <A HREF="../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#simplify(net.sf.saxon.expr.parser.ExpressionVisitor)">BinaryExpression</A></CODE></B></DD>
<DD>Simplify an expression
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#simplify(net.sf.saxon.expr.parser.ExpressionVisitor)">simplify</A></CODE> in class <CODE><A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html" title="class in net.sf.saxon.expr">BinaryExpression</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>visitor</CODE> - an expression visitor
<DT><B>Returns:</B><DD>the simplified expression
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if an error is discovered during expression
     rewriting</DL>
</DD>
</DL>
<HR>

<A NAME="getCalculator()"><!-- --></A><H3>
getCalculator</H3>
<PRE>
public <A HREF="../../../../net/sf/saxon/expr/Calculator.html" title="class in net.sf.saxon.expr">Calculator</A> <B>getCalculator</B>()</PRE>
<DL>
<DD>Get the calculator allocated to evaluate this expression
<P>
<DD><DL>

<DT><B>Returns:</B><DD>the calculator, a helper object that does the actual calculation</DL>
</DD>
</DL>
<HR>

<A NAME="typeCheck(net.sf.saxon.expr.parser.ExpressionVisitor, net.sf.saxon.expr.parser.ExpressionVisitor.ContextItemType)"><!-- --></A><H3>
typeCheck</H3>
<PRE>
public <A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>typeCheck</B>(<A HREF="../../../../net/sf/saxon/expr/parser/ExpressionVisitor.html" title="class in net.sf.saxon.expr.parser">ExpressionVisitor</A>&nbsp;visitor,
                            <A HREF="../../../../net/sf/saxon/expr/parser/ExpressionVisitor.ContextItemType.html" title="class in net.sf.saxon.expr.parser">ExpressionVisitor.ContextItemType</A>&nbsp;contextItemType)
                     throws <A HREF="../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE>
<DL>
<DD>Type-check the expression statically. We try to work out which particular
 arithmetic function to use if the types of operands are known an compile time.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html#typeCheck(net.sf.saxon.expr.parser.ExpressionVisitor, net.sf.saxon.expr.parser.ExpressionVisitor.ContextItemType)">typeCheck</A></CODE> in class <CODE><A HREF="../../../../net/sf/saxon/expr/BinaryExpression.html" title="class in net.sf.saxon.expr">BinaryExpression</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>visitor</CODE> - an expression visitor<DD><CODE>contextItemType</CODE> - the static type of "." at the point where this expression is invoked.
 The parameter is set to null if it is known statically that the context item will be undefined.
 If the type of the context item is not known statically, the argument is set to
 <A HREF="../../../../net/sf/saxon/type/Type.html#ITEM_TYPE"><CODE>Type.ITEM_TYPE</CODE></A>
<DT><B>Returns:</B><DD>the original expression, rewritten to perform necessary run-time type checks,
 and to perform other type-related optimizations
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if an error is discovered during this phase
     (typically a type error)</DL>
</DD>
</DL>
<HR>

<A NAME="getIntegerBounds()"><!-- --></A><H3>
getIntegerBounds</H3>
<PRE>
public <A HREF="../../../../net/sf/saxon/value/IntegerValue.html" title="class in net.sf.saxon.value">IntegerValue</A>[] <B>getIntegerBounds</B>()</PRE>
<DL>
<DD>For an expression that returns an integer or a sequence of integers, get
 a lower and upper bound on the values of the integers that may be returned, from
 static analysis. The default implementation returns null, meaning "unknown" or
 "not applicable". Other implementations return an array of two IntegerValue objects,
 representing the lower and upper bounds respectively. The values
 UNBOUNDED_LOWER and UNBOUNDED_UPPER are used by convention to indicate that
 the value may be arbitrarily large. The values MAX_STRING_LENGTH and MAX_SEQUENCE_LENGTH
 are used to indicate values limited by the size of a string or the size of a sequence.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../net/sf/saxon/expr/Expression.html#getIntegerBounds()">getIntegerBounds</A></CODE> in class <CODE><A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the lower and upper bounds of integer values in the result, or null to indicate
         unknown or not applicable.</DL>
</DD>
</DL>
<HR>

<A NAME="copy()"><!-- --></A><H3>
copy</H3>
<PRE>
public <A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> <B>copy</B>()</PRE>
<DL>
<DD>Copy an expression. This makes a deep copy.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../net/sf/saxon/expr/Expression.html#copy()">copy</A></CODE> in class <CODE><A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the copy of the original expression</DL>
</DD>
</DL>
<HR>

<A NAME="compute(net.sf.saxon.value.AtomicValue, int, net.sf.saxon.value.AtomicValue, net.sf.saxon.expr.XPathContext)"><!-- --></A><H3>
compute</H3>
<PRE>
public static <A HREF="../../../../net/sf/saxon/value/AtomicValue.html" title="class in net.sf.saxon.value">AtomicValue</A> <B>compute</B>(<A HREF="../../../../net/sf/saxon/value/AtomicValue.html" title="class in net.sf.saxon.value">AtomicValue</A>&nbsp;value0,
                                  int&nbsp;operator,
                                  <A HREF="../../../../net/sf/saxon/value/AtomicValue.html" title="class in net.sf.saxon.value">AtomicValue</A>&nbsp;value1,
                                  <A HREF="../../../../net/sf/saxon/expr/XPathContext.html" title="interface in net.sf.saxon.expr">XPathContext</A>&nbsp;context)
                           throws <A HREF="../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE>
<DL>
<DD>Static method to apply arithmetic to two values
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value0</CODE> - the first value<DD><CODE>operator</CODE> - the operator as denoted in the Calculator class, for example <A HREF="../../../../net/sf/saxon/expr/Calculator.html#PLUS"><CODE>Calculator.PLUS</CODE></A><DD><CODE>value1</CODE> - the second value<DD><CODE>context</CODE> - the XPath dynamic evaluation context
<DT><B>Returns:</B><DD>the result of the arithmetic operation
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE></DL>
</DD>
</DL>
<HR>

<A NAME="mapOpCode(int)"><!-- --></A><H3>
mapOpCode</H3>
<PRE>
public static int <B>mapOpCode</B>(int&nbsp;op)</PRE>
<DL>
<DD>Map operator codes from those in the Token class to those in the Calculator class
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>op</CODE> - an operator denoted by a constant in the <A HREF="../../../../net/sf/saxon/expr/parser/Token.html" title="class in net.sf.saxon.expr.parser"><CODE>Token</CODE></A> class, for example <A HREF="../../../../net/sf/saxon/expr/parser/Token.html#PLUS"><CODE>Token.PLUS</CODE></A>
<DT><B>Returns:</B><DD>an operator denoted by a constant defined in the <A HREF="../../../../net/sf/saxon/expr/Calculator.html" title="class in net.sf.saxon.expr"><CODE>Calculator</CODE></A> class, for example
 <A HREF="../../../../net/sf/saxon/expr/Calculator.html#PLUS"><CODE>Calculator.PLUS</CODE></A></DL>
</DD>
</DL>
<HR>

<A NAME="getItemType(net.sf.saxon.type.TypeHierarchy)"><!-- --></A><H3>
getItemType</H3>
<PRE>
public <A HREF="../../../../net/sf/saxon/type/ItemType.html" title="interface in net.sf.saxon.type">ItemType</A> <B>getItemType</B>(<A HREF="../../../../net/sf/saxon/type/TypeHierarchy.html" title="class in net.sf.saxon.type">TypeHierarchy</A>&nbsp;th)</PRE>
<DL>
<DD>Determine the data type of the expression, insofar as this is known statically
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../net/sf/saxon/expr/Expression.html#getItemType(net.sf.saxon.type.TypeHierarchy)">getItemType</A></CODE> in class <CODE><A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>th</CODE> - the type hierarchy cache
<DT><B>Returns:</B><DD>the atomic type of the result of this arithmetic expression</DL>
</DD>
</DL>
<HR>

<A NAME="evaluateItem(net.sf.saxon.expr.XPathContext)"><!-- --></A><H3>
evaluateItem</H3>
<PRE>
public <A HREF="../../../../net/sf/saxon/om/Item.html" title="interface in net.sf.saxon.om">Item</A> <B>evaluateItem</B>(<A HREF="../../../../net/sf/saxon/expr/XPathContext.html" title="interface in net.sf.saxon.expr">XPathContext</A>&nbsp;context)
                  throws <A HREF="../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE>
<DL>
<DD>Evaluate the expression.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../net/sf/saxon/expr/Expression.html#evaluateItem(net.sf.saxon.expr.XPathContext)">evaluateItem</A></CODE> in class <CODE><A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>context</CODE> - The context in which the expression is to be evaluated
<DT><B>Returns:</B><DD>the node or atomic value that results from evaluating the
     expression; or null to indicate that the result is an empty
     sequence
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></CODE> - if any dynamic error occurs evaluating the
     expression</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>


<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../net/sf/saxon/expr/AndExpression.html" title="class in net.sf.saxon.expr"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../net/sf/saxon/expr/ArithmeticExpression10.html" title="class in net.sf.saxon.expr"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../index.html?net/sf/saxon/expr/ArithmeticExpression.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="ArithmeticExpression.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->

<HR>
Copyright (c) 2004-2011 Saxonica Limited. All rights reserved.
</BODY>
</HTML>