Typo in Usage: message.
[yaz-moved-to-github.git] / util / cql2pqf.c
1 /* $Id: cql2pqf.c,v 1.2 2003-12-18 16:45:19 mike Exp $
2    Copyright (C) 2002-2003
3    Index Data Aps
4
5 This file is part of the YAZ toolkit.
6
7 See the file LICENSE.
8 */
9
10 #include <stdlib.h>
11 #include <stdio.h>
12
13 #include <yaz/cql.h>
14
15 int main(int argc, char **argv)
16 {
17     cql_transform_t ct;
18     int r;
19     int i, it = 1;
20     CQL_parser cp = cql_parser_create();
21
22     if (argc < 2)
23     {
24         fprintf (stderr, "usage\n cqltransform <properties> [<query>] [iterations]\n");
25         exit (1);
26     }
27     ct = cql_transform_open_fname(argv[1]);
28     if (!ct)
29     {
30         fprintf (stderr, "failed to read properties %s\n", argv[1]);
31         exit (1);
32     }
33     if (argc >= 4)
34         it = atoi(argv[3]);
35
36     for (i = 0; i<it; i++)
37     {
38     if (argc >= 3)
39         r = cql_parser_string(cp, argv[2]);
40     else
41         r = cql_parser_stdio(cp, stdin);
42
43     if (r)
44         fprintf (stderr, "Syntax error\n");
45     else
46     {
47         r = cql_transform_FILE(ct, cql_parser_result(cp), stdout);
48         printf("\n");
49         if (r)
50         {
51             const char *addinfo;
52             cql_transform_error(ct, &addinfo);
53             printf ("Transform error %d %s\n", r, addinfo ? addinfo : "");
54         }
55     }
56     }
57     cql_transform_close(ct);
58     cql_parser_destroy(cp);
59     return 0;
60 }