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

Diff for /mandoc/mdoc.h between version 1.38 and 1.45

version 1.38, 2009/03/08 11:41:22 version 1.45, 2009/03/09 14:19:59
Line 19 
Line 19 
 #ifndef MDOC_H  #ifndef MDOC_H
 #define MDOC_H  #define MDOC_H
   
   #include <time.h>
   
 /*  /*
  * This library implements a validating scanner/parser for ``mdoc'' roff   * This library implements a validating scanner/parser for ``mdoc'' roff
  * macro documents, a.k.a. BSD manual page documents.  The mdoc.c file   * macro documents, a.k.a. BSD manual page documents.  The mdoc.c file
Line 29 
Line 31 
   
 /* What follows is a list of ALL possible macros. */  /* What follows is a list of ALL possible macros. */
   
   /* TODO: Brq et al. */
   
 #define MDOC___          0  #define MDOC___          0
 #define MDOC_Dd          1  #define MDOC_Dd          1
 #define MDOC_Dt          2  #define MDOC_Dt          2
Line 136 
Line 140 
 #define MDOC_Fr          104  #define MDOC_Fr          104
 #define MDOC_Ud          105  #define MDOC_Ud          105
 #define MDOC_Lb          106  #define MDOC_Lb          106
 #define MDOC_MAX         107  #define MDOC_Ap          107
   #define MDOC_Lp          108
   #define MDOC_Lk          109
   #define MDOC_Mt          110
   #define MDOC_MAX         111
   
 /* What follows is a list of ALL possible macro arguments. */  /* What follows is a list of ALL possible macro arguments. */
   
Line 249  struct mdoc_node {
Line 257  struct mdoc_node {
 #define MDOC_ACTED       (1 << 1)  #define MDOC_ACTED       (1 << 1)
         enum mdoc_type    type;          enum mdoc_type    type;
         enum mdoc_sec     sec;          enum mdoc_sec     sec;
   
           /* FIXME: union/struct this with #defines. */
         struct mdoc_arg  *args;         /* BLOCK/ELEM */          struct mdoc_arg  *args;         /* BLOCK/ELEM */
         struct mdoc_node *head;         /* BLOCK */          struct mdoc_node *head;         /* BLOCK */
         struct mdoc_node *body;         /* BLOCK */          struct mdoc_node *body;         /* BLOCK */
Line 256  struct mdoc_node {
Line 266  struct mdoc_node {
         char             *string;       /* TEXT */          char             *string;       /* TEXT */
 };  };
   
 #define MDOC_IGN_SCOPE   (1 << 0)  #define MDOC_IGN_SCOPE   (1 << 0) /* Ignore scope violations. */
   #define MDOC_IGN_ESCAPE  (1 << 1) /* Ignore bad escape sequences. */
   #define MDOC_IGN_MACRO   (1 << 2) /* Ignore unknown macros. */
   
 /* Call-backs for parse messages. */  /* Call-backs for parse messages. */
 struct  mdoc_cb {  struct  mdoc_cb {
Line 280  struct mdoc;
Line 292  struct mdoc;
 void              mdoc_free(struct mdoc *);  void              mdoc_free(struct mdoc *);
   
 /* Allocate a new parser instance. */  /* Allocate a new parser instance. */
 struct  mdoc     *mdoc_alloc(void *data, const struct mdoc_cb *);  struct  mdoc     *mdoc_alloc(void *, int, const struct mdoc_cb *);
   
 /* Set parse options. */  /* Set parse options. */
 void              mdoc_setflags(struct mdoc *, int);  void              mdoc_setflags(struct mdoc *, int);

Legend:
Removed from v.1.38  
changed lines
  Added in v.1.45

CVSweb