Lines Matching refs:node

60     lexbor_in_node_t *node = lexbor_dobject_alloc(incoming->nodes);  in lexbor_in_node_make()  local
62 if (node == NULL) { in lexbor_in_node_make()
66 node->opt = LEXBOR_IN_OPT_UNDEF; in lexbor_in_node_make()
67 node->begin = buf; in lexbor_in_node_make()
68 node->end = buf + buf_size; in lexbor_in_node_make()
69 node->use = buf; in lexbor_in_node_make()
72 last_node->next = node; in lexbor_in_node_make()
73 node->offset = last_node->offset + (last_node->end - last_node->begin); in lexbor_in_node_make()
76 node->offset = 0; in lexbor_in_node_make()
79 node->prev = last_node; in lexbor_in_node_make()
80 node->next = NULL; in lexbor_in_node_make()
81 node->incoming = incoming; in lexbor_in_node_make()
83 return node; in lexbor_in_node_make()
87 lexbor_in_node_clean(lexbor_in_node_t *node) in lexbor_in_node_clean() argument
89 lexbor_in_t *incoming = node->incoming; in lexbor_in_node_clean()
91 memset(node, 0, sizeof(lexbor_in_node_t)); in lexbor_in_node_clean()
93 node->incoming = incoming; in lexbor_in_node_clean()
98 lexbor_in_node_t *node, bool self_destroy) in lexbor_in_node_destroy() argument
100 if (node == NULL) { in lexbor_in_node_destroy()
105 return lexbor_dobject_free(incoming->nodes, node); in lexbor_in_node_destroy()
108 return node; in lexbor_in_node_destroy()
112 lexbor_in_node_split(lexbor_in_node_t *node, const lxb_char_t *pos) in lexbor_in_node_split() argument
116 new_node = lexbor_dobject_alloc(node->incoming->nodes); in lexbor_in_node_split()
122 new_node->offset = node->offset + (pos - node->begin); in lexbor_in_node_split()
125 new_node->end = node->end; in lexbor_in_node_split()
127 new_node->prev = node; in lexbor_in_node_split()
128 new_node->incoming = node->incoming; in lexbor_in_node_split()
130 node->end = pos; in lexbor_in_node_split()
131 node->next = new_node; in lexbor_in_node_split()
133 if (node->use > pos) { in lexbor_in_node_split()
134 new_node->use = node->use; in lexbor_in_node_split()
135 node->use = pos; in lexbor_in_node_split()
145 lexbor_in_node_find(lexbor_in_node_t *node, const lxb_char_t *pos) in lexbor_in_node_find() argument
147 while (node->next) { in lexbor_in_node_find()
148 node = node->next; in lexbor_in_node_find()
151 while (node && (node->begin > pos || node->end < pos)) { in lexbor_in_node_find()
152 node = node->prev; in lexbor_in_node_find()
155 return node; in lexbor_in_node_find()
159 lexbor_in_node_pos_up(lexbor_in_node_t *node, lexbor_in_node_t **return_node, in lexbor_in_node_pos_up() argument
165 if (node->end >= pos) { in lexbor_in_node_pos_up()
166 if (return_node != NULL && *return_node != node) { in lexbor_in_node_pos_up()
167 *return_node = node; in lexbor_in_node_pos_up()
173 if (node->next == NULL) { in lexbor_in_node_pos_up()
174 if (return_node != NULL && *return_node != node) { in lexbor_in_node_pos_up()
175 *return_node = node; in lexbor_in_node_pos_up()
178 return node->end; in lexbor_in_node_pos_up()
181 offset = pos - node->end; in lexbor_in_node_pos_up()
182 node = node->next; in lexbor_in_node_pos_up()
183 pos = node->begin; in lexbor_in_node_pos_up()
192 lexbor_in_node_pos_down(lexbor_in_node_t *node, lexbor_in_node_t **return_node, in lexbor_in_node_pos_down() argument
198 if (node->begin <= pos) { in lexbor_in_node_pos_down()
199 if (return_node != NULL && *return_node != node) { in lexbor_in_node_pos_down()
200 *return_node = node; in lexbor_in_node_pos_down()
206 if (node->prev == NULL) { in lexbor_in_node_pos_down()
207 if (return_node != NULL && *return_node != node) { in lexbor_in_node_pos_down()
208 *return_node = node; in lexbor_in_node_pos_down()
211 return node->begin; in lexbor_in_node_pos_down()
214 offset = node->begin - pos; in lexbor_in_node_pos_down()
215 node = node->prev; in lexbor_in_node_pos_down()
216 pos = node->end; in lexbor_in_node_pos_down()
228 lexbor_in_node_begin_noi(const lexbor_in_node_t *node) in lexbor_in_node_begin_noi() argument
230 return lexbor_in_node_begin(node); in lexbor_in_node_begin_noi()
234 lexbor_in_node_end_noi(const lexbor_in_node_t *node) in lexbor_in_node_end_noi() argument
236 return lexbor_in_node_end(node); in lexbor_in_node_end_noi()
240 lexbor_in_node_offset_noi(const lexbor_in_node_t *node) in lexbor_in_node_offset_noi() argument
242 return lexbor_in_node_offset(node); in lexbor_in_node_offset_noi()
246 lexbor_in_node_next_noi(const lexbor_in_node_t *node) in lexbor_in_node_next_noi() argument
248 return lexbor_in_node_next(node); in lexbor_in_node_next_noi()
252 lexbor_in_node_prev_noi(const lexbor_in_node_t *node) in lexbor_in_node_prev_noi() argument
254 return lexbor_in_node_prev(node); in lexbor_in_node_prev_noi()
258 lexbor_in_node_in_noi(const lexbor_in_node_t *node) in lexbor_in_node_in_noi() argument
260 return lexbor_in_node_in(node); in lexbor_in_node_in_noi()
264 lexbor_in_segment_noi(const lexbor_in_node_t *node, const lxb_char_t *data) in lexbor_in_segment_noi() argument
266 return lexbor_in_segment(node, data); in lexbor_in_segment_noi()