diff options
Diffstat (limited to 'man.c')
-rw-r--r-- | man.c | 19 |
1 files changed, 18 insertions, 1 deletions
@@ -1,4 +1,4 @@ -/* $Id: man.c,v 1.105 2011/03/22 14:33:05 kristaps Exp $ */ +/* $Id: man.c,v 1.106 2011/03/23 12:33:01 kristaps Exp $ */ /* * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv> * @@ -203,6 +203,10 @@ man_node_append(struct man *man, struct man_node *p) assert(MAN_BLOCK == p->parent->type); p->parent->head = p; break; + case (MAN_TAIL): + assert(MAN_BLOCK == p->parent->type); + p->parent->tail = p; + break; case (MAN_BODY): assert(MAN_BLOCK == p->parent->type); p->parent->body = p; @@ -261,6 +265,19 @@ man_elem_alloc(struct man *m, int line, int pos, enum mant tok) int +man_tail_alloc(struct man *m, int line, int pos, enum mant tok) +{ + struct man_node *p; + + p = man_node_alloc(m, line, pos, MAN_TAIL, tok); + if ( ! man_node_append(m, p)) + return(0); + m->next = MAN_NEXT_CHILD; + return(1); +} + + +int man_head_alloc(struct man *m, int line, int pos, enum mant tok) { struct man_node *p; |