home *** CD-ROM | disk | FTP | other *** search
- package sun.misc;
-
- import java.io.ByteArrayOutputStream;
- import java.io.DataOutputStream;
- import java.io.IOException;
- import java.util.ArrayList;
- import java.util.List;
-
- class ProxyGenerator$MethodInfo {
- public int accessFlags;
- public String name;
- public String descriptor;
- public short maxStack;
- public short maxLocals;
- public ByteArrayOutputStream code;
- public List exceptionTable;
- public short[] declaredExceptions;
- // $FF: synthetic field
- private final ProxyGenerator this$0;
-
- public ProxyGenerator$MethodInfo(ProxyGenerator var1, String var2, String var3, int var4) {
- this.this$0 = var1;
- this.code = new ByteArrayOutputStream();
- this.exceptionTable = new ArrayList();
- this.name = var2;
- this.descriptor = var3;
- this.accessFlags = var4;
- ProxyGenerator.access$400(var1).getUtf8(var2);
- ProxyGenerator.access$400(var1).getUtf8(var3);
- ProxyGenerator.access$400(var1).getUtf8("Code");
- ProxyGenerator.access$400(var1).getUtf8("Exceptions");
- }
-
- public void write(DataOutputStream var1) throws IOException {
- var1.writeShort(this.accessFlags);
- var1.writeShort(ProxyGenerator.access$400(this.this$0).getUtf8(this.name));
- var1.writeShort(ProxyGenerator.access$400(this.this$0).getUtf8(this.descriptor));
- var1.writeShort(2);
- var1.writeShort(ProxyGenerator.access$400(this.this$0).getUtf8("Code"));
- var1.writeInt(12 + this.code.size() + 8 * this.exceptionTable.size());
- var1.writeShort(this.maxStack);
- var1.writeShort(this.maxLocals);
- var1.writeInt(this.code.size());
- this.code.writeTo(var1);
- var1.writeShort(this.exceptionTable.size());
-
- for(ProxyGenerator.ExceptionTableEntry var3 : this.exceptionTable) {
- var1.writeShort(var3.startPc);
- var1.writeShort(var3.endPc);
- var1.writeShort(var3.handlerPc);
- var1.writeShort(var3.catchType);
- }
-
- var1.writeShort(0);
- var1.writeShort(ProxyGenerator.access$400(this.this$0).getUtf8("Exceptions"));
- var1.writeInt(2 + 2 * this.declaredExceptions.length);
- var1.writeShort(this.declaredExceptions.length);
-
- for(int var4 = 0; var4 < this.declaredExceptions.length; ++var4) {
- var1.writeShort(this.declaredExceptions[var4]);
- }
-
- }
- }
-