version 1.45, 2010/05/15 04:47:38 |
version 1.48, 2010/05/17 22:11:42 |
|
|
|
|
struct mdoc { |
struct mdoc { |
void *data; |
void *data; |
struct mdoc_cb cb; |
mandocmsg msg; |
int flags; |
int flags; |
#define MDOC_HALT (1 << 0) /* error in parse: halt */ |
#define MDOC_HALT (1 << 0) /* error in parse: halt */ |
#define MDOC_LITERAL (1 << 1) /* in a literal scope */ |
#define MDOC_LITERAL (1 << 1) /* in a literal scope */ |
|
|
ENOLINE, |
ENOLINE, |
EPROLOOO, |
EPROLOOO, |
EPROLREP, |
EPROLREP, |
EBADSEC, |
EBADMSEC, |
EFONT, |
EFONT, |
EBADDATE, |
EBADDATE, |
ENUMFMT, |
ENUMFMT, |
|
|
ARGV_WORD |
ARGV_WORD |
}; |
}; |
|
|
|
enum mdelim { |
|
DELIM_NONE = 0, |
|
DELIM_OPEN, |
|
DELIM_MIDDLE, |
|
DELIM_CLOSE |
|
}; |
|
|
extern const struct mdoc_macro *const mdoc_macros; |
extern const struct mdoc_macro *const mdoc_macros; |
|
|
__BEGIN_DECLS |
__BEGIN_DECLS |
|
|
#define mdoc_perr(m, l, p, t) \ |
#define mdoc_pmsg(m, l, p, t) \ |
mdoc_err((m), (l), (p), 1, (t)) |
(*(m)->msg)((t), (m)->data, (l), (p), NULL) |
#define mdoc_pwarn(m, l, p, t) \ |
#define mdoc_nmsg(m, n, t) \ |
mdoc_err((m), (l), (p), 0, (t)) |
(*(m)->msg)((t), (m)->data, (n)->line, (n)->pos, NULL) |
#define mdoc_nerr(m, n, t) \ |
int mdoc_vmsg(struct mdoc *, enum mandocerr, |
mdoc_err((m), (n)->line, (n)->pos, 1, (t)) |
int, int, const char *, ...); |
#define mdoc_nwarn(m, n, t) \ |
|
mdoc_err((m), (n)->line, (n)->pos, 0, (t)) |
|
|
|
int mdoc_err(struct mdoc *, int, int, int, enum merr); |
|
int mdoc_verr(struct mdoc *, int, int, const char *, ...); |
|
int mdoc_vwarn(struct mdoc *, int, int, const char *, ...); |
|
|
|
int mdoc_macro(MACRO_PROT_ARGS); |
int mdoc_macro(MACRO_PROT_ARGS); |
int mdoc_word_alloc(struct mdoc *, |
int mdoc_word_alloc(struct mdoc *, |
int, int, const char *); |
int, int, const char *); |
Line 161 int mdoc_body_alloc(struct mdoc *, int, int, enum m |
|
Line 161 int mdoc_body_alloc(struct mdoc *, int, int, enum m |
|
void mdoc_node_delete(struct mdoc *, struct mdoc_node *); |
void mdoc_node_delete(struct mdoc *, struct mdoc_node *); |
void mdoc_hash_init(void); |
void mdoc_hash_init(void); |
enum mdoct mdoc_hash_find(const char *); |
enum mdoct mdoc_hash_find(const char *); |
int mdoc_iscdelim(char); |
enum mdelim mdoc_iscdelim(char); |
int mdoc_isdelim(const char *); |
enum mdelim mdoc_isdelim(const char *); |
size_t mdoc_isescape(const char *); |
size_t mdoc_isescape(const char *); |
enum mdoc_sec mdoc_str2sec(const char *); |
enum mdoc_sec mdoc_str2sec(const char *); |
time_t mdoc_atotime(const char *); |
time_t mdoc_atotime(const char *); |