private static void WriteTops(Node root, StreamWriter writer, int level = 2) { if (!root.HasNodes) { return; } foreach (var node in root.Children) { string name = Path.GetFileName(node.Path); writer.WriteLine(MarkdownConverter.GetHead(name, level)); if (node.HasSystems) { WriteTableSystem(node.Systems, writer); } if (node.HasComponents) { WriteTableComponent(node.Components, writer); } writer.WriteLine(MarkdownConverter.GetLocalLink(imgArrowUp, context)); if (node.HasNodes) { WriteTops(node, writer, level + 1); } } }
internal static void CreateDocumetation(Node root, string docDirectory) { string projectName = "NeonZuma documentation"; using (var streamWriter = new StreamWriter(Path.Combine(docDirectory, docName), false, Encoding.UTF8)) { // Before context streamWriter.WriteLine(MarkdownConverter.GetHead(projectName, 1)); streamWriter.WriteLine(String.Format(projectDescription, projectName)); streamWriter.WriteLine(); // Context streamWriter.WriteLine(MarkdownConverter.GetHead(context, 2)); WriteContext(root, streamWriter); streamWriter.WriteLine(MarkdownConverter.GetHorizontalLine()); // Parse each top WriteTops(root, streamWriter); } }