B-Arts DocumentationIndice generale

BMarkdownNode - Esempi

Costruzione manuale di un albero minimo

using B.BMarkdown;

BMarkdownNode heading = new BMarkdownNode(BMarkdownNode.eNodeType.Heading)
{
  Level = 2
};

heading.Add(new BMarkdownNode(BMarkdownNode.eNodeType.Text, "Titolo sezione"));

BMarkdownNode paragraph = new BMarkdownNode(BMarkdownNode.eNodeType.Paragraph);
paragraph.Add(new BMarkdownNode(BMarkdownNode.eNodeType.Text, "Testo "));

BMarkdownNode strong = paragraph.Add(
  new BMarkdownNode(BMarkdownNode.eNodeType.Strong)
);
strong.Add(new BMarkdownNode(BMarkdownNode.eNodeType.Text, "importante"));

Ricerca dei blocchi di codice

BMarkdownDocument document = new BMarkdownParser().Parse(markdown);

List<BMarkdownNode> codeBlocks = document.Root.Children
  .Where(node => node.Type == BMarkdownNode.eNodeType.CodeBlock)
  .ToList();

Per ricerche ricorsive occorre attraversare anche Children, perché blocchi e contenuti inline possono essere annidati.