Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*     */ package javassist.bytecode;
  /*     */ 
  /*     */ import java.io.DataInputStream;
  /*     */ import java.io.DataOutputStream;
  /*     */ import java.io.IOException;
  /*     */ import java.util.ArrayList;
  /*     */ import java.util.Map;
  /*     */ 
  /*     */ public class ExceptionTable
 /*     */   implements Cloneable
 /*     */ {
 /*     */   private ConstPool constPool;
 /*     */   private ArrayList entries;
 /*     */ 
 /*     */   public ExceptionTable(ConstPool cp)
 /*     */   {
 /*  51 */     this. = cp;
 /*  52 */     this. = new ArrayList();
 /*     */   }
 /*     */ 
 /*     */   ExceptionTable(ConstPool cpDataInputStream inthrows IOException {
 /*  56 */     this. = cp;
 /*  57 */     int length = in.readUnsignedShort();
 /*  58 */     ArrayList list = new ArrayList(length);
 /*  59 */     for (int i = 0; i < lengthi++) {
 /*  60 */       int start = in.readUnsignedShort();
 /*  61 */       int end = in.readUnsignedShort();
 /*  62 */       int handle = in.readUnsignedShort();
 /*  63 */       int type = in.readUnsignedShort();
 /*  64 */       list.add(new ExceptionTableEntry(startendhandletype));
 /*     */     }
 /*     */ 
 /*  67 */     this. = list;
 /*     */   }
 /*     */ 
 /*     */   public Object clone()
 /*     */     throws CloneNotSupportedException
 /*     */   {
 /*  76 */     ExceptionTable r = (ExceptionTable)super.clone();
 /*  77 */     r.entries = new ArrayList(this.);
 /*  78 */     return r;
 /*     */   }
 /*     */ 
 /*     */   public int size()
 /*     */   {
 /*  86 */     return this..size();
 /*     */   }
 /*     */ 
 /*     */   public int startPc(int nth)
 /*     */   {
 /*  95 */     ExceptionTableEntry e = (ExceptionTableEntry)this..get(nth);
 /*  96 */     return e.startPc;
 /*     */   }
 /*     */ 
 /*     */   public void setStartPc(int nthint value)
 /*     */   {
 /* 106 */     ExceptionTableEntry e = (ExceptionTableEntry)this..get(nth);
 /* 107 */     e.startPc = value;
 /*     */   }
 /*     */ 
 /*     */   public int endPc(int nth)
 /*     */   {
 /* 116 */     ExceptionTableEntry e = (ExceptionTableEntry)this..get(nth);
 /* 117 */     return e.endPc;
 /*     */   }
 /*     */ 
 /*     */   public void setEndPc(int nthint value)
 /*     */   {
 /* 127 */     ExceptionTableEntry e = (ExceptionTableEntry)this..get(nth);
 /* 128 */     e.endPc = value;
 /*     */   }
 /*     */ 
 /*     */   public int handlerPc(int nth)
 /*     */   {
 /* 137 */     ExceptionTableEntry e = (ExceptionTableEntry)this..get(nth);
 /* 138 */     return e.handlerPc;
 /*     */   }
 /*     */ 
 /*     */   public void setHandlerPc(int nthint value)
 /*     */   {
 /* 148 */     ExceptionTableEntry e = (ExceptionTableEntry)this..get(nth);
 /* 149 */     e.handlerPc = value;
 /*     */   }
 /*     */ 
 /*     */   public int catchType(int nth)
 /*     */   {
 /* 160 */     ExceptionTableEntry e = (ExceptionTableEntry)this..get(nth);
 /* 161 */     return e.catchType;
 /*     */   }
 /*     */ 
 /*     */   public void setCatchType(int nthint value)
 /*     */   {
 /* 171 */     ExceptionTableEntry e = (ExceptionTableEntry)this..get(nth);
 /* 172 */     e.catchType = value;
 /*     */   }
 /*     */ 
 /*     */   public void add(int indexExceptionTable tableint offset)
 /*     */   {
 /* 183 */     int len = table.size();
/*     */     while (true) { len--; if (len < 0) break;
/* 185 */       ExceptionTableEntry e = (ExceptionTableEntry)table.entries.get(len);
/*     */ 
/* 187 */       add(indexe.startPc + offsete.endPc + offsete.handlerPc + offsete.catchType);
/*     */     }
/*     */   }
/*     */ 
/*     */   public void add(int indexint startint endint handlerint type)
/*     */   {
/* 202 */     if (start < end)
/* 203 */       this..add(indexnew ExceptionTableEntry(startendhandlertype));
/*     */   }
/*     */ 
/*     */   public void add(int startint endint handlerint type)
/*     */   {
/* 216 */     if (start < end)
/* 217 */       this..add(new ExceptionTableEntry(startendhandlertype));
/*     */   }
/*     */ 
/*     */   public void remove(int index)
/*     */   {
/* 226 */     this..remove(index);
/*     */   }
/*     */ 
/*     */   public ExceptionTable copy(ConstPool newCpMap classnames)
/*     */   {
/* 239 */     ExceptionTable et = new ExceptionTable(newCp);
/* 240 */     ConstPool srcCp = this.;
/* 241 */     int len = size();
/* 242 */     for (int i = 0; i < leni++) {
/* 243 */       ExceptionTableEntry e = (ExceptionTableEntry)this..get(i);
/* 244 */       int type = srcCp.copy(e.catchTypenewCpclassnames);
/* 245 */       et.add(e.startPce.endPce.handlerPctype);
/*     */     }
/*     */ 
/* 248 */     return et;
/*     */   }
/*     */ 
/*     */   void shiftPc(int whereint gapLengthboolean exclusive) {
/* 252 */     int len = size();
/* 253 */     for (int i = 0; i < leni++) {
/* 254 */       ExceptionTableEntry e = (ExceptionTableEntry)this..get(i);
/* 255 */       e.startPc = shiftPc(e.startPcwheregapLengthexclusive);
/* 256 */       e.endPc = shiftPc(e.endPcwheregapLengthexclusive);
/* 257 */       e.handlerPc = shiftPc(e.handlerPcwheregapLengthexclusive);
/*     */     }
/*     */   }
/*     */ 
/*     */   private static int shiftPc(int pcint whereint gapLengthboolean exclusive)
/*     */   {
/* 263 */     if ((pc > where) || ((exclusive) && (pc == where))) {
/* 264 */       pc += gapLength;
/*     */     }
/* 266 */     return pc;
/*     */   }
/*     */ 
/*     */   void write(DataOutputStream outthrows IOException {
/* 270 */     int len = size();
/* 271 */     out.writeShort(len);
/* 272 */     for (int i = 0; i < leni++) {
/* 273 */       ExceptionTableEntry e = (ExceptionTableEntry)this..get(i);
/* 274 */       out.writeShort(e.startPc);
/* 275 */       out.writeShort(e.endPc);
/* 276 */       out.writeShort(e.handlerPc);
/* 277 */       out.writeShort(e.catchType);
/*     */     }
/*     */   }
/*     */ }
/* Location:           /home/mnovotny/projects/EMBEDDED_JBOSS_BETA3_COMMUNITY/embedded/output/lib/embedded-jboss/lib/thirdparty-all.jar
 * Qualified Name:     javassist.bytecode.ExceptionTable
 * JD-Core Version:    0.6.0
 */
New to GrepCode? Check out our FAQ X