[BACK]Return to mandoc_headers.3 CVS log [TXT][DIR] Up to [cvsweb.bsd.lv] / mandoc

Diff for /mandoc/mandoc_headers.3 between version 1.3 and 1.14

version 1.3, 2015/03/27 17:37:25 version 1.14, 2017/06/24 14:38:32
Line 54  require inclusion of the header where that type is def
Line 54  require inclusion of the header where that type is def
 Each of the following headers can be included without including  Each of the following headers can be included without including
 any other mandoc header.  any other mandoc header.
 These headers should be included before any other mandoc headers.  These headers should be included before any other mandoc headers.
 Afterwards, any other mandoc headers can be included as needed.  
 .Bl -tag -width Ds  .Bl -tag -width Ds
 .It Qq Pa mandoc_aux.h  .It Qq Pa mandoc_aux.h
 Requires  Requires
 .In sys/types.h  .In sys/types.h
 for  for
 .Vt size_t .  .Vt size_t .
   .Pp
 Provides the utility functions documented in  Provides the utility functions documented in
 .Xr mandoc_malloc 3 .  .Xr mandoc_malloc 3 .
   .It Qq Pa mandoc_ohash.h
   Requires
   .In stddef.h
   for
   .Vt ptrdiff_t
   and
   .In stdint.h
   for
   .Vt uint32_t .
   .Pp
   Includes
   .In ohash.h
   and provides
   .Fn mandoc_ohash_init .
 .It Qq Pa mandoc.h  .It Qq Pa mandoc.h
 Requires  Requires
 .In sys/types.h  .In sys/types.h
Line 73  Provides
Line 87  Provides
 .Vt enum mandoc_esc ,  .Vt enum mandoc_esc ,
 .Vt enum mandocerr ,  .Vt enum mandocerr ,
 .Vt enum mandoclevel ,  .Vt enum mandoclevel ,
   .Vt enum mandoc_os ,
 .Vt enum tbl_cellt ,  .Vt enum tbl_cellt ,
 .Vt enum tbl_datt ,  .Vt enum tbl_datt ,
 .Vt enum tbl_spant ,  .Vt enum tbl_spant ,
Line 81  Provides
Line 96  Provides
 .Vt enum eqn_pilet ,  .Vt enum eqn_pilet ,
 .Vt enum eqn_post ,  .Vt enum eqn_post ,
 .Vt struct tbl_opts ,  .Vt struct tbl_opts ,
 .Vt struct tbl_head ,  
 .Vt struct tbl_cell ,  .Vt struct tbl_cell ,
 .Vt struct tbl_row ,  .Vt struct tbl_row ,
 .Vt struct tbl_dat ,  .Vt struct tbl_dat ,
Line 99  and the functions
Line 113  and the functions
 described in  described in
 .Xr mandoc 3 .  .Xr mandoc 3 .
 .Pp  .Pp
 Uses the opaque types  Uses the opaque type
 .Vt struct mparse  .Vt struct mparse
 from  from
 .Pa read.c  .Pa read.c
 and  
 .Vt struct mchars  
 from  
 .Pa chars.c  
 for function prototypes.  for function prototypes.
 Uses the types  Uses the type
 .Vt struct mdoc  .Vt struct roff_man
 from  from
 .Pa libmdoc.h  .Pa roff.h
   as an opaque type for function prototypes.
   .It Qq Pa roff.h
   Requires
   .Qq Pa mandoc_ohash.h
   for
   .Vt struct ohash
 and  and
 .Vt struct man  .Qq Pa mandoc.h
   for
   .Vt enum mandoc_os .
   .Pp
   Provides
   .Vt enum mdoc_endbody ,
   .Vt enum roff_macroset ,
   .Vt enum roff_next ,
   .Vt enum roff_sec ,
   .Vt enum roff_tok ,
   .Vt enum roff_type ,
   .Vt struct roff_man ,
   .Vt struct roff_meta ,
   .Vt struct roff_node ,
   the constant array
   .Va roff_name
   and the functions
   .Fn deroff ,
   .Fn roffhash_alloc ,
   .Fn roffhash_find ,
   .Fn roffhash_free ,
   and
   .Fn roff_validate .
   .Pp
   Uses pointers to the types
   .Vt struct mdoc_arg
   and
   .Vt union mdoc_data
 from  from
 .Pa libman.h  .Pa mdoc.h
 as opaque types for function prototypes.  as opaque struct members.
   .El
   .Pp
   The following two require
   .Qq Pa roff.h
   but no other mandoc headers.
   Afterwards, any other mandoc headers can be included as needed.
   .Bl -tag -width Ds
 .It Qq Pa mdoc.h  .It Qq Pa mdoc.h
 Requires  Requires
 .In sys/types.h  .In sys/types.h
