Branch Coverage

XS.xs
Criterion Covered Total %
branch 74 76 97.3


line true false branch
56 95 68 if (arr->max_size > 0) {
66 59 110 for (i = 0; i < arr->count; ++i) {
75 95 22 if (arr->max_size == 0) {
79 2 20 else if (arr->count == arr->max_size) {
103 68 20 for (i = 0; i < count; ++i) {
116 52 16 if (node->values != NULL) {
121 64 16 for (i = 0; i < CHILDREN_PER_NODE; ++i) {
131 80 57 if (node->values == NULL) {
133 229 33 for (i = 0; i < CHILDREN_PER_NODE; ++i) {
134 47 182 if (node->children[i].has_objects) return;
139 80 10 if (node->parent != NULL) {
156 53 5 if (!hv_exists_ent(root->backref, value, 0)) {
176 52 16 if (last) {
193 624 196 return (xmin <= node->xmax && xmax >= node->xmin)
194 820 194 && (ymin <= node->ymax && ymax >= node->ymin);
518 106 && (ymin <= node->ymax && ymax >= node->ymin);
410 108 && (ymin <= node->ymax && ymax >= node->ymin);
201 14 25 : x > node->xmax
203 3 22 : x
208 14 25 : y > node->ymax
210 3 22 : y
231 588 20 if (!node->has_objects || !is_within_node(node, param)) return;
318 270 if (!node->has_objects || !is_within_node(node, param)) return;
235 134 136 if (node->values != NULL) {
236 150 134 for (i = 0; i < node->values->count; ++i) {
243 544 136 for (i = 0; i < CHILDREN_PER_NODE; ++i) {
251 304 161 if (!is_within_node(node, param)) return;
254 58 103 if (node->values != NULL) {
260 412 103 for (i = 0; i < CHILDREN_PER_NODE; ++i) {
291 52 7 while ((value = hv_iternextsv(root->backref, &key, &retlen)) != NULL) {
293 57 52 for (i = 0; i < list->count; ++i) {
362 48 5 if (items > 5) {
386 61 3 if (items > 4) {
404 1 0 if (hv_exists_ent(root->backref, object, 0)) {
408 1 1 for (i = 0; i < list->count; ++i) {
412 2 1 for(j = 0; j < node->values->count; ++j) {
414 1 1 if (!sv_eq(fetched, object)) {
421 0 1 if (new_list->count == 0) clear_has_objects(node);