package cute.instrument;
/**
* Author: Koushik Sen <ksen@cs.uiuc.edu>
*/
import java.io.Serializable;
import java.util.HashMap;
import java.util.Iterator;
public class SymbolTable implements Serializable {
/**
*
*/
private static final long serialVersionUID = -1721540850266275071L;
private HashMap st;
private HashMap revMap;
public SymbolTable() {
this.st = new HashMap();
}
public int get(String s){
Integer ret = (Integer)st.get(s);
if(ret!= null) return ret.intValue();
int i = st.size()+1;
st.put(s,new Integer(i));
return i;
}
public String toString() {
return st.toString();
}
public void reverseMap() {
revMap = new HashMap();
for (Iterator iterator = st.keySet().iterator(); iterator.hasNext();) {
Object o = iterator.next();
revMap.put(st.get(o),o);
}
}
public String getReverse(int i){
return (String)revMap.get(new Integer(i));
}
}