<!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:05 GMT 2011 --> <TITLE> CastingExpression </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="CastingExpression"; } } </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> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD> <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> </TR> </TABLE> </TD> <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM> </EM> </TD> </TR> <TR> <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../net/sf/saxon/expr/CastExpression.html" title="class in net.sf.saxon.expr"><B>PREV CLASS</B></A> <A HREF="../../../../net/sf/saxon/expr/CollationMap.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/CastingExpression.html" target="_top"><B>FRAMES</B></A> <A HREF="CastingExpression.html" target="_top"><B>NO FRAMES</B></A> <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: NESTED | <A HREF="#field_summary">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD> <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> DETAIL: <A HREF="#field_detail">FIELD</A> | <A HREF="#constructor_detail">CONSTR</A> | <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 CastingExpression</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/UnaryExpression.html" title="class in net.sf.saxon.expr">net.sf.saxon.expr.UnaryExpression</A> <IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>net.sf.saxon.expr.CastingExpression</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> <DL> <DT><B>Direct Known Subclasses:</B> <DD><A HREF="../../../../net/sf/saxon/expr/CastableExpression.html" title="class in net.sf.saxon.expr">CastableExpression</A>, <A HREF="../../../../net/sf/saxon/expr/CastExpression.html" title="class in net.sf.saxon.expr">CastExpression</A></DD> </DL> <HR> <DL> <DT><PRE>public abstract class <B>CastingExpression</B><DT>extends <A HREF="../../../../net/sf/saxon/expr/UnaryExpression.html" title="class in net.sf.saxon.expr">UnaryExpression</A></DL> </PRE> <P> Casting Expression: abstract superclass for "cast as X" and "castable as X", which share a good deal of logic <P> <P> <DL> <DT><B>See Also:</B><DD><A HREF="../../../../serialized-form.html#net.sf.saxon.expr.CastingExpression">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 <A HREF="../../../../net/sf/saxon/type/Converter.html" title="class in net.sf.saxon.type">Converter</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/CastingExpression.html#converter">converter</A></B></CODE> <BR> </TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE>protected <A HREF="../../../../net/sf/saxon/om/NamespaceResolver.html" title="interface in net.sf.saxon.om">NamespaceResolver</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/CastingExpression.html#nsResolver">nsResolver</A></B></CODE> <BR> </TD> </TR> </TABLE> <A NAME="fields_inherited_from_class_net.sf.saxon.expr.UnaryExpression"><!-- --></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/UnaryExpression.html" title="class in net.sf.saxon.expr">UnaryExpression</A></B></TH> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD><CODE><A HREF="../../../../net/sf/saxon/expr/UnaryExpression.html#operand">operand</A></CODE></TD> </TR> </TABLE> <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> <!-- ======== 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/CastingExpression.html#CastingExpression(net.sf.saxon.expr.Expression, net.sf.saxon.type.AtomicType, boolean)">CastingExpression</A></B>(<A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> source, <A HREF="../../../../net/sf/saxon/type/AtomicType.html" title="interface in net.sf.saxon.type">AtomicType</A> target, boolean allowEmpty)</CODE> <BR> Create a cast expression</TD> </TR> </TABLE> <!-- ========== 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> boolean</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/CastingExpression.html#allowsEmpty()">allowsEmpty</A></B>()</CODE> <BR> Ask whether the expression accepts an empty sequence as input (producing an empty sequence as output)</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> int</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/CastingExpression.html#computeSpecialProperties()">computeSpecialProperties</A></B>()</CODE> <BR> Determine the special properties of this expression</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../net/sf/saxon/type/Converter.html" title="class in net.sf.saxon.type">Converter</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/CastingExpression.html#getConverter()">getConverter</A></B>()</CODE> <BR> Get the Converter allocated to implement this cast expression, if any</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../net/sf/saxon/om/NamespaceResolver.html" title="interface in net.sf.saxon.om">NamespaceResolver</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/CastingExpression.html#getNamespaceResolver()">getNamespaceResolver</A></B>()</CODE> <BR> Get the namespace resolver, if any</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../net/sf/saxon/type/AtomicType.html" title="interface in net.sf.saxon.type">AtomicType</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/CastingExpression.html#getTargetPrimitiveType()">getTargetPrimitiveType</A></B>()</CODE> <BR> Get the primitive base type of the target type of the cast</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <A HREF="../../../../net/sf/saxon/type/AtomicType.html" title="interface in net.sf.saxon.type">AtomicType</A></CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/CastingExpression.html#getTargetType()">getTargetType</A></B>()</CODE> <BR> Get the target type (the result type)</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> boolean</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/CastingExpression.html#isOperandIsStringLiteral()">isOperandIsStringLiteral</A></B>()</CODE> <BR> Ask whether the operand to the cast expression was supplied in the form of a string literal.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/CastingExpression.html#setAllowEmpty(boolean)">setAllowEmpty</A></B>(boolean allow)</CODE> <BR> Say whether the expression accepts an empty sequence as input (producing an empty sequence as output)</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/CastingExpression.html#setNamespaceResolver(net.sf.saxon.om.NamespaceResolver)">setNamespaceResolver</A></B>(<A HREF="../../../../net/sf/saxon/om/NamespaceResolver.html" title="interface in net.sf.saxon.om">NamespaceResolver</A> resolver)</CODE> <BR> Set the namespace resolver, if any</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/CastingExpression.html#setOperandIsStringLiteral(boolean)">setOperandIsStringLiteral</A></B>(boolean option)</CODE> <BR> Say whether the operand to the cast expression was supplied in the form of a string literal.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../../net/sf/saxon/expr/CastingExpression.html#setTargetType(net.sf.saxon.type.AtomicType)">setTargetType</A></B>(<A HREF="../../../../net/sf/saxon/type/AtomicType.html" title="interface in net.sf.saxon.type">AtomicType</A> type)</CODE> <BR> Set the target type</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> <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/CastingExpression.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> visitor)</CODE> <BR> Simplify the expression</TD> </TR> </TABLE> <A NAME="methods_inherited_from_class_net.sf.saxon.expr.UnaryExpression"><!-- --></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/UnaryExpression.html" title="class in net.sf.saxon.expr">UnaryExpression</A></B></TH> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD><CODE><A HREF="../../../../net/sf/saxon/expr/UnaryExpression.html#computeCardinality()">computeCardinality</A>, <A HREF="../../../../net/sf/saxon/expr/UnaryExpression.html#displayOperator(net.sf.saxon.Configuration)">displayOperator</A>, <A HREF="../../../../net/sf/saxon/expr/UnaryExpression.html#equals(java.lang.Object)">equals</A>, <A HREF="../../../../net/sf/saxon/expr/UnaryExpression.html#explain(net.sf.saxon.trace.ExpressionPresenter)">explain</A>, <A HREF="../../../../net/sf/saxon/expr/UnaryExpression.html#getBaseExpression()">getBaseExpression</A>, <A HREF="../../../../net/sf/saxon/expr/UnaryExpression.html#getItemType(net.sf.saxon.type.TypeHierarchy)">getItemType</A>, <A HREF="../../../../net/sf/saxon/expr/UnaryExpression.html#hashCode()">hashCode</A>, <A HREF="../../../../net/sf/saxon/expr/UnaryExpression.html#iterateSubExpressions()">iterateSubExpressions</A>, <A HREF="../../../../net/sf/saxon/expr/UnaryExpression.html#optimize(net.sf.saxon.expr.parser.ExpressionVisitor, net.sf.saxon.expr.parser.ExpressionVisitor.ContextItemType)">optimize</A>, <A HREF="../../../../net/sf/saxon/expr/UnaryExpression.html#promote(net.sf.saxon.expr.parser.PromotionOffer, net.sf.saxon.expr.Expression)">promote</A>, <A HREF="../../../../net/sf/saxon/expr/UnaryExpression.html#replaceSubExpression(net.sf.saxon.expr.Expression, net.sf.saxon.expr.Expression)">replaceSubExpression</A>, <A HREF="../../../../net/sf/saxon/expr/UnaryExpression.html#toString()">toString</A>, <A HREF="../../../../net/sf/saxon/expr/UnaryExpression.html#typeCheck(net.sf.saxon.expr.parser.ExpressionVisitor, net.sf.saxon.expr.parser.ExpressionVisitor.ContextItemType)">typeCheck</A></CODE></TD> </TR> </TABLE> <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#copy()">copy</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#evaluateItem(net.sf.saxon.expr.XPathContext)">evaluateItem</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#getExpressionName()">getExpressionName</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#getIntegerBounds()">getIntegerBounds</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#setFlattened(boolean)">setFlattened</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> <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> <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="converter"><!-- --></A><H3> converter</H3> <PRE> protected <A HREF="../../../../net/sf/saxon/type/Converter.html" title="class in net.sf.saxon.type">Converter</A> <B>converter</B></PRE> <DL> <DL> </DL> </DL> <HR> <A NAME="nsResolver"><!-- --></A><H3> nsResolver</H3> <PRE> protected <A HREF="../../../../net/sf/saxon/om/NamespaceResolver.html" title="interface in net.sf.saxon.om">NamespaceResolver</A> <B>nsResolver</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="CastingExpression(net.sf.saxon.expr.Expression, net.sf.saxon.type.AtomicType, boolean)"><!-- --></A><H3> CastingExpression</H3> <PRE> public <B>CastingExpression</B>(<A HREF="../../../../net/sf/saxon/expr/Expression.html" title="class in net.sf.saxon.expr">Expression</A> source, <A HREF="../../../../net/sf/saxon/type/AtomicType.html" title="interface in net.sf.saxon.type">AtomicType</A> target, boolean allowEmpty)</PRE> <DL> <DD>Create a cast expression <P> <DL> <DT><B>Parameters:</B><DD><CODE>source</CODE> - expression giving the value to be converted<DD><CODE>target</CODE> - the type to which the value is to be converted<DD><CODE>allowEmpty</CODE> - true if the expression allows an empty sequence as input, producing an empty sequence as output. If false, an empty sequence is a type error.</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="getTargetPrimitiveType()"><!-- --></A><H3> getTargetPrimitiveType</H3> <PRE> public <A HREF="../../../../net/sf/saxon/type/AtomicType.html" title="interface in net.sf.saxon.type">AtomicType</A> <B>getTargetPrimitiveType</B>()</PRE> <DL> <DD>Get the primitive base type of the target type of the cast <P> <DD><DL> <DT><B>Returns:</B><DD>the primitive type of the target type</DL> </DD> </DL> <HR> <A NAME="setTargetType(net.sf.saxon.type.AtomicType)"><!-- --></A><H3> setTargetType</H3> <PRE> public void <B>setTargetType</B>(<A HREF="../../../../net/sf/saxon/type/AtomicType.html" title="interface in net.sf.saxon.type">AtomicType</A> type)</PRE> <DL> <DD>Set the target type <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>type</CODE> - the target type for the cast</DL> </DD> </DL> <HR> <A NAME="getTargetType()"><!-- --></A><H3> getTargetType</H3> <PRE> public <A HREF="../../../../net/sf/saxon/type/AtomicType.html" title="interface in net.sf.saxon.type">AtomicType</A> <B>getTargetType</B>()</PRE> <DL> <DD>Get the target type (the result type) <P> <DD><DL> <DT><B>Returns:</B><DD>the target type</DL> </DD> </DL> <HR> <A NAME="setAllowEmpty(boolean)"><!-- --></A><H3> setAllowEmpty</H3> <PRE> public void <B>setAllowEmpty</B>(boolean allow)</PRE> <DL> <DD>Say whether the expression accepts an empty sequence as input (producing an empty sequence as output) <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>allow</CODE> - true if an empty sequence is accepted</DL> </DD> </DL> <HR> <A NAME="allowsEmpty()"><!-- --></A><H3> allowsEmpty</H3> <PRE> public boolean <B>allowsEmpty</B>()</PRE> <DL> <DD>Ask whether the expression accepts an empty sequence as input (producing an empty sequence as output) <P> <DD><DL> <DT><B>Returns:</B><DD>true if an empty sequence is accepted</DL> </DD> </DL> <HR> <A NAME="setOperandIsStringLiteral(boolean)"><!-- --></A><H3> setOperandIsStringLiteral</H3> <PRE> public void <B>setOperandIsStringLiteral</B>(boolean option)</PRE> <DL> <DD>Say whether the operand to the cast expression was supplied in the form of a string literal. This is relevant only for XPath 2.0 / XQuery 1.0, and then only when the target type is a QName or NOTATION. <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>option</CODE> - true if the operand was supplied as a string literal</DL> </DD> </DL> <HR> <A NAME="isOperandIsStringLiteral()"><!-- --></A><H3> isOperandIsStringLiteral</H3> <PRE> public boolean <B>isOperandIsStringLiteral</B>()</PRE> <DL> <DD>Ask whether the operand to the cast expression was supplied in the form of a string literal. This is relevant only for XPath 2.0 / XQuery 1.0, and then only when the target type is a QName or NOTATION. <P> <DD><DL> <DT><B>Returns:</B><DD>true if the operand was supplied as a string literal</DL> </DD> </DL> <HR> <A NAME="getConverter()"><!-- --></A><H3> getConverter</H3> <PRE> public <A HREF="../../../../net/sf/saxon/type/Converter.html" title="class in net.sf.saxon.type">Converter</A> <B>getConverter</B>()</PRE> <DL> <DD>Get the Converter allocated to implement this cast expression, if any <P> <DD><DL> <DT><B>Returns:</B><DD>the Converter if one has been statically allocated, or null if not</DL> </DD> </DL> <HR> <A NAME="setNamespaceResolver(net.sf.saxon.om.NamespaceResolver)"><!-- --></A><H3> setNamespaceResolver</H3> <PRE> public void <B>setNamespaceResolver</B>(<A HREF="../../../../net/sf/saxon/om/NamespaceResolver.html" title="interface in net.sf.saxon.om">NamespaceResolver</A> resolver)</PRE> <DL> <DD>Set the namespace resolver, if any <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>resolver</CODE> - the namespace resolver to be used if the target type is namespace-sensitive</DL> </DD> </DL> <HR> <A NAME="getNamespaceResolver()"><!-- --></A><H3> getNamespaceResolver</H3> <PRE> public <A HREF="../../../../net/sf/saxon/om/NamespaceResolver.html" title="interface in net.sf.saxon.om">NamespaceResolver</A> <B>getNamespaceResolver</B>()</PRE> <DL> <DD>Get the namespace resolver, if any <P> <DD><DL> <DT><B>Returns:</B><DD>the namespace resolver that was statically allocated if the target type is namespace-sensitive</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> visitor) throws <A HREF="../../../../net/sf/saxon/trans/XPathException.html" title="class in net.sf.saxon.trans">XPathException</A></PRE> <DL> <DD>Simplify the expression <P> <DD><DL> <DT><B>Overrides:</B><DD><CODE><A HREF="../../../../net/sf/saxon/expr/UnaryExpression.html#simplify(net.sf.saxon.expr.parser.ExpressionVisitor)">simplify</A></CODE> in class <CODE><A HREF="../../../../net/sf/saxon/expr/UnaryExpression.html" title="class in net.sf.saxon.expr">UnaryExpression</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="computeSpecialProperties()"><!-- --></A><H3> computeSpecialProperties</H3> <PRE> public int <B>computeSpecialProperties</B>()</PRE> <DL> <DD>Determine the special properties of this expression <P> <DD><DL> <DT><B>Overrides:</B><DD><CODE><A HREF="../../../../net/sf/saxon/expr/UnaryExpression.html#computeSpecialProperties()">computeSpecialProperties</A></CODE> in class <CODE><A HREF="../../../../net/sf/saxon/expr/UnaryExpression.html" title="class in net.sf.saxon.expr">UnaryExpression</A></CODE></DL> </DD> <DD><DL> <DT><B>Returns:</B><DD><A HREF="../../../../net/sf/saxon/expr/StaticProperty.html#NON_CREATIVE"><CODE>StaticProperty.NON_CREATIVE</CODE></A>.</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> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD> <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> </TR> </TABLE> </TD> <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM> </EM> </TD> </TR> <TR> <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../net/sf/saxon/expr/CastExpression.html" title="class in net.sf.saxon.expr"><B>PREV CLASS</B></A> <A HREF="../../../../net/sf/saxon/expr/CollationMap.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/CastingExpression.html" target="_top"><B>FRAMES</B></A> <A HREF="CastingExpression.html" target="_top"><B>NO FRAMES</B></A> <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: NESTED | <A HREF="#field_summary">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD> <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> DETAIL: <A HREF="#field_detail">FIELD</A> | <A HREF="#constructor_detail">CONSTR</A> | <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>