4 public class PrintWrapper {
5 java.io.PrintWriter output;
8 Hashtable vartable=new Hashtable();
10 public PrintWrapper(java.io.PrintWriter output) {
13 void print(String s) {
23 void println(String s) {
33 //Print out declarations
34 for(Iterator it=vartable.keySet().iterator();it.hasNext();) {
35 String var=(String)it.next();
36 output.println(((String)vartable.get(var))+" "+var+";");
38 output.print(buffered);
40 vartable=new Hashtable();
43 void addDeclaration(String type, String varname) {
45 if (vartable.containsKey(varname)) {
46 String oldtype=(String)vartable.get(varname);
47 if (!oldtype.equals(type)) {
48 throw new Error("Internal error: Inconsistent declarations for:"+varname);
51 vartable.put(varname,type);
54 output.println(type+" "+varname+";");