X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=src%2Fxcqlutil.c;h=de6116cf1126cd4150e9e3c403c627656440ecf6;hp=19b5036fe78f954c50ac5d6bda1d35b680c97b5e;hb=9084e20f4c5ffad9cfea2087396206b75a3a6654;hpb=262800f89e3280c5b594faf6eea2c98e988ee2cb diff --git a/src/xcqlutil.c b/src/xcqlutil.c index 19b5036..de6116c 100644 --- a/src/xcqlutil.c +++ b/src/xcqlutil.c @@ -1,5 +1,5 @@ /* This file is part of the YAZ toolkit. - * Copyright (C) 1995-2011 Index Data + * Copyright (C) 1995-2013 Index Data * See the file LICENSE for details. */ /** @@ -16,7 +16,7 @@ #include -static void pr_n(const char *buf, +static void pr_n(const char *buf, void (*pr)(const char *buf, void *client_data), void *client_data, int n) { @@ -53,7 +53,7 @@ static void pr_cdata(const char *buf, src++; } } - + static void prefixes(struct cql_node *cn, void (*pr)(const char *buf, void *client_data), void *client_data, int level) @@ -86,7 +86,7 @@ static void prefixes(struct cql_node *cn, if (head) pr_n("\n", pr, client_data, level); } - + static void cql_to_xml_mod(struct cql_node *m, void (*pr)(const char *buf, void *client_data), void *client_data, int level) @@ -118,7 +118,7 @@ static void cql_to_xml_mod(struct cql_node *m, } } -static void cql_sort_to_xml(struct cql_node *cn, +static void cql_sort_to_xml(struct cql_node *cn, void (*pr)(const char *buf, void *client_data), void *client_data, int level) { @@ -128,7 +128,7 @@ static void cql_sort_to_xml(struct cql_node *cn, for (; cn; cn = cn->u.sort.next) { pr_n("\n", pr, client_data, level+2); - + if (cn->u.sort.index) { pr_n("", pr, client_data, level+4); @@ -188,16 +188,6 @@ static void cql_to_xml_r(struct cql_node *cn, pr_cdata(cn->u.st.term, pr, client_data); pr_n("\n", pr, client_data, 0); } - if (cn->u.st.extra_terms) - { - struct cql_node *n = cn->u.st.extra_terms; - for (; n; n = n->u.st.extra_terms) - { - pr_n("", pr, client_data, level+2); - pr_cdata(n->u.st.term, pr, client_data); - pr_n("\n", pr, client_data, 0); - } - } cql_sort_to_xml(sort_node, pr, client_data, level+2); pr_n("\n", pr, client_data, level); break; @@ -236,7 +226,7 @@ static void cql_to_xml_r(struct cql_node *cn, } } -void cql_to_xml(struct cql_node *cn, +void cql_to_xml(struct cql_node *cn, void (*pr)(const char *buf, void *client_data), void *client_data) {