=================================================================== RCS file: /cvs/mandoc/mdoc.c,v retrieving revision 1.36 retrieving revision 1.37 diff -u -p -r1.36 -r1.37 --- mandoc/mdoc.c 2009/01/19 17:02:58 1.36 +++ mandoc/mdoc.c 2009/01/19 17:51:33 1.37 @@ -1,4 +1,4 @@ -/* $Id: mdoc.c,v 1.36 2009/01/19 17:02:58 kristaps Exp $ */ +/* $Id: mdoc.c,v 1.37 2009/01/19 17:51:33 kristaps Exp $ */ /* * Copyright (c) 2008 Kristaps Dzonsons * @@ -85,9 +85,9 @@ const char *const __mdoc_argnames[MDOC_ARG_MAX] = { const struct mdoc_macro __mdoc_macros[MDOC_MAX] = { { NULL, 0 }, /* \" */ - { macro_constant, MDOC_PROLOGUE }, /* Dd */ - { macro_constant, MDOC_PROLOGUE }, /* Dt */ - { macro_constant, MDOC_PROLOGUE }, /* Os */ + { macro_constant, MDOC_PROLOGUE | MDOC_NOKEEP }, /* Dd */ + { macro_constant, MDOC_PROLOGUE | MDOC_NOKEEP }, /* Dt */ + { macro_constant, MDOC_PROLOGUE | MDOC_NOKEEP }, /* Os */ { macro_scoped, 0 }, /* Sh */ { macro_scoped, 0 }, /* Ss */ { macro_text, 0 }, /* Pp */ @@ -205,7 +205,6 @@ static void argfree(size_t, struct mdoc_arg *); static void argcpy(struct mdoc_arg *, const struct mdoc_arg *); -static void mdoc_node_freelist(struct mdoc_node *); static int mdoc_node_append(struct mdoc *, struct mdoc_node *); static void mdoc_elem_free(struct mdoc_elem *); @@ -213,13 +212,21 @@ static void mdoc_text_free(struct mdoc_text *); const struct mdoc_node * -mdoc_result(struct mdoc *mdoc) +mdoc_node(struct mdoc *mdoc) { return(mdoc->first); } +const struct mdoc_meta * +mdoc_meta(struct mdoc *mdoc) +{ + + return(&mdoc->meta); +} + + void mdoc_meta_free(struct mdoc *mdoc) { @@ -671,7 +678,7 @@ mdoc_node_free(struct mdoc_node *p) } -static void +void mdoc_node_freelist(struct mdoc_node *p) {