CodeOutput extends CodeChunk implements CodeBlock { @Override public String gensym() { return env.gensym(); } CodeOutput(); protected  CodeOutput(Env env, String indent, StringBuilder buffer); String toDumpString(); @Override Writer getWriter(); @Override void indent(); @Override void dedent(); @Override void print(String pattern, Object... args); @Override void println(String pattern, Object... args); @Override CodeBlock block(); CodeOutput add(CodeRenderable renderable); @Override String gensym(); String toString(); @Override void append(CharSequence csq);  }
@Test public void testGensym() { CodeOutput output = new CodeOutput(); output.println(output.gensym()); output.indent(); CodeBlock block = output.block(); output.dedent(); block.println(block.gensym()); Assert.assertEquals(output.toString(), "sym0\n sym1\n"); }