version 1.43, 2008/12/17 17:18:38 |
version 1.56, 2009/01/06 15:49:44 |
|
|
|
|
#include "mdoc.h" |
#include "mdoc.h" |
|
|
|
enum mdoc_next { |
|
MDOC_NEXT_SIBLING = 0, |
|
MDOC_NEXT_CHILD |
|
}; |
|
|
struct mdoc { |
struct mdoc { |
void *data; |
void *data; |
struct mdoc_cb cb; |
struct mdoc_cb cb; |
void *htab; |
void *htab; |
|
int flags; |
|
enum mdoc_next next; |
struct mdoc_node *last; |
struct mdoc_node *last; |
struct mdoc_node *first; |
struct mdoc_node *first; |
struct mdoc_meta meta; |
struct mdoc_meta meta; |
Line 36 struct mdoc_macro { |
|
Line 43 struct mdoc_macro { |
|
int (*fp)(struct mdoc *, int, int, int *, char *); |
int (*fp)(struct mdoc *, int, int, int *, char *); |
int flags; |
int flags; |
#define MDOC_CALLABLE (1 << 0) |
#define MDOC_CALLABLE (1 << 0) |
#define MDOC_EXPLICIT (1 << 1) |
#define MDOC_PARSED (1 << 1) |
|
#define MDOC_EXPLICIT (1 << 2) |
|
#define MDOC_QUOTABLE (1 << 3) |
|
#define MDOC_PROLOGUE (1 << 4) |
|
#define MDOC_NESTED (1 << 5) |
}; |
}; |
|
|
extern const struct mdoc_macro *const mdoc_macros; |
extern const struct mdoc_macro *const mdoc_macros; |
Line 53 int mdoc_macro(struct mdoc *, int, int, int *, char |
|
Line 64 int mdoc_macro(struct mdoc *, int, int, int *, char |
|
int mdoc_find(const struct mdoc *, const char *); |
int mdoc_find(const struct mdoc *, const char *); |
void mdoc_word_alloc(struct mdoc *, int, const char *); |
void mdoc_word_alloc(struct mdoc *, int, const char *); |
void mdoc_elem_alloc(struct mdoc *, int, int, |
void mdoc_elem_alloc(struct mdoc *, int, int, |
size_t, const struct mdoc_arg *, |
size_t, const struct mdoc_arg *); |
size_t, const char **); |
|
void mdoc_block_alloc(struct mdoc *, int, int, |
void mdoc_block_alloc(struct mdoc *, int, int, |
size_t, const struct mdoc_arg *); |
size_t, const struct mdoc_arg *); |
void mdoc_head_alloc(struct mdoc *, |
void mdoc_head_alloc(struct mdoc *, int, int); |
int, int, size_t, const char **); |
void mdoc_tail_alloc(struct mdoc *, int, int); |
void mdoc_body_alloc(struct mdoc *, int, int); |
void mdoc_body_alloc(struct mdoc *, int, int); |
void mdoc_node_free(struct mdoc_node *); |
void mdoc_node_free(struct mdoc_node *); |
void mdoc_sibling(struct mdoc *, int, struct mdoc_node **, |
void mdoc_sibling(struct mdoc *, int, struct mdoc_node **, |
struct mdoc_node **, struct mdoc_node *); |
struct mdoc_node **, struct mdoc_node *); |
void *mdoc_hash_alloc(void); |
void *mdoc_tokhash_alloc(void); |
int mdoc_hash_find(const void *, const char *); |
int mdoc_tokhash_find(const void *, const char *); |
void mdoc_hash_free(void *); |
void mdoc_tokhash_free(void *); |
int mdoc_isdelim(const char *); |
int mdoc_isdelim(const char *); |
|
int mdoc_iscdelim(char); |
enum mdoc_sec mdoc_atosec(size_t, const char **); |
enum mdoc_sec mdoc_atosec(size_t, const char **); |
enum mdoc_msec mdoc_atomsec(const char *); |
enum mdoc_msec mdoc_atomsec(const char *); |
enum mdoc_vol mdoc_atovol(const char *); |
enum mdoc_vol mdoc_atovol(const char *); |
enum mdoc_arch mdoc_atoarch(const char *); |
enum mdoc_arch mdoc_atoarch(const char *); |
|
enum mdoc_att mdoc_atoatt(const char *); |
time_t mdoc_atotime(const char *); |
time_t mdoc_atotime(const char *); |
|
|
|
int mdoc_valid_pre(struct mdoc *, int, int, |
|
int, const struct mdoc_arg *); |
|
int mdoc_valid_post(struct mdoc *, int, int); |
|
int mdoc_action(struct mdoc *, int, int); |
|
|
|
int mdoc_argv(struct mdoc *, int, |
|
struct mdoc_arg *, int *, char *); |
|
#define ARGV_ERROR (-1) |
|
#define ARGV_EOLN (0) |
|
#define ARGV_ARG (1) |
|
#define ARGV_WORD (2) |
|
void mdoc_argv_free(int, struct mdoc_arg *); |
|
int mdoc_args(struct mdoc *, int, |
|
int *, char *, int, char **); |
|
#define ARGS_ERROR (-1) |
|
#define ARGS_EOLN (0) |
|
#define ARGS_WORD (1) |
|
#define ARGS_PUNCT (2) |
|
|
|
#define ARGS_QUOTED (1 << 0) |
|
#define ARGS_DELIM (1 << 1) |
|
|
|
int xstrlcat(char *, const char *, size_t); |
|
int xstrlcpy(char *, const char *, size_t); |
|
int xstrcmp(const char *, const char *); |
|
void *xcalloc(size_t, size_t); |
|
char *xstrdup(const char *); |
|
|
|
int macro_obsolete(MACRO_PROT_ARGS); |
|
int macro_constant(MACRO_PROT_ARGS); |
|
int macro_constant_scoped(MACRO_PROT_ARGS); |
|
int macro_constant_delimited(MACRO_PROT_ARGS); |
int macro_text(MACRO_PROT_ARGS); |
int macro_text(MACRO_PROT_ARGS); |
int macro_scoped_implicit(MACRO_PROT_ARGS); |
int macro_scoped(MACRO_PROT_ARGS); |
int macro_prologue_ddate(MACRO_PROT_ARGS); |
int macro_close_explicit(MACRO_PROT_ARGS); |
int macro_prologue_dtitle(MACRO_PROT_ARGS); |
int macro_scoped_line(MACRO_PROT_ARGS); |
|
int macro_prologue(MACRO_PROT_ARGS); |
|
|
__END_DECLS |
__END_DECLS |
|
|