void writeIndent() throws IOException {
        int indent;
        if (this.indent != null) {
            indent = this.indent;
        } else {
            indent = 0;
        }

        if (!this.indention || this.column > indent || (this.column == indent && !this.whitespace)) {
            writeLineBreak(null);
        }

        if (this.column < indent) {
            this.whitespace = true;
            char[] data = new char[indent - this.column];
            for (int i = 0; i < data.length; i++) {
                data[i] = ' ';
            }
            this.column = indent;
            stream.write(data);
        }
    }