X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=util%2Fcql2pqf.c;h=d5571dd20bfb701d64865a8f6c00b1dcbfeaefea;hp=5c33b5a850769b91b35828d185a6b67429f32fd6;hb=5242cb5a8634bfa38b9333ff7f903e718ac6e292;hpb=2788a4851b551e1a3efb320a2878b809f2d8a9d7 diff --git a/util/cql2pqf.c b/util/cql2pqf.c index 5c33b5a..d5571dd 100644 --- a/util/cql2pqf.c +++ b/util/cql2pqf.c @@ -1,7 +1,10 @@ /* This file is part of the YAZ toolkit. - * Copyright (C) 1995-2009 Index Data + * Copyright (C) 1995-2012 Index Data * See the file LICENSE for details. */ +#if HAVE_CONFIG_H +#include +#endif #include #include @@ -23,11 +26,12 @@ int main(int argc, char **argv) char *query = 0; char *fname = 0; int reverse = 0; + int verbose = 1; int ret; char *arg; - while ((ret = options("n:r", argv, argc, &arg)) != -2) + while ((ret = options("n:rv", argv, argc, &arg)) != -2) { switch (ret) { @@ -37,18 +41,25 @@ int main(int argc, char **argv) else query = arg; break; - case 'r': - reverse = 1; case 'n': iterations = atoi(arg); break; + case 'r': + reverse = 1; + break; + case 'v': + verbose = 1; + break; default: usage(); } } if (!fname) usage(); - ct = cql_transform_open_fname(fname); + if (!strcmp(fname, "-")) + ct = cql_transform_create(); + else + ct = cql_transform_open_fname(fname); if (!ct) { fprintf(stderr, "failed to read properties %s\n", fname); @@ -68,11 +79,11 @@ int main(int argc, char **argv) { fprintf(stderr, "PQF syntax error\n"); } - else + else { int ret = cql_transform_rpn2cql_stream(ct, cql_fputs, stdout, rpn); - + if (ret) { const char *addinfo; @@ -90,15 +101,17 @@ int main(int argc, char **argv) { CQL_parser cp = cql_parser_create(); int r = 0; - + if (query) { + if (verbose) + printf("Parsing CQL %s\n", query); for (i = 0; i