Made printer able to avoid extra blank lines.
This commit is contained in:
@@ -23,11 +23,19 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
*/
|
*/
|
||||||
public class Printer {
|
public class Printer {
|
||||||
private static final String INDENTATION_UNIT = " ";
|
private static final String INDENTATION_UNIT = " ";
|
||||||
private String indent = "";
|
|
||||||
private final StringBuilder out;
|
private final StringBuilder out;
|
||||||
|
private final int maxBlankLines;
|
||||||
|
|
||||||
|
private String indent = "";
|
||||||
|
private int blankLineCountIncludingCurrent = 0;
|
||||||
|
|
||||||
public Printer(@NotNull StringBuilder out) {
|
public Printer(@NotNull StringBuilder out) {
|
||||||
|
this(out, Integer.MAX_VALUE);
|
||||||
|
}
|
||||||
|
|
||||||
|
public Printer(@NotNull StringBuilder out, int maxBlankLines) {
|
||||||
this.out = out;
|
this.out = out;
|
||||||
|
this.maxBlankLines = maxBlankLines;
|
||||||
}
|
}
|
||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
@@ -39,7 +47,10 @@ public class Printer {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void printLineSeparator() {
|
private void printLineSeparator() {
|
||||||
out.append(System.getProperty("line.separator"));
|
if (blankLineCountIncludingCurrent <= maxBlankLines) {
|
||||||
|
blankLineCountIncludingCurrent++;
|
||||||
|
out.append(System.getProperty("line.separator"));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
@@ -53,6 +64,7 @@ public class Printer {
|
|||||||
@NotNull
|
@NotNull
|
||||||
public Printer printWithNoIndent(Object... objects) {
|
public Printer printWithNoIndent(Object... objects) {
|
||||||
for (Object object : objects) {
|
for (Object object : objects) {
|
||||||
|
blankLineCountIncludingCurrent = 0;
|
||||||
out.append(object);
|
out.append(object);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user