0
|
1 package nabble.naml.compiler;
|
|
2
|
|
3 import fschmidt.util.java.Interner;
|
|
4
|
|
5
|
|
6 interface Chunk {
|
|
7 public void run(IPrintWriter out,RunState runState);
|
|
8 public boolean hasOutput();
|
|
9 public Chunk intern();
|
|
10
|
|
11 static final Interner<Chunk> interner = new Interner<Chunk>();
|
|
12
|
|
13 static final Chunk NULL = new Chunk() {
|
|
14
|
|
15 public void run(IPrintWriter out,RunState runState) {
|
|
16 out.print((String)null);
|
|
17 }
|
|
18
|
|
19 public boolean hasOutput() {
|
|
20 return true;
|
|
21 }
|
|
22
|
|
23 public String toString() {
|
|
24 return "nullChunk";
|
|
25 }
|
|
26
|
|
27 @Override public Chunk intern() {
|
|
28 return this;
|
|
29 }
|
|
30 };
|
|
31 }
|