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

Diff for /mandoc/mdoc.c between version 1.32 and 1.35

version 1.32, 2009/01/16 14:04:26 version 1.35, 2009/01/17 20:10:36
Line 140  const struct mdoc_macro __mdoc_macros[MDOC_MAX] = {
Line 140  const struct mdoc_macro __mdoc_macros[MDOC_MAX] = {
         { macro_scoped_close, MDOC_EXPLICIT | MDOC_CALLABLE | MDOC_PARSED }, /* Ac */          { macro_scoped_close, MDOC_EXPLICIT | MDOC_CALLABLE | MDOC_PARSED }, /* Ac */
         { macro_constant_scoped, MDOC_CALLABLE | MDOC_PARSED | MDOC_EXPLICIT }, /* Ao */          { macro_constant_scoped, MDOC_CALLABLE | MDOC_PARSED | MDOC_EXPLICIT }, /* Ao */
         { macro_scoped_line, MDOC_CALLABLE | MDOC_PARSED }, /* Aq */          { macro_scoped_line, MDOC_CALLABLE | MDOC_PARSED }, /* Aq */
         { macro_constant, 0 }, /* At */          { macro_constant_delimited, 0 }, /* At */
         { macro_scoped_close, MDOC_EXPLICIT | MDOC_CALLABLE | MDOC_PARSED }, /* Bc */          { macro_scoped_close, MDOC_EXPLICIT | MDOC_CALLABLE | MDOC_PARSED }, /* Bc */
         { macro_scoped, MDOC_EXPLICIT }, /* Bf */          { macro_scoped, MDOC_EXPLICIT }, /* Bf */
         { macro_constant_scoped, MDOC_CALLABLE | MDOC_PARSED | MDOC_EXPLICIT }, /* Bo */          { macro_constant_scoped, MDOC_CALLABLE | MDOC_PARSED | MDOC_EXPLICIT }, /* Bo */
Line 221  mdoc_result(struct mdoc *mdoc)
Line 221  mdoc_result(struct mdoc *mdoc)
   
   
 void  void
   mdoc_meta_free(struct mdoc *mdoc)
   {
   
           if (mdoc->meta.title)
                   free(mdoc->meta.title);
           if (mdoc->meta.os)
                   free(mdoc->meta.os);
           if (mdoc->meta.name)
                   free(mdoc->meta.name);
   }
   
   
   void
 mdoc_free(struct mdoc *mdoc)  mdoc_free(struct mdoc *mdoc)
 {  {
   
Line 241  mdoc_alloc(void *data, const struct mdoc_cb *cb)
Line 254  mdoc_alloc(void *data, const struct mdoc_cb *cb)
         p = xcalloc(1, sizeof(struct mdoc));          p = xcalloc(1, sizeof(struct mdoc));
   
         p->data = data;          p->data = data;
         (void)memcpy(&p->cb, cb, sizeof(struct mdoc_cb));          if (cb)
                   (void)memcpy(&p->cb, cb, sizeof(struct mdoc_cb));
   
         p->last = xcalloc(1, sizeof(struct mdoc_node));          p->last = xcalloc(1, sizeof(struct mdoc_node));
         p->last->type = MDOC_ROOT;          p->last->type = MDOC_ROOT;
Line 439  mdoc_node_append(struct mdoc *mdoc, struct mdoc_node *
Line 453  mdoc_node_append(struct mdoc *mdoc, struct mdoc_node *
   
         if ( ! mdoc_valid_pre(mdoc, p))          if ( ! mdoc_valid_pre(mdoc, p))
                 return(0);                  return(0);
         if ( ! mdoc_action_pre(mdoc, p))  
                 return(0);  
   
         switch (p->type) {          switch (p->type) {
         case (MDOC_HEAD):          case (MDOC_HEAD):
Line 711  argdup(size_t argsz, const struct mdoc_arg *args)
Line 723  argdup(size_t argsz, const struct mdoc_arg *args)
   
         return(pp);          return(pp);
 }  }
   
   
   char *
   mdoc_node2a(struct mdoc_node *node)
   {
           static char      buf[64];
   
           assert(node);
   
           buf[0] = 0;
           (void)xstrlcat(buf, mdoc_type2a(node->type), 64);
           if (MDOC_ROOT == node->type)
                   return(buf);
           (void)xstrlcat(buf, " `", 64);
           if (MDOC_TEXT == node->type)
                   (void)xstrlcat(buf, node->data.text.string, 64);
           else
                   (void)xstrlcat(buf, mdoc_macronames[node->tok], 64);
   
           return(buf);
   }
   
   

Legend:
Removed from v.1.32  
changed lines
  Added in v.1.35

CVSweb