00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef AXIOM_CHILD_ELEMENT_ITERATOR_H
00020 #define AXIOM_CHILD_ELEMENT_ITERATOR_H
00021
00027 #include <axiom_node.h>
00028 #include <axiom_text.h>
00029
00030 #ifdef __cplusplus
00031 extern "C"
00032 {
00033 #endif
00034
00035 typedef struct axiom_child_element_iterator
00036 axiom_child_element_iterator_t;
00037
00044 AXIS2_EXTERN void AXIS2_CALL
00045 axiom_child_element_iterator_free(
00046 void *iterator,
00047 const axutil_env_t * env);
00048
00056 AXIS2_EXTERN axis2_status_t AXIS2_CALL
00057
00058 axiom_child_element_iterator_remove(
00059 axiom_child_element_iterator_t * iterator,
00060 const axutil_env_t * env);
00061
00067 AXIS2_EXTERN axis2_bool_t AXIS2_CALL
00068
00069 axiom_child_element_iterator_has_next(
00070 axiom_child_element_iterator_t * iterator,
00071 const axutil_env_t * env);
00072
00077 AXIS2_EXTERN axiom_node_t *AXIS2_CALL
00078 axiom_child_element_iterator_next(
00079 axiom_child_element_iterator_t * iterator,
00080 const axutil_env_t * env);
00081
00088 AXIS2_EXTERN axiom_child_element_iterator_t *AXIS2_CALL
00089
00090 axiom_child_element_iterator_create(
00091 const axutil_env_t * env,
00092 axiom_node_t * current_child);
00093
00094 #define AXIOM_CHILD_ELEMENT_ITERATOR_FREE(iterator, env) \
00095 axiom_child_element_iterator_free(iterator, env)
00096
00097 #define AXIOM_CHILD_ELEMENT_ITERATOR_REMOVE(iterator, env) \
00098 axiom_child_element_iterator_remove(iterator, env)
00099
00100 #define AXIOM_CHILD_ELEMENT_ITERATOR_HAS_NEXT(iterator, env) \
00101 axiom_child_element_iterator_has_next(iterator, env)
00102
00103 #define AXIOM_CHILD_ELEMENT_ITERATOR_NEXT(iterator, env) \
00104 axiom_child_element_iterator_next(iterator, env)
00105
00108 #ifdef __cplusplus
00109 }
00110 #endif
00111
00112 #endif