struct mdoc_arg;
union mdoc_data;
+enum roff_macroset {
+ MACROSET_NONE = 0,
+ MACROSET_MDOC,
+ MACROSET_MAN
+};
+
enum roff_sec {
SEC_NONE = 0,
SEC_NAME,
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. */
#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