<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <!--NewPage--> <HTML> <HEAD> <!-- Generated by javadoc (build 1.6.0_18) on Thu May 12 21:54:56 GMT 2011 --> <TITLE> ClassReader </TITLE> <META NAME="date" CONTENT="2011-05-12"> <LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style"> <SCRIPT type="text/javascript"> function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { parent.document.title="ClassReader"; } } </SCRIPT> <NOSCRIPT> </NOSCRIPT> </HEAD> <BODY BGCOLOR="white" onload="windowTitle();"> <HR> <!-- ========= START OF TOP NAVBAR ======= --> <A NAME="navbar_top"><!-- --></A> <A HREF="#skip-navbar_top" title="Skip navigation links"></A> <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""> <TR> <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A NAME="navbar_top_firstrow"><!-- --></A> <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> <TR ALIGN="center" VALIGN="top"> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD> <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> </TR> </TABLE> </TD> <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM> </EM> </TD> </TR> <TR> <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../com/sleepycat/asm/ClassAdapter.html" title="class in com.sleepycat.asm"><B>PREV CLASS</B></A> <A HREF="../../../com/sleepycat/asm/ClassVisitor.html" title="interface in com.sleepycat.asm"><B>NEXT CLASS</B></A></FONT></TD> <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../index.html?com/sleepycat/asm/ClassReader.html" target="_top"><B>FRAMES</B></A> <A HREF="ClassReader.html" target="_top"><B>NO FRAMES</B></A> <SCRIPT type="text/javascript"> <!-- if(window==top) { document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>'); } //--> </SCRIPT> <NOSCRIPT> <A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A> </NOSCRIPT> </FONT></TD> </TR> <TR> <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> SUMMARY: NESTED | <A HREF="#field_summary">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD> <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> DETAIL: <A HREF="#field_detail">FIELD</A> | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD> </TR> </TABLE> <A NAME="skip-navbar_top"></A> <!-- ========= END OF TOP NAVBAR ========= --> <HR> <!-- ======== START OF CLASS DATA ======== --> <H2> <FONT SIZE="-1"> com.sleepycat.asm</FONT> <BR> Class ClassReader</H2> <PRE> java.lang.Object <IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.sleepycat.asm.ClassReader</B> </PRE> <HR> <DL> <DT><PRE>public class <B>ClassReader</B><DT>extends java.lang.Object</DL> </PRE> <P> A Java class parser to make a <A HREF="../../../com/sleepycat/asm/ClassVisitor.html" title="interface in com.sleepycat.asm"><CODE>ClassVisitor</CODE></A> visit an existing class. This class parses a byte array conforming to the Java class file format and calls the appropriate visit methods of a given class visitor for each field, method and bytecode instruction encountered. <P> <P> <HR> <P> <!-- =========== FIELD SUMMARY =========== --> <A NAME="field_summary"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"> <B>Field Summary</B></FONT></TH> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> byte[]</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../com/sleepycat/asm/ClassReader.html#b">b</A></B></CODE> <BR> The class to be parsed.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> int</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../com/sleepycat/asm/ClassReader.html#header">header</A></B></CODE> <BR> Start index of the class header information (access, name...) in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>.</TD> </TR> </TABLE> <!-- ======== CONSTRUCTOR SUMMARY ======== --> <A NAME="constructor_summary"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"> <B>Constructor Summary</B></FONT></TH> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD><CODE><B><A HREF="../../../com/sleepycat/asm/ClassReader.html#ClassReader(byte[])">ClassReader</A></B>(byte[] b)</CODE> <BR> Constructs a new <A HREF="../../../com/sleepycat/asm/ClassReader.html" title="class in com.sleepycat.asm"><CODE>ClassReader</CODE></A> object.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD><CODE><B><A HREF="../../../com/sleepycat/asm/ClassReader.html#ClassReader(byte[], int, int)">ClassReader</A></B>(byte[] b, int off, int len)</CODE> <BR> Constructs a new <A HREF="../../../com/sleepycat/asm/ClassReader.html" title="class in com.sleepycat.asm"><CODE>ClassReader</CODE></A> object.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD><CODE><B><A HREF="../../../com/sleepycat/asm/ClassReader.html#ClassReader(java.io.InputStream)">ClassReader</A></B>(java.io.InputStream is)</CODE> <BR> Constructs a new <A HREF="../../../com/sleepycat/asm/ClassReader.html" title="class in com.sleepycat.asm"><CODE>ClassReader</CODE></A> object.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD><CODE><B><A HREF="../../../com/sleepycat/asm/ClassReader.html#ClassReader(java.lang.String)">ClassReader</A></B>(java.lang.String name)</CODE> <BR> Constructs a new <A HREF="../../../com/sleepycat/asm/ClassReader.html" title="class in com.sleepycat.asm"><CODE>ClassReader</CODE></A> object.</TD> </TR> </TABLE> <!-- ========== METHOD SUMMARY =========== --> <A NAME="method_summary"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"> <B>Method Summary</B></FONT></TH> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../com/sleepycat/asm/ClassReader.html#accept(com.sleepycat.asm.ClassVisitor, com.sleepycat.asm.Attribute[], boolean)">accept</A></B>(<A HREF="../../../com/sleepycat/asm/ClassVisitor.html" title="interface in com.sleepycat.asm">ClassVisitor</A> classVisitor, <A HREF="../../../com/sleepycat/asm/Attribute.html" title="class in com.sleepycat.asm">Attribute</A>[] attrs, boolean skipDebug)</CODE> <BR> Makes the given visitor visit the Java class of this <A HREF="../../../com/sleepycat/asm/ClassReader.html" title="class in com.sleepycat.asm"><CODE>ClassReader</CODE></A>.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> void</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../com/sleepycat/asm/ClassReader.html#accept(com.sleepycat.asm.ClassVisitor, boolean)">accept</A></B>(<A HREF="../../../com/sleepycat/asm/ClassVisitor.html" title="interface in com.sleepycat.asm">ClassVisitor</A> classVisitor, boolean skipDebug)</CODE> <BR> Makes the given visitor visit the Java class of this <A HREF="../../../com/sleepycat/asm/ClassReader.html" title="class in com.sleepycat.asm"><CODE>ClassReader</CODE></A>.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> int</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../com/sleepycat/asm/ClassReader.html#getItem(int)">getItem</A></B>(int item)</CODE> <BR> Returns the start index of the constant pool item in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>, plus one.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> int</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../com/sleepycat/asm/ClassReader.html#readByte(int)">readByte</A></B>(int index)</CODE> <BR> Reads a byte value in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> java.lang.String</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../com/sleepycat/asm/ClassReader.html#readClass(int, char[])">readClass</A></B>(int index, char[] buf)</CODE> <BR> Reads a class constant pool item in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> java.lang.Object</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../com/sleepycat/asm/ClassReader.html#readConst(int, char[])">readConst</A></B>(int item, char[] buf)</CODE> <BR> Reads a numeric or string constant pool item in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> int</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../com/sleepycat/asm/ClassReader.html#readInt(int)">readInt</A></B>(int index)</CODE> <BR> Reads a signed int value in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> long</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../com/sleepycat/asm/ClassReader.html#readLong(int)">readLong</A></B>(int index)</CODE> <BR> Reads a signed long value in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> short</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../com/sleepycat/asm/ClassReader.html#readShort(int)">readShort</A></B>(int index)</CODE> <BR> Reads a signed short value in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> int</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../com/sleepycat/asm/ClassReader.html#readUnsignedShort(int)">readUnsignedShort</A></B>(int index)</CODE> <BR> Reads an unsigned short value in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>.</TD> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> <CODE> java.lang.String</CODE></FONT></TD> <TD><CODE><B><A HREF="../../../com/sleepycat/asm/ClassReader.html#readUTF8(int, char[])">readUTF8</A></B>(int index, char[] buf)</CODE> <BR> Reads an UTF8 string constant pool item in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>.</TD> </TR> </TABLE> <A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor"> <TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH> </TR> <TR BGCOLOR="white" CLASS="TableRowColor"> <TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD> </TR> </TABLE> <P> <!-- ============ FIELD DETAIL =========== --> <A NAME="field_detail"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> <TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2"> <B>Field Detail</B></FONT></TH> </TR> </TABLE> <A NAME="b"><!-- --></A><H3> b</H3> <PRE> public final byte[] <B>b</B></PRE> <DL> <DD>The class to be parsed. <i>The content of this array must not be modified. This field is intended for <A HREF="../../../com/sleepycat/asm/Attribute.html" title="class in com.sleepycat.asm"><CODE>Attribute</CODE></A> sub classes, and is normally not needed by class generators or adapters.</i> <P> <DL> </DL> </DL> <HR> <A NAME="header"><!-- --></A><H3> header</H3> <PRE> public final int <B>header</B></PRE> <DL> <DD>Start index of the class header information (access, name...) in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>. <P> <DL> </DL> </DL> <!-- ========= CONSTRUCTOR DETAIL ======== --> <A NAME="constructor_detail"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> <TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2"> <B>Constructor Detail</B></FONT></TH> </TR> </TABLE> <A NAME="ClassReader(byte[])"><!-- --></A><H3> ClassReader</H3> <PRE> public <B>ClassReader</B>(byte[] b)</PRE> <DL> <DD>Constructs a new <A HREF="../../../com/sleepycat/asm/ClassReader.html" title="class in com.sleepycat.asm"><CODE>ClassReader</CODE></A> object. <P> <DL> <DT><B>Parameters:</B><DD><CODE>b</CODE> - the bytecode of the class to be read.</DL> </DL> <HR> <A NAME="ClassReader(byte[], int, int)"><!-- --></A><H3> ClassReader</H3> <PRE> public <B>ClassReader</B>(byte[] b, int off, int len)</PRE> <DL> <DD>Constructs a new <A HREF="../../../com/sleepycat/asm/ClassReader.html" title="class in com.sleepycat.asm"><CODE>ClassReader</CODE></A> object. <P> <DL> <DT><B>Parameters:</B><DD><CODE>b</CODE> - the bytecode of the class to be read.<DD><CODE>off</CODE> - the start offset of the class data.<DD><CODE>len</CODE> - the length of the class data.</DL> </DL> <HR> <A NAME="ClassReader(java.io.InputStream)"><!-- --></A><H3> ClassReader</H3> <PRE> public <B>ClassReader</B>(java.io.InputStream is) throws java.io.IOException</PRE> <DL> <DD>Constructs a new <A HREF="../../../com/sleepycat/asm/ClassReader.html" title="class in com.sleepycat.asm"><CODE>ClassReader</CODE></A> object. <P> <DL> <DT><B>Parameters:</B><DD><CODE>is</CODE> - an input stream from which to read the class. <DT><B>Throws:</B> <DD><CODE>java.io.IOException</CODE> - if a problem occurs during reading.</DL> </DL> <HR> <A NAME="ClassReader(java.lang.String)"><!-- --></A><H3> ClassReader</H3> <PRE> public <B>ClassReader</B>(java.lang.String name) throws java.io.IOException</PRE> <DL> <DD>Constructs a new <A HREF="../../../com/sleepycat/asm/ClassReader.html" title="class in com.sleepycat.asm"><CODE>ClassReader</CODE></A> object. <P> <DL> <DT><B>Parameters:</B><DD><CODE>name</CODE> - the fully qualified name of the class to be read. <DT><B>Throws:</B> <DD><CODE>java.io.IOException</CODE> - if an exception occurs during reading.</DL> </DL> <!-- ============ METHOD DETAIL ========== --> <A NAME="method_detail"><!-- --></A> <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> <TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2"> <B>Method Detail</B></FONT></TH> </TR> </TABLE> <A NAME="accept(com.sleepycat.asm.ClassVisitor, boolean)"><!-- --></A><H3> accept</H3> <PRE> public void <B>accept</B>(<A HREF="../../../com/sleepycat/asm/ClassVisitor.html" title="interface in com.sleepycat.asm">ClassVisitor</A> classVisitor, boolean skipDebug)</PRE> <DL> <DD>Makes the given visitor visit the Java class of this <A HREF="../../../com/sleepycat/asm/ClassReader.html" title="class in com.sleepycat.asm"><CODE>ClassReader</CODE></A>. This class is the one specified in the constructor (see <A HREF="../../../com/sleepycat/asm/ClassReader.html#ClassReader(byte[])"><CODE>ClassReader</CODE></A>). <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>classVisitor</CODE> - the visitor that must visit this class.<DD><CODE>skipDebug</CODE> - <tt>true</tt> if the debug information of the class must not be visited. In this case the <A HREF="../../../com/sleepycat/asm/MethodVisitor.html#visitLocalVariable(java.lang.String, java.lang.String, java.lang.String, com.sleepycat.asm.Label, com.sleepycat.asm.Label, int)"><CODE>visitLocalVariable</CODE></A> and <A HREF="../../../com/sleepycat/asm/MethodVisitor.html#visitLineNumber(int, com.sleepycat.asm.Label)"><CODE>visitLineNumber</CODE></A> methods will not be called.</DL> </DD> </DL> <HR> <A NAME="accept(com.sleepycat.asm.ClassVisitor, com.sleepycat.asm.Attribute[], boolean)"><!-- --></A><H3> accept</H3> <PRE> public void <B>accept</B>(<A HREF="../../../com/sleepycat/asm/ClassVisitor.html" title="interface in com.sleepycat.asm">ClassVisitor</A> classVisitor, <A HREF="../../../com/sleepycat/asm/Attribute.html" title="class in com.sleepycat.asm">Attribute</A>[] attrs, boolean skipDebug)</PRE> <DL> <DD>Makes the given visitor visit the Java class of this <A HREF="../../../com/sleepycat/asm/ClassReader.html" title="class in com.sleepycat.asm"><CODE>ClassReader</CODE></A>. This class is the one specified in the constructor (see <A HREF="../../../com/sleepycat/asm/ClassReader.html#ClassReader(byte[])"><CODE>ClassReader</CODE></A>). <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>classVisitor</CODE> - the visitor that must visit this class.<DD><CODE>attrs</CODE> - prototypes of the attributes that must be parsed during the visit of the class. Any attribute whose type is not equal to the type of one the prototypes will be ignored.<DD><CODE>skipDebug</CODE> - <tt>true</tt> if the debug information of the class must not be visited. In this case the <A HREF="../../../com/sleepycat/asm/MethodVisitor.html#visitLocalVariable(java.lang.String, java.lang.String, java.lang.String, com.sleepycat.asm.Label, com.sleepycat.asm.Label, int)"><CODE>visitLocalVariable</CODE></A> and <A HREF="../../../com/sleepycat/asm/MethodVisitor.html#visitLineNumber(int, com.sleepycat.asm.Label)"><CODE>visitLineNumber</CODE></A> methods will not be called.</DL> </DD> </DL> <HR> <A NAME="getItem(int)"><!-- --></A><H3> getItem</H3> <PRE> public int <B>getItem</B>(int item)</PRE> <DL> <DD>Returns the start index of the constant pool item in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>, plus one. <i>This method is intended for <A HREF="../../../com/sleepycat/asm/Attribute.html" title="class in com.sleepycat.asm"><CODE>Attribute</CODE></A> sub classes, and is normally not needed by class generators or adapters.</i> <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>item</CODE> - the index a constant pool item. <DT><B>Returns:</B><DD>the start index of the constant pool item in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>, plus one.</DL> </DD> </DL> <HR> <A NAME="readByte(int)"><!-- --></A><H3> readByte</H3> <PRE> public int <B>readByte</B>(int index)</PRE> <DL> <DD>Reads a byte value in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>. <i>This method is intended for <A HREF="../../../com/sleepycat/asm/Attribute.html" title="class in com.sleepycat.asm"><CODE>Attribute</CODE></A> sub classes, and is normally not needed by class generators or adapters.</i> <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>index</CODE> - the start index of the value to be read in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>. <DT><B>Returns:</B><DD>the read value.</DL> </DD> </DL> <HR> <A NAME="readUnsignedShort(int)"><!-- --></A><H3> readUnsignedShort</H3> <PRE> public int <B>readUnsignedShort</B>(int index)</PRE> <DL> <DD>Reads an unsigned short value in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>. <i>This method is intended for <A HREF="../../../com/sleepycat/asm/Attribute.html" title="class in com.sleepycat.asm"><CODE>Attribute</CODE></A> sub classes, and is normally not needed by class generators or adapters.</i> <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>index</CODE> - the start index of the value to be read in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>. <DT><B>Returns:</B><DD>the read value.</DL> </DD> </DL> <HR> <A NAME="readShort(int)"><!-- --></A><H3> readShort</H3> <PRE> public short <B>readShort</B>(int index)</PRE> <DL> <DD>Reads a signed short value in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>. <i>This method is intended for <A HREF="../../../com/sleepycat/asm/Attribute.html" title="class in com.sleepycat.asm"><CODE>Attribute</CODE></A> sub classes, and is normally not needed by class generators or adapters.</i> <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>index</CODE> - the start index of the value to be read in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>. <DT><B>Returns:</B><DD>the read value.</DL> </DD> </DL> <HR> <A NAME="readInt(int)"><!-- --></A><H3> readInt</H3> <PRE> public int <B>readInt</B>(int index)</PRE> <DL> <DD>Reads a signed int value in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>. <i>This method is intended for <A HREF="../../../com/sleepycat/asm/Attribute.html" title="class in com.sleepycat.asm"><CODE>Attribute</CODE></A> sub classes, and is normally not needed by class generators or adapters.</i> <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>index</CODE> - the start index of the value to be read in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>. <DT><B>Returns:</B><DD>the read value.</DL> </DD> </DL> <HR> <A NAME="readLong(int)"><!-- --></A><H3> readLong</H3> <PRE> public long <B>readLong</B>(int index)</PRE> <DL> <DD>Reads a signed long value in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>. <i>This method is intended for <A HREF="../../../com/sleepycat/asm/Attribute.html" title="class in com.sleepycat.asm"><CODE>Attribute</CODE></A> sub classes, and is normally not needed by class generators or adapters.</i> <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>index</CODE> - the start index of the value to be read in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>. <DT><B>Returns:</B><DD>the read value.</DL> </DD> </DL> <HR> <A NAME="readUTF8(int, char[])"><!-- --></A><H3> readUTF8</H3> <PRE> public java.lang.String <B>readUTF8</B>(int index, char[] buf)</PRE> <DL> <DD>Reads an UTF8 string constant pool item in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>. <i>This method is intended for <A HREF="../../../com/sleepycat/asm/Attribute.html" title="class in com.sleepycat.asm"><CODE>Attribute</CODE></A> sub classes, and is normally not needed by class generators or adapters.</i> <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>index</CODE> - the start index of an unsigned short value in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>, whose value is the index of an UTF8 constant pool item.<DD><CODE>buf</CODE> - buffer to be used to read the item. This buffer must be sufficiently large. It is not automatically resized. <DT><B>Returns:</B><DD>the String corresponding to the specified UTF8 item.</DL> </DD> </DL> <HR> <A NAME="readClass(int, char[])"><!-- --></A><H3> readClass</H3> <PRE> public java.lang.String <B>readClass</B>(int index, char[] buf)</PRE> <DL> <DD>Reads a class constant pool item in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>. <i>This method is intended for <A HREF="../../../com/sleepycat/asm/Attribute.html" title="class in com.sleepycat.asm"><CODE>Attribute</CODE></A> sub classes, and is normally not needed by class generators or adapters.</i> <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>index</CODE> - the start index of an unsigned short value in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>, whose value is the index of a class constant pool item.<DD><CODE>buf</CODE> - buffer to be used to read the item. This buffer must be sufficiently large. It is not automatically resized. <DT><B>Returns:</B><DD>the String corresponding to the specified class item.</DL> </DD> </DL> <HR> <A NAME="readConst(int, char[])"><!-- --></A><H3> readConst</H3> <PRE> public java.lang.Object <B>readConst</B>(int item, char[] buf)</PRE> <DL> <DD>Reads a numeric or string constant pool item in <A HREF="../../../com/sleepycat/asm/ClassReader.html#b"><CODE>b</CODE></A>. <i>This method is intended for <A HREF="../../../com/sleepycat/asm/Attribute.html" title="class in com.sleepycat.asm"><CODE>Attribute</CODE></A> sub classes, and is normally not needed by class generators or adapters.</i> <P> <DD><DL> <DT><B>Parameters:</B><DD><CODE>item</CODE> - the index of a constant pool item.<DD><CODE>buf</CODE> - buffer to be used to read the item. This buffer must be sufficiently large. It is not automatically resized. <DT><B>Returns:</B><DD>the <CODE>Integer</CODE>, <CODE>Float</CODE>, <CODE>Long</CODE>, <CODE>Double</CODE>, <CODE>String</CODE> or <A HREF="../../../com/sleepycat/asm/Type.html" title="class in com.sleepycat.asm"><CODE>Type</CODE></A> corresponding to the given constant pool item.</DL> </DD> </DL> <!-- ========= END OF CLASS DATA ========= --> <HR> <!-- ======= START OF BOTTOM NAVBAR ====== --> <A NAME="navbar_bottom"><!-- --></A> <A HREF="#skip-navbar_bottom" title="Skip navigation links"></A> <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""> <TR> <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A NAME="navbar_bottom_firstrow"><!-- --></A> <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> <TR ALIGN="center" VALIGN="top"> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD> <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> </TR> </TABLE> </TD> <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM> </EM> </TD> </TR> <TR> <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../com/sleepycat/asm/ClassAdapter.html" title="class in com.sleepycat.asm"><B>PREV CLASS</B></A> <A HREF="../../../com/sleepycat/asm/ClassVisitor.html" title="interface in com.sleepycat.asm"><B>NEXT CLASS</B></A></FONT></TD> <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../index.html?com/sleepycat/asm/ClassReader.html" target="_top"><B>FRAMES</B></A> <A HREF="ClassReader.html" target="_top"><B>NO FRAMES</B></A> <SCRIPT type="text/javascript"> <!-- if(window==top) { document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>'); } //--> </SCRIPT> <NOSCRIPT> <A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A> </NOSCRIPT> </FONT></TD> </TR> <TR> <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> SUMMARY: NESTED | <A HREF="#field_summary">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD> <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> DETAIL: <A HREF="#field_detail">FIELD</A> | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD> </TR> </TABLE> <A NAME="skip-navbar_bottom"></A> <!-- ======== END OF BOTTOM NAVBAR ======= --> <HR> </BODY> </HTML>