852:16e2a3391e88 | 853:d4baf4dd55c3 |
---|---|
56 * the iterator becomes invalid (regardless of what cxIteratorValid() returns). | 56 * the iterator becomes invalid (regardless of what cxIteratorValid() returns). |
57 * | 57 * |
58 * @see CxIterator | 58 * @see CxIterator |
59 */ | 59 */ |
60 typedef struct cx_tree_iterator_s { | 60 typedef struct cx_tree_iterator_s { |
61 /** | 61 CX_ITERATOR_BASE |
62 * The base properties of this iterator. | |
63 */ | |
64 struct cx_iterator_base_s base; | |
65 /** | 62 /** |
66 * Indicates whether the subtree below the current node shall be skipped. | 63 * Indicates whether the subtree below the current node shall be skipped. |
67 */ | 64 */ |
68 bool skip; | 65 bool skip; |
69 /** | 66 /** |
95 void *node; | 92 void *node; |
96 /** | 93 /** |
97 * Stores a copy of the next pointer of the visited node. | 94 * Stores a copy of the next pointer of the visited node. |
98 * Allows freeing a node on exit without corrupting the iteration. | 95 * Allows freeing a node on exit without corrupting the iteration. |
99 */ | 96 */ |
100 void *next; | 97 void *node_next; |
101 /** | 98 /** |
102 * Internal stack. | 99 * Internal stack. |
103 * Will be automatically freed once the iterator becomes invalid. | 100 * Will be automatically freed once the iterator becomes invalid. |
104 * | 101 * |
105 * If you want to discard the iterator before, you need to manually | 102 * If you want to discard the iterator before, you need to manually |
155 * the iterator becomes invalid (regardless of what cxIteratorValid() returns). | 152 * the iterator becomes invalid (regardless of what cxIteratorValid() returns). |
156 * | 153 * |
157 * @see CxIterator | 154 * @see CxIterator |
158 */ | 155 */ |
159 typedef struct cx_tree_visitor_s { | 156 typedef struct cx_tree_visitor_s { |
160 /** | 157 CX_ITERATOR_BASE |
161 * The base properties of this iterator. | |
162 */ | |
163 struct cx_iterator_base_s base; | |
164 /** | 158 /** |
165 * Indicates whether the subtree below the current node shall be skipped. | 159 * Indicates whether the subtree below the current node shall be skipped. |
166 */ | 160 */ |
167 bool skip; | 161 bool skip; |
168 /** | 162 /** |