]> git.cameronkatri.com Git - mandoc.git/blobdiff - roff.h
Reduce the amount of code by moving the three copies of the ohash
[mandoc.git] / roff.h
diff --git a/roff.h b/roff.h
index a73b523a7f63ebaad09bfb75665e01f43a188114..750ccbe2686c8cf4d4d3e1ece4cd8f7712af29df 100644 (file)
--- a/roff.h
+++ b/roff.h
 struct mdoc_arg;
 union  mdoc_data;
 
+enum   roff_macroset {
+       MACROSET_NONE = 0,
+       MACROSET_MDOC,
+       MACROSET_MAN
+};
+
 enum   roff_sec {
        SEC_NONE = 0,
        SEC_NAME,
@@ -91,6 +97,7 @@ struct        roff_node {
        int               line;    /* Input file line number. */
        int               pos;     /* Input file column number. */
        int               tok;     /* Request or macro ID. */
+#define        TOKEN_NONE       (-1)      /* No request or macro. */
        int               flags;
 #define        MDOC_VALID       (1 << 0)  /* Has been validated. */
 #define        MDOC_ENDED       (1 << 1)  /* Gone past body end mark. */
@@ -145,7 +152,14 @@ struct     roff_man {
 #define        MAN_BLINE        (1 << 12) /* Next-line block scope. */
 #define        MAN_LITERAL       MDOC_LITERAL
 #define        MAN_NEWLINE       MDOC_NEWLINE
+       enum roff_macroset macroset; /* Kind of high-level macros used. */
        enum roff_sec     lastsec; /* Last section seen. */
        enum roff_sec     lastnamed; /* Last standard section seen. */
        enum roff_next    next;    /* Where to put the next node. */
 };
+
+__BEGIN_DECLS
+
+void            deroff(char **, const struct roff_node *);
+
+__END_DECLS