本文整理汇总了Java中com.vladsch.flexmark.ast.Node.getFirstChild方法的典型用法代码示例。如果您正苦于以下问题:Java Node.getFirstChild方法的具体用法?Java Node.getFirstChild怎么用?Java Node.getFirstChild使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.vladsch.flexmark.ast.Node
的用法示例。
在下文中一共展示了Node.getFirstChild方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: collectFormattableText
import com.vladsch.flexmark.ast.Node; //导入方法依赖的package包/类
/**
* Collects the text of a single paragraph.
*
* Replaces:
* - tabs with spaces
* - newlines with spaces (may occur in Code nodes)
* - soft line breaks with spaces
* - hard line breaks with special marker characters
* - spaces and tabs in special nodes, that should not formatted, with marker characters
*/
private void collectFormattableText(StringBuilder buf, Node node) {
for (Node n = node.getFirstChild(); n != null; n = n.getNext()) {
if (n instanceof Text) {
buf.append(n.getChars().toString().replace('\t', ' ').replace('\n', ' '));
} else if (n instanceof DelimitedNode) {
// italic, bold and code
buf.append(((DelimitedNode) n).getOpeningMarker());
collectFormattableText(buf, n);
buf.append(((DelimitedNode) n).getClosingMarker());
} else if (n instanceof SoftLineBreak) {
buf.append(' ');
} else if (n instanceof HardLineBreak) {
buf.append(' ').append(n.getChars().startsWith("\\")
? HARD_LINE_BREAK_BACKSLASH : HARD_LINE_BREAK_SPACES).append(' ');
} else {
// other text that should be not wrapped or formatted
buf.append(protectWhitespace(n.getChars().toString()));
}
}
}
示例2: printNode
import com.vladsch.flexmark.ast.Node; //导入方法依赖的package包/类
private void printNode(StringBuilder buf, String indent, Node node) {
buf.append(indent);
node.astString(buf, true);
printAttributes(buf, node);
buf.append('\n');
indent += " ";
for (Node child = node.getFirstChild(); child != null; child = child.getNext())
printNode(buf, indent, child);
}