-
-}
-
-static void
-tbl_hrule(struct termp *tp, const struct tbl_span *sp)
-{
- const struct tbl_head *hp;
- char c;
- size_t width;
-
- /*
- * An hrule extends across the entire table and is demarked by a
- * standalone `_' or whatnot in lieu of a table row. Spanning
- * headers are marked by a `+', as are table boundaries.
- */
-
- c = '-';
- if (TBL_SPAN_DHORIZ == sp->pos)
- c = '=';
-
- /* FIXME: don't use `+' between data and a spanner! */
-
- for (hp = sp->head; hp; hp = hp->next) {
- width = tp->tbl.cols[hp->ident].width;
- switch (hp->pos) {
- case (TBL_HEAD_DATA):
- tbl_char(tp, c, width);
- break;
- case (TBL_HEAD_DVERT):
- tbl_char(tp, '+', width);
- /* FALLTHROUGH */
- case (TBL_HEAD_VERT):
- tbl_char(tp, '+', width);
- break;
- default:
- abort();
- /* NOTREACHED */
- }
- }