=================================================================== RCS file: /cvs/mandoc/Attic/mdoc.3,v retrieving revision 1.20 retrieving revision 1.26 diff -u -p -r1.20 -r1.26 --- mandoc/Attic/mdoc.3 2009/03/20 15:14:01 1.20 +++ mandoc/Attic/mdoc.3 2009/03/31 13:50:19 1.26 @@ -1,4 +1,4 @@ -.\" $Id: mdoc.3,v 1.20 2009/03/20 15:14:01 kristaps Exp $ +.\" $Id: mdoc.3,v 1.26 2009/03/31 13:50:19 kristaps Exp $ .\" .\" Copyright (c) 2009 Kristaps Dzonsons .\" @@ -16,7 +16,7 @@ .\" TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR .\" PERFORMANCE OF THIS SOFTWARE. .\" -.Dd $Mdocdate: March 20 2009 $ +.Dd $Mdocdate: March 31 2009 $ .Dt mdoc 3 .Os .\" SECTION @@ -36,7 +36,7 @@ .Vt extern const char * const * mdoc_argnames; .Ft "struct mdoc *" .Fn mdoc_alloc "void *data" "int pflags" "const struct mdoc_cb *cb" -.Ft void +.Ft int .Fn mdoc_reset "struct mdoc *mdoc" .Ft void .Fn mdoc_free "struct mdoc *mdoc" @@ -56,14 +56,7 @@ library parses lines of .Xr mdoc 7 input (and .Em only -mdoc) into an abstract syntax tree that generalises the semantic -annotation of its input. Common front-ends for -.Nm -are -.Xr mdocterm 1 , -.Xr mdoclint 1 -and -.Xr mdoctree 1 . +mdoc) into an abstract syntax tree (AST). .\" PARAGRAPH .Pp In general, applications initiate a parsing sequence with @@ -140,7 +133,8 @@ Returns NULL on failure. If non-NULL, the pointer mus .It Fn mdoc_reset Reset the parser for another parse routine. After its use, .Fn mdoc_parseln -behaves as if invoked for the first time. +behaves as if invoked for the first time. If it returns 0, memory could +not be allocated. .\" LIST-ITEM .It Fn mdoc_free Free all resources of a parser. The pointer is no longer valid after @@ -227,9 +221,7 @@ fields), its position in the tree (the .Va next and .Va prev -fields) and type-specific data (the -.Va data -field). +fields) and some type-specific data. .\" PARAGRAPH .Pp The tree itself is arranged according to the following normal form, @@ -281,7 +273,7 @@ size_t len; int line; line = 1; -mdoc = mdoc_alloc(NULL, NULL); +mdoc = mdoc_alloc(NULL, 0, NULL); while ((buf = fgetln(fp, &len))) { buf[len - 1] = '\\0'; @@ -314,15 +306,41 @@ utility was written by .\" LIST-ITEM .It The -.Sq \&Xc +.Sq \&.Xc and -.Sq \&Xo +.Sq \&.Xo macros aren't handled when used to span lines for the -.Sq \&It +.Sq \&.It macro. .\" LIST-ITEM .It The -.Sq \&Bsx -macro doesn't yet understand version arguments. +.Sq \&.Bsx +macro family doesn't yet understand version arguments. +.\" LIST-ITEM +.It +If not given a value, the \-offset argument to +.Sq \&.Bd +and +.Sq \&.Bl +should be the width of +.Qq ; +instead, a value of +.Li 10n +is provided. +.\" LIST-ITEM +.It +Columns widths in +.Sq \&.Bl \-column +should default to width +.Qq +if not included. +.\" LIST-ITEM +.It +List-width suffix +.Qq m +isn't handled. +.\" LIST-ITEM +.It +Contents of the SYNOPSIS section aren't checked. .El