version 1.194, 2011/07/27 12:43:02 |
version 1.200, 2012/07/18 10:39:19 |
Line 160 mdoc_alloc1(struct mdoc *mdoc) |
|
Line 160 mdoc_alloc1(struct mdoc *mdoc) |
|
mdoc->last = mandoc_calloc(1, sizeof(struct mdoc_node)); |
mdoc->last = mandoc_calloc(1, sizeof(struct mdoc_node)); |
mdoc->first = mdoc->last; |
mdoc->first = mdoc->last; |
mdoc->last->type = MDOC_ROOT; |
mdoc->last->type = MDOC_ROOT; |
|
mdoc->last->tok = MDOC_MAX; |
mdoc->next = MDOC_NEXT_CHILD; |
mdoc->next = MDOC_NEXT_CHILD; |
} |
} |
|
|
Line 196 mdoc_free(struct mdoc *mdoc) |
|
Line 197 mdoc_free(struct mdoc *mdoc) |
|
* Allocate volatile and non-volatile parse resources. |
* Allocate volatile and non-volatile parse resources. |
*/ |
*/ |
struct mdoc * |
struct mdoc * |
mdoc_alloc(struct roff *roff, struct mparse *parse) |
mdoc_alloc(struct roff *roff, struct mparse *parse, char *defos) |
{ |
{ |
struct mdoc *p; |
struct mdoc *p; |
|
|
p = mandoc_calloc(1, sizeof(struct mdoc)); |
p = mandoc_calloc(1, sizeof(struct mdoc)); |
|
|
p->parse = parse; |
p->parse = parse; |
|
p->defos = defos; |
p->roff = roff; |
p->roff = roff; |
|
|
mdoc_hash_init(); |
mdoc_hash_init(); |
Line 300 mdoc_parseln(struct mdoc *m, int ln, char *buf, int of |
|
Line 302 mdoc_parseln(struct mdoc *m, int ln, char *buf, int of |
|
m->flags &= ~MDOC_SYNOPSIS; |
m->flags &= ~MDOC_SYNOPSIS; |
} |
} |
|
|
return(mandoc_getcontrol(buf, &offs) ? |
return(roff_getcontrol(m->roff, buf, &offs) ? |
mdoc_pmacro(m, ln, buf, offs) : |
mdoc_pmacro(m, ln, buf, offs) : |
mdoc_ptext(m, ln, buf, offs)); |
mdoc_ptext(m, ln, buf, offs)); |
} |
} |
Line 570 mdoc_word_alloc(struct mdoc *m, int line, int pos, con |
|
Line 572 mdoc_word_alloc(struct mdoc *m, int line, int pos, con |
|
struct mdoc_node *n; |
struct mdoc_node *n; |
|
|
n = node_alloc(m, line, pos, MDOC_MAX, MDOC_TEXT); |
n = node_alloc(m, line, pos, MDOC_MAX, MDOC_TEXT); |
n->string = mandoc_strdup(p); |
n->string = roff_strdup(m->roff, p); |
|
|
if ( ! node_append(m, n)) |
if ( ! node_append(m, n)) |
return(0); |
return(0); |
Line 799 mdoc_ptext(struct mdoc *m, int line, char *buf, int of |
|
Line 801 mdoc_ptext(struct mdoc *m, int line, char *buf, int of |
|
return(0); |
return(0); |
|
|
m->next = MDOC_NEXT_SIBLING; |
m->next = MDOC_NEXT_SIBLING; |
return(1); |
|
|
return(mdoc_valid_post(m)); |
} |
} |
|
|
if ( ! mdoc_word_alloc(m, line, offs, buf+offs)) |
if ( ! mdoc_word_alloc(m, line, offs, buf+offs)) |
Line 979 mdoc_isdelim(const char *p) |
|
Line 982 mdoc_isdelim(const char *p) |
|
|
|
if (0 == strcmp(p + 1, ".")) |
if (0 == strcmp(p + 1, ".")) |
return(DELIM_CLOSE); |
return(DELIM_CLOSE); |
if (0 == strcmp(p + 1, "*(Ba")) |
if (0 == strcmp(p + 1, "fR|\\fP")) |
return(DELIM_MIDDLE); |
return(DELIM_MIDDLE); |
|
|
return(DELIM_NONE); |
return(DELIM_NONE); |