X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=src%2Fedu%2Fberkeley%2Fsbp%2Futil%2FFastSet.java;h=c8302b52cfea7624e7fd8c57757927deb910b774;hb=61566402d83d5c06d57fb850e60ca0f82c27b9a2;hp=26c5f334a147d96f96e3eabcbb2a272bead50507;hpb=3ee451bce342d4bb61ad6235ba57bdf817bfdd1a;p=sbp.git diff --git a/src/edu/berkeley/sbp/util/FastSet.java b/src/edu/berkeley/sbp/util/FastSet.java index 26c5f33..c8302b5 100644 --- a/src/edu/berkeley/sbp/util/FastSet.java +++ b/src/edu/berkeley/sbp/util/FastSet.java @@ -1,4 +1,4 @@ -// Copyright 2006 all rights reserved; see LICENSE file for BSD-style license +// Copyright 2006-2007 all rights reserved; see LICENSE file for BSD-style license package edu.berkeley.sbp.util; import java.util.*; @@ -30,10 +30,23 @@ public /*final*/ class FastSet implements Iterator, Iterable, Visitable for(T t : s) array[size++] = t; } - public void visit(Invokable ivbc, B b, C c) { - if (only!=null) ivbc.invoke(only, b, c); + public void remove(T t) { + if (only != null) { + if (only==t) only=null; + return; + } + boolean found = false; + for(int j=0; j void visit(Invokable ivbc, B b) { + if (only!=null) ivbc.invoke(only, b); else for(int j=0; j