version 1.83, 2011/07/21 11:34:53 |
version 1.86, 2011/07/21 13:37:04 |
Line 112 enum mandocerr { |
|
Line 112 enum mandocerr { |
|
/* related to equations */ |
/* related to equations */ |
MANDOCERR_EQNARGS, /* bad equation macro arguments */ |
MANDOCERR_EQNARGS, /* bad equation macro arguments */ |
MANDOCERR_EQNNEST, /* too many nested equation defines */ |
MANDOCERR_EQNNEST, /* too many nested equation defines */ |
|
MANDOCERR_EQNNSCOPE, /* unexpected equation scope closure*/ |
|
MANDOCERR_EQNSCOPE, /* equation scope open on exit */ |
|
|
/* related to tables */ |
/* related to tables */ |
MANDOCERR_TBL, /* bad table syntax */ |
MANDOCERR_TBL, /* bad table syntax */ |
Line 278 struct tbl_span { |
|
Line 280 struct tbl_span { |
|
}; |
}; |
|
|
enum eqn_boxt { |
enum eqn_boxt { |
EQN_ROOT, |
EQN_ROOT, /* root of parse tree */ |
EQN_TEXT |
EQN_TEXT, /* text (number, variable, whatever) */ |
|
EQN_SUBEXPR /* nested subexpression */ |
}; |
}; |
|
|
|
enum eqn_markt { |
|
EQNMARK_NONE = 0, |
|
EQNMARK_DOT, |
|
EQNMARK_DOTDOT, |
|
EQNMARK_HAT, |
|
EQNMARK_TILDE, |
|
EQNMARK_VEC, |
|
EQNMARK_DYAD, |
|
EQNMARK_BAR, |
|
EQNMARK_UNDER, |
|
EQNMARK__MAX |
|
}; |
|
|
|
enum eqn_fontt { |
|
EQNFONT_NONE = 0, |
|
EQNFONT_ROMAN, |
|
EQNFONT_BOLD, |
|
EQNFONT_ITALIC, |
|
EQNFONT__MAX |
|
}; |
|
|
|
/* |
|
* A "box" is a parsed mathematical expression as defined by the eqn.7 |
|
* grammar. |
|
*/ |
struct eqn_box { |
struct eqn_box { |
enum eqn_boxt type; |
enum eqn_boxt type; /* type of node */ |
struct eqn_box *child; |
struct eqn_box *child; /* child node */ |
struct eqn_box *next; |
struct eqn_box *next; /* next in tree */ |
char *text; |
char *text; /* text (or NULL) */ |
|
enum eqn_markt mark; /* a mark about the box */ |
|
enum eqn_fontt font; /* font of box */ |
}; |
}; |
|
|
struct eqn { |
struct eqn { |
struct eqn_box *root; |
struct eqn_box *root; /* root mathematical expression */ |
int ln; /* invocation line */ |
int ln; /* invocation line */ |
int pos; /* invocation position */ |
int pos; /* invocation position */ |
}; |
}; |