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

Diff for /mandoc/mdoc.h between version 1.121 and 1.131

version 1.121, 2011/03/22 13:28:22 version 1.131, 2014/07/29 13:58:18
Line 140  enum mdoct {
Line 140  enum mdoct {
         MDOC_sp,          MDOC_sp,
         MDOC__U,          MDOC__U,
         MDOC_Ta,          MDOC_Ta,
           MDOC_ll,
         MDOC_MAX          MDOC_MAX
 };  };
   
Line 186  enum mdoc_type {
Line 187  enum mdoc_type {
         MDOC_ROOT          MDOC_ROOT
 };  };
   
 /*  /*
  * Section (named/unnamed) of `Sh'.   Note that these appear in the   * Section (named/unnamed) of `Sh'.   Note that these appear in the
  * conventional order imposed by mdoc.7.  In the case of SEC_NONE, no   * conventional order imposed by mdoc.7.  In the case of SEC_NONE, no
  * section has been invoked (this shouldn't happen).  SEC_CUSTOM refers   * section has been invoked (this shouldn't happen).  SEC_CUSTOM refers
Line 198  enum mdoc_sec {
Line 199  enum mdoc_sec {
         SEC_LIBRARY, /* LIBRARY */          SEC_LIBRARY, /* LIBRARY */
         SEC_SYNOPSIS, /* SYNOPSIS */          SEC_SYNOPSIS, /* SYNOPSIS */
         SEC_DESCRIPTION, /* DESCRIPTION */          SEC_DESCRIPTION, /* DESCRIPTION */
           SEC_CONTEXT, /* CONTEXT */
         SEC_IMPLEMENTATION, /* IMPLEMENTATION NOTES */          SEC_IMPLEMENTATION, /* IMPLEMENTATION NOTES */
         SEC_RETURN_VALUES, /* RETURN VALUES */          SEC_RETURN_VALUES, /* RETURN VALUES */
         SEC_ENVIRONMENT,  /* ENVIRONMENT */          SEC_ENVIRONMENT,  /* ENVIRONMENT */
Line 214  enum mdoc_sec {
Line 216  enum mdoc_sec {
         SEC_CAVEATS, /* CAVEATS */          SEC_CAVEATS, /* CAVEATS */
         SEC_BUGS, /* BUGS */          SEC_BUGS, /* BUGS */
         SEC_SECURITY, /* SECURITY */          SEC_SECURITY, /* SECURITY */
         SEC_CUSTOM,          SEC_CUSTOM,
         SEC__MAX          SEC__MAX
 };  };
   
