Java Doc for MethodWriter.java in  » IDE » tIDE » org » objectweb » asm » Java Source Code / Java DocumentationJava Source Code and Java Documentation

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » IDE » tIDE » org.objectweb.asm 
Source Cross Reference  Class Diagram Java Document (Java Doc) 


java.lang.Object
   org.objectweb.asm.MethodWriter

MethodWriter
class MethodWriter implements MethodVisitor(Code)
A MethodVisitor that generates methods in bytecode form. Each visit method of this class appends the bytecode corresponding to the visited instruction to a byte vector, in the order these methods are called.
author:
   Eric Bruneton
author:
   Eugene Kuleshov


Field Summary
final static  intACC_CONSTRUCTOR
     Pseudo access flag used to denote constructors.
final static  intAPPEND_FRAME
     Frame where current locals are the same as the locals in the previous frame, except that k additional locals are defined.
final static  intCHOP_FRAME
     Frame where current locals are the same as the locals in the previous frame, except that the k last locals are absent.
final static  intFULL_FRAME
    
final static  intRESERVED
    
final static  intSAME_FRAME
     Frame has exactly the same locals as the previous stack map frame and number of stack items is zero.
final static  intSAME_FRAME_EXTENDED
     Frame has exactly the same locals as the previous stack map frame and number of stack items is zero.
final static  intSAME_LOCALS_1_STACK_ITEM_FRAME
    
final static  intSAME_LOCALS_1_STACK_ITEM_FRAME_EXTENDED
     Frame has exactly the same locals as the previous stack map frame and number of stack items is 1.
 intclassReaderLength
     If not zero, indicates that the code of this method must be copied from the ClassReader associated to this writer in cw.cr.
 intclassReaderOffset
     If not zero, indicates that the code of this method must be copied from the ClassReader associated to this writer in cw.cr.
 ClassWritercw
     The class writer to which this method must be added.
 intexceptionCount
     Number of exceptions that can be thrown by this method.
 int[]exceptions
     The exceptions that can be thrown by this method.
 MethodWriternext
     Next method writer (see ClassWriter.firstMethod firstMethod ).
 Stringsignature
     The signature of this method.

Constructor Summary
 MethodWriter(ClassWriter cw, int access, String name, String desc, String signature, String[] exceptions, boolean computeMaxs, boolean computeFrames)
     Constructs a new MethodWriter .
Parameters:
  cw - the class writer in which the method must be added.
Parameters:
  access - the method's access flags (see Opcodes).
Parameters:
  name - the method's name.
Parameters:
  desc - the method's descriptor (see Type).
Parameters:
  signature - the method's signature.

Method Summary
static  intgetArgumentsAndReturnSizes(String desc)
     Computes the size of the arguments and of the return value of a method.
Parameters:
  desc - the descriptor of a method.
static  intgetNewOffset(int[] indexes, int[] sizes, int begin, int end)
     Computes the future value of a bytecode offset.
static  voidgetNewOffset(int[] indexes, int[] sizes, Label label)
     Updates the offset of the given label.
Parameters:
  indexes - current positions of the instructions to be resized.
final  intgetSize()
     Returns the size of the bytecode of this method.
final  voidput(ByteVector out)
     Puts the bytecode of this method in the given byte vector.
static  intreadInt(byte[] b, int index)
     Reads a signed int value in the given byte array.
Parameters:
  b - a byte array.
Parameters:
  index - the start index of the value to be read.
static  shortreadShort(byte[] b, int index)
     Reads a signed short value in the given byte array.
Parameters:
  b - a byte array.
Parameters:
  index - the start index of the value to be read.
static  intreadUnsignedShort(byte[] b, int index)
     Reads an unsigned short value in the given byte array.
Parameters:
  b - a byte array.
Parameters:
  index - the start index of the value to be read.
public  AnnotationVisitorvisitAnnotation(String desc, boolean visible)
    
public  AnnotationVisitorvisitAnnotationDefault()
    
public  voidvisitAttribute(Attribute attr)
    
public  voidvisitCode()
    
public  voidvisitEnd()
    
public  voidvisitFieldInsn(int opcode, String owner, String name, String desc)
    
public  voidvisitFrame(int type, int nLocal, Object[] local, int nStack, Object[] stack)
    
public  voidvisitIincInsn(int var, int increment)
    
public  voidvisitInsn(int opcode)
    
public  voidvisitIntInsn(int opcode, int operand)
    
public  voidvisitJumpInsn(int opcode, Label label)
    
public  voidvisitLabel(Label label)
    
public  voidvisitLdcInsn(Object cst)
    
public  voidvisitLineNumber(int line, Label start)
    
public  voidvisitLocalVariable(String name, String desc, String signature, Label start, Label end, int index)
    
public  voidvisitLookupSwitchInsn(Label dflt, int keys, Label labels)
    
public  voidvisitMaxs(int maxStack, int maxLocals)
    
public  voidvisitMethodInsn(int opcode, String owner, String name, String desc)
    
