diff options
author | Ingo Schwarze <schwarze@openbsd.org> | 2017-07-08 14:51:04 +0000 |
---|---|---|
committer | Ingo Schwarze <schwarze@openbsd.org> | 2017-07-08 14:51:04 +0000 |
commit | cf63fca8357771e9f99c05319bf7ae1d9325cbd8 (patch) | |
tree | 283184101587a0e648dd5fcc99c2e2c91519bf49 /libroff.h | |
parent | 9ef0c733fd442e250894494f24d6a17d1db58500 (diff) | |
download | mandoc-cf63fca8357771e9f99c05319bf7ae1d9325cbd8.tar.gz mandoc-cf63fca8357771e9f99c05319bf7ae1d9325cbd8.tar.zst mandoc-cf63fca8357771e9f99c05319bf7ae1d9325cbd8.zip |
1. Eliminate struct eqn, instead use the existing members
of struct roff_node which is allocated for each equation anyway.
2. Do not keep a list of equation parsers, one parser is enough.
Minus fifty lines of code, no functional change.
Diffstat (limited to 'libroff.h')
-rw-r--r-- | libroff.h | 14 |
1 files changed, 7 insertions, 7 deletions
@@ -1,4 +1,4 @@ -/* $Id: libroff.h,v 1.40 2017/06/26 20:09:04 schwarze Exp $ */ +/* $Id: libroff.h,v 1.41 2017/07/08 14:51:04 schwarze Exp $ */ /* * Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2014, 2015 Ingo Schwarze <schwarze@openbsd.org> @@ -38,9 +38,8 @@ struct tbl_node { }; struct eqn_node { - struct eqn eqn; /* syntax tree of this equation */ struct mparse *parse; /* main parser, for error reporting */ - struct eqn_node *next; /* singly linked list of equations */ + struct roff_node *node; /* syntax tree of this equation */ struct eqn_def *defs; /* array of definitions */ char *data; /* source code of this equation */ char *start; /* first byte of the current token */ @@ -73,8 +72,9 @@ void tbl_data(struct tbl_node *, int, const char *, int); int tbl_cdata(struct tbl_node *, int, const char *, int); const struct tbl_span *tbl_span(struct tbl_node *); int tbl_end(struct tbl_node **); -struct eqn_node *eqn_alloc(int, int, struct mparse *); -enum rofferr eqn_end(struct eqn_node **); +struct eqn_node *eqn_alloc(struct mparse *); +void eqn_box_free(struct eqn_box *); void eqn_free(struct eqn_node *); -enum rofferr eqn_read(struct eqn_node **, int, - const char *, int, int *); +void eqn_parse(struct eqn_node *); +void eqn_read(struct eqn_node *, const char *); +void eqn_reset(struct eqn_node *); |