3 public interface CodeWriter extends PrettyPrinter{
5 public void outputline(String s);
7 public void unindent();
8 public void startblock();
9 public void endblock();
11 public void startBuffer();
12 public void emptyBuffer();
13 public void addDeclaration(String type, String varname);
14 public void addDeclaration(String function);
15 public void pushSymbolTable(SymbolTable st);
16 public SymbolTable popSymbolTable();
17 public SymbolTable getSymbolTable();
18 public InvariantValue getInvariantValue();
19 public void setInvariantValue(InvariantValue iv);