@Override public void toFileString(final BufferedWriter bw, int depth, Style style) throws IOException { if (name.equals("root")) { toFileString(bw, style); return; } final boolean parentSameLine = style.isInline(parent); final boolean sameLine = parentSameLine || style.isInline(this); if (!parentSameLine && headComment != null) { headComment.toFileString(bw, depth, style); } final String localtab = (parentSameLine ? "" : style.getTab(depth)); bw.write(localtab); if (!"".equals(name)) { bw.write(name); style.printEqualsSign(bw, depth); style.printOpeningBrace(bw, depth); } else { style.printOpeningBrace(bw, depth); } if (!sameLine) bw.newLine(); for (WritableObject obj : allWritable) { if (obj instanceof ObjectVariable || obj instanceof Comment) { if (!sameLine) { style.printTab(bw, depth + 1); } } obj.toFileString(bw, depth + 1, style); if (sameLine) bw.write(' '); else bw.newLine(); } if (parentSameLine) { bw.write('}'); } else if (sameLine) { bw.write("} "); if (inlineComment != null) inlineComment.toFileString(bw, depth, style); } else { bw.write(localtab + "}"); if (inlineComment != null) { bw.write(" "); inlineComment.toFileString(bw, depth, style); } if (style.newLineAfterObject()) bw.newLine(); } }
public void toFileString(final BufferedWriter bw, String comment) throws IOException { toFileString(bw, comment, Style.DEFAULT); }
@Override public void toFileString(final BufferedWriter bw, int depth) throws IOException { toFileString(bw, depth, Style.DEFAULT); }
public void toFileString(final BufferedWriter bw, final Style style) throws IOException { toFileString(bw, "", style); }