public  voidvisitMultiANewArrayInsn(String desc, int dims)
    
public  AnnotationVisitorvisitParameterAnnotation(int parameter, String desc, boolean visible)
    
public  voidvisitTableSwitchInsn(int min, int max, Label dflt, Label labels)
    
public  voidvisitTryCatchBlock(Label start, Label end, Label handler, String type)
    
public  voidvisitTypeInsn(int opcode, String desc)
    
public  voidvisitVarInsn(int opcode, int var)
    
static  voidwriteShort(byte[] b, int index, int s)
     Writes a short value in the given byte array.

Field Detail
ACC_CONSTRUCTOR
final static int ACC_CONSTRUCTOR(Code)
Pseudo access flag used to denote constructors.



APPEND_FRAME
final static int APPEND_FRAME(Code)
Frame where current locals are the same as the locals in the previous frame, except that k additional locals are defined. The value of k is given by the formula frame_type-251.



CHOP_FRAME
final static int CHOP_FRAME(Code)
Frame where current locals are the same as the locals in the previous frame, except that the k last locals are absent. The value of k is given by the formula 251-frame_type.



FULL_FRAME
final static int FULL_FRAME(Code)
Full frame



RESERVED
final static int RESERVED(Code)
Reserved for future use



SAME_FRAME
final static int SAME_FRAME(Code)
Frame has exactly the same locals as the previous stack map frame and number of stack items is zero.



SAME_FRAME_EXTENDED
final static int SAME_FRAME_EXTENDED(Code)
Frame has exactly the same locals as the previous stack map frame and number of stack items is zero. Offset is bigger then 63;



SAME_LOCALS_1_STACK_ITEM_FRAME
final static int SAME_LOCALS_1_STACK_ITEM_FRAME(Code)
Frame has exactly the same locals as the previous stack map frame and number of stack items is 1



SAME_LOCALS_1_STACK_ITEM_FRAME_EXTENDED
final static int SAME_LOCALS_1_STACK_ITEM_FRAME_EXTENDED(Code)
Frame has exactly the same locals as the previous stack map frame and number of stack items is 1. Offset is bigger then 63;



classReaderLength
int classReaderLength(Code)
If not zero, indicates that the code of this method must be copied from the ClassReader associated to this writer in cw.cr. More precisely, this field gives the number of bytes to copied from cw.cr.b.



classReaderOffset
int classReaderOffset(Code)
If not zero, indicates that the code of this method must be copied from the ClassReader associated to this writer in cw.cr. More precisely, this field gives the index of the first byte to copied from cw.cr.b.



cw
ClassWriter cw(Code)
The class writer to which this method must be added.



exceptionCount
int exceptionCount(Code)
Number of exceptions that can be thrown by this method.



exceptions
int[] exceptions(Code)
The exceptions that can be thrown by this method. More precisely, this array contains the indexes of the constant pool items that contain the internal names of these exception classes.



next
MethodWriter next(Code)
Next method writer (see ClassWriter.firstMethod firstMethod ).



signature
String signature(Code)
The signature of this method.




Constructor Detail
MethodWriter
MethodWriter(ClassWriter cw, int access, String name, String desc, String signature, String[] exceptions, boolean computeMaxs, boolean computeFrames)(Code)
Constructs a new MethodWriter .
Parameters:
  cw - the class writer in which the method must be added.
Parameters:
  access - the method's access flags (see Opcodes).
Parameters:
  name - the method's name.
Parameters:
  desc - the method's descriptor (see Type).
Parameters:
  signature - the method's signature. May be null.
Parameters:
  exceptions - the internal names of the method's exceptions. May benull.
Parameters:
  computeMaxs - true if the maximum stack size and numberof local variables must be automatically computed.
Parameters:
  computeFrames - true if the stack map tables must berecomputed from scratch.




Method Detail
getArgumentsAndReturnSizes
static int getArgumentsAndReturnSizes(String desc)(Code)
Computes the size of the arguments and of the return value of a method.
Parameters:
  desc - the descriptor of a method. the size of the arguments of the method (plus one for theimplicit this argument), argSize, and the size of its returnvalue, retSize, packed into a single int i =(argSize << 2) | retSize (argSize is therefore equalto i >> 2, and retSize to i & 0x03).



getNewOffset
static int getNewOffset(int[] indexes, int[] sizes, int begin, int end)(Code)
Computes the future value of a bytecode offset.

Note: it is possible to have several entries for the same instruction in the indexes and sizes: two entries (index=a,size=b) and (index=a,size=b') are equivalent to a single entry (index=a,size=b+b').
Parameters:
  indexes - current positions of the instructions to be resized. Eachinstruction must be designated by the index of its lastbyte, plus one (or, in other words, by the index of the firstbyte of the next instruction).
Parameters:
  sizes - the number of bytes to be added to the aboveinstructions. More precisely, for each i < len,sizes[i] bytes will be added at the end of theinstruction designated by indexes[i] or, ifsizes[i] is negative, the last |sizes[i]|bytes of the instruction will be removed (the instruction sizemust not become negative or null).
