|
Data Structures |
struct | locbuf |
struct | namelist |
Defines |
#define | DTD_IMPLEMENTATION 1 |
#define | MAXSTRLEN 256 |
#define | HasClass(dtd, chr, mask) (dtd->charclass->class[(chr)] & (mask)) |
#define | WITH_PARSER(p, g) |
#define | WITH_CLASS(p, c, g) |
#define | sgml_cplocation(d, s) _sgml_cplocation(d, s) |
#define | isDirSep(c) ((c) == '/') |
#define | DIRSEPSTR "/" |
#define | EOS '\0' |
#define | streq(s1, s2) (strcmp(s1, s2) == 0) |
Typedefs |
typedef locbuf | locbuf |
Enumerations |
enum | includetype { IE_NORMAL,
IE_INCLUDED,
IE_EXCLUDED
} |
Functions |
static void | empty_cdata (dtd_parser *p) |
int | parse_url (const char *url, char *server, char *fname) |
int | get_file_www (char *server, char *fname, char **buf) |
static int | match_shortref (dtd_parser *p) |
static int | prepare_cdata (dtd_parser *p) |
static int | process_declaration (dtd_parser *p, const ichar *decl) |
static int | process_begin_element (dtd_parser *p, const ichar *decl) |
static const ichar * | itake_name (dtd *dtd, const ichar *in, dtd_symbol **id) |
static const ichar * | iskip_layout (dtd *dtd, const ichar *in) |
static dtd_element * | find_element (dtd *dtd, dtd_symbol *id) |
static dtd_element * | def_element (dtd *dtd, dtd_symbol *id) |
static int | open_element (dtd_parser *p, dtd_element *e, int warn) |
static sgml_environment * | push_element (dtd_parser *p, dtd_element *e, int callback) |
void | sgml_cplocation (dtd_srcloc *d, dtd_srcloc *loc) |
static const ichar * | isee_func (dtd *dtd, const ichar *in, charfunc func) |
static const ichar * | process_attributes (dtd_parser *p, dtd_element *e, const ichar *decl, sgml_attribute *atts, int *argc) |
static void | allow_for (dtd_element *in, dtd_element *e) |
static ichar const * | get_attribute_value (dtd_parser *p, ichar const *decl, sgml_attribute *att) |
static const ichar * | itake_nmtoken (dtd *dtd, const ichar *in, dtd_symbol **id) |
static dtd_attr * | find_attribute (dtd_element *e, dtd_symbol *name) |
static int | add_default_attributes (dtd_parser *p, dtd_element *e, int natts, sgml_attribute *atts) |
static void | set_element_properties (dtd_element *e, dtd_attr *a) |
static void | free_attribute_values (int argc, sgml_attribute *argv) |
static void | free_attribute (dtd_attr *a) |
static const ichar * | itake_string (dtd *dtd, const ichar *in, ichar *out, int len) |
static void | add_submodel (dtd_model *m, dtd_model *sub) |
static void | free_environment (sgml_environment *env) |
static void | validate_completeness (sgml_environment *env) |
static int | emit_cdata (dtd_parser *p, int last) |
static int | complete (sgml_environment *env) |
static void | push_location (dtd_parser *p, locbuf *save) |
static void | pop_location (dtd_parser *p, locbuf *saved) |
static void | inc_location (dtd_srcloc *l, int chr) |
static void | dec_location (dtd_srcloc *l, int chr) |
static __inline void | _sgml_cplocation (dtd_srcloc *d, dtd_srcloc *loc) |
static int | close_element (dtd_parser *p, dtd_element *e, int conref) |
static int | process_entity (dtd_parser *p, const ichar *name) |
static int | process_entity_declaration (dtd_parser *p, const ichar *decl) |
static dtd_symbol * | dtd_find_entity_symbol (dtd *dtd, const ichar *name) |
static const ichar * | isee_identifier (dtd *dtd, const ichar *in, char *id) |
static const ichar * | itake_entity_name (dtd *dtd, const ichar *in, dtd_symbol **id) |
static ichar * | baseurl (dtd_parser *p) |
static dtd_entity * | find_pentity (dtd *dtd, dtd_symbol *id) |
void | set_src_dtd_parser (dtd_parser *p, input_type type, const char *name) |
static const ichar * | process_entity_value_declaration (dtd_parser *p, const ichar *decl, dtd_entity *e) |
static dtd_symbol_table * | new_symbol_table () |
static int | expand_pentities (dtd_parser *p, const ichar *in, ichar *out, int len) |
static const ichar * | entity_value (dtd_parser *p, dtd_entity *e, int *len) |
static const ichar * | isee_character_entity (dtd *dtd, const ichar *in, int *chr) |
static int | char_entity_value (const ichar *decl) |
int | sgml_process_file (dtd_parser *p, const char *file, unsigned flags) |
static int | process_cdata (dtd_parser *p, int last) |
int | end_document_dtd_parser_ (dtd_parser *p) |
int | end_document_dtd_parser (dtd_parser *p) |
int | sgml_process_stream (dtd_parser *p, char *buf, unsigned flags, int source_len) |
static const ichar * | itake_url (dtd *dtd, const ichar *in, ichar **out) |
static int | pop_to (dtd_parser *p, sgml_environment *to, dtd_element *e0) |
static const char * | entity_file (dtd *dtd, dtd_entity *e) |
static int | representable_char (dtd_parser *p, int chr) |
static int | process_net (dtd_parser *p) |
static void | update_space_mode (dtd_parser *p, dtd_element *e, int natts, sgml_attribute *atts) |
static dtd_space_mode | istr_to_space_mode (const ichar *val) |
static int | process_element_declaraction (dtd_parser *p, const ichar *decl) |
static int | process_doctype (dtd_parser *p, const ichar *decl, const ichar *decl0) |
static const ichar * | itake_el_or_model_element_list (dtd *dtd, const ichar *decl, dtd_symbol **names, int *n) |
static dtd_model * | make_model (dtd *dtd, const ichar *decl, const ichar **end) |
static void | free_elements (dtd_element *e) |
static void | free_element_definition (dtd_edef *def) |
static void | free_model (dtd_model *m) |
static void | free_element_list (dtd_element_list *l) |
static void | for_elements_in_model (dtd_model *m, void(*f)(dtd_element *e, void *closure), void *closure) |
static void | add_list_element (dtd_element *e, void *closure) |
static const ichar * | process_model (dtd *dtd, dtd_edef *e, const ichar *decl) |
static const ichar * | itake_namegroup (dtd *dtd, charfunc sep, const ichar *decl, dtd_symbol **names, int *n) |
static void | add_element_list (dtd_element_list **l, dtd_element *e) |
static void | free_attribute_list (dtd_attr_list *l) |
static void | process_marked_section (dtd_parser *p) |
static void | free_name_list (dtd_name_list *nl) |
static void | recover_parser (dtd_parser *p) |
static int | close_current_element (dtd_parser *p) |
static dtd_parser * | clone_dtd_parser (dtd_parser *p) |
void | reset_document_dtd_parser (dtd_parser *p) |
static const ichar * | itake_nmtoken_chars (dtd *dtd, const ichar *in, ichar *out, int len) |
static int | process_attlist_declaraction (dtd_parser *p, const ichar *decl) |
static int | process_pi (dtd_parser *p, const ichar *decl) |
static int | match_map (dtd *dtd, dtd_map *map, int len, ichar *data) |
static void | add_name_list (dtd_name_list **nl, dtd_symbol *s) |
static includetype | in_or_excluded (sgml_environment *env, dtd_element *e) |
static void | pop_marked_section (dtd_parser *p) |
static const ichar * | isee_ngsep (dtd *dtd, const ichar *decl, charfunc *sep) |
static const ichar * | itake_nutoken (dtd *dtd, const ichar *in, dtd_symbol **id) |
static const ichar * | itake_number (dtd *dtd, const ichar *in, dtd_attr *at) |
static void | add_verbatim_cdata (dtd_parser *p, int chr) |
static void | set_encoding (dtd_parser *p, const ichar *enc) |
static void | init_decoding (dtd_parser *p) |
static int | process_notation_declaration (dtd_parser *p, const ichar *decl) |
static dtd_notation * | find_notation (dtd *dtd, dtd_symbol *name) |
static const ichar * | itake_dubbed_string (dtd *dtd, const ichar *in, ichar **out) |
static int | process_end_element (dtd_parser *p, const ichar *decl) |
static void | add_notation (dtd *dtd, dtd_notation *not) |
static int | process_chars (dtd_parser *p, input_type in, const ichar *name, const ichar *s) |
static int | process_include (dtd_parser *p, const ichar *entity_name) |
static dtd_shortref * | def_shortref (dtd_parser *p, dtd_symbol *name) |
static int | process_shortref_declaration (dtd_parser *p, const ichar *decl) |
static const ichar * | shortref_add_map (dtd *dtd, const ichar *decl, dtd_shortref *sr) |
static void | compile_map (dtd *dtd, dtd_shortref *sr) |
static int | process_usemap_declaration (dtd_parser *p, const ichar *decl) |
static dtd_shortref * | find_map (dtd *dtd, dtd_symbol *name) |
static void | set_map_element (dtd_element *e, void *closure) |
static int | expand_entities (dtd_parser *p, const ichar *in, ochar *out, int len) |
static ichar const * | itake_unquoted (dtd *dtd, ichar const *in, ichar *out, int len) |
void | free_dtd_parser (dtd_parser *p) |
void | free_dtd (dtd *dtd) |
static void | free_entity_list (dtd_entity *e) |
static void | free_notations (dtd_notation *n) |
static void | free_shortrefs (dtd_shortref *sr) |
static void | free_maps (dtd_map *map) |
static void | free_symbol_table (dtd_symbol_table *t) |
int | is_absolute_path (const char *name) |
static void | process_utf8 (dtd_parser *p, int chr) |
char * | localpath (const char *ref, const char *name) |
static char * | DirName (const char *f, char *dir) |
static char * | format_location (char *s, dtd_srcloc *l) |
static void | format_message (dtd_error *e) |
int | gripe (dtd_error_id e,...) |
static int | set_option_dtd (dtd *dtd, dtd_option option, char *set) |
void | set_mode_dtd_parser (dtd_parser *p, data_mode m) |
static __inline void | setlocation (dtd_srcloc *d, dtd_srcloc *loc, int line, int lpos) |
int | set_dialect_dtd (dtd *dtd, dtd_dialect dialect) |
static void | add_cdata (dtd_parser *p, int chr) |
void | putchar_dtd_parser (dtd_parser *p, int chr) |
static void | add_attribute (dtd *dtd, dtd_element *e, dtd_attr *a) |
int | load_dtd_from_file (dtd_parser *p, const char *file) |
dtd_symbol * | dtd_add_symbol (dtd *dtd, const ichar *name) |
Variables |
static dtd_parser * | current_parser |
static char * | xml_entities [] |