-static
-int recursive_visit_print(struct filter_node *node, FILE *stream, int indent);
+#define fprintf_dbg(fd, fmt, args...) fprintf(fd, "%s: " fmt, __func__, ##args)
-static
-void print_tabs(FILE *fd, int depth)
+static int recursive_visit_print(struct filter_node *node, FILE *stream, int indent);
+
+static void print_tabs(FILE *fd, int depth)
-static
-int recursive_visit_print_expression(struct filter_node *node,
- FILE *stream, int indent)
+static int recursive_visit_print_expression(struct filter_node *node, FILE *stream, int indent)
- fprintf(stream, "<string value=\"%s\"/>\n",
- node->u.expression.u.string);
+ fprintf(stream, "<string value=\"%s\"/>\n", node->u.expression.u.string);
node->u.expression.u.constant);
break;
case AST_EXP_FLOAT_CONSTANT:
print_tabs(stream, indent);
node->u.expression.u.constant);
break;
case AST_EXP_FLOAT_CONSTANT:
print_tabs(stream, indent);
case AST_EXP_GLOBAL_IDENTIFIER:
print_tabs(stream, indent);
case AST_EXP_GLOBAL_IDENTIFIER:
print_tabs(stream, indent);
- fprintf(stream, "<%s value=\"%s\"/>\n",
- node->u.expression.type == AST_EXP_IDENTIFIER ?
- "identifier" : "global_identifier",
+ fprintf(stream,
+ "<%s value=\"%s\"/>\n",
+ node->u.expression.type == AST_EXP_IDENTIFIER ? "identifier" :
+ "global_identifier",
node->u.expression.u.identifier);
iter_node = node->u.expression.next;
while (iter_node) {
print_tabs(stream, indent);
fprintf(stream, "<bracket>\n");
node->u.expression.u.identifier);
iter_node = node->u.expression.next;
while (iter_node) {
print_tabs(stream, indent);
fprintf(stream, "<bracket>\n");
return -EINVAL;
}
print_tabs(stream, indent);
fprintf(stream, "</bracket>\n");
iter_node = iter_node->u.expression.next;
return -EINVAL;
}
print_tabs(stream, indent);
fprintf(stream, "</bracket>\n");
iter_node = iter_node->u.expression.next;
case NODE_ROOT:
print_tabs(stream, indent);
fprintf(stream, "<root>\n");
case NODE_ROOT:
print_tabs(stream, indent);
fprintf(stream, "<root>\n");
print_tabs(stream, indent);
fprintf(stream, "</root>\n");
return ret;
case NODE_EXPRESSION:
print_tabs(stream, indent);
fprintf(stream, "<expression>\n");
print_tabs(stream, indent);
fprintf(stream, "</root>\n");
return ret;
case NODE_EXPRESSION:
print_tabs(stream, indent);
fprintf(stream, "<expression>\n");
print_tabs(stream, indent);
fprintf(stream, "</expression>\n");
return ret;
print_tabs(stream, indent);
fprintf(stream, "</expression>\n");
return ret;
print_tabs(stream, indent);
fprintf(stream, "</unary_op>\n");
return ret;
print_tabs(stream, indent);
fprintf(stream, "</unary_op>\n");
return ret;