Parameters:
  begin - index of the first byte of the source instruction.
Parameters:
  end - index of the first byte of the target instruction. the future value of the given bytecode offset.




getNewOffset
static void getNewOffset(int[] indexes, int[] sizes, Label label)(Code)
Updates the offset of the given label.
Parameters:
  indexes - current positions of the instructions to be resized. Eachinstruction must be designated by the index of its lastbyte, plus one (or, in other words, by the index of the firstbyte of the next instruction).
Parameters:
  sizes - the number of bytes to be added to the aboveinstructions. More precisely, for each i < len,sizes[i] bytes will be added at the end of theinstruction designated by indexes[i] or, ifsizes[i] is negative, the last |sizes[i]|bytes of the instruction will be removed (the instruction sizemust not become negative or null).
Parameters:
  label - the label whose offset must be updated.



getSize
final int getSize()(Code)
Returns the size of the bytecode of this method. the size of the bytecode of this method.



put
final void put(ByteVector out)(Code)
Puts the bytecode of this method in the given byte vector.
Parameters:
  out - the byte vector into which the bytecode of this method must becopied.



readInt
static int readInt(byte[] b, int index)(Code)
Reads a signed int value in the given byte array.
Parameters:
  b - a byte array.
Parameters:
  index - the start index of the value to be read. the read value.



readShort
static short readShort(byte[] b, int index)(Code)
Reads a signed short value in the given byte array.
Parameters:
  b - a byte array.
Parameters:
  index - the start index of the value to be read. the read value.



readUnsignedShort
static int readUnsignedShort(byte[] b, int index)(Code)
Reads an unsigned short value in the given byte array.
Parameters:
  b - a byte array.
Parameters:
  index - the start index of the value to be read. the read value.



visitAnnotation
public AnnotationVisitor visitAnnotation(String desc, boolean visible)(Code)



visitAnnotationDefault
public AnnotationVisitor visitAnnotationDefault()(Code)



visitAttribute
public void visitAttribute(Attribute attr)(Code)



visitCode
public void visitCode()(Code)



visitEnd
public void visitEnd()(Code)



visitFieldInsn
public void visitFieldInsn(int opcode, String owner, String name, String desc)(Code)



visitFrame
public void visitFrame(int type, int nLocal, Object[] local, int nStack, Object[] stack)(Code)



visitIincInsn
public void visitIincInsn(int var, int increment)(Code)



visitInsn
public void visitInsn(int opcode)(Code)



visitIntInsn
public void visitIntInsn(int opcode, int operand)(Code)



visitJumpInsn
public void visitJumpInsn(int opcode, Label label)(Code)



visitLabel
public void visitLabel(Label label)(Code)



visitLdcInsn
public void visitLdcInsn(Object cst)(Code)



visitLineNumber
public void visitLineNumber(int line, Label start)(Code)



visitLocalVariable
public void visitLocalVariable(String name, String desc, String signature, Label start, Label end, int index)(Code)



visitLookupSwitchInsn
public void visitLookupSwitchInsn(Label dflt, int keys, Label labels)(Code)



visitMaxs
public void visitMaxs(int maxStack, int maxLocals)(Code)



visitMethodInsn
public void visitMethodInsn(int opcode, String owner, String name, String desc)(Code)



visitMultiANewArrayInsn
public void visitMultiANewArrayInsn(String desc, int dims)(Code)



visitParameterAnnotation
public AnnotationVisitor visitParameterAnnotation(int parameter, String desc, boolean visible)(Code)



visitTableSwitchInsn
public void visitTableSwitchInsn(int min, int max, Label dflt, Label labels)(Code)



visitTryCatchBlock
public void visitTryCatchBlock(Label start, Label end, Label handler, String type)(Code)



visitTypeInsn
public void visitTypeInsn(int opcode, String desc)(Code)



visitVarInsn
public void visitVarInsn(int opcode, int var)(Code)



writeShort
static void writeShort(byte[] b, int index, int s)(Code)
Writes a short value in the given byte array.
Parameters:
  b - a byte array.
Parameters:
  index - where the first byte of the short value must be written.
Parameters:
  s - the value to be written in the given byte array.



Methods inherited from java.lang.Object
native protected Object clone() throws CloneNotSupportedException(Code)(Java Doc)
public boolean equals(Object obj)(Code)(Java Doc)
protected void finalize() throws Throwable(Code)(Java Doc)
final native public Class getClass()(Code)(Java Doc)
native public int hashCode()(Code)(Java Doc)
final native public void notify()(Code)(Java Doc)
final native public void notifyAll()(Code)(Java Doc)
public String toString()(Code)(Java Doc)
final native public void wait(long timeout) throws InterruptedException(Code)(Java Doc)
final public void wait(long timeout, int nanos) throws InterruptedException(Code)(Java Doc)
final public void wait() throws InterruptedException(Code)(Java Doc)

www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.