=================================================================== RCS file: /cvs/mandoc/Attic/libroff.h,v retrieving revision 1.5 retrieving revision 1.7 diff -u -p -r1.5 -r1.7 --- mandoc/Attic/libroff.h 2010/12/29 14:38:14 1.5 +++ mandoc/Attic/libroff.h 2010/12/29 16:44:23 1.7 @@ -1,4 +1,4 @@ -/* $Id: libroff.h,v 1.5 2010/12/29 14:38:14 kristaps Exp $ */ +/* $Id: libroff.h,v 1.7 2010/12/29 16:44:23 kristaps Exp $ */ /* * Copyright (c) 2009, 2010 Kristaps Dzonsons * @@ -60,6 +60,24 @@ struct tbl_row { struct tbl_cell *last; }; +struct tbl_dat { + struct tbl_dat *next; + char *string; + int flags; +#define TBL_DATA_HORIZ (1 << 0) +#define TBL_DATA_DHORIZ (1 << 1) +#define TBL_DATA_NHORIZ (1 << 2) +#define TBL_DATA_NDHORIZ (1 << 3) +}; + +struct tbl_span { + struct tbl_dat *first; + struct tbl_dat *last; + int flags; +#define TBL_SPAN_HORIZ (1 << 0) +#define TBL_SPAN_DHORIZ (1 << 1) +}; + struct tbl { mandocmsg msg; /* status messages */ void *data; /* privdata for messages */ @@ -84,11 +102,13 @@ struct tbl { (*(tblp)->msg)((type), (tblp)->data, (line), (col), NULL) struct tbl *tbl_alloc(void *, mandocmsg); +void tbl_restart(struct tbl *); void tbl_free(struct tbl *); void tbl_reset(struct tbl *); enum rofferr tbl_read(struct tbl *, int, const char *, int); int tbl_option(struct tbl *, int, const char *); int tbl_layout(struct tbl *, int, const char *); +struct tbl_span *tbl_data(struct tbl *, int, const char *); __END_DECLS