File xml_parser.c
FileList > base > xml_parser.c
Go to the source code of this file
#include "config.h"
#include <stdio.h>
#include <stdlib.h>
#include <assert.h>
#include <string.h>
#include "xml_parser.h"
#include "utility.h"
#include "memory_wrapper.hpp"
Public Types
Public Attributes
| Type |
Name |
| const XML_ELEMENT_DEF |
xml_elem_XML = { "XML", 0 , [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null), [**NULL**](freelistheap_8h.md#define-null) }
|
Public Functions
Public Static Functions
| Type |
Name |
| int |
add_xml_element (XML_ELEMENT * xml_node, const XML_ELEMENT_DEF * new_elem_def)
|
| int |
check_xml_elem_name (XML_ELEMENT * el, const char * check_el_name)
|
| XML_ELEMENT * |
create_xml_node (const XML_ELEMENT_DEF * new_elem)
|
| char * |
get_elem_path_token_at (const XML_ELEMENT_DEF * el_def, const int level, char * short_name)
|
| const char * |
get_short_elem_name (const XML_ELEMENT_DEF * el_def)
|
| XML_ELEMENT * |
select_xml_branch_node (XML_ELEMENT * xml_node, const char * sel_name)
|
| XML_ELEMENT * |
select_xml_node_for_ins (XML_ELEMENT * xml_node, const char * sel_name, XML_INS_POS * insert_pos)
|
| bool |
xml_check_include_loop (XML_PARSER_DATA * pd, char * new_file)
|
| XML_ELEMENT * |
xml_clone_node (XML_ELEMENT * schema_src, XML_ELEMENT * parent, XML_ELEMENT * prev, bool * has_error)
|
| bool |
xml_copy_schema_tree (XML_ELEMENT * src, XML_ELEMENT ** dest)
|
| void XMLCALL |
xml_data_handler (void * data, const XML_Char * s, int len)
|
| void |
xml_destroy_schema_tree (XML_ELEMENT * pt)
|
| void XMLCALL |
xml_elem_end (void * data, const char * parsed_el_name)
|
| void XMLCALL |
xml_elem_start (void * data, const char * parsed_el_name, const char ** attr)
|
| void XMLCALL |
xml_header_validation_utf8 (void * userData, const XML_Char * version, const XML_Char * encoding, int standalone)
|
| XML_Parser |
xml_init_parser_common (void * data, const char * xml_file, const char * encoding)
|
| XML_ELEMENT * |
xml_init_schema_tree (const XML_ELEMENT_DEF ** element_array, const int count)
|
| int |
xml_parse (void * data, FILE * fp, bool * is_finished)
|
Macros
| Type |
Name |
| define |
IS_XML_ROOT (el) ([**el**](broker__monitor_8c.md#function-timeout)->def->depth == [**XML\_ROOT\_DEPTH**](xml__parser_8c.md#define-xml_root_depth))
|
| define |
XML_READ_BUFFSIZE 8192
|
| define |
XML_ROOT_DEPTH 0
|
Public Types Documentation
enum XML_INS_POS
enum XML_INS_POS {
XML_INS_POS_UNDEF = 0,
XML_INS_POS_AFTER,
XML_INS_POS_BEFORE
};
Public Attributes Documentation
variable xml_elem_XML
const XML_ELEMENT_DEF xml_elem_XML;
Public Functions Documentation
function xml_check_att_value
int xml_check_att_value (
const char ** attrs,
const char * att_name,
const char * att_value
)
function xml_create_subparser
XML_PARSER_DATA * xml_create_subparser (
XML_PARSER_DATA * pd,
char * new_file
)
function xml_destroy_parser
void xml_destroy_parser (
void * data
)
function xml_destroy_parser_data
void xml_destroy_parser_data (
void * data
)
function xml_get_att_value
int xml_get_att_value (
const char ** attrs,
const char * att_name,
char ** p_att_value
)
function xml_init_parser
XML_Parser xml_init_parser (
void * data,
const char * xml_file,
const char * encoding,
const XML_ELEMENT_DEF ** element_array,
const int count
)
function xml_parser_exec
void xml_parser_exec (
XML_PARSER_DATA * pd
)
Public Static Functions Documentation
function add_xml_element
static int add_xml_element (
XML_ELEMENT * xml_node,
const XML_ELEMENT_DEF * new_elem_def
)
function check_xml_elem_name
static int check_xml_elem_name (
XML_ELEMENT * el,
const char * check_el_name
)
function create_xml_node
static XML_ELEMENT * create_xml_node (
const XML_ELEMENT_DEF * new_elem
)
function get_elem_path_token_at
static char * get_elem_path_token_at (
const XML_ELEMENT_DEF * el_def,
const int level,
char * short_name
)
function get_short_elem_name
static const char * get_short_elem_name (
const XML_ELEMENT_DEF * el_def
)
function select_xml_branch_node
static XML_ELEMENT * select_xml_branch_node (
XML_ELEMENT * xml_node,
const char * sel_name
)
function select_xml_node_for_ins
static XML_ELEMENT * select_xml_node_for_ins (
XML_ELEMENT * xml_node,
const char * sel_name,
XML_INS_POS * insert_pos
)
function xml_check_include_loop
static bool xml_check_include_loop (
XML_PARSER_DATA * pd,
char * new_file
)
function xml_clone_node
static XML_ELEMENT * xml_clone_node (
XML_ELEMENT * schema_src,
XML_ELEMENT * parent,
XML_ELEMENT * prev,
bool * has_error
)
function xml_copy_schema_tree
static bool xml_copy_schema_tree (
XML_ELEMENT * src,
XML_ELEMENT ** dest
)
function xml_data_handler
static void XMLCALL xml_data_handler (
void * data,
const XML_Char * s,
int len
)
function xml_destroy_schema_tree
static void xml_destroy_schema_tree (
XML_ELEMENT * pt
)
function xml_elem_end
static void XMLCALL xml_elem_end (
void * data,
const char * parsed_el_name
)
function xml_elem_start
static void XMLCALL xml_elem_start (
void * data,
const char * parsed_el_name,
const char ** attr
)
static void XMLCALL xml_header_validation_utf8 (
void * userData,
const XML_Char * version,
const XML_Char * encoding,
int standalone
)
function xml_init_parser_common
static XML_Parser xml_init_parser_common (
void * data,
const char * xml_file,
const char * encoding
)
function xml_init_schema_tree
static XML_ELEMENT * xml_init_schema_tree (
const XML_ELEMENT_DEF ** element_array,
const int count
)
function xml_parse
static int xml_parse (
void * data,
FILE * fp,
bool * is_finished
)
Macro Definition Documentation
define IS_XML_ROOT
#define IS_XML_ROOT (
el
) `( el ->def->depth == XML_ROOT_DEPTH )`
define XML_READ_BUFFSIZE
#define XML_READ_BUFFSIZE `8192`
define XML_ROOT_DEPTH
#define XML_ROOT_DEPTH `0`
The documentation for this class was generated from the following file cubrid/src/base/xml_parser.c