package org.simantics.scl.compiler.markdown.nodes; import org.simantics.scl.compiler.markdown.html.HtmlGenerationContext; import org.simantics.scl.compiler.markdown.internal.HtmlEscape; public class CodeBlockNode extends Node { public boolean fenced; public char fenceChar; public int fenceLength; public int fenceOffset; public String infoString; public CodeBlockNode() { } public CodeBlockNode(char fenceChar, int fenceLength, int fenceOffset) { this.fenced = true; this.fenceChar = fenceChar; this.fenceLength = fenceLength; this.fenceOffset = fenceOffset; } public CodeBlockNode(StringBuilder stringContent) { this.stringContent = stringContent; } @Override public boolean acceptLines() { return true; } @Override public void toHtml(HtmlGenerationContext context, StringBuilder b) { if(infoString == null || infoString.isEmpty()) b.append("
");
else {
String[] parts = infoString.split(" ");
b.append("");
}
if(stringContent.length() > 0)
b.append(HtmlEscape.escape(stringContent)).append('\n');
b.append("
\n");
}
}