summaryrefslogtreecommitdiffstatshomepage
path: root/tree.c
diff options
context:
space:
mode:
authorKristaps Dzonsons <kristaps@bsd.lv>2009-02-23 07:09:13 +0000
committerKristaps Dzonsons <kristaps@bsd.lv>2009-02-23 07:09:13 +0000
commit7caa51ee5a0c6624eb97d1d6bf06b84bdbd7f034 (patch)
treefff13d3e7f77987fac0c4418de599f1bb1f4805f /tree.c
parentb96fa66b3bba1ea8e09fda0e994688409dbe30ce (diff)
downloadmandoc-7caa51ee5a0c6624eb97d1d6bf06b84bdbd7f034.tar.gz
mandoc-7caa51ee5a0c6624eb97d1d6bf06b84bdbd7f034.tar.zst
mandoc-7caa51ee5a0c6624eb97d1d6bf06b84bdbd7f034.zip
termact.c -> term.c
term.c -> mdocterm.c tree.c -> mdoctree.c Fixed/finished mmain.h.
Diffstat (limited to 'tree.c')
-rw-r--r--tree.c132
1 files changed, 0 insertions, 132 deletions
diff --git a/tree.c b/tree.c
deleted file mode 100644
index b62c2adf..00000000
--- a/tree.c
+++ /dev/null
@@ -1,132 +0,0 @@
-/* $Id: tree.c,v 1.6 2009/02/21 21:00:06 kristaps Exp $ */
-/*
- * Copyright (c) 2008 Kristaps Dzonsons <kristaps@kth.se>
- *
- * Permission to use, copy, modify, and distribute this software for any
- * purpose with or without fee is hereby granted, provided that the
- * above copyright notice and this permission notice appear in all
- * copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
- * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
- * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
- * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
- * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
- * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- * PERFORMANCE OF THIS SOFTWARE.
- */
-#include <stdlib.h>
-#include <stdio.h>
-
-#include "mdoc.h"
-
-#define xprintf (void)printf
-
-static void treeprint_r(const struct mdoc_node *, int);
-
-static void
-treeprint_r(const struct mdoc_node *n, int indent)
-{
- const char *p, *t;
- int i, j;
- size_t argc, sz;
- char **params;
- struct mdoc_arg *argv;
-
- argv = NULL;
- argc = sz = 0;
- params = NULL;
-
- switch (n->type) {
- case (MDOC_ROOT):
- t = "root";
- break;
- case (MDOC_BLOCK):
- t = "block";
- break;
- case (MDOC_HEAD):
- t = "block-head";
- break;
- case (MDOC_BODY):
- t = "block-body";
- break;
- case (MDOC_TAIL):
- t = "block-tail";
- break;
- case (MDOC_ELEM):
- t = "elem";
- break;
- case (MDOC_TEXT):
- t = "text";
- break;
- default:
- abort();
- /* NOTREACHED */
- }
-
- switch (n->type) {
- case (MDOC_TEXT):
- p = n->data.text.string;
- break;
- case (MDOC_BODY):
- p = mdoc_macronames[n->tok];
- break;
- case (MDOC_HEAD):
- p = mdoc_macronames[n->tok];
- break;
- case (MDOC_TAIL):
- p = mdoc_macronames[n->tok];
- break;
- case (MDOC_ELEM):
- p = mdoc_macronames[n->tok];
- argv = n->data.elem.argv;
- argc = n->data.elem.argc;
- break;
- case (MDOC_BLOCK):
- p = mdoc_macronames[n->tok];
- argv = n->data.block.argv;
- argc = n->data.block.argc;
- break;
- case (MDOC_ROOT):
- p = "root";
- break;
- default:
- abort();
- /* NOTREACHED */
- }
-
- for (i = 0; i < indent; i++)
- xprintf(" ");
- xprintf("%s (%s)", p, t);
-
- for (i = 0; i < (int)argc; i++) {
- xprintf(" -%s", mdoc_argnames[argv[i].arg]);
- if (argv[i].sz > 0)
- xprintf(" [");
- for (j = 0; j < (int)argv[i].sz; j++)
- xprintf(" [%s]", argv[i].value[j]);
- if (argv[i].sz > 0)
- xprintf(" ]");
- }
-
- for (i = 0; i < (int)sz; i++)
- xprintf(" [%s]", params[i]);
-
- xprintf(" %d:%d\n", n->line, n->pos);
-
- if (n->child)
- treeprint_r(n->child, indent + 1);
- if (n->next)
- treeprint_r(n->next, indent);
-}
-
-
-/* ARGSUSED */
-void
-treeprint(const struct mdoc_node *node,
- const struct mdoc_meta *meta)
-{
-
- treeprint_r(node, 0);
-}