/* This file is part of the YAZ toolkit.
- * Copyright (C) 1995-2010 Index Data.
+ * Copyright (C) Index Data.
* All rights reserved.
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
YAZ_BEGIN_CDECL
-/** \brief transforms RPN query to CQL output stream
+/** \brief transforms RPN query to CQL output stream (re-entrant)
+ \param ct CQL transform handle
+ \param addinfo for additional error info
+ \param pr print function
+ \param client_data opaque data to be passed to print handler
+ \param q RPN Query
+ \retval 0 success
+ \retval !=0 failure (error code)
+ */
+YAZ_EXPORT
+int cql_transform_rpn2cql_stream_r(cql_transform_t ct,
+ WRBUF addinfo,
+ void (*pr)(const char *buf,
+ void *client_data),
+ void *client_data,
+ Z_RPNQuery *q);
+
+
+/** \brief transforms RPN query to CQL output stream (NOT re-entrant)
\param ct CQL transform handle
\param pr print function
\param client_data opaque data to be passed to print handler
Z_RPNQuery *q);
-/** \brief transforms RPN query to CQL WRBUF
+/** \brief transforms RPN query to CQL WRBUF (NOT re-entrant)
\param ct CQL transform handle
\param w WRBUF handle for result
\param q RPN Query
\retval !=0 failure (error code)
*/
YAZ_EXPORT
-int cql_transform_rpn2cql_wrbuf(cql_transform_t ct,
- WRBUF w,
- Z_RPNQuery *q);
+int cql_transform_rpn2cql_wrbuf(cql_transform_t ct, WRBUF w, Z_RPNQuery *q);
/** \brief find a pattern that has a subset of attributes
\param ct CQL transform handle
\returns pattern value or NULL if not found
*/
YAZ_EXPORT
-const char *cql_lookup_reverse(cql_transform_t ct,
+const char *cql_lookup_reverse(cql_transform_t ct,
const char *category,
Z_AttributeList *attributes);