Line 228  struct mdoc_meta {
Line 230  struct mdoc_meta {
         char             *name; /* leading `Nm' name */          char             *name; /* leading `Nm' name */
 };  };
   
 /*  /*
  * An argument to a macro (multiple values = `-column xxx yyy').   * An argument to a macro (multiple values = `-column xxx yyy').
  */   */
 struct  mdoc_argv {  struct  mdoc_argv {
         enum mdocargt     arg; /* type of argument */          enum mdocargt     arg; /* type of argument */
         int               line;          int               line;
         int               pos;          int               pos;
         size_t            sz; /* elements in "value" */          size_t            sz; /* elements in "value" */
Line 244  struct mdoc_argv {
Line 246  struct mdoc_argv {
  * blocks have multiple instances of the same arguments spread across   * blocks have multiple instances of the same arguments spread across
  * the HEAD, BODY, TAIL, and BLOCK node types.   * the HEAD, BODY, TAIL, and BLOCK node types.
  */   */
 struct  mdoc_arg {  struct  mdoc_arg {
         size_t            argc;          size_t            argc;
         struct mdoc_argv *argv;          struct mdoc_argv *argv;
         unsigned int      refcnt;          unsigned int      refcnt;
Line 278  enum mdoc_list {
Line 280  enum mdoc_list {
   
 enum    mdoc_disp {  enum    mdoc_disp {
         DISP__NONE = 0,          DISP__NONE = 0,
         DISP_centred, /* -centered */          DISP_centered, /* -centered */
         DISP_ragged, /* -ragged */          DISP_ragged, /* -ragged */
         DISP_unfilled, /* -unfilled */          DISP_unfilled, /* -unfilled */
         DISP_filled, /* -filled */          DISP_filled, /* -filled */
Line 311  struct mdoc_bl {
Line 313  struct mdoc_bl {
         int               comp; /* -compact */          int               comp; /* -compact */
         size_t            ncols; /* -column arg count */          size_t            ncols; /* -column arg count */
         const char      **cols; /* -column val ptr */          const char      **cols; /* -column val ptr */
           int               count; /* -enum counter */
 };  };
   
 struct  mdoc_bf {  struct  mdoc_bf {
Line 331  struct mdoc_rs {
Line 334  struct mdoc_rs {
  * provided, etc.   * provided, etc.
  */   */
 union   mdoc_data {  union   mdoc_data {
         struct mdoc_an    An;          struct mdoc_an    An;
         struct mdoc_bd    Bd;          struct mdoc_bd    Bd;
         struct mdoc_bf    Bf;          struct mdoc_bf    Bf;
         struct mdoc_bl    Bl;          struct mdoc_bl    Bl;
           struct mdoc_node *Es;
         struct mdoc_rs    Rs;          struct mdoc_rs    Rs;
 };  };
   
 /*  /*
  * Single node in tree-linked AST.   * Single node in tree-linked AST.
  */   */
 struct  mdoc_node {  struct  mdoc_node {
         struct mdoc_node *parent; /* parent AST node */          struct mdoc_node *parent; /* parent AST node */
Line 350  struct mdoc_node {
Line 354  struct mdoc_node {
         int               nchild; /* number children */          int               nchild; /* number children */
         int               line; /* parse line */          int               line; /* parse line */
         int               pos; /* parse column */          int               pos; /* parse column */
           int               lastline; /* the node ends on this line */
         enum mdoct        tok; /* tok or MDOC__MAX if none */          enum mdoct        tok; /* tok or MDOC__MAX if none */
         int               flags;          int               flags;
 #define MDOC_VALID       (1 << 0) /* has been validated */  #define MDOC_VALID       (1 << 0) /* has been validated */
Line 357  struct mdoc_node {
Line 362  struct mdoc_node {
 #define MDOC_LINE        (1 << 3) /* first macro/text on line */  #define MDOC_LINE        (1 << 3) /* first macro/text on line */
 #define MDOC_SYNPRETTY   (1 << 4) /* SYNOPSIS-style formatting */  #define MDOC_SYNPRETTY   (1 << 4) /* SYNOPSIS-style formatting */
 #define MDOC_ENDED       (1 << 5) /* rendering has been ended */  #define MDOC_ENDED       (1 << 5) /* rendering has been ended */
   #define MDOC_DELIMO      (1 << 6)
   #define MDOC_DELIMC      (1 << 7)
         enum mdoc_type    type; /* AST node type */          enum mdoc_type    type; /* AST node type */
         enum mdoc_sec     sec; /* current named section */          enum mdoc_sec     sec; /* current named section */
         union mdoc_data  *norm; /* normalised args */          union mdoc_data  *norm; /* normalised args */
           const void       *prev_font; /* before entering this node */
         /* FIXME: these can be union'd to shave a few bytes. */          /* FIXME: these can be union'd to shave a few bytes. */
         struct mdoc_arg  *args; /* BLOCK/ELEM */          struct mdoc_arg  *args; /* BLOCK/ELEM */
         struct mdoc_node *pending; /* BLOCK */          struct mdoc_node *pending; /* BLOCK */
Line 384  struct mdoc;
Line 392  struct mdoc;
   
 const struct mdoc_node *mdoc_node(const struct mdoc *);  const struct mdoc_node *mdoc_node(const struct mdoc *);
 const struct mdoc_meta *mdoc_meta(const struct mdoc *);  const struct mdoc_meta *mdoc_meta(const struct mdoc *);
   void mdoc_deroff(char **, const struct mdoc_node *);
   
 __END_DECLS  __END_DECLS
   

Legend:
Removed from v.1.121  
changed lines
  Added in v.1.131

CVSweb