Bump year
[yaz-moved-to-github.git] / src / yaz-ccl.c
1 /*
2  * Copyright (C) 1995-2005, Index Data ApS
3  * See the file LICENSE for details.
4  *
5  * $Id: yaz-ccl.c,v 1.3 2005-01-15 19:47:14 adam Exp $
6  */
7 /**
8  * \file yaz-ccl.c
9  * \brief Implements CCL node tree to RPN converson.
10  */
11
12 #include <stdio.h>
13 #include <stdlib.h>
14 #include <string.h>
15 #include <ctype.h>
16
17 #include <yaz/yaz-ccl.h>
18 #include <yaz/pquery.h>
19
20 Z_RPNQuery *ccl_rpn_query (ODR o, struct ccl_rpn_node *p)
21 {
22     YAZ_PQF_Parser parser = yaz_pqf_create();
23     WRBUF wr = wrbuf_alloc();
24     Z_RPNQuery *q;
25
26     ccl_pquery(wr, p);
27
28     q = yaz_pqf_parse(parser, o, wrbuf_buf(wr));
29
30     wrbuf_free(wr, 1);
31     yaz_pqf_destroy(parser);
32     return q;
33 }
34
35 Z_AttributesPlusTerm *ccl_scan_query (ODR o, struct ccl_rpn_node *p)
36 {
37     YAZ_PQF_Parser parser = yaz_pqf_create();
38     WRBUF wr = wrbuf_alloc();
39     Z_AttributesPlusTerm *q;
40     Odr_oid *setp;
41
42     ccl_pquery(wr, p);
43
44     q = yaz_pqf_scan(parser, o, &setp, wrbuf_buf(wr));
45
46     wrbuf_free(wr, 1);
47     yaz_pqf_destroy(parser);
48     return q;
49 }
50