diff options
author | Kristaps Dzonsons <kristaps@bsd.lv> | 2010-12-24 14:00:40 +0000 |
---|---|---|
committer | Kristaps Dzonsons <kristaps@bsd.lv> | 2010-12-24 14:00:40 +0000 |
commit | 8d5ca2330a9d86880ee07d6fecf0befff8d445f4 (patch) | |
tree | ab6a339e99d6fcdd827aaecfee738abc32150be5 /mdoc_term.c | |
parent | 390e9bb2eebe070ac0a97222e307f0c172517e47 (diff) | |
download | mandoc-8d5ca2330a9d86880ee07d6fecf0befff8d445f4.tar.gz |
As per schwarze@'s suggestions, roll back the refcount structure in
favour of a simpler shim for normalised data in the node allocation and
free routines. This removes the need to bump and copy references within
validator handlers, removes a pointer redirect, and also kills the
refcount structure itself. Data is assumed to "live" either in a
MDOC_BLOCK or MDOC_ELEM and is copied accordingly.
Diffstat (limited to 'mdoc_term.c')
-rw-r--r-- | mdoc_term.c | 48 |
1 files changed, 24 insertions, 24 deletions
diff --git a/mdoc_term.c b/mdoc_term.c index dbd5ac5e..28cdfdbd 100644 --- a/mdoc_term.c +++ b/mdoc_term.c @@ -556,9 +556,9 @@ print_bvspace(struct termp *p, term_newln(p); - if (MDOC_Bd == bl->tok && bl->norm->d.Bd.comp) + if (MDOC_Bd == bl->tok && bl->norm->Bd.comp) return; - if (MDOC_Bl == bl->tok && bl->norm->d.Bl.comp) + if (MDOC_Bl == bl->tok && bl->norm->Bl.comp) return; /* Do not vspace directly after Ss/Sh. */ @@ -577,13 +577,13 @@ print_bvspace(struct termp *p, /* A `-column' does not assert vspace within the list. */ - if (MDOC_Bl == bl->tok && LIST_column == bl->norm->d.Bl.type) + if (MDOC_Bl == bl->tok && LIST_column == bl->norm->Bl.type) if (n->prev && MDOC_It == n->prev->tok) return; /* A `-diag' without body does not vspace. */ - if (MDOC_Bl == bl->tok && LIST_diag == bl->norm->d.Bl.type) + if (MDOC_Bl == bl->tok && LIST_diag == bl->norm->Bl.type) if (n->prev && MDOC_It == n->prev->tok) { assert(n->prev->body); if (NULL == n->prev->body->child) @@ -610,7 +610,7 @@ termp_it_pre(DECL_ARGS) } bl = n->parent->parent->parent; - type = bl->norm->d.Bl.type; + type = bl->norm->Bl.type; /* * First calculate width and offset. This is pretty easy unless @@ -620,8 +620,8 @@ termp_it_pre(DECL_ARGS) width = offset = 0; - if (bl->norm->d.Bl.offs) - offset = a2offs(p, bl->norm->d.Bl.offs); + if (bl->norm->Bl.offs) + offset = a2offs(p, bl->norm->Bl.offs); switch (type) { case (LIST_column): @@ -637,7 +637,7 @@ termp_it_pre(DECL_ARGS) * column. * - For more than 5 columns, add only one column. */ - ncols = bl->norm->d.Bl.ncols; + ncols = bl->norm->Bl.ncols; /* LINTED */ dcol = ncols < 5 ? term_len(p, 4) : @@ -652,7 +652,7 @@ termp_it_pre(DECL_ARGS) nn->prev && i < (int)ncols; nn = nn->prev, i++) offset += dcol + a2width - (p, bl->norm->d.Bl.cols[i]); + (p, bl->norm->Bl.cols[i]); /* * When exceeding the declared number of columns, leave @@ -667,10 +667,10 @@ termp_it_pre(DECL_ARGS) * Use the declared column widths, extended as explained * in the preceding paragraph. */ - width = a2width(p, bl->norm->d.Bl.cols[i]) + dcol; + width = a2width(p, bl->norm->Bl.cols[i]) + dcol; break; default: - if (NULL == bl->norm->d.Bl.width) + if (NULL == bl->norm->Bl.width) break; /* @@ -678,8 +678,8 @@ termp_it_pre(DECL_ARGS) * number for buffering single arguments. See the above * handling for column for how this changes. */ - assert(bl->norm->d.Bl.width); - width = a2width(p, bl->norm->d.Bl.width) + term_len(p, 2); + assert(bl->norm->Bl.width); + width = a2width(p, bl->norm->Bl.width) + term_len(p, 2); break; } @@ -941,7 +941,7 @@ termp_it_post(DECL_ARGS) if (MDOC_BLOCK == n->type) return; - type = n->parent->parent->parent->norm->d.Bl.type; + type = n->parent->parent->parent->norm->Bl.type; switch (type) { case (LIST_item): @@ -1115,10 +1115,10 @@ termp_an_post(DECL_ARGS) return; } - if (AUTH_split == n->norm->d.An.auth) { + if (AUTH_split == n->norm->An.auth) { p->flags &= ~TERMP_NOSPLIT; p->flags |= TERMP_SPLIT; - } else if (AUTH_nosplit == n->norm->d.An.auth) { + } else if (AUTH_nosplit == n->norm->An.auth) { p->flags &= ~TERMP_SPLIT; p->flags |= TERMP_NOSPLIT; } @@ -1565,8 +1565,8 @@ termp_bd_pre(DECL_ARGS) } else if (MDOC_HEAD == n->type) return(0); - if (n->norm->d.Bd.offs) - p->offset += a2offs(p, n->norm->d.Bd.offs); + if (n->norm->Bd.offs) + p->offset += a2offs(p, n->norm->Bd.offs); /* * If -ragged or -filled are specified, the block does nothing @@ -1576,8 +1576,8 @@ termp_bd_pre(DECL_ARGS) * lines are allowed. */ - if (DISP_literal != n->norm->d.Bd.type && - DISP_unfilled != n->norm->d.Bd.type) + if (DISP_literal != n->norm->Bd.type && + DISP_unfilled != n->norm->Bd.type) return(1); tabwidth = p->tabwidth; @@ -1639,8 +1639,8 @@ termp_bd_post(DECL_ARGS) rm = p->rmargin; rmax = p->maxrmargin; - if (DISP_literal == n->norm->d.Bd.type || - DISP_unfilled == n->norm->d.Bd.type) + if (DISP_literal == n->norm->Bd.type || + DISP_unfilled == n->norm->Bd.type) p->rmargin = p->maxrmargin = TERM_MAXMARGIN; p->flags |= TERMP_NOSPACE; @@ -1995,9 +1995,9 @@ termp_bf_pre(DECL_ARGS) else if (MDOC_BLOCK != n->type) return(1); - if (FONT_Em == n->norm->d.Bf.font) + if (FONT_Em == n->norm->Bf.font) term_fontpush(p, TERMFONT_UNDER); - else if (FONT_Sy == n->norm->d.Bf.font) + else if (FONT_Sy == n->norm->Bf.font) term_fontpush(p, TERMFONT_BOLD); else term_fontpush(p, TERMFONT_NONE); |