1 19 20 25 26 27 28 29 30 31 32 package soot.coffi; 33 34 import java.util.ArrayList ; 35 import java.util.Iterator ; 36 import java.util.NoSuchElementException ; 37 38 42 final class BBQ { 43 44 private ArrayList q = new ArrayList (); 45 46 50 public void push(BasicBlock b) { 51 if (b.inq!=true) { b.inq = true; 53 q.add(b); 54 } 55 } 56 57 62 public BasicBlock pull() throws NoSuchElementException { 63 if(q.size()==0) 64 throw new 65 NoSuchElementException ("Pull from empty BBQ"); 66 BasicBlock b = (BasicBlock)(q.get(0)); 67 q.remove(0); 68 b.inq = false; 69 return b; 70 } 71 72 77 public boolean contains(BasicBlock b) { return b.inq; } 78 81 public int size() { return q.size(); } 82 85 public boolean isEmpty() { return q.isEmpty(); } 86 87 88 public void clear() { 89 BasicBlock b; 90 for (Iterator e = q.iterator();e.hasNext();) { 91 b = (BasicBlock)(e.next()); 92 b.inq = false; 93 } 94 q.clear(); 95 } 96 } 97 98 | Popular Tags |