<libroxml  version="3.0.2" />
contact: tristan.lelong@libroxml.net
roxml_types.h
1
12#ifndef ROXML_TYPES_H
13#define ROXML_TYPES_H
14
15#include <stdio.h>
16#include <roxml_defines.h>
17
26#if(CONFIG_XML_SMALL_INPUT_FILE==1)
27typedef unsigned short roxml_pos_t;
28#else /* CONFIG_XML_SMALL_INPUT_FILE==0 */
29typedef unsigned int roxml_pos_t;
30#endif /* CONFIG_XML_SMALL_INPUT_FILE */
31
40typedef struct memory_cell {
41 int type;
42 int occ;
43 void *ptr;
44 unsigned long int id;
45 struct memory_cell *next;
46 struct memory_cell *prev;
48
56typedef struct _xpath_cond {
57 char rel;
58 char axes;
59 char op;
60 char op2;
61 char func;
62 char func2;
63 char *arg1;
64 char *arg2;
65 struct _xpath_node *xp;
66 struct _xpath_cond *next;
68
76typedef struct _xpath_node {
77 char abs;
78 char rel;
79 char axes;
80 char *name;
81 struct _xpath_cond *xp_cond;
82 struct _xpath_cond *cond;
83 struct _xpath_node *next;
85
93typedef struct _xpath_tok_table {
94 unsigned char id;
95 unsigned char ids[256];
96 void *lock;
97 struct _xpath_tok *next;
99
107typedef struct _xpath_tok {
108 unsigned char id;
109 struct _xpath_tok *next;
111
119typedef struct _roxml_ns {
120 unsigned char id;
121 void *next;
122 char *alias;
123} roxml_ns_t;
124
133typedef struct node {
134 unsigned short type;
135 union {
136 char *buf;
137 FILE *fil;
138 void *src;
139 } src;
140 roxml_pos_t pos;
141 roxml_pos_t end;
142 struct node *sibl;
143 struct node *chld;
144 struct node *prnt;
145 struct node *attr;
146 struct node *next;
147 struct node *ns;
148 void *priv;
149} node_t;
150
182
205
215typedef int (*roxml_parse_func) (roxml_parser_item_t *parser, char *chunk, void *data);
216
224 roxml_parse_func func;
226};
227
228#endif /* ROXML_TYPES_H */
Defines used trhoughout the sources.
#define MAX_NAME_LEN
roxml_parse_func func
struct _roxml_parser_item * next
memory cell structure
Definition roxml_types.h:40
struct memory_cell * prev
Definition roxml_types.h:46
unsigned long int id
Definition roxml_types.h:44
struct memory_cell * next
Definition roxml_types.h:45
node_t structure
struct node * prnt
roxml_pos_t pos
unsigned short type
struct node * ns
roxml_pos_t end
void * priv
char * buf
void * src
struct node * chld
struct node * next
struct node * attr
FILE * fil
struct node * sibl
xml parsing context
node_t * current_node
node_t * namespaces
node_t * candidat_txt
node_t * candidat_node
node_t * candidat_val
node_t * candidat_arg
namespace structure
void * next
unsigned char id
char * alias
the parser item struct
xpath parsing context
xpath_node_t * first_node
xpath_node_t * new_node
xpath_cond_t * new_cond
xpath cond structure
Definition roxml_types.h:56
struct _xpath_cond * next
Definition roxml_types.h:66
struct _xpath_node * xp
Definition roxml_types.h:65
xpath node structure
Definition roxml_types.h:76
struct _xpath_cond * xp_cond
Definition roxml_types.h:81
struct _xpath_cond * cond
Definition roxml_types.h:82
struct _xpath_node * next
Definition roxml_types.h:83
xpath token structure
struct _xpath_tok * next
unsigned char id
xpath token structure
Definition roxml_types.h:93
unsigned char id
Definition roxml_types.h:94
struct _xpath_tok * next
Definition roxml_types.h:97