1 package de.lathanda.eos.vm;
3 import java.util.LinkedList;
12 private static final String TAB =
" ";
13 private LinkedList<Newline> newlines;
14 private String source;
18 newlines =
new LinkedList<>();
25 StringBuilder pretty =
new StringBuilder();
26 for (Newline line : newlines) {
27 linetext = source.substring(index, line.position);
28 int crs = linetext.replaceAll(
"\n",
"xx").length() - linetext.length();
29 linetext = linetext.trim();
30 crs -= linetext.replaceAll(
"\n",
"xx").length() - linetext.length();
31 index = line.position;
32 if (!linetext.isEmpty()) {
33 for (
int i = level; i-- > 0;) {
36 pretty.append(linetext);
38 for (
int i = 1; i < crs; i++) {
44 linetext = source.substring(index, source.length()).trim();
45 if (!linetext.isEmpty()) {
46 for (
int i = level; i-- > 0;) {
49 pretty.append(linetext);
52 return pretty.toString();
55 public void newline(
int position,
int level) {
56 newlines.add(
new Newline(position, level));
59 private class Newline {
63 public Newline(
int position,
int level) {
64 this.position = position;
void newline(int position, int level)
PrettyPrinter(String source)