libyang REFACTOR avoid constant literals
Improve readability of the code.
Includes also unification of "no break in the case" comment to "fall
through".
diff --git a/src/xpath.c b/src/xpath.c
index 811a8a0..7c3eb59 100644
--- a/src/xpath.c
+++ b/src/xpath.c
@@ -133,8 +133,9 @@
static void
print_expr_struct_debug(const struct lyxp_expr *exp)
{
+#define MSG_BUFFER_SIZE 128
+ char tmp[MSG_BUFFER_SIZE];
uint16_t i, j;
- char tmp[128];
if (!exp || (ly_ll < LY_LLDBG)) {
return;
@@ -153,6 +154,7 @@
}
LOGDBG(LY_LDGXPATH, tmp);
}
+#undef MSG_BUFFER_SIZE
}
#ifndef NDEBUG
@@ -781,7 +783,8 @@
ret->type = set->type;
for (i = 0; i < set->used; ++i) {
- if ((set->val.scnodes[i].in_ctx == 1) || (set->val.scnodes[i].in_ctx == -2)) {
+ if ((set->val.scnodes[i].in_ctx == LYXP_SET_SCNODE_ATOM_CTX) ||
+ (set->val.scnodes[i].in_ctx == LYXP_SET_SCNODE_START)) {
uint32_t idx;
LY_CHECK_ERR_RET(lyxp_set_scnode_insert_node(ret, set->val.scnodes[i].scnode, set->val.scnodes[i].type, &idx),
lyxp_set_free(ret), NULL);
@@ -935,10 +938,10 @@
uint32_t i;
for (i = 0; i < set->used; ++i) {
- if (set->val.scnodes[i].in_ctx == 1) {
- set->val.scnodes[i].in_ctx = 0;
- } else if (set->val.scnodes[i].in_ctx == -2) {
- set->val.scnodes[i].in_ctx = -1;
+ if (set->val.scnodes[i].in_ctx == LYXP_SET_SCNODE_ATOM_CTX) {
+ set->val.scnodes[i].in_ctx = LYXP_SET_SCNODE_ATOM;
+ } else if (set->val.scnodes[i].in_ctx == LYXP_SET_SCNODE_START) {
+ set->val.scnodes[i].in_ctx = LYXP_SET_SCNODE_START_USED;
}
}
}
@@ -1192,7 +1195,7 @@
assert(set->type == LYXP_SET_SCNODE_SET);
if (lyxp_set_scnode_contains(set, node, node_type, -1, &index)) {
- set->val.scnodes[index].in_ctx = 1;
+ set->val.scnodes[index].in_ctx = LYXP_SET_SCNODE_ATOM_CTX;
} else {
if (set->used == set->size) {
set->val.scnodes = ly_realloc(set->val.scnodes, (set->size + LYXP_SET_SIZE_STEP) * sizeof *set->val.scnodes);
@@ -1203,7 +1206,7 @@
index = set->used;
set->val.scnodes[index].scnode = (struct lysc_node *)node;
set->val.scnodes[index].type = node_type;
- set->val.scnodes[index].in_ctx = 1;
+ set->val.scnodes[index].in_ctx = LYXP_SET_SCNODE_ATOM_CTX;
++set->used;
}
@@ -1253,7 +1256,7 @@
assert(set->type == LYXP_SET_SCNODE_SET);
- ret_ctx = 3;
+ ret_ctx = LYXP_SET_SCNODE_ATOM_PRED_CTX;
retry:
for (i = 0; i < set->used; ++i) {
if (set->val.scnodes[i].in_ctx >= ret_ctx) {
@@ -1262,7 +1265,7 @@
}
}
for (i = 0; i < set->used; ++i) {
- if (set->val.scnodes[i].in_ctx == 1) {
+ if (set->val.scnodes[i].in_ctx == LYXP_SET_SCNODE_ATOM_CTX) {
set->val.scnodes[i].in_ctx = ret_ctx;
}
}
@@ -1377,7 +1380,7 @@
if (!tmp_node) {
LOGINT_RET(root->schema->module->ctx);
}
- /* fallthrough */
+ /* fall through */
case LYXP_NODE_ELEM:
case LYXP_NODE_TEXT:
if (!tmp_node) {
@@ -3028,7 +3031,7 @@
i = set->used;
do {
--i;
- if (set->val.scnodes[i].in_ctx == 1) {
+ if (set->val.scnodes[i].in_ctx == LYXP_SET_SCNODE_ATOM_CTX) {
/* if there are more, simply return the first found (last added) */
return set->val.scnodes[i].scnode;
}
@@ -5021,7 +5024,7 @@
if (options & LYXP_SCNODE_ALL) {
if (args[0]->type == LYXP_SET_SCNODE_SET) {
for (i = 0; i < args[0]->used; ++i) {
- if (args[0]->val.scnodes[i].in_ctx == 1) {
+ if (args[0]->val.scnodes[i].in_ctx == LYXP_SET_SCNODE_ATOM_CTX) {
sleaf = (struct lysc_node_leaf *)args[0]->val.scnodes[i].scnode;
if (!(sleaf->nodetype & (LYS_LEAF | LYS_LEAFLIST))) {
LOGWRN(set->ctx, "Argument #1 of %s is a %s node \"%s\".", __func__,
@@ -5648,15 +5651,15 @@
for (i = 0; i < orig_used; ++i) {
uint32_t idx;
- if (set->val.scnodes[i].in_ctx != 1) {
- if (set->val.scnodes[i].in_ctx != -2) {
+ if (set->val.scnodes[i].in_ctx != LYXP_SET_SCNODE_ATOM_CTX) {
+ if (set->val.scnodes[i].in_ctx != LYXP_SET_SCNODE_START) {
continue;
}
/* remember context node */
- set->val.scnodes[i].in_ctx = -1;
+ set->val.scnodes[i].in_ctx = LYXP_SET_SCNODE_START_USED;
} else {
- set->val.scnodes[i].in_ctx = 0;
+ set->val.scnodes[i].in_ctx = LYXP_SET_SCNODE_ATOM;
}
start_parent = set->val.scnodes[i].scnode;
@@ -5674,7 +5677,7 @@
/* we need to prevent these nodes from being considered in this moveto */
if ((idx < orig_used) && (idx > i)) {
- set->val.scnodes[idx].in_ctx = 2;
+ set->val.scnodes[idx].in_ctx = LYXP_SET_SCNODE_ATOM_NEW_CTX;
temp_ctx = 1;
}
}
@@ -5688,7 +5691,7 @@
LY_CHECK_RET(lyxp_set_scnode_insert_node(set, iter, LYXP_NODE_ELEM, &idx));
if ((idx < orig_used) && (idx > i)) {
- set->val.scnodes[idx].in_ctx = 2;
+ set->val.scnodes[idx].in_ctx = LYXP_SET_SCNODE_ATOM_NEW_CTX;
temp_ctx = 1;
}
}
@@ -5699,8 +5702,8 @@
/* correct temporary in_ctx values */
if (temp_ctx) {
for (i = 0; i < orig_used; ++i) {
- if (set->val.scnodes[i].in_ctx == 2) {
- set->val.scnodes[i].in_ctx = 1;
+ if (set->val.scnodes[i].in_ctx == LYXP_SET_SCNODE_ATOM_NEW_CTX) {
+ set->val.scnodes[i].in_ctx = LYXP_SET_SCNODE_ATOM_CTX;
}
}
}
@@ -5822,15 +5825,15 @@
orig_used = set->used;
for (i = 0; i < orig_used; ++i) {
- if (set->val.scnodes[i].in_ctx != 1) {
- if (set->val.scnodes[i].in_ctx != -2) {
+ if (set->val.scnodes[i].in_ctx != LYXP_SET_SCNODE_ATOM_CTX) {
+ if (set->val.scnodes[i].in_ctx != LYXP_SET_SCNODE_START) {
continue;
}
/* remember context node */
- set->val.scnodes[i].in_ctx = -1;
+ set->val.scnodes[i].in_ctx = LYXP_SET_SCNODE_START_USED;
} else {
- set->val.scnodes[i].in_ctx = 0;
+ set->val.scnodes[i].in_ctx = LYXP_SET_SCNODE_ATOM;
}
/* TREE DFS */
@@ -5846,7 +5849,7 @@
uint32_t idx;
if (lyxp_set_scnode_contains(set, elem, LYXP_NODE_ELEM, i, &idx)) {
- set->val.scnodes[idx].in_ctx = 1;
+ set->val.scnodes[idx].in_ctx = LYXP_SET_SCNODE_ATOM_CTX;
if ((uint32_t)idx > i) {
/* we will process it later in the set */
goto skip_children;
@@ -6235,15 +6238,15 @@
/* add all the children, recursively as they are being added into the same set */
for (uint32_t i = 0; i < set->used; ++i) {
- if (set->val.scnodes[i].in_ctx != 1) {
- if (set->val.scnodes[i].in_ctx != -2) {
+ if (set->val.scnodes[i].in_ctx != LYXP_SET_SCNODE_ATOM_CTX) {
+ if (set->val.scnodes[i].in_ctx != LYXP_SET_SCNODE_START) {
continue;
}
/* remember context node */
- set->val.scnodes[i].in_ctx = -1;
+ set->val.scnodes[i].in_ctx = LYXP_SET_SCNODE_START_USED;
} else {
- set->val.scnodes[i].in_ctx = 0;
+ set->val.scnodes[i].in_ctx = LYXP_SET_SCNODE_ATOM;
}
start_parent = set->val.scnodes[i].scnode;
@@ -6390,15 +6393,15 @@
orig_used = set->used;
for (i = 0; i < orig_used; ++i) {
- if (set->val.scnodes[i].in_ctx != 1) {
- if (set->val.scnodes[i].in_ctx != -2) {
+ if (set->val.scnodes[i].in_ctx != LYXP_SET_SCNODE_ATOM_CTX) {
+ if (set->val.scnodes[i].in_ctx != LYXP_SET_SCNODE_START) {
continue;
}
/* remember context node */
- set->val.scnodes[i].in_ctx = -1;
+ set->val.scnodes[i].in_ctx = LYXP_SET_SCNODE_START_USED;
} else {
- set->val.scnodes[i].in_ctx = 0;
+ set->val.scnodes[i].in_ctx = LYXP_SET_SCNODE_ATOM;
}
node = set->val.scnodes[i].scnode;
@@ -6421,15 +6424,15 @@
LY_CHECK_RET(lyxp_set_scnode_insert_node(set, new_node, new_type, &idx));
if ((idx < orig_used) && (idx > i)) {
- set->val.scnodes[idx].in_ctx = 2;
+ set->val.scnodes[idx].in_ctx = LYXP_SET_SCNODE_ATOM_NEW_CTX;
temp_ctx = 1;
}
}
if (temp_ctx) {
for (i = 0; i < orig_used; ++i) {
- if (set->val.scnodes[i].in_ctx == 2) {
- set->val.scnodes[i].in_ctx = 1;
+ if (set->val.scnodes[i].in_ctx == LYXP_SET_SCNODE_ATOM_NEW_CTX) {
+ set->val.scnodes[i].in_ctx = LYXP_SET_SCNODE_ATOM_CTX;
}
}
}
@@ -6779,7 +6782,7 @@
} else if (set->type == LYXP_SET_SCNODE_SET) {
for (i = 0; i < set->used; ++i) {
- if (set->val.scnodes[i].in_ctx == 1) {
+ if (set->val.scnodes[i].in_ctx == LYXP_SET_SCNODE_ATOM_CTX) {
/* there is a currently-valid node */
break;
}
@@ -6799,7 +6802,7 @@
if (set->val.scnodes[i].in_ctx != pred_in_ctx) {
continue;
}
- set->val.scnodes[i].in_ctx = 1;
+ set->val.scnodes[i].in_ctx = LYXP_SET_SCNODE_ATOM_CTX;
*tok_idx = orig_exp;
@@ -6811,10 +6814,10 @@
/* restore the state as it was before the predicate */
for (i = 0; i < set->used; ++i) {
- if (set->val.scnodes[i].in_ctx == 1) {
- set->val.scnodes[i].in_ctx = 0;
+ if (set->val.scnodes[i].in_ctx == LYXP_SET_SCNODE_ATOM_CTX) {
+ set->val.scnodes[i].in_ctx = LYXP_SET_SCNODE_ATOM;
} else if (set->val.scnodes[i].in_ctx == pred_in_ctx) {
- set->val.scnodes[i].in_ctx = 1;
+ set->val.scnodes[i].in_ctx = LYXP_SET_SCNODE_ATOM_CTX;
}
}
@@ -7162,7 +7165,7 @@
LY_CHECK_GOTO(rc, cleanup);
for (i = set->used - 1; i > -1; --i) {
- if (set->val.scnodes[i].in_ctx > 0) {
+ if (set->val.scnodes[i].in_ctx > LYXP_SET_SCNODE_ATOM) {
break;
}
}
@@ -8737,7 +8740,7 @@
set->type = LYXP_SET_SCNODE_SET;
set->root_type = lyxp_get_root_type(NULL, ctx_scnode, options);
LY_CHECK_RET(lyxp_set_scnode_insert_node(set, ctx_scnode, ctx_scnode ? LYXP_NODE_ELEM : set->root_type, NULL));
- set->val.scnodes[0].in_ctx = -2;
+ set->val.scnodes[0].in_ctx = LYXP_SET_SCNODE_START;
set->ctx = cur_mod ? cur_mod->ctx : (ctx_scnode ? ctx_scnode->module->ctx : NULL);
set->cur_scnode = ctx_scnode;