summaryrefslogtreecommitdiffstats
path: root/man.c
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@openbsd.org>2015-04-19 14:25:41 +0000
committerIngo Schwarze <schwarze@openbsd.org>2015-04-19 14:25:41 +0000
commitb41835362693d09c3eff29cb37f2217b9dca8cc3 (patch)
tree304f88d63b2cc2aa84f33f3805156cd93c4f7cec /man.c
parenteed5e7f1fb85805f1b324c5a4501ed30467ae2a0 (diff)
downloadmandoc-b41835362693d09c3eff29cb37f2217b9dca8cc3.tar.gz
Unify some node handling functions that use TOKEN_NONE.
* mdoc_word_alloc(), man_word_alloc() -> roff_word_alloc() * mdoc_word_append(), man_word_append() -> roff_word_append() * mdoc_addspan(), man_addspan() -> roff_addtbl() * mdoc_addeqn(), man_addeqn() -> roff_addeqn() Minus 50 lines of code, no functional change.
Diffstat (limited to 'man.c')
-rw-r--r--man.c60
1 files changed, 2 insertions, 58 deletions
diff --git a/man.c b/man.c
index c018870a..38d0edf9 100644
--- a/man.c
+++ b/man.c
@@ -50,7 +50,6 @@ const char *const __man_macronames[MAN_MAX] = {
const char * const *man_macronames = __man_macronames;
-static void man_breakscope(struct roff_man *, int);
static void man_descope(struct roff_man *, int, int);
static int man_ptext(struct roff_man *, int, char *, int);
static int man_pmacro(struct roff_man *, int, char *, int);
@@ -95,61 +94,6 @@ man_block_alloc(struct roff_man *man, int line, int pos, int tok)
man->next = ROFF_NEXT_CHILD;
}
-void
-man_word_alloc(struct roff_man *man, int line, int pos, const char *word)
-{
- struct roff_node *n;
-
- n = roff_node_alloc(man, line, pos, ROFFT_TEXT, TOKEN_NONE);
- n->string = roff_strdup(man->roff, word);
- roff_node_append(man, n);
- man_valid_post(man);
- man->next = ROFF_NEXT_SIBLING;
-}
-
-void
-man_word_append(struct roff_man *man, const char *word)
-{
- struct roff_node *n;
- char *addstr, *newstr;
-
- n = man->last;
- addstr = roff_strdup(man->roff, word);
- mandoc_asprintf(&newstr, "%s %s", n->string, addstr);
- free(addstr);
- free(n->string);
- n->string = newstr;
- man->next = ROFF_NEXT_SIBLING;
-}
-
-void
-man_addeqn(struct roff_man *man, const struct eqn *ep)
-{
- struct roff_node *n;
-
- n = roff_node_alloc(man, ep->ln, ep->pos, ROFFT_EQN, TOKEN_NONE);
- n->eqn = ep;
- if (ep->ln > man->last->line)
- n->flags |= MAN_LINE;
- roff_node_append(man, n);
- man->next = ROFF_NEXT_SIBLING;
- man_descope(man, ep->ln, ep->pos);
-}
-
-void
-man_addspan(struct roff_man *man, const struct tbl_span *sp)
-{
- struct roff_node *n;
-
- man_breakscope(man, TOKEN_NONE);
- n = roff_node_alloc(man, sp->line, 0, ROFFT_TBL, TOKEN_NONE);
- n->span = sp;
- roff_node_append(man, n);
- man_valid_post(man);
- man->next = ROFF_NEXT_SIBLING;
- man_descope(man, sp->line, 0);
-}
-
static void
man_descope(struct roff_man *man, int line, int offs)
{
@@ -178,7 +122,7 @@ man_ptext(struct roff_man *man, int line, char *buf, int offs)
/* Literal free-form text whitespace is preserved. */
if (man->flags & MAN_LITERAL) {
- man_word_alloc(man, line, offs, buf + offs);
+ roff_word_alloc(man, line, offs, buf + offs);
man_descope(man, line, offs);
return(1);
}
@@ -222,7 +166,7 @@ man_ptext(struct roff_man *man, int line, char *buf, int offs)
buf[i] = '\0';
}
- man_word_alloc(man, line, offs, buf + offs);
+ roff_word_alloc(man, line, offs, buf + offs);
/*
* End-of-sentence check. If the last character is an unescaped