|
Compounds |
| struct | MD |
| struct | MD_Element |
| struct | MD_Element_Req |
| struct | MD_Entry |
| struct | MD_Field |
| struct | MD_Field_Decl |
| struct | MD_Section |
| struct | MD_Symbol |
| struct | MD_Symbol_Table |
Defines |
| #define | MD_INT 1 |
| #define | MD_DOUBLE 2 |
| #define | MD_STRING 3 |
| #define | MD_LINK 4 |
| #define | MD_OPTIONAL_ELEMENTS -1 |
| #define | MD_num_sections(md) ((md)->section_table->symbol_count) |
| #define | MD_find_section(md, name) ((MD_Section *)_MD_find_symbol_data((md)->section_table, name)) |
| #define | MD_delete_section(section) |
| #define | MD_num_entries(section) ((section)->entry_table->symbol_count) |
| #define | MD_find_entry(section, name) ((MD_Entry *)_MD_find_symbol_data((section)->entry_table, name)) |
| #define | MD_delete_entry(entry) |
| #define | MD_num_field_decls(section) ((section)->field_decl_table->symbol_count) |
| #define | MD_max_field_index(section) ((section)->max_field_index) |
| #define | MD_find_field_decl(section, name) |
| #define | MD_find_field(entry, field_decl) ((entry)->field[(field_decl)->field_index]) |
| #define | MD_num_elements(field) ((field)->max_element_index + 1) |
| #define | MD_max_element_index(field) ((field)->max_element_index) |
| #define | MD_set_int(field, index, value) _MD_set_int(field, index, value) |
| #define | MD_get_int(field, index) ((field)->element[index]->value.i) |
| #define | MD_set_double(field, index, value) _MD_set_double(field, index, value) |
| #define | MD_get_double(field, index) ((field)->element[index]->value.d) |
| #define | MD_set_string(field, index, value) _MD_set_string(field, index, value) |
| #define | MD_get_string(field, index) ((field)->element[index]->value.s) |
| #define | MD_set_link(field, index, value) _MD_set_link(field, index, value) |
| #define | MD_get_link(field, index) ((field)->element[index]->value.l) |
| #define | MD_set_section_ext(section, ext) ((section)->user_ext = (void *)(ext)) |
| #define | MD_get_section_ext(section) ((section)->user_ext) |
| #define | MD_set_entry_ext(entry, ext) ((entry)->user_ext = (void *)(ext)) |
| #define | MD_get_entry_ext(entry) ((entry)->user_ext) |
| #define | MD_check_section(out, section) _MD_check_section(out, section, "MD_check_section") |
| #define | MD_check_entry(out, entry) _MD_check_entry(out, entry, "MD_check_entry") |
| #define | MD_check_field(out, field) _MD_check_field(out, field, "MD_check_field") |
Typedefs |
| typedef enum MD_FIELD_TYPE | MD_FIELD_TYPE |
| typedef MD_Symbol | MD_Symbol |
| typedef MD_Symbol_Table | MD_Symbol_Table |
| typedef MD | MD |
| typedef MD_Section | MD_Section |
| typedef MD_Element_Req | MD_Element_Req |
| typedef MD_Field_Decl | MD_Field_Decl |
| typedef MD_Entry | MD_Entry |
| typedef MD_Element | MD_Element |
| typedef MD_Field | MD_Field |
Enumerations |
| enum | MD_FIELD_TYPE { MD_REQUIRED_FIELD = 1,
MD_OPTIONAL_FIELD = 2
} |
Functions |
| MD * | MD_new_md (char *name, int num_sections) |
| int | MD_check_md (FILE *out, MD *md) |
| void | MD_delete_md (MD *md) |
| MD_Section * | MD_new_section (MD *md, char *name, int num_entries, int num_fields) |
| MD_Section * | MD_first_section (MD *md) |
| MD_Section * | MD_last_section (MD *md) |
| MD_Section * | MD_next_section (MD_Section *section) |
| MD_Section * | MD_prev_section (MD_Section *section) |
| MD_Field_Decl * | MD_new_field_decl (MD_Section *section, char *name, MD_FIELD_TYPE field_type) |
| MD_Field_Decl * | MD_first_field_decl (MD_Section *section) |
| MD_Field_Decl * | MD_last_field_decl (MD_Section *section) |
| MD_Field_Decl * | MD_next_field_decl (MD_Field_Decl *field_decl) |
| MD_Field_Decl * | MD_prev_field_decl (MD_Field_Decl *field_decl) |
| void | MD_require_int (MD_Field_Decl *field_decl, int element_index) |
| void | MD_require_double (MD_Field_Decl *field_decl, int element_index) |
| void | MD_require_string (MD_Field_Decl *field_decl, int element_index) |
| void | MD_require_link (MD_Field_Decl *field_decl, int element_index, MD_Section *section) |
| void | MD_require_multi_target_link (MD_Field_Decl *field_decl, int element_index, int section_array_size, MD_Section **section_array) |
| void | MD_kleene_star_requirement (MD_Field_Decl *field_decl, int element_index) |
| MD_Entry * | MD_new_entry (MD_Section *section, char *name) |
| void | MD_rename_entry (MD_Entry *entry, char *new_name) |
| MD_Entry * | MD_first_entry (MD_Section *section) |
| MD_Entry * | MD_last_entry (MD_Section *section) |
| MD_Entry * | MD_next_entry (MD_Entry *entry) |
| MD_Entry * | MD_prev_entry (MD_Entry *entry) |
| MD_Field * | MD_new_field (MD_Entry *entry, MD_Field_Decl *decl, int num_elements) |
| void | MD_delete_field (MD_Field *field) |
| void | MD_delete_field_decl (MD_Field_Decl *field_decl) |
| void | MD_delete_element (MD_Field *field, int index) |
| MD * | MD_read_md (FILE *in, char *name) |
| void | MD_write_md (FILE *out, MD *md) |
| void | MD_print_md (FILE *out, MD *md, int page_width) |
| void | MD_print_md_declarations (FILE *out, MD *md, int page_width) |
| void | MD_print_md_template (FILE *out, MD *md) |
| void | MD_print_section (FILE *out, MD_Section *section, int page_width) |
| void | MD_print_section_template (FILE *out, MD_Section *section) |
| void | MD_print_field_decl (FILE *out, MD_Field_Decl *field_decl, int page_width) |
| void | MD_print_entry (FILE *out, MD_Entry *entry, int page_width) |
| void | MD_print_entry_template (FILE *out, MD_Entry *entry) |
| void * | _MD_find_symbol_data (MD_Symbol_Table *table, char *name) |
| int | _MD_num_sections (MD *md) |
| MD_Section * | _MD_find_section (MD *md, char *name) |
| void * | _MD_set_section_ext (MD_Section *section, void *ext) |
| void * | _MD_get_section_ext (MD_Section *section) |
| void | _MD_free_section (MD_Section *section) |
| void | _MD_delete_section (MD_Section *section) |
| int | _MD_check_section (FILE *out, MD_Section *section, char *caller_name) |
| int | _MD_num_entries (MD_Section *section) |
| MD_Entry * | _MD_find_entry (MD_Section *section, char *name) |
| void * | _MD_set_entry_ext (MD_Entry *entry, void *ext) |
| void * | _MD_get_entry_ext (MD_Entry *entry) |
| void | _MD_free_entry (MD_Entry *entry) |
| void | _MD_delete_entry (MD_Entry *entry) |
| int | _MD_check_entry (FILE *out, MD_Entry *entry, char *caller_name) |
| MD_Field_Decl * | _MD_find_field_decl (MD_Section *section, char *name) |
| void | _MD_free_field_decl (MD_Field_Decl *field_decl) |
| int | _MD_num_field_decls (MD_Section *section) |
| int | _MD_max_field_index (MD_Section *section) |
| MD_Field * | _MD_find_field (MD_Entry *entry, MD_Field_Decl *field_decl) |
| int | _MD_check_field (FILE *out, MD_Field *field, char *caller_name) |
| int | _MD_num_elements (MD_Field *field) |
| int | _MD_max_element_index (MD_Field *field) |
| void | _MD_set_int (MD_Field *field, int index, int value) |
| void | _MD_set_int_type_checking (MD_Field *field, int index, int value) |
| int | _MD_get_int (MD_Field *field, int index) |
| void | _MD_set_double (MD_Field *field, int index, double value) |
| void | _MD_set_double_type_checking (MD_Field *field, int index, double value) |
| double | _MD_get_double (MD_Field *field, int index) |
| void | _MD_set_string (MD_Field *field, int index, char *value) |
| void | _MD_set_string_type_checking (MD_Field *field, int index, char *value) |
| char * | _MD_get_string (MD_Field *field, int index) |
| void | _MD_set_link (MD_Field *field, int index, MD_Entry *value) |
| void | _MD_set_link_type_checking (MD_Field *field, int index, MD_Entry *value) |
| MD_Entry * | _MD_get_link (MD_Field *field, int index) |