00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #ifndef NODE_H_
00017 #define NODE_H_
00018
00019 typedef struct node_s {
00020 char *name;
00021 char *id;
00022 char *type;
00023 char *value;
00024 list_t *nodes;
00025 struct node_s *parent;
00026 int dontparse;
00027 } node_t;
00028
00029 char * node_strdup (char *str);
00030 char * node_string_normalize (char *str_param);
00031 int node_path_normalize (char *out, int len);
00032 void node_init (node_t **node);
00033 void node_uninit (node_t *node);
00034 void node_dublicate_ (node_t *node, node_t *dub);
00035 void node_dublicate (node_t *node, node_t **dub);
00036 node_t * node_get_parent (node_t *node, char *name);
00037 node_t * node_get_node_ (node_t *node, char *path);
00038 node_t * node_get_node (node_t *node, char *path);
00039 char * node_get_value (node_t *node, char *path);
00040 void node_print_node (node_t *node, unsigned int *depth);
00041 void node_print_ (node_t *node, unsigned int *depth);
00042 void node_print (node_t *node);
00043
00044 #endif