]> git.cameronkatri.com Git - mandoc.git/blobdiff - demandoc.c
delete some TODO entries that were already fixed
[mandoc.git] / demandoc.c
index f515931d8b91e8742129e65f2eccabad6ab2bcfd..a51c8cca059e78fdda28dee353c9254b6ffed999 100644 (file)
@@ -1,4 +1,4 @@
-/*     $Id: demandoc.c,v 1.15 2015/02/10 08:05:30 schwarze Exp $ */
+/*     $Id: demandoc.c,v 1.20 2015/04/18 17:53:21 schwarze Exp $ */
 /*
  * Copyright (c) 2011 Kristaps Dzonsons <kristaps@bsd.lv>
  *
 #include <string.h>
 #include <unistd.h>
 
+#include "roff.h"
 #include "man.h"
 #include "mdoc.h"
 #include "mandoc.h"
 
 static void     pline(int, int *, int *, int);
-static void     pman(const struct man_node *, int *, int *, int);
+static void     pman(const struct roff_node *, int *, int *, int);
 static void     pmandoc(struct mparse *, int, const char *, int);
-static void     pmdoc(const struct mdoc_node *, int *, int *, int);
+static void     pmdoc(const struct roff_node *, int *, int *, int);
 static void     pstring(const char *, int, int *, int);
 static void     usage(void);
 
@@ -109,21 +110,20 @@ usage(void)
 static void
 pmandoc(struct mparse *mp, int fd, const char *fn, int list)
 {
-       struct mdoc     *mdoc;
-       struct man      *man;
+       struct roff_man *man;
        int              line, col;
 
        mparse_readfd(mp, fd, fn);
-       mparse_result(mp, &mdoc, &man, NULL);
+       mparse_result(mp, &man, NULL);
        line = 1;
        col = 0;
 
-       if (mdoc)
-               pmdoc(mdoc_node(mdoc), &line, &col, list);
-       else if (man)
-               pman(man_node(man), &line, &col, list);
-       else
+       if (man == NULL)
                return;
+       if (man->macroset == MACROSET_MDOC)
+               pmdoc(man->first->child, &line, &col, list);
+       else
+               pman(man->first->child, &line, &col, list);
 
        if ( ! list)
                putchar('\n');
@@ -233,13 +233,13 @@ pline(int line, int *linep, int *col, int list)
 }
 
 static void
-pmdoc(const struct mdoc_node *p, int *line, int *col, int list)
+pmdoc(const struct roff_node *p, int *line, int *col, int list)
 {
 
        for ( ; p; p = p->next) {
                if (MDOC_LINE & p->flags)
                        pline(p->line, line, col, list);
-               if (MDOC_TEXT == p->type)
+               if (ROFFT_TEXT == p->type)
                        pstring(p->string, p->pos, col, list);
                if (p->child)
                        pmdoc(p->child, line, col, list);
@@ -247,13 +247,13 @@ pmdoc(const struct mdoc_node *p, int *line, int *col, int list)
 }
 
 static void
-pman(const struct man_node *p, int *line, int *col, int list)
+pman(const struct roff_node *p, int *line, int *col, int list)
 {
 
        for ( ; p; p = p->next) {
                if (MAN_LINE & p->flags)
                        pline(p->line, line, col, list);
-               if (MAN_TEXT == p->type)
+               if (ROFFT_TEXT == p->type)
                        pstring(p->string, p->pos, col, list);
                if (p->child)
                        pman(p->child, line, col, list);