| 60 | } |
| 61 | |
| 62 | @Override |
| 63 | public void write(OutputStream out, BHeader header, LObject object) throws IOException { |
| 64 | if(object instanceof LNil) { |
| 65 | out.write(0); |
| 66 | } else if(object instanceof LBoolean) { |
| 67 | out.write(1); |
| 68 | header.bool.write(out, header, (LBoolean)object); |
| 69 | } else if(object instanceof LNumber) { |
| 70 | out.write(3); |
| 71 | header.number.write(out, header, (LNumber)object); |
| 72 | } else if(object instanceof LString) { |
| 73 | out.write(4); |
| 74 | header.string.write(out, header, (LString)object); |
| 75 | } else { |
| 76 | throw new IllegalStateException(); |
| 77 | } |
| 78 | } |
| 79 | |
| 80 | } |
| 81 | |