Home | History | Annotate | Download | only in dexmaker
      1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
      2 <!--NewPage-->
      3 <HTML>
      4 <HEAD>
      5 <!-- Generated by javadoc (build 1.6.0_26) on Tue Jan 10 12:29:35 EST 2012 -->
      6 <TITLE>
      7 Code (dexmaker)
      8 </TITLE>
      9 
     10 <META NAME="date" CONTENT="2012-01-10">
     11 
     12 <LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
     13 
     14 <SCRIPT type="text/javascript">
     15 function windowTitle()
     16 {
     17     if (location.href.indexOf('is-external=true') == -1) {
     18         parent.document.title="Code (dexmaker)";
     19     }
     20 }
     21 </SCRIPT>
     22 <NOSCRIPT>
     23 </NOSCRIPT>
     24 
     25 </HEAD>
     26 
     27 <BODY BGCOLOR="white" onload="windowTitle();">
     28 <HR>
     29 
     30 
     31 <!-- ========= START OF TOP NAVBAR ======= -->
     32 <A NAME="navbar_top"><!-- --></A>
     33 <A HREF="#skip-navbar_top" title="Skip navigation links"></A>
     34 <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
     35 <TR>
     36 <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
     37 <A NAME="navbar_top_firstrow"><!-- --></A>
     38 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
     39   <TR ALIGN="center" VALIGN="top">
     40   <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
     41   <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
     42   <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
     43   <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
     44   <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
     45   <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
     46   <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
     47   </TR>
     48 </TABLE>
     49 </TD>
     50 <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
     51 </EM>
     52 </TD>
     53 </TR>
     54 
     55 <TR>
     56 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
     57 &nbsp;<A HREF="../../../com/google/dexmaker/BinaryOp.html" title="enum in com.google.dexmaker"><B>PREV CLASS</B></A>&nbsp;
     58 &nbsp;<A HREF="../../../com/google/dexmaker/Comparison.html" title="enum in com.google.dexmaker"><B>NEXT CLASS</B></A></FONT></TD>
     59 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
     60   <A HREF="../../../index.html?com/google/dexmaker/Code.html" target="_top"><B>FRAMES</B></A>  &nbsp;
     61 &nbsp;<A HREF="Code.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
     62 &nbsp;<SCRIPT type="text/javascript">
     63   <!--
     64   if(window==top) {
     65     document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
     66   }
     67   //-->
     68 </SCRIPT>
     69 <NOSCRIPT>
     70   <A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
     71 </NOSCRIPT>
     72 
     73 
     74 </FONT></TD>
     75 </TR>
     76 <TR>
     77 <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
     78   SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
     79 <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
     80 DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
     81 </TR>
     82 </TABLE>
     83 <A NAME="skip-navbar_top"></A>
     84 <!-- ========= END OF TOP NAVBAR ========= -->
     85 
     86 <HR>
     87 <!-- ======== START OF CLASS DATA ======== -->
     88 <H2>
     89 <FONT SIZE="-1">
     90 com.google.dexmaker</FONT>
     91 <BR>
     92 Class Code</H2>
     93 <PRE>
     94 <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>
     95   <IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.google.dexmaker.Code</B>
     96 </PRE>
     97 <HR>
     98 <DL>
     99 <DT><PRE>public final class <B>Code</B><DT>extends <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></DL>
    100 </PRE>
    101 
    102 <P>
    103 Builds a sequence of instructions.
    104 
    105  <h3>Locals</h3>
    106  All data manipulation takes place in local variables. Each parameter gets its
    107  own local by default; access these using <A HREF="../../../com/google/dexmaker/Code.html#getParameter(int, com.google.dexmaker.TypeId)"><CODE>getParameter()</CODE></A>. Non-static methods and constructors also have a <code>this</code>
    108  parameter; it's available as <A HREF="../../../com/google/dexmaker/Code.html#getThis(com.google.dexmaker.TypeId)"><CODE>getThis()</CODE></A>. Allocate a new local
    109  variable using <A HREF="../../../com/google/dexmaker/Code.html#newLocal(com.google.dexmaker.TypeId)"><CODE>newLocal()</CODE></A>, and assign a default value to it
    110  with <A HREF="../../../com/google/dexmaker/Code.html#loadConstant(com.google.dexmaker.Local, T)"><CODE>loadConstant()</CODE></A>. Copy a value from one local to
    111  another with <A HREF="../../../com/google/dexmaker/Code.html#move(com.google.dexmaker.Local, com.google.dexmaker.Local)"><CODE>move()</CODE></A>.
    112 
    113  <p>Every local variable has a fixed type. This is either a primitive type (of
    114  any size) or a reference type.  This class emits instructions appropriate to
    115  the types they operate on. Not all operations are local on all types;
    116  attempting to emit such an operation will fail with an unchecked exception.
    117 
    118  <h3>Math and Bit Operations</h3>
    119  Transform a single value into another related value using <A HREF="../../../com/google/dexmaker/Code.html#op(com.google.dexmaker.UnaryOp, com.google.dexmaker.Local, com.google.dexmaker.Local)"><CODE>op(UnaryOp, Local, Local)</CODE></A>. Transform two values
    120  into a third value using <A HREF="../../../com/google/dexmaker/Code.html#op(com.google.dexmaker.BinaryOp, com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local)"><CODE>op(BinaryOp,
    121  Local, Local, Local)</CODE></A>. In either overload the first <code>Local</code> parameter
    122  is where the result will be sent; the other <code>Local</code> parameters are the
    123  inputs.
    124 
    125  <h3>Comparisons</h3>
    126  There are three different comparison operations each with different
    127  constraints:
    128  <ul>
    129      <li><A HREF="../../../com/google/dexmaker/Code.html#compareLongs(com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local)"><CODE>compareLongs()</CODE></A> compares two locals each
    130          containing a <code>long</code> primitive. This is the only operation that
    131          can compare longs. The result of the comparison is written to another
    132          <code>int</code> local.</li>
    133      <li><A HREF="../../../com/google/dexmaker/Code.html#compareFloatingPoint(com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local, int)"><CODE>compareFloatingPoint()</CODE></A> compares two
    134          locals; both <code>float</code> primitives or both <code>double</code>
    135          primitives. This is the only operation that can compare floating
    136          point values. This comparison takes an extra parameter that sets
    137          the desired result if either parameter is <code>NaN</code>. The result of
    138          the comparison is wrtten to another <code>int</code> local.
    139      <li><A HREF="../../../com/google/dexmaker/Code.html#compare(com.google.dexmaker.Comparison, com.google.dexmaker.Label, com.google.dexmaker.Local, com.google.dexmaker.Local)"><CODE>compare()</CODE></A> compares two locals. The <A HREF="../../../com/google/dexmaker/Comparison.html#EQ"><CODE>Comparison.EQ</CODE></A> and <A HREF="../../../com/google/dexmaker/Comparison.html#NE"><CODE>Comparison.NE</CODE></A> options compare either
    140          <code>int</code> primitives or references. The other options compare only
    141          <code>int</code> primitives. This comparison takes a <A HREF="../../../com/google/dexmaker/Label.html" title="class in com.google.dexmaker"><CODE>Label</CODE></A> that
    142          will be jumped to if the comparison is true. If the comparison is
    143          false the next instruction in sequence will be executed.
    144  </ul>
    145  There's no single operation to compare longs and jump, or to compare ints and
    146  store the result in a local. Accomplish these goals by chaining multiple
    147  operations together.
    148 
    149  <h3>Branches, Labels and Returns</h3>
    150  Basic control flow is expressed using jumps and labels. Each label must be
    151  marked exactly once and may be jumped to any number of times. Create a label
    152  using its constructor: <code>new Label()</code>, and mark it using <A HREF="../../../com/google/dexmaker/Code.html#mark(com.google.dexmaker.Label)"><CODE>mark(Label)</CODE></A>. All jumps to a label will execute instructions starting from
    153  that label. You can jump to a label that hasn't yet been marked (jumping
    154  forward) or to a label that has already been marked (jumping backward). Jump
    155  unconditionally with <A HREF="../../../com/google/dexmaker/Code.html#jump(com.google.dexmaker.Label)"><CODE>jump(Label)</CODE></A> or conditionally based on a
    156  comparison using <A HREF="../../../com/google/dexmaker/Code.html#compare(com.google.dexmaker.Comparison, com.google.dexmaker.Label, com.google.dexmaker.Local, com.google.dexmaker.Local)"><CODE>compare()</CODE></A>.
    157 
    158  <p>Most methods should contain either a return instruction. Void methods
    159  should use <A HREF="../../../com/google/dexmaker/Code.html#returnVoid()"><CODE>returnVoid()</CODE></A>; non-void methods should use <A HREF="../../../com/google/dexmaker/Code.html#returnValue(com.google.dexmaker.Local)"><CODE>returnValue()</CODE></A> with a local whose return type matches the
    160  method's return type. Constructors are considered void methods and should
    161  call <A HREF="../../../com/google/dexmaker/Code.html#returnVoid()"><CODE>returnVoid()</CODE></A>. Methods may make multiple returns. Methods
    162  containing no return statements must either loop infinitely or throw
    163  unconditionally; it is not legal to end a sequence of instructions without a
    164  jump, return or throw.
    165 
    166  <h3>Throwing and Catching</h3>
    167  This API uses labels to handle thrown exceptions, errors and throwables. Call
    168  <A HREF="../../../com/google/dexmaker/Code.html#addCatchClause(com.google.dexmaker.TypeId, com.google.dexmaker.Label)"><CODE>addCatchClause()</CODE></A> to register the target label and
    169  throwable class. All statements that follow will jump to that catch clause if
    170  they throw a <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang"><CODE>Throwable</CODE></A> assignable to that type. Use <A HREF="../../../com/google/dexmaker/Code.html#removeCatchClause(com.google.dexmaker.TypeId)"><CODE>removeCatchClause()</CODE></A> to unregister the throwable class.
    171 
    172  <p>Throw an throwable by first assigning it to a local and then calling
    173  <A HREF="../../../com/google/dexmaker/Code.html#throwValue(com.google.dexmaker.Local)"><CODE>throwValue()</CODE></A>. Control flow will jump to the nearest label
    174  assigned to a type assignable to the thrown type. In this context, "nearest"
    175  means the label requiring the fewest stack frames to be popped.
    176 
    177  <h3>Calling methods</h3>
    178  A method's caller must know its return type, name, parameters, and invoke
    179  kind. Lookup a method on a type using <A HREF="../../../com/google/dexmaker/TypeId.html#getMethod(com.google.dexmaker.TypeId, java.lang.String, com.google.dexmaker.TypeId...)"><CODE>TypeId.getMethod()</CODE></A>. This is more onerous than Java language invokes, which
    180  can infer the target method using the target object and parameters. There are
    181  four invoke kinds:
    182  <ul>
    183      <li><A HREF="../../../com/google/dexmaker/Code.html#invokeStatic(com.google.dexmaker.MethodId, com.google.dexmaker.Local, com.google.dexmaker.Local...)"><CODE>invokeStatic()</CODE></A> is used for static methods.</li>
    184      <li><A HREF="../../../com/google/dexmaker/Code.html#invokeDirect(com.google.dexmaker.MethodId, com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local...)"><CODE>invokeDirect()</CODE></A> is used for private instance
    185          methods and for constructors to call their superclass's
    186          constructor.</li>
    187      <li><A HREF="../../../com/google/dexmaker/Code.html#invokeInterface(com.google.dexmaker.MethodId, com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local...)"><CODE>invokeInterface()</CODE></A> is used to invoke a method
    188          whose declaring type is an interface.</li>
    189      <li><A HREF="../../../com/google/dexmaker/Code.html#invokeVirtual(com.google.dexmaker.MethodId, com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local...)"><CODE>invokeVirtual()</CODE></A> is used to invoke any other
    190          method. The target must not be static, private, a constructor, or an
    191          interface method.</li>
    192      <li><A HREF="../../../com/google/dexmaker/Code.html#invokeSuper(com.google.dexmaker.MethodId, com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local...)"><CODE>invokeSuper()</CODE></A> is used to invoke the closest
    193          superclass's virtual method. The target must not be static, private,
    194          a constructor method, or an interface method.</li>
    195      <li><A HREF="../../../com/google/dexmaker/Code.html#newInstance(com.google.dexmaker.Local, com.google.dexmaker.MethodId, com.google.dexmaker.Local...)"><CODE>newInstance()</CODE></A> is used to invoke a
    196          constructor.</li>
    197  </ul>
    198  All invoke methods take a local for the return value. For void methods this
    199  local is unused and may be null.
    200 
    201  <h3>Field Access</h3>
    202  Read static fields using <A HREF="../../../com/google/dexmaker/Code.html#sget(com.google.dexmaker.FieldId, com.google.dexmaker.Local)"><CODE>sget()</CODE></A>; write them using <A HREF="../../../com/google/dexmaker/Code.html#sput(com.google.dexmaker.FieldId, com.google.dexmaker.Local)"><CODE>sput()</CODE></A>. For instance values you'll need to specify the declaring
    203  instance; use <A HREF="../../../com/google/dexmaker/Code.html#getThis(com.google.dexmaker.TypeId)"><CODE>getThis()</CODE></A> in an instance method to use <code>this</code>. Read instance values using <A HREF="../../../com/google/dexmaker/Code.html#iget(com.google.dexmaker.FieldId, com.google.dexmaker.Local, com.google.dexmaker.Local)"><CODE>iget()</CODE></A> and write them with
    204  <A HREF="../../../com/google/dexmaker/Code.html#iput(com.google.dexmaker.FieldId, com.google.dexmaker.Local, com.google.dexmaker.Local)"><CODE>iput()</CODE></A>.
    205 
    206  <h3>Array Access</h3>
    207  Allocate an array using <A HREF="../../../com/google/dexmaker/Code.html#newArray(com.google.dexmaker.Local, com.google.dexmaker.Local)"><CODE>newArray()</CODE></A>. Read an array's length
    208  with <A HREF="../../../com/google/dexmaker/Code.html#arrayLength(com.google.dexmaker.Local, com.google.dexmaker.Local)"><CODE>arrayLength()</CODE></A> and its elements with <A HREF="../../../com/google/dexmaker/Code.html#aget(com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local)"><CODE>aget()</CODE></A>. Write an array's elements with <A HREF="../../../com/google/dexmaker/Code.html#aput(com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local)"><CODE>aput()</CODE></A>.
    209 
    210  <h3>Types</h3>
    211  Use <A HREF="../../../com/google/dexmaker/Code.html#cast(com.google.dexmaker.Local, com.google.dexmaker.Local)"><CODE>cast()</CODE></A> to perform either a <strong>numeric cast</strong> or
    212  a <strong>type cast</strong>. Interrogate the type of a value in a local
    213  using <A HREF="../../../com/google/dexmaker/Code.html#instanceOfType(com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.TypeId)"><CODE>instanceOfType()</CODE></A>.
    214 
    215  <h3>Synchronization</h3>
    216  Acquire a monitor using <A HREF="../../../com/google/dexmaker/Code.html#monitorEnter(com.google.dexmaker.Local)"><CODE>monitorEnter()</CODE></A>; release it with
    217  <A HREF="../../../com/google/dexmaker/Code.html#monitorExit(com.google.dexmaker.Local)"><CODE>monitorExit()</CODE></A>. It is the caller's responsibility to
    218  guarantee that enter and exit calls are balanced, even in the presence of
    219  exceptions thrown.
    220 
    221  <strong>Warning:</strong> Even if a method has the <code>synchronized</code> flag,
    222  dex requires instructions to acquire and release monitors manually. A method
    223  declared with <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/reflect/Modifier.html?is-external=true#SYNCHRONIZED" title="class or interface in java.lang.reflect"><CODE>SYNCHRONIZED</CODE></A>
    224  but without manual calls to <code>monitorEnter()</code> and <code>monitorExit()</code>
    225  will not be synchronized when executed.
    226 <P>
    227 
    228 <P>
    229 <HR>
    230 
    231 <P>
    232 
    233 <!-- ========== METHOD SUMMARY =========== -->
    234 
    235 <A NAME="method_summary"><!-- --></A>
    236 <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
    237 <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
    238 <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
    239 <B>Method Summary</B></FONT></TH>
    240 </TR>
    241 <TR BGCOLOR="white" CLASS="TableRowColor">
    242 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    243 <CODE>&nbsp;void</CODE></FONT></TD>
    244 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#addCatchClause(com.google.dexmaker.TypeId, com.google.dexmaker.Label)">addCatchClause</A></B>(<A HREF="../../../com/google/dexmaker/TypeId.html" title="class in com.google.dexmaker">TypeId</A>&lt;? extends <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</A>&gt;&nbsp;toCatch,
    245                <A HREF="../../../com/google/dexmaker/Label.html" title="class in com.google.dexmaker">Label</A>&nbsp;catchClause)</CODE>
    246 
    247 <BR>
    248 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Registers <code>catchClause</code> as a branch target for all instructions
    249  in this frame that throw a class assignable to <code>toCatch</code>.</TD>
    250 </TR>
    251 <TR BGCOLOR="white" CLASS="TableRowColor">
    252 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    253 <CODE>&nbsp;void</CODE></FONT></TD>
    254 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#aget(com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local)">aget</A></B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;&nbsp;target,
    255      <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;&nbsp;array,
    256      <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</A>&gt;&nbsp;index)</CODE>
    257 
    258 <BR>
    259 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Assigns <code>target</code> to the element of <code>array</code> at index <code>index</code>.</TD>
    260 </TR>
    261 <TR BGCOLOR="white" CLASS="TableRowColor">
    262 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    263 <CODE>&nbsp;void</CODE></FONT></TD>
    264 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#aput(com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local)">aput</A></B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;&nbsp;array,
    265      <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</A>&gt;&nbsp;index,
    266      <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;&nbsp;source)</CODE>
    267 
    268 <BR>
    269 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the element at <code>index</code> in <code>array</code> the value in <code>source</code>.</TD>
    270 </TR>
    271 <TR BGCOLOR="white" CLASS="TableRowColor">
    272 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    273 <CODE>
    274 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
    275 <TR ALIGN="right" VALIGN="">
    276 <TD NOWRAP><FONT SIZE="-1">
    277 <CODE>&lt;T&gt; void</CODE></FONT></TD>
    278 </TR>
    279 </TABLE>
    280 </CODE></FONT></TD>
    281 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#arrayLength(com.google.dexmaker.Local, com.google.dexmaker.Local)">arrayLength</A></B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</A>&gt;&nbsp;target,
    282             <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;array)</CODE>
    283 
    284 <BR>
    285 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets <code>target</code> to the length of the array in <code>array</code>.</TD>
    286 </TR>
    287 <TR BGCOLOR="white" CLASS="TableRowColor">
    288 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    289 <CODE>&nbsp;void</CODE></FONT></TD>
    290 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#cast(com.google.dexmaker.Local, com.google.dexmaker.Local)">cast</A></B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;&nbsp;target,
    291      <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;&nbsp;source)</CODE>
    292 
    293 <BR>
    294 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Performs either a numeric cast or a type cast.</TD>
    295 </TR>
    296 <TR BGCOLOR="white" CLASS="TableRowColor">
    297 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    298 <CODE>
    299 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
    300 <TR ALIGN="right" VALIGN="">
    301 <TD NOWRAP><FONT SIZE="-1">
    302 <CODE>&lt;T&gt; void</CODE></FONT></TD>
    303 </TR>
    304 </TABLE>
    305 </CODE></FONT></TD>
    306 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#compare(com.google.dexmaker.Comparison, com.google.dexmaker.Label, com.google.dexmaker.Local, com.google.dexmaker.Local)">compare</A></B>(<A HREF="../../../com/google/dexmaker/Comparison.html" title="enum in com.google.dexmaker">Comparison</A>&nbsp;comparison,
    307         <A HREF="../../../com/google/dexmaker/Label.html" title="class in com.google.dexmaker">Label</A>&nbsp;trueLabel,
    308         <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;a,
    309         <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;b)</CODE>
    310 
    311 <BR>
    312 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Compare ints or references.</TD>
    313 </TR>
    314 <TR BGCOLOR="white" CLASS="TableRowColor">
    315 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    316 <CODE>
    317 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
    318 <TR ALIGN="right" VALIGN="">
    319 <TD NOWRAP><FONT SIZE="-1">
    320 <CODE>&lt;T extends <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang">Number</A>&gt; 
    321 <BR>
    322 void</CODE></FONT></TD>
    323 </TR>
    324 </TABLE>
    325 </CODE></FONT></TD>
    326 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#compareFloatingPoint(com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local, int)">compareFloatingPoint</A></B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</A>&gt;&nbsp;target,
    327                      <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;a,
    328                      <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;b,
    329                      int&nbsp;nanValue)</CODE>
    330 
    331 <BR>
    332 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Compare floats or doubles.</TD>
    333 </TR>
    334 <TR BGCOLOR="white" CLASS="TableRowColor">
    335 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    336 <CODE>&nbsp;void</CODE></FONT></TD>
    337 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#compareLongs(com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local)">compareLongs</A></B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</A>&gt;&nbsp;target,
    338              <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</A>&gt;&nbsp;a,
    339              <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</A>&gt;&nbsp;b)</CODE>
    340 
    341 <BR>
    342 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Compare longs.</TD>
    343 </TR>
    344 <TR BGCOLOR="white" CLASS="TableRowColor">
    345 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    346 <CODE>
    347 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
    348 <TR ALIGN="right" VALIGN="">
    349 <TD NOWRAP><FONT SIZE="-1">
    350 <CODE>&lt;T&gt; <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;</CODE></FONT></TD>
    351 </TR>
    352 </TABLE>
    353 </CODE></FONT></TD>
    354 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#getParameter(int, com.google.dexmaker.TypeId)">getParameter</A></B>(int&nbsp;index,
    355              <A HREF="../../../com/google/dexmaker/TypeId.html" title="class in com.google.dexmaker">TypeId</A>&lt;T&gt;&nbsp;type)</CODE>
    356 
    357 <BR>
    358 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the local for the parameter at index <code>index</code> and of type
    359  <code>type</code>.</TD>
    360 </TR>
    361 <TR BGCOLOR="white" CLASS="TableRowColor">
    362 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    363 <CODE>
    364 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
    365 <TR ALIGN="right" VALIGN="">
    366 <TD NOWRAP><FONT SIZE="-1">
    367 <CODE>&lt;T&gt; <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;</CODE></FONT></TD>
    368 </TR>
    369 </TABLE>
    370 </CODE></FONT></TD>
    371 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#getThis(com.google.dexmaker.TypeId)">getThis</A></B>(<A HREF="../../../com/google/dexmaker/TypeId.html" title="class in com.google.dexmaker">TypeId</A>&lt;T&gt;&nbsp;type)</CODE>
    372 
    373 <BR>
    374 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the local for <code>this</code> of type <code>type</code>.</TD>
    375 </TR>
    376 <TR BGCOLOR="white" CLASS="TableRowColor">
    377 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    378 <CODE>
    379 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
    380 <TR ALIGN="right" VALIGN="">
    381 <TD NOWRAP><FONT SIZE="-1">
    382 <CODE>&lt;D,V&gt; void</CODE></FONT></TD>
    383 </TR>
    384 </TABLE>
    385 </CODE></FONT></TD>
    386 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#iget(com.google.dexmaker.FieldId, com.google.dexmaker.Local, com.google.dexmaker.Local)">iget</A></B>(<A HREF="../../../com/google/dexmaker/FieldId.html" title="class in com.google.dexmaker">FieldId</A>&lt;D,V&gt;&nbsp;fieldId,
    387      <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;V&gt;&nbsp;target,
    388      <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;D&gt;&nbsp;instance)</CODE>
    389 
    390 <BR>
    391 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Copies the value in instance field <code>fieldId</code> of <code>instance</code> to
    392  <code>target</code>.</TD>
    393 </TR>
    394 <TR BGCOLOR="white" CLASS="TableRowColor">
    395 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    396 <CODE>&nbsp;void</CODE></FONT></TD>
    397 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#instanceOfType(com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.TypeId)">instanceOfType</A></B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;&nbsp;target,
    398                <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;&nbsp;source,
    399                <A HREF="../../../com/google/dexmaker/TypeId.html" title="class in com.google.dexmaker">TypeId</A>&lt;?&gt;&nbsp;type)</CODE>
    400 
    401 <BR>
    402 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tests if the value in <code>source</code> is assignable to <code>type</code>.</TD>
    403 </TR>
    404 <TR BGCOLOR="white" CLASS="TableRowColor">
    405 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    406 <CODE>
    407 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
    408 <TR ALIGN="right" VALIGN="">
    409 <TD NOWRAP><FONT SIZE="-1">
    410 <CODE>&lt;D,R&gt; void</CODE></FONT></TD>
    411 </TR>
    412 </TABLE>
    413 </CODE></FONT></TD>
    414 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#invokeDirect(com.google.dexmaker.MethodId, com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local...)">invokeDirect</A></B>(<A HREF="../../../com/google/dexmaker/MethodId.html" title="class in com.google.dexmaker">MethodId</A>&lt;D,R&gt;&nbsp;method,
    415              <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;? super R&gt;&nbsp;target,
    416              <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;? extends D&gt;&nbsp;instance,
    417              <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;...&nbsp;args)</CODE>
    418 
    419 <BR>
    420 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Calls <code>method</code> of <code>instance</code> using <code>args</code> and assigns
    421  the result to <code>target</code>.</TD>
    422 </TR>
    423 <TR BGCOLOR="white" CLASS="TableRowColor">
    424 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    425 <CODE>
    426 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
    427 <TR ALIGN="right" VALIGN="">
    428 <TD NOWRAP><FONT SIZE="-1">
    429 <CODE>&lt;D,R&gt; void</CODE></FONT></TD>
    430 </TR>
    431 </TABLE>
    432 </CODE></FONT></TD>
    433 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#invokeInterface(com.google.dexmaker.MethodId, com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local...)">invokeInterface</A></B>(<A HREF="../../../com/google/dexmaker/MethodId.html" title="class in com.google.dexmaker">MethodId</A>&lt;D,R&gt;&nbsp;method,
    434                 <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;? super R&gt;&nbsp;target,
    435                 <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;? extends D&gt;&nbsp;instance,
    436                 <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;...&nbsp;args)</CODE>
    437 
    438 <BR>
    439 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Calls the interface method <code>method</code> of <code>instance</code> using
    440  <code>args</code> and assigns the result to <code>target</code>.</TD>
    441 </TR>
    442 <TR BGCOLOR="white" CLASS="TableRowColor">
    443 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    444 <CODE>
    445 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
    446 <TR ALIGN="right" VALIGN="">
    447 <TD NOWRAP><FONT SIZE="-1">
    448 <CODE>&lt;R&gt; void</CODE></FONT></TD>
    449 </TR>
    450 </TABLE>
    451 </CODE></FONT></TD>
    452 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#invokeStatic(com.google.dexmaker.MethodId, com.google.dexmaker.Local, com.google.dexmaker.Local...)">invokeStatic</A></B>(<A HREF="../../../com/google/dexmaker/MethodId.html" title="class in com.google.dexmaker">MethodId</A>&lt;?,R&gt;&nbsp;method,
    453              <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;? super R&gt;&nbsp;target,
    454              <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;...&nbsp;args)</CODE>
    455 
    456 <BR>
    457 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Calls the static method <code>method</code> using <code>args</code> and assigns the
    458  result to <code>target</code>.</TD>
    459 </TR>
    460 <TR BGCOLOR="white" CLASS="TableRowColor">
    461 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    462 <CODE>
    463 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
    464 <TR ALIGN="right" VALIGN="">
    465 <TD NOWRAP><FONT SIZE="-1">
    466 <CODE>&lt;D,R&gt; void</CODE></FONT></TD>
    467 </TR>
    468 </TABLE>
    469 </CODE></FONT></TD>
    470 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#invokeSuper(com.google.dexmaker.MethodId, com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local...)">invokeSuper</A></B>(<A HREF="../../../com/google/dexmaker/MethodId.html" title="class in com.google.dexmaker">MethodId</A>&lt;D,R&gt;&nbsp;method,
    471             <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;? super R&gt;&nbsp;target,
    472             <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;? extends D&gt;&nbsp;instance,
    473             <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;...&nbsp;args)</CODE>
    474 
    475 <BR>
    476 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Calls the closest superclass's virtual method <code>method</code> of <code>instance</code> using <code>args</code> and assigns the result to <code>target</code>.</TD>
    477 </TR>
    478 <TR BGCOLOR="white" CLASS="TableRowColor">
    479 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    480 <CODE>
    481 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
    482 <TR ALIGN="right" VALIGN="">
    483 <TD NOWRAP><FONT SIZE="-1">
    484 <CODE>&lt;D,R&gt; void</CODE></FONT></TD>
    485 </TR>
    486 </TABLE>
    487 </CODE></FONT></TD>
    488 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#invokeVirtual(com.google.dexmaker.MethodId, com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local...)">invokeVirtual</A></B>(<A HREF="../../../com/google/dexmaker/MethodId.html" title="class in com.google.dexmaker">MethodId</A>&lt;D,R&gt;&nbsp;method,
    489               <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;? super R&gt;&nbsp;target,
    490               <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;? extends D&gt;&nbsp;instance,
    491               <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;...&nbsp;args)</CODE>
    492 
    493 <BR>
    494 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Calls the non-private instance method <code>method</code> of <code>instance</code>
    495  using <code>args</code> and assigns the result to <code>target</code>.</TD>
    496 </TR>
    497 <TR BGCOLOR="white" CLASS="TableRowColor">
    498 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    499 <CODE>
    500 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
    501 <TR ALIGN="right" VALIGN="">
    502 <TD NOWRAP><FONT SIZE="-1">
    503 <CODE>&lt;D,V&gt; void</CODE></FONT></TD>
    504 </TR>
    505 </TABLE>
    506 </CODE></FONT></TD>
    507 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#iput(com.google.dexmaker.FieldId, com.google.dexmaker.Local, com.google.dexmaker.Local)">iput</A></B>(<A HREF="../../../com/google/dexmaker/FieldId.html" title="class in com.google.dexmaker">FieldId</A>&lt;D,V&gt;&nbsp;fieldId,
    508      <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;D&gt;&nbsp;instance,
    509      <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;V&gt;&nbsp;source)</CODE>
    510 
    511 <BR>
    512 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Copies the value in <code>source</code> to the instance field <code>fieldId</code>
    513  of <code>instance</code>.</TD>
    514 </TR>
    515 <TR BGCOLOR="white" CLASS="TableRowColor">
    516 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    517 <CODE>&nbsp;void</CODE></FONT></TD>
    518 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#jump(com.google.dexmaker.Label)">jump</A></B>(<A HREF="../../../com/google/dexmaker/Label.html" title="class in com.google.dexmaker">Label</A>&nbsp;target)</CODE>
    519 
    520 <BR>
    521 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Transfers flow control to the instructions at <code>target</code>.</TD>
    522 </TR>
    523 <TR BGCOLOR="white" CLASS="TableRowColor">
    524 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    525 <CODE>
    526 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
    527 <TR ALIGN="right" VALIGN="">
    528 <TD NOWRAP><FONT SIZE="-1">
    529 <CODE>&lt;T&gt; void</CODE></FONT></TD>
    530 </TR>
    531 </TABLE>
    532 </CODE></FONT></TD>
    533 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#loadConstant(com.google.dexmaker.Local, T)">loadConstant</A></B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;target,
    534              T&nbsp;value)</CODE>
    535 
    536 <BR>
    537 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Copies the constant value <code>value</code> to <code>target</code>.</TD>
    538 </TR>
    539 <TR BGCOLOR="white" CLASS="TableRowColor">
    540 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    541 <CODE>&nbsp;void</CODE></FONT></TD>
    542 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#mark(com.google.dexmaker.Label)">mark</A></B>(<A HREF="../../../com/google/dexmaker/Label.html" title="class in com.google.dexmaker">Label</A>&nbsp;label)</CODE>
    543 
    544 <BR>
    545 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Start defining instructions for the named label.</TD>
    546 </TR>
    547 <TR BGCOLOR="white" CLASS="TableRowColor">
    548 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    549 <CODE>&nbsp;void</CODE></FONT></TD>
    550 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#monitorEnter(com.google.dexmaker.Local)">monitorEnter</A></B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;&nbsp;monitor)</CODE>
    551 
    552 <BR>
    553 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Awaits the lock on <code>monitor</code>, and acquires it.</TD>
    554 </TR>
    555 <TR BGCOLOR="white" CLASS="TableRowColor">
    556 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    557 <CODE>&nbsp;void</CODE></FONT></TD>
    558 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#monitorExit(com.google.dexmaker.Local)">monitorExit</A></B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;&nbsp;monitor)</CODE>
    559 
    560 <BR>
    561 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Releases the held lock on <code>monitor</code>.</TD>
    562 </TR>
    563 <TR BGCOLOR="white" CLASS="TableRowColor">
    564 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    565 <CODE>
    566 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
    567 <TR ALIGN="right" VALIGN="">
    568 <TD NOWRAP><FONT SIZE="-1">
    569 <CODE>&lt;T&gt; void</CODE></FONT></TD>
    570 </TR>
    571 </TABLE>
    572 </CODE></FONT></TD>
    573 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#move(com.google.dexmaker.Local, com.google.dexmaker.Local)">move</A></B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;target,
    574      <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;source)</CODE>
    575 
    576 <BR>
    577 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Copies the value in <code>source</code> to <code>target</code>.</TD>
    578 </TR>
    579 <TR BGCOLOR="white" CLASS="TableRowColor">
    580 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    581 <CODE>
    582 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
    583 <TR ALIGN="right" VALIGN="">
    584 <TD NOWRAP><FONT SIZE="-1">
    585 <CODE>&lt;T&gt; void</CODE></FONT></TD>
    586 </TR>
    587 </TABLE>
    588 </CODE></FONT></TD>
    589 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#newArray(com.google.dexmaker.Local, com.google.dexmaker.Local)">newArray</A></B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;target,
    590          <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</A>&gt;&nbsp;length)</CODE>
    591 
    592 <BR>
    593 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Assigns <code>target</code> to a newly allocated array of length <code>length</code>.</TD>
    594 </TR>
    595 <TR BGCOLOR="white" CLASS="TableRowColor">
    596 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    597 <CODE>
    598 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
    599 <TR ALIGN="right" VALIGN="">
    600 <TD NOWRAP><FONT SIZE="-1">
    601 <CODE>&lt;T&gt; void</CODE></FONT></TD>
    602 </TR>
    603 </TABLE>
    604 </CODE></FONT></TD>
    605 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#newInstance(com.google.dexmaker.Local, com.google.dexmaker.MethodId, com.google.dexmaker.Local...)">newInstance</A></B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;target,
    606             <A HREF="../../../com/google/dexmaker/MethodId.html" title="class in com.google.dexmaker">MethodId</A>&lt;T,<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</A>&gt;&nbsp;constructor,
    607             <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;...&nbsp;args)</CODE>
    608 
    609 <BR>
    610 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Calls the constructor <code>constructor</code> using <code>args</code> and assigns
    611  the new instance to <code>target</code>.</TD>
    612 </TR>
    613 <TR BGCOLOR="white" CLASS="TableRowColor">
    614 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    615 <CODE>
    616 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
    617 <TR ALIGN="right" VALIGN="">
    618 <TD NOWRAP><FONT SIZE="-1">
    619 <CODE>&lt;T&gt; <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;</CODE></FONT></TD>
    620 </TR>
    621 </TABLE>
    622 </CODE></FONT></TD>
    623 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#newLocal(com.google.dexmaker.TypeId)">newLocal</A></B>(<A HREF="../../../com/google/dexmaker/TypeId.html" title="class in com.google.dexmaker">TypeId</A>&lt;T&gt;&nbsp;type)</CODE>
    624 
    625 <BR>
    626 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Allocates a new local variable of type <code>type</code>.</TD>
    627 </TR>
    628 <TR BGCOLOR="white" CLASS="TableRowColor">
    629 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    630 <CODE>
    631 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
    632 <TR ALIGN="right" VALIGN="">
    633 <TD NOWRAP><FONT SIZE="-1">
    634 <CODE>&lt;T&gt; void</CODE></FONT></TD>
    635 </TR>
    636 </TABLE>
    637 </CODE></FONT></TD>
    638 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#op(com.google.dexmaker.BinaryOp, com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local)">op</A></B>(<A HREF="../../../com/google/dexmaker/BinaryOp.html" title="enum in com.google.dexmaker">BinaryOp</A>&nbsp;op,
    639    <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;target,
    640    <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;a,
    641    <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;b)</CODE>
    642 
    643 <BR>
    644 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Executes <code>op</code> and sets <code>target</code> to the result.</TD>
    645 </TR>
    646 <TR BGCOLOR="white" CLASS="TableRowColor">
    647 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    648 <CODE>
    649 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
    650 <TR ALIGN="right" VALIGN="">
    651 <TD NOWRAP><FONT SIZE="-1">
    652 <CODE>&lt;T&gt; void</CODE></FONT></TD>
    653 </TR>
    654 </TABLE>
    655 </CODE></FONT></TD>
    656 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#op(com.google.dexmaker.UnaryOp, com.google.dexmaker.Local, com.google.dexmaker.Local)">op</A></B>(<A HREF="../../../com/google/dexmaker/UnaryOp.html" title="enum in com.google.dexmaker">UnaryOp</A>&nbsp;op,
    657    <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;target,
    658    <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;source)</CODE>
    659 
    660 <BR>
    661 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Executes <code>op</code> and sets <code>target</code> to the result.</TD>
    662 </TR>
    663 <TR BGCOLOR="white" CLASS="TableRowColor">
    664 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    665 <CODE>&nbsp;<A HREF="../../../com/google/dexmaker/Label.html" title="class in com.google.dexmaker">Label</A></CODE></FONT></TD>
    666 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#removeCatchClause(com.google.dexmaker.TypeId)">removeCatchClause</A></B>(<A HREF="../../../com/google/dexmaker/TypeId.html" title="class in com.google.dexmaker">TypeId</A>&lt;? extends <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</A>&gt;&nbsp;toCatch)</CODE>
    667 
    668 <BR>
    669 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Deregisters the catch clause label for <code>toCatch</code> and returns it.</TD>
    670 </TR>
    671 <TR BGCOLOR="white" CLASS="TableRowColor">
    672 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    673 <CODE>&nbsp;void</CODE></FONT></TD>
    674 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#returnValue(com.google.dexmaker.Local)">returnValue</A></B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;&nbsp;result)</CODE>
    675 
    676 <BR>
    677 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the value in <code>result</code> to the calling method.</TD>
    678 </TR>
    679 <TR BGCOLOR="white" CLASS="TableRowColor">
    680 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    681 <CODE>&nbsp;void</CODE></FONT></TD>
    682 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#returnVoid()">returnVoid</A></B>()</CODE>
    683 
    684 <BR>
    685 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns from a <code>void</code> method.</TD>
    686 </TR>
    687 <TR BGCOLOR="white" CLASS="TableRowColor">
    688 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    689 <CODE>
    690 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
    691 <TR ALIGN="right" VALIGN="">
    692 <TD NOWRAP><FONT SIZE="-1">
    693 <CODE>&lt;V&gt; void</CODE></FONT></TD>
    694 </TR>
    695 </TABLE>
    696 </CODE></FONT></TD>
    697 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#sget(com.google.dexmaker.FieldId, com.google.dexmaker.Local)">sget</A></B>(<A HREF="../../../com/google/dexmaker/FieldId.html" title="class in com.google.dexmaker">FieldId</A>&lt;?,V&gt;&nbsp;fieldId,
    698      <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;V&gt;&nbsp;target)</CODE>
    699 
    700 <BR>
    701 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Copies the value in <code>target</code> to the static field <code>fieldId</code>.</TD>
    702 </TR>
    703 <TR BGCOLOR="white" CLASS="TableRowColor">
    704 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    705 <CODE>
    706 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
    707 <TR ALIGN="right" VALIGN="">
    708 <TD NOWRAP><FONT SIZE="-1">
    709 <CODE>&lt;V&gt; void</CODE></FONT></TD>
    710 </TR>
    711 </TABLE>
    712 </CODE></FONT></TD>
    713 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#sput(com.google.dexmaker.FieldId, com.google.dexmaker.Local)">sput</A></B>(<A HREF="../../../com/google/dexmaker/FieldId.html" title="class in com.google.dexmaker">FieldId</A>&lt;?,V&gt;&nbsp;fieldId,
    714      <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;V&gt;&nbsp;source)</CODE>
    715 
    716 <BR>
    717 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Copies the value in <code>source</code> to the static field <code>fieldId</code>.</TD>
    718 </TR>
    719 <TR BGCOLOR="white" CLASS="TableRowColor">
    720 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
    721 <CODE>&nbsp;void</CODE></FONT></TD>
    722 <TD><CODE><B><A HREF="../../../com/google/dexmaker/Code.html#throwValue(com.google.dexmaker.Local)">throwValue</A></B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;? extends <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</A>&gt;&nbsp;toThrow)</CODE>
    723 
    724 <BR>
    725 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Throws the throwable in <code>toThrow</code>.</TD>
    726 </TR>
    727 </TABLE>
    728 &nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
    729 <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
    730 <TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
    731 <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>
    732 </TR>
    733 <TR BGCOLOR="white" CLASS="TableRowColor">
    734 <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#equals(java.lang.Object)" title="class or interface in java.lang">equals</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#hashCode()" title="class or interface in java.lang">hashCode</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#toString()" title="class or interface in java.lang">toString</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>
    735 </TR>
    736 </TABLE>
    737 &nbsp;
    738 <P>
    739 
    740 <!-- ============ METHOD DETAIL ========== -->
    741 
    742 <A NAME="method_detail"><!-- --></A>
    743 <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
    744 <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
    745 <TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
    746 <B>Method Detail</B></FONT></TH>
    747 </TR>
    748 </TABLE>
    749 
    750 <A NAME="newLocal(com.google.dexmaker.TypeId)"><!-- --></A><H3>
    751 newLocal</H3>
    752 <PRE>
    753 public &lt;T&gt; <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt; <B>newLocal</B>(<A HREF="../../../com/google/dexmaker/TypeId.html" title="class in com.google.dexmaker">TypeId</A>&lt;T&gt;&nbsp;type)</PRE>
    754 <DL>
    755 <DD>Allocates a new local variable of type <code>type</code>. It is an error to
    756  allocate a local after instructions have been emitted.
    757 <P>
    758 <DD><DL>
    759 </DL>
    760 </DD>
    761 </DL>
    762 <HR>
    763 
    764 <A NAME="getParameter(int, com.google.dexmaker.TypeId)"><!-- --></A><H3>
    765 getParameter</H3>
    766 <PRE>
    767 public &lt;T&gt; <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt; <B>getParameter</B>(int&nbsp;index,
    768                                  <A HREF="../../../com/google/dexmaker/TypeId.html" title="class in com.google.dexmaker">TypeId</A>&lt;T&gt;&nbsp;type)</PRE>
    769 <DL>
    770 <DD>Returns the local for the parameter at index <code>index</code> and of type
    771  <code>type</code>.
    772 <P>
    773 <DD><DL>
    774 </DL>
    775 </DD>
    776 </DL>
    777 <HR>
    778 
    779 <A NAME="getThis(com.google.dexmaker.TypeId)"><!-- --></A><H3>
    780 getThis</H3>
    781 <PRE>
    782 public &lt;T&gt; <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt; <B>getThis</B>(<A HREF="../../../com/google/dexmaker/TypeId.html" title="class in com.google.dexmaker">TypeId</A>&lt;T&gt;&nbsp;type)</PRE>
    783 <DL>
    784 <DD>Returns the local for <code>this</code> of type <code>type</code>. It is an error
    785  to call <code>getThis()</code> if this is a static method.
    786 <P>
    787 <DD><DL>
    788 </DL>
    789 </DD>
    790 </DL>
    791 <HR>
    792 
    793 <A NAME="mark(com.google.dexmaker.Label)"><!-- --></A><H3>
    794 mark</H3>
    795 <PRE>
    796 public void <B>mark</B>(<A HREF="../../../com/google/dexmaker/Label.html" title="class in com.google.dexmaker">Label</A>&nbsp;label)</PRE>
    797 <DL>
    798 <DD>Start defining instructions for the named label.
    799 <P>
    800 <DD><DL>
    801 </DL>
    802 </DD>
    803 </DL>
    804 <HR>
    805 
    806 <A NAME="jump(com.google.dexmaker.Label)"><!-- --></A><H3>
    807 jump</H3>
    808 <PRE>
    809 public void <B>jump</B>(<A HREF="../../../com/google/dexmaker/Label.html" title="class in com.google.dexmaker">Label</A>&nbsp;target)</PRE>
    810 <DL>
    811 <DD>Transfers flow control to the instructions at <code>target</code>. It is an
    812  error to jump to a label not marked on this <code>Code</code>.
    813 <P>
    814 <DD><DL>
    815 </DL>
    816 </DD>
    817 </DL>
    818 <HR>
    819 
    820 <A NAME="addCatchClause(com.google.dexmaker.TypeId, com.google.dexmaker.Label)"><!-- --></A><H3>
    821 addCatchClause</H3>
    822 <PRE>
    823 public void <B>addCatchClause</B>(<A HREF="../../../com/google/dexmaker/TypeId.html" title="class in com.google.dexmaker">TypeId</A>&lt;? extends <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</A>&gt;&nbsp;toCatch,
    824                            <A HREF="../../../com/google/dexmaker/Label.html" title="class in com.google.dexmaker">Label</A>&nbsp;catchClause)</PRE>
    825 <DL>
    826 <DD>Registers <code>catchClause</code> as a branch target for all instructions
    827  in this frame that throw a class assignable to <code>toCatch</code>. This
    828  includes methods invoked from this frame. Deregister the clause using
    829  <A HREF="../../../com/google/dexmaker/Code.html#removeCatchClause(com.google.dexmaker.TypeId)"><CODE>removeCatchClause()</CODE></A>. It is an error to
    830  register a catch clause without also <A HREF="../../../com/google/dexmaker/Code.html#mark(com.google.dexmaker.Label)"><CODE>marking it</CODE></A> in the same
    831  <code>Code</code> instance.
    832 <P>
    833 <DD><DL>
    834 </DL>
    835 </DD>
    836 </DL>
    837 <HR>
    838 
    839 <A NAME="removeCatchClause(com.google.dexmaker.TypeId)"><!-- --></A><H3>
    840 removeCatchClause</H3>
    841 <PRE>
    842 public <A HREF="../../../com/google/dexmaker/Label.html" title="class in com.google.dexmaker">Label</A> <B>removeCatchClause</B>(<A HREF="../../../com/google/dexmaker/TypeId.html" title="class in com.google.dexmaker">TypeId</A>&lt;? extends <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</A>&gt;&nbsp;toCatch)</PRE>
    843 <DL>
    844 <DD>Deregisters the catch clause label for <code>toCatch</code> and returns it.
    845 <P>
    846 <DD><DL>
    847 </DL>
    848 </DD>
    849 </DL>
    850 <HR>
    851 
    852 <A NAME="throwValue(com.google.dexmaker.Local)"><!-- --></A><H3>
    853 throwValue</H3>
    854 <PRE>
    855 public void <B>throwValue</B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;? extends <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</A>&gt;&nbsp;toThrow)</PRE>
    856 <DL>
    857 <DD>Throws the throwable in <code>toThrow</code>.
    858 <P>
    859 <DD><DL>
    860 </DL>
    861 </DD>
    862 </DL>
    863 <HR>
    864 
    865 <A NAME="loadConstant(com.google.dexmaker.Local,java.lang.Object)"><!-- --></A><A NAME="loadConstant(com.google.dexmaker.Local, T)"><!-- --></A><H3>
    866 loadConstant</H3>
    867 <PRE>
    868 public &lt;T&gt; void <B>loadConstant</B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;target,
    869                              T&nbsp;value)</PRE>
    870 <DL>
    871 <DD>Copies the constant value <code>value</code> to <code>target</code>. The constant
    872  must be a primitive, String, Class, TypeId, or null.
    873 <P>
    874 <DD><DL>
    875 </DL>
    876 </DD>
    877 </DL>
    878 <HR>
    879 
    880 <A NAME="move(com.google.dexmaker.Local, com.google.dexmaker.Local)"><!-- --></A><H3>
    881 move</H3>
    882 <PRE>
    883 public &lt;T&gt; void <B>move</B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;target,
    884                      <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;source)</PRE>
    885 <DL>
    886 <DD>Copies the value in <code>source</code> to <code>target</code>.
    887 <P>
    888 <DD><DL>
    889 </DL>
    890 </DD>
    891 </DL>
    892 <HR>
    893 
    894 <A NAME="op(com.google.dexmaker.UnaryOp, com.google.dexmaker.Local, com.google.dexmaker.Local)"><!-- --></A><H3>
    895 op</H3>
    896 <PRE>
    897 public &lt;T&gt; void <B>op</B>(<A HREF="../../../com/google/dexmaker/UnaryOp.html" title="enum in com.google.dexmaker">UnaryOp</A>&nbsp;op,
    898                    <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;target,
    899                    <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;source)</PRE>
    900 <DL>
    901 <DD>Executes <code>op</code> and sets <code>target</code> to the result.
    902 <P>
    903 <DD><DL>
    904 </DL>
    905 </DD>
    906 </DL>
    907 <HR>
    908 
    909 <A NAME="op(com.google.dexmaker.BinaryOp, com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local)"><!-- --></A><H3>
    910 op</H3>
    911 <PRE>
    912 public &lt;T&gt; void <B>op</B>(<A HREF="../../../com/google/dexmaker/BinaryOp.html" title="enum in com.google.dexmaker">BinaryOp</A>&nbsp;op,
    913                    <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;target,
    914                    <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;a,
    915                    <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;b)</PRE>
    916 <DL>
    917 <DD>Executes <code>op</code> and sets <code>target</code> to the result.
    918 <P>
    919 <DD><DL>
    920 </DL>
    921 </DD>
    922 </DL>
    923 <HR>
    924 
    925 <A NAME="compare(com.google.dexmaker.Comparison, com.google.dexmaker.Label, com.google.dexmaker.Local, com.google.dexmaker.Local)"><!-- --></A><H3>
    926 compare</H3>
    927 <PRE>
    928 public &lt;T&gt; void <B>compare</B>(<A HREF="../../../com/google/dexmaker/Comparison.html" title="enum in com.google.dexmaker">Comparison</A>&nbsp;comparison,
    929                         <A HREF="../../../com/google/dexmaker/Label.html" title="class in com.google.dexmaker">Label</A>&nbsp;trueLabel,
    930                         <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;a,
    931                         <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;b)</PRE>
    932 <DL>
    933 <DD>Compare ints or references. If the comparison is true, execution jumps to
    934  <code>trueLabel</code>. If it is false, execution continues to the next
    935  instruction.
    936 <P>
    937 <DD><DL>
    938 </DL>
    939 </DD>
    940 </DL>
    941 <HR>
    942 
    943 <A NAME="compareFloatingPoint(com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local, int)"><!-- --></A><H3>
    944 compareFloatingPoint</H3>
    945 <PRE>
    946 public &lt;T extends <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang">Number</A>&gt; void <B>compareFloatingPoint</B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</A>&gt;&nbsp;target,
    947                                                     <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;a,
    948                                                     <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;b,
    949                                                     int&nbsp;nanValue)</PRE>
    950 <DL>
    951 <DD>Compare floats or doubles. This stores -1 in <code>target</code> if <code>a &lt; b</code>, 0 in <code>target</code> if <code>a == b</code> and 1 in target if <code>a &gt; b</code>. This stores <code>nanValue</code> in <code>target</code> if either value
    952  is <code>NaN</code>.
    953 <P>
    954 <DD><DL>
    955 </DL>
    956 </DD>
    957 </DL>
    958 <HR>
    959 
    960 <A NAME="compareLongs(com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local)"><!-- --></A><H3>
    961 compareLongs</H3>
    962 <PRE>
    963 public void <B>compareLongs</B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</A>&gt;&nbsp;target,
    964                          <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</A>&gt;&nbsp;a,
    965                          <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</A>&gt;&nbsp;b)</PRE>
    966 <DL>
    967 <DD>Compare longs. This stores -1 in <code>target</code> if <code>a &lt; b</code>, 0 in <code>target</code> if <code>a == b</code> and 1 in target if <code>a &gt; b</code>.
    968 <P>
    969 <DD><DL>
    970 </DL>
    971 </DD>
    972 </DL>
    973 <HR>
    974 
    975 <A NAME="iget(com.google.dexmaker.FieldId, com.google.dexmaker.Local, com.google.dexmaker.Local)"><!-- --></A><H3>
    976 iget</H3>
    977 <PRE>
    978 public &lt;D,V&gt; void <B>iget</B>(<A HREF="../../../com/google/dexmaker/FieldId.html" title="class in com.google.dexmaker">FieldId</A>&lt;D,V&gt;&nbsp;fieldId,
    979                        <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;V&gt;&nbsp;target,
    980                        <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;D&gt;&nbsp;instance)</PRE>
    981 <DL>
    982 <DD>Copies the value in instance field <code>fieldId</code> of <code>instance</code> to
    983  <code>target</code>.
    984 <P>
    985 <DD><DL>
    986 </DL>
    987 </DD>
    988 </DL>
    989 <HR>
    990 
    991 <A NAME="iput(com.google.dexmaker.FieldId, com.google.dexmaker.Local, com.google.dexmaker.Local)"><!-- --></A><H3>
    992 iput</H3>
    993 <PRE>
    994 public &lt;D,V&gt; void <B>iput</B>(<A HREF="../../../com/google/dexmaker/FieldId.html" title="class in com.google.dexmaker">FieldId</A>&lt;D,V&gt;&nbsp;fieldId,
    995                        <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;D&gt;&nbsp;instance,
    996                        <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;V&gt;&nbsp;source)</PRE>
    997 <DL>
    998 <DD>Copies the value in <code>source</code> to the instance field <code>fieldId</code>
    999  of <code>instance</code>.
   1000 <P>
   1001 <DD><DL>
   1002 </DL>
   1003 </DD>
   1004 </DL>
   1005 <HR>
   1006 
   1007 <A NAME="sget(com.google.dexmaker.FieldId, com.google.dexmaker.Local)"><!-- --></A><H3>
   1008 sget</H3>
   1009 <PRE>
   1010 public &lt;V&gt; void <B>sget</B>(<A HREF="../../../com/google/dexmaker/FieldId.html" title="class in com.google.dexmaker">FieldId</A>&lt;?,V&gt;&nbsp;fieldId,
   1011                      <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;V&gt;&nbsp;target)</PRE>
   1012 <DL>
   1013 <DD>Copies the value in <code>target</code> to the static field <code>fieldId</code>.
   1014 <P>
   1015 <DD><DL>
   1016 </DL>
   1017 </DD>
   1018 </DL>
   1019 <HR>
   1020 
   1021 <A NAME="sput(com.google.dexmaker.FieldId, com.google.dexmaker.Local)"><!-- --></A><H3>
   1022 sput</H3>
   1023 <PRE>
   1024 public &lt;V&gt; void <B>sput</B>(<A HREF="../../../com/google/dexmaker/FieldId.html" title="class in com.google.dexmaker">FieldId</A>&lt;?,V&gt;&nbsp;fieldId,
   1025                      <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;V&gt;&nbsp;source)</PRE>
   1026 <DL>
   1027 <DD>Copies the value in <code>source</code> to the static field <code>fieldId</code>.
   1028 <P>
   1029 <DD><DL>
   1030 </DL>
   1031 </DD>
   1032 </DL>
   1033 <HR>
   1034 
   1035 <A NAME="newInstance(com.google.dexmaker.Local, com.google.dexmaker.MethodId, com.google.dexmaker.Local...)"><!-- --></A><H3>
   1036 newInstance</H3>
   1037 <PRE>
   1038 public &lt;T&gt; void <B>newInstance</B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;target,
   1039                             <A HREF="../../../com/google/dexmaker/MethodId.html" title="class in com.google.dexmaker">MethodId</A>&lt;T,<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</A>&gt;&nbsp;constructor,
   1040                             <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;...&nbsp;args)</PRE>
   1041 <DL>
   1042 <DD>Calls the constructor <code>constructor</code> using <code>args</code> and assigns
   1043  the new instance to <code>target</code>.
   1044 <P>
   1045 <DD><DL>
   1046 </DL>
   1047 </DD>
   1048 </DL>
   1049 <HR>
   1050 
   1051 <A NAME="invokeStatic(com.google.dexmaker.MethodId, com.google.dexmaker.Local, com.google.dexmaker.Local...)"><!-- --></A><H3>
   1052 invokeStatic</H3>
   1053 <PRE>
   1054 public &lt;R&gt; void <B>invokeStatic</B>(<A HREF="../../../com/google/dexmaker/MethodId.html" title="class in com.google.dexmaker">MethodId</A>&lt;?,R&gt;&nbsp;method,
   1055                              <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;? super R&gt;&nbsp;target,
   1056                              <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;...&nbsp;args)</PRE>
   1057 <DL>
   1058 <DD>Calls the static method <code>method</code> using <code>args</code> and assigns the
   1059  result to <code>target</code>.
   1060 <P>
   1061 <DD><DL>
   1062 <DT><B>Parameters:</B><DD><CODE>target</CODE> - the local to receive the method's return value, or <code>null</code> if the return type is <code>void</code> or if its value not needed.</DL>
   1063 </DD>
   1064 </DL>
   1065 <HR>
   1066 
   1067 <A NAME="invokeVirtual(com.google.dexmaker.MethodId, com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local...)"><!-- --></A><H3>
   1068 invokeVirtual</H3>
   1069 <PRE>
   1070 public &lt;D,R&gt; void <B>invokeVirtual</B>(<A HREF="../../../com/google/dexmaker/MethodId.html" title="class in com.google.dexmaker">MethodId</A>&lt;D,R&gt;&nbsp;method,
   1071                                 <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;? super R&gt;&nbsp;target,
   1072                                 <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;? extends D&gt;&nbsp;instance,
   1073                                 <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;...&nbsp;args)</PRE>
   1074 <DL>
   1075 <DD>Calls the non-private instance method <code>method</code> of <code>instance</code>
   1076  using <code>args</code> and assigns the result to <code>target</code>.
   1077 <P>
   1078 <DD><DL>
   1079 <DT><B>Parameters:</B><DD><CODE>method</CODE> - a non-private, non-static, method declared on a class. May
   1080      not be an interface method or a constructor.<DD><CODE>target</CODE> - the local to receive the method's return value, or <code>null</code> if the return type is <code>void</code> or if its value not needed.</DL>
   1081 </DD>
   1082 </DL>
   1083 <HR>
   1084 
   1085 <A NAME="invokeDirect(com.google.dexmaker.MethodId, com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local...)"><!-- --></A><H3>
   1086 invokeDirect</H3>
   1087 <PRE>
   1088 public &lt;D,R&gt; void <B>invokeDirect</B>(<A HREF="../../../com/google/dexmaker/MethodId.html" title="class in com.google.dexmaker">MethodId</A>&lt;D,R&gt;&nbsp;method,
   1089                                <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;? super R&gt;&nbsp;target,
   1090                                <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;? extends D&gt;&nbsp;instance,
   1091                                <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;...&nbsp;args)</PRE>
   1092 <DL>
   1093 <DD>Calls <code>method</code> of <code>instance</code> using <code>args</code> and assigns
   1094  the result to <code>target</code>.
   1095 <P>
   1096 <DD><DL>
   1097 <DT><B>Parameters:</B><DD><CODE>method</CODE> - either a private method or the superclass's constructor in
   1098      a constructor's call to <code>super()</code>.<DD><CODE>target</CODE> - the local to receive the method's return value, or <code>null</code> if the return type is <code>void</code> or if its value not needed.</DL>
   1099 </DD>
   1100 </DL>
   1101 <HR>
   1102 
   1103 <A NAME="invokeSuper(com.google.dexmaker.MethodId, com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local...)"><!-- --></A><H3>
   1104 invokeSuper</H3>
   1105 <PRE>
   1106 public &lt;D,R&gt; void <B>invokeSuper</B>(<A HREF="../../../com/google/dexmaker/MethodId.html" title="class in com.google.dexmaker">MethodId</A>&lt;D,R&gt;&nbsp;method,
   1107                               <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;? super R&gt;&nbsp;target,
   1108                               <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;? extends D&gt;&nbsp;instance,
   1109                               <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;...&nbsp;args)</PRE>
   1110 <DL>
   1111 <DD>Calls the closest superclass's virtual method <code>method</code> of <code>instance</code> using <code>args</code> and assigns the result to <code>target</code>.
   1112 <P>
   1113 <DD><DL>
   1114 <DT><B>Parameters:</B><DD><CODE>target</CODE> - the local to receive the method's return value, or <code>null</code> if the return type is <code>void</code> or if its value not needed.</DL>
   1115 </DD>
   1116 </DL>
   1117 <HR>
   1118 
   1119 <A NAME="invokeInterface(com.google.dexmaker.MethodId, com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local...)"><!-- --></A><H3>
   1120 invokeInterface</H3>
   1121 <PRE>
   1122 public &lt;D,R&gt; void <B>invokeInterface</B>(<A HREF="../../../com/google/dexmaker/MethodId.html" title="class in com.google.dexmaker">MethodId</A>&lt;D,R&gt;&nbsp;method,
   1123                                   <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;? super R&gt;&nbsp;target,
   1124                                   <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;? extends D&gt;&nbsp;instance,
   1125                                   <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;...&nbsp;args)</PRE>
   1126 <DL>
   1127 <DD>Calls the interface method <code>method</code> of <code>instance</code> using
   1128  <code>args</code> and assigns the result to <code>target</code>.
   1129 <P>
   1130 <DD><DL>
   1131 <DT><B>Parameters:</B><DD><CODE>method</CODE> - a method declared on an interface.<DD><CODE>target</CODE> - the local to receive the method's return value, or <code>null</code> if the return type is <code>void</code> or if its value not needed.</DL>
   1132 </DD>
   1133 </DL>
   1134 <HR>
   1135 
   1136 <A NAME="instanceOfType(com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.TypeId)"><!-- --></A><H3>
   1137 instanceOfType</H3>
   1138 <PRE>
   1139 public void <B>instanceOfType</B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;&nbsp;target,
   1140                            <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;&nbsp;source,
   1141                            <A HREF="../../../com/google/dexmaker/TypeId.html" title="class in com.google.dexmaker">TypeId</A>&lt;?&gt;&nbsp;type)</PRE>
   1142 <DL>
   1143 <DD>Tests if the value in <code>source</code> is assignable to <code>type</code>. If it
   1144  is, <code>target</code> is assigned to 1; otherwise <code>target</code> is assigned
   1145  to 0.
   1146 <P>
   1147 <DD><DL>
   1148 </DL>
   1149 </DD>
   1150 </DL>
   1151 <HR>
   1152 
   1153 <A NAME="cast(com.google.dexmaker.Local, com.google.dexmaker.Local)"><!-- --></A><H3>
   1154 cast</H3>
   1155 <PRE>
   1156 public void <B>cast</B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;&nbsp;target,
   1157                  <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;&nbsp;source)</PRE>
   1158 <DL>
   1159 <DD>Performs either a numeric cast or a type cast.
   1160 
   1161  <h3>Numeric Casts</h3>
   1162  Converts a primitive to a different representation. Numeric casts may
   1163  be lossy. For example, converting the double <code>1.8d</code> to an integer
   1164  yields <code>1</code>, losing the fractional part. Converting the integer
   1165  <code>0x12345678</code> to a short yields <code>0x5678</code>, losing the high
   1166  bytes. The following numeric casts are supported:
   1167 
   1168  <p><table border="1">
   1169  <tr><th>From</th><th>To</th></tr>
   1170  <tr><td>int</td><td>byte, char, short, long, float, double</td></tr>
   1171  <tr><td>long</td><td>int, float, double</td></tr>
   1172  <tr><td>float</td><td>int, long, double</td></tr>
   1173  <tr><td>double</td><td>int, long, float</td></tr>
   1174  </table>
   1175 
   1176  <p>For some primitive conversions it will be necessary to chain multiple
   1177  cast operations. For example, to go from float to short one would first
   1178  cast float to int and then int to short.
   1179 
   1180  <p>Numeric casts never throw <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/ClassCastException.html?is-external=true" title="class or interface in java.lang"><CODE>ClassCastException</CODE></A>.
   1181 
   1182  <h3>Type Casts</h3>
   1183  Checks that a reference value is assignable to the target type. If it is
   1184  assignable it is copied to the target local. If it is not assignable a
   1185  <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/ClassCastException.html?is-external=true" title="class or interface in java.lang"><CODE>ClassCastException</CODE></A> is thrown.
   1186 <P>
   1187 <DD><DL>
   1188 </DL>
   1189 </DD>
   1190 </DL>
   1191 <HR>
   1192 
   1193 <A NAME="arrayLength(com.google.dexmaker.Local, com.google.dexmaker.Local)"><!-- --></A><H3>
   1194 arrayLength</H3>
   1195 <PRE>
   1196 public &lt;T&gt; void <B>arrayLength</B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</A>&gt;&nbsp;target,
   1197                             <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;array)</PRE>
   1198 <DL>
   1199 <DD>Sets <code>target</code> to the length of the array in <code>array</code>.
   1200 <P>
   1201 <DD><DL>
   1202 </DL>
   1203 </DD>
   1204 </DL>
   1205 <HR>
   1206 
   1207 <A NAME="newArray(com.google.dexmaker.Local, com.google.dexmaker.Local)"><!-- --></A><H3>
   1208 newArray</H3>
   1209 <PRE>
   1210 public &lt;T&gt; void <B>newArray</B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;T&gt;&nbsp;target,
   1211                          <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</A>&gt;&nbsp;length)</PRE>
   1212 <DL>
   1213 <DD>Assigns <code>target</code> to a newly allocated array of length <code>length</code>. The array's type is the same as <code>target</code>'s type.
   1214 <P>
   1215 <DD><DL>
   1216 </DL>
   1217 </DD>
   1218 </DL>
   1219 <HR>
   1220 
   1221 <A NAME="aget(com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local)"><!-- --></A><H3>
   1222 aget</H3>
   1223 <PRE>
   1224 public void <B>aget</B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;&nbsp;target,
   1225                  <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;&nbsp;array,
   1226                  <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</A>&gt;&nbsp;index)</PRE>
   1227 <DL>
   1228 <DD>Assigns <code>target</code> to the element of <code>array</code> at index <code>index</code>.
   1229 <P>
   1230 <DD><DL>
   1231 </DL>
   1232 </DD>
   1233 </DL>
   1234 <HR>
   1235 
   1236 <A NAME="aput(com.google.dexmaker.Local, com.google.dexmaker.Local, com.google.dexmaker.Local)"><!-- --></A><H3>
   1237 aput</H3>
   1238 <PRE>
   1239 public void <B>aput</B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;&nbsp;array,
   1240                  <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</A>&gt;&nbsp;index,
   1241                  <A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;&nbsp;source)</PRE>
   1242 <DL>
   1243 <DD>Sets the element at <code>index</code> in <code>array</code> the value in <code>source</code>.
   1244 <P>
   1245 <DD><DL>
   1246 </DL>
   1247 </DD>
   1248 </DL>
   1249 <HR>
   1250 
   1251 <A NAME="returnVoid()"><!-- --></A><H3>
   1252 returnVoid</H3>
   1253 <PRE>
   1254 public void <B>returnVoid</B>()</PRE>
   1255 <DL>
   1256 <DD>Returns from a <code>void</code> method. After a return it is an error to
   1257  define further instructions after a return without first <A HREF="../../../com/google/dexmaker/Code.html#mark(com.google.dexmaker.Label)"><CODE>marking</CODE></A> an existing unmarked label.
   1258 <P>
   1259 <DD><DL>
   1260 </DL>
   1261 </DD>
   1262 </DL>
   1263 <HR>
   1264 
   1265 <A NAME="returnValue(com.google.dexmaker.Local)"><!-- --></A><H3>
   1266 returnValue</H3>
   1267 <PRE>
   1268 public void <B>returnValue</B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;&nbsp;result)</PRE>
   1269 <DL>
   1270 <DD>Returns the value in <code>result</code> to the calling method. After a return
   1271  it is an error to define further instructions after a return without
   1272  first <A HREF="../../../com/google/dexmaker/Code.html#mark(com.google.dexmaker.Label)"><CODE>marking</CODE></A> an existing unmarked label.
   1273 <P>
   1274 <DD><DL>
   1275 </DL>
   1276 </DD>
   1277 </DL>
   1278 <HR>
   1279 
   1280 <A NAME="monitorEnter(com.google.dexmaker.Local)"><!-- --></A><H3>
   1281 monitorEnter</H3>
   1282 <PRE>
   1283 public void <B>monitorEnter</B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;&nbsp;monitor)</PRE>
   1284 <DL>
   1285 <DD>Awaits the lock on <code>monitor</code>, and acquires it.
   1286 <P>
   1287 <DD><DL>
   1288 </DL>
   1289 </DD>
   1290 </DL>
   1291 <HR>
   1292 
   1293 <A NAME="monitorExit(com.google.dexmaker.Local)"><!-- --></A><H3>
   1294 monitorExit</H3>
   1295 <PRE>
   1296 public void <B>monitorExit</B>(<A HREF="../../../com/google/dexmaker/Local.html" title="class in com.google.dexmaker">Local</A>&lt;?&gt;&nbsp;monitor)</PRE>
   1297 <DL>
   1298 <DD>Releases the held lock on <code>monitor</code>.
   1299 <P>
   1300 <DD><DL>
   1301 </DL>
   1302 </DD>
   1303 </DL>
   1304 <!-- ========= END OF CLASS DATA ========= -->
   1305 <HR>
   1306 
   1307 
   1308 <!-- ======= START OF BOTTOM NAVBAR ====== -->
   1309 <A NAME="navbar_bottom"><!-- --></A>
   1310 <A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
   1311 <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
   1312 <TR>
   1313 <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
   1314 <A NAME="navbar_bottom_firstrow"><!-- --></A>
   1315 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
   1316   <TR ALIGN="center" VALIGN="top">
   1317   <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
   1318   <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
   1319   <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
   1320   <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
   1321   <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
   1322   <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
   1323   <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
   1324   </TR>
   1325 </TABLE>
   1326 </TD>
   1327 <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
   1328 </EM>
   1329 </TD>
   1330 </TR>
   1331 
   1332 <TR>
   1333 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
   1334 &nbsp;<A HREF="../../../com/google/dexmaker/BinaryOp.html" title="enum in com.google.dexmaker"><B>PREV CLASS</B></A>&nbsp;
   1335 &nbsp;<A HREF="../../../com/google/dexmaker/Comparison.html" title="enum in com.google.dexmaker"><B>NEXT CLASS</B></A></FONT></TD>
   1336 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
   1337   <A HREF="../../../index.html?com/google/dexmaker/Code.html" target="_top"><B>FRAMES</B></A>  &nbsp;
   1338 &nbsp;<A HREF="Code.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
   1339 &nbsp;<SCRIPT type="text/javascript">
   1340   <!--
   1341   if(window==top) {
   1342     document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
   1343   }
   1344   //-->
   1345 </SCRIPT>
   1346 <NOSCRIPT>
   1347   <A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
   1348 </NOSCRIPT>
   1349 
   1350 
   1351 </FONT></TD>
   1352 </TR>
   1353 <TR>
   1354 <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
   1355   SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
   1356 <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
   1357 DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
   1358 </TR>
   1359 </TABLE>
   1360 <A NAME="skip-navbar_bottom"></A>
   1361 <!-- ======== END OF BOTTOM NAVBAR ======= -->
   1362 
   1363 <HR>
   1364 
   1365 </BODY>
   1366 </HTML>
   1367