bool parse_spec_file(const char *fname, int *error);
int query_transform(const char *cql, Z_RPNQuery **rpnquery, ODR o,
char **addinfop);
+ int rpn2cql_transform(Z_RPNQuery *q, WRBUF cql, ODR o, char **addinfop);
private:
cql_transform_t m_transform;
};
#include <yaz/pquery.h>
#include <yaz/sortspec.h>
#include <yazpp/cql2rpn.h>
+#include <yaz/rpn2cql.h>
using namespace yazpp_1;
return m_transform ? true : false;
}
+int Yaz_cql2rpn::rpn2cql_transform(Z_RPNQuery *q, WRBUF cql, ODR o,
+ char **addinfop)
+{
+ int r = cql_transform_rpn2cql_wrbuf(m_transform, cql, q);
+ *addinfop = 0;
+ if (r)
+ {
+ const char *addinfo = 0;
+ r = cql_transform_error(m_transform, &addinfo);
+ *addinfop = odr_strdup_null(o, addinfo);
+ }
+ return r;
+}
+
int Yaz_cql2rpn::query_transform(const char *cql_query,
Z_RPNQuery **rpnquery, ODR o,
char **addinfop)