+ struct mparse *parse; /* main parser, for error reporting */
+ 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 */
+ char *end; /* first byte of the next token */
+ size_t defsz; /* number of definitions */
+ size_t sz; /* length of the source code */
+ size_t toksz; /* length of the current token */
+ int gsize; /* default point size */
+ int delim; /* in-line delimiters enabled */
+ char odelim; /* in-line opening delimiter */
+ char cdelim; /* in-line closing delimiter */
+};
+
+struct eqn_def {
+ char *key;
+ size_t keysz;
+ char *val;
+ size_t valsz;