Line 124  for
Line 174  for
 .Vt size_t .  .Vt size_t .
 .Pp  .Pp
 Provides  Provides
 .Vt enum mdoct ,  
 .Vt enum mdocargt ,  .Vt enum mdocargt ,
 .Vt enum mdoc_type ,  
 .Vt enum mdoc_sec ,  
 .Vt enum mdoc_endbody ,  
 .Vt enum mdoc_disp ,  
 .Vt enum mdoc_list ,  
 .Vt enum mdoc_auth ,  .Vt enum mdoc_auth ,
   .Vt enum mdoc_disp ,
 .Vt enum mdoc_font ,  .Vt enum mdoc_font ,
 .Vt struct mdoc_meta ,  .Vt enum mdoc_list ,
 .Vt struct mdoc_argv ,  .Vt struct mdoc_argv ,
 .Vt struct mdoc_arg ,  .Vt struct mdoc_arg ,
 .Vt struct mdoc_bd ,  
 .Vt struct mdoc_bl ,  
 .Vt struct mdoc_an ,  .Vt struct mdoc_an ,
   .Vt struct mdoc_bd ,
 .Vt struct mdoc_bf ,  .Vt struct mdoc_bf ,
   .Vt struct mdoc_bl ,
 .Vt struct mdoc_rs ,  .Vt struct mdoc_rs ,
 .Vt struct mdoc_node ,  .Vt union mdoc_data ,
 and the functions  and the functions
 .Fn mdoc_*  .Fn mdoc_*
 described in  described in
 .Xr mandoc 3 .  .Xr mandoc 3 .
 .Pp  .Pp
 Uses the type  Uses the type
 .Vt struct mdoc  .Vt struct roff_man
 from  from
 .Pa libmdoc.h  .Pa roff.h
 as an opaque type for function prototypes.  as an opaque type for function prototypes.
 Uses pointers to the types  
 .Vt struct tbl_span  
 and  
 .Vt struct eqn  
 as opaque struct members.  
 .Pp  .Pp
 When this header is included, the same file should not include  When this header is included, the same file should not include
 .Pa libman.h  .Pa libman.h
 or  or
 .Pa libroff.h .  .Pa libroff.h .
 .It Qq Pa man.h  .It Qq Pa man.h
 Provides  Provides the functions
 .Vt enum mant ,  
 .Vt enum man_type ,  
 .Vt struct man_meta ,  
 .Vt struct man_node ,  
 and the functions  
 .Fn man_*  .Fn man_*
 described in  described in
 .Xr mandoc 3 .  .Xr mandoc 3 .
Line 179  from
Line 214  from
 .Pa read.c  .Pa read.c
 for function prototypes.  for function prototypes.
 Uses the type  Uses the type
 .Vt struct man  .Vt struct roff_man
 from  from
 .Pa libman.h  .Pa roff.h
 as an opaque type for function prototypes.  as an opaque type for function prototypes.
 Uses pointers to the types  
 .Vt struct tbl_span  
 and  
 .Vt struct eqn  
 as opaque struct members.  
 .Pp  .Pp
 When this header is included, the same file should not include  When this header is included, the same file should not include
 .Pa libmdoc.h  .Pa libmdoc.h
Line 196  or
Line 226  or
 .El  .El
 .Ss Parser internals  .Ss Parser internals
 The following headers require inclusion of a parser interface header  The following headers require inclusion of a parser interface header
 before they can be included.  All parser interface headers should  before they can be included.
 precede all parser internal headers.  When any parser internal headers  All parser interface headers should precede all parser internal headers.
 are included, the same file should not include any formatter headers.  When any parser internal headers are included, the same file should
   not include any formatter headers.
 .Bl -tag -width Ds  .Bl -tag -width Ds
 .It Qq Pa libmandoc.h  .It Qq Pa libmandoc.h
 Requires  Requires
Line 230  Uses the types
Line 261  Uses the types
 and  and
 .Vt struct eqn  .Vt struct eqn
 from  from
   .Pa mandoc.h
   and
   .Vt struct roff_man
   from
   .Pa roff.h
   as opaque types for function prototypes.
   .It Qq Pa roff_int.h
   Requires
   .Qq Pa roff.h
   for
   .Vt enum roff_type .
   .Pp
   Provides functions named
   .Fn roff_*
   to handle roff nodes and the two special functions
   .Fn man_breakscope
   and
   .Fn mdoc_argv_free
   because the latter two are needed by
   .Qq Pa roff.c .
   .Pp
   Uses the types
   .Vt struct eqn
   and
   .Vt struct tbl_span
   from
 .Pa mandoc.h ,  .Pa mandoc.h ,
 .Vt struct mdoc  .Vt struct roff_man
   and
   .Vt struct roff_node
 from  from
 .Pa libmdoc.h ,  .Pa roff.h ,
 and  and
 .Vt struct man  .Vt struct mdoc_arg
 from  from
 .Pa libman.h  .Pa mdoc.h
 as opaque types for function prototypes.  as opaque types for function prototypes.
 .It Qq Pa libmdoc.h  .It Qq Pa libmdoc.h
 Requires  Requires
   .Qq Pa roff.h
   for
   .Vt enum roff_tok
   and
 .Qq Pa mdoc.h  .Qq Pa mdoc.h
 for  for
 .Vt enum mdoct ,  .Vt enum mdoc_*
 .Vt enum mdoc_* ,  
 and  and
 .Vt struct mdoc_* .  .Vt struct mdoc_* .
 .Pp  .Pp
 Provides  Provides
 .Vt enum mdoc_next ,  
 .Vt enum margserr ,  .Vt enum margserr ,
 .Vt enum mdelim ,  .Vt enum mdelim ,
 .Vt struct mdoc ,  
 .Vt struct mdoc_macro ,  .Vt struct mdoc_macro ,
 and many functions internal to the  and many functions internal to the
 .Xr mdoc 7  .Xr mdoc 7
 parser.  parser.
 .Pp  .Pp
 Uses the opaque types  Uses the opaque type
 .Vt struct mparse  .Vt struct mparse
 from  from
 .Pa read.c  .Pa read.c .
   Uses the types
   .Vt struct roff_man
 and  and
 .Vt struct roff  .Vt struct roff_node
 from  from
 .Pa roff.c .  .Pa roff.h
   as opaque types for function prototypes.
 .Pp  .Pp
 When this header is included, the same file should not include  When this header is included, the same file should not include
 .Pa man.h ,  .Pa man.h ,
Line 274  or
Line 337  or
 .Pa libroff.h .  .Pa libroff.h .
 .It Qq Pa libman.h  .It Qq Pa libman.h
 Requires  Requires
 .Qq Pa man.h  .Qq Pa roff.h
 for  for
 .Vt enum mant  .Vt enum roff_tok .
 and  
 .Vt struct man_node.  
 .Pp  .Pp
 Provides  Provides
 .Vt enum man_next ,  .Vt struct man_macro
 .Vt struct man ,  and some functions internal to the
 .Vt struct man_macro ,  
 and many functions internal to the  
 .Xr man 7  .Xr man 7
 parser.  parser.
 .Pp  .Pp
 Uses the opaque types  Uses the types
 .Vt struct mparse  .Vt struct roff_man
 from  
 .Pa read.c  
 and  and
 .Vt struct roff  .Vt struct roff_node
 from  from
 .Pa roff.c .  .Pa roff.h
   as opaque types for function prototypes.
 .Pp  .Pp
 When this header is included, the same file should not include  When this header is included, the same file should not include
 .Pa mdoc.h ,  .Pa mdoc.h ,
Line 385  Provides
Line 443  Provides
 .Vt enum termtype ,  .Vt enum termtype ,
 .Vt struct termp_tbl ,  .Vt struct termp_tbl ,
 .Vt struct termp ,  .Vt struct termp ,
   .Fn roff_term_pre ,
 and many terminal formatting functions.  and many terminal formatting functions.
 .Pp  .Pp
 Uses the opaque types  Uses the opaque type
 .Vt struct mchars  
 from  
 .Pa chars.c  
 and  
 .Vt struct termp_ps  .Vt struct termp_ps
 from  from
 .Pa term_ps.c .  .Pa term_ps.c .
Line 401  and
Line 456  and
 .Vt struct eqn  .Vt struct eqn
 from  from
 .Pa mandoc.h  .Pa mandoc.h
   and
   .Vt struct roff_meta
   and
   .Vt struct roff_node
   from
   .Pa roff.h
 as opaque types for function prototypes.  as opaque types for function prototypes.
 .Pp  .Pp
 When this header is included, the same file should not include  When this header is included, the same file should not include
Line 411  or
Line 472  or
 Requires  Requires
 .In sys/types.h  .In sys/types.h
 for  for
 .Vt size_t ,  .Vt size_t
 .In stdio.h  
 for  
 .Dv BUFSIZ ,  
 and  and
 .Qq Pa out.h  .Qq Pa out.h
 for  for
Line 430  Provides
Line 488  Provides
 .Vt struct tagq ,  .Vt struct tagq ,
 .Vt struct htmlpair ,  .Vt struct htmlpair ,
 .Vt struct html ,  .Vt struct html ,
   .Fn roff_html_pre ,
 and many HTML formatting functions.  and many HTML formatting functions.
 .Pp  .Pp
 Uses the opaque type  Uses
 .Vt struct mchars  .Vt struct tbl_span
   and
   .Vt struct eqn
 from  from
 .Pa chars.c .  .Pa mandoc.h
   and
   .Vt struct roff_node
   from
   .Pa roff.h
   as opaque types for function prototypes.
 .Pp  .Pp
 When this header is included, the same file should not include  When this header is included, the same file should not include
 .Pa term.h  .Pa term.h
 or  or
 .Pa mansearch.h .  .Pa mansearch.h .
   .It Qq Pa tag.h
   Requires
   .In sys/types.h
   for
   .Vt size_t .
   .Pp
   Provides an interface to generate
   .Xr ctags 1
   files for the
   .Ic :t
   functionality mentioned in
   .Xr man 1 .
 .It Qq Pa main.h  .It Qq Pa main.h
 Provides the top level steering functions for all formatters.  Provides the top level steering functions for all formatters.
 .Pp  .Pp
 Uses the opaque type  Uses the type
 .Vt struct mchars  .Vt struct roff_man
 from  from
 .Pa chars.c .  .Pa roff.h
 Uses the types  as an opaque type for function prototypes.
 .Vt struct mdoc  
 from  
 .Pa libmdoc.h  
 and  
 .Vt struct man  
 from  
 .Pa libman.h  
 as opaque types for function prototypes.  
 .It Qq Pa manconf.h  .It Qq Pa manconf.h
 Requires  Requires
 .In sys/types.h  .In sys/types.h
Line 487  Provides
Line 557  Provides
 .Vt struct manpage ,  .Vt struct manpage ,
 .Vt struct mansearch ,  .Vt struct mansearch ,
 and the functions  and the functions
 .Fn mansearch_setup ,  .Fn mansearch
 .Fn mansearch ,  
 and  and
 .Fn mansearch_free .  .Fn mansearch_free .
 .Pp  .Pp

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.14

CVSweb