* Europagate, 1995
*
* $Log: cclfind.c,v $
- * Revision 1.19 2000-11-16 09:58:02 adam
+ * Revision 1.23 2001-03-20 11:22:58 adam
+ * CCL Truncation character may be defined.
+ *
+ * Revision 1.22 2001/03/07 13:24:40 adam
+ * Member and_not in Z_Operator is kept for backwards compatibility.
+ * Added support for definition of CCL operators in field spec file.
+ *
+ * Revision 1.21 2001/02/21 13:46:53 adam
+ * C++ fixes.
+ *
+ * Revision 1.20 2000/11/16 13:03:12 adam
+ * Function ccl_rpn_query sets attributeSet to Bib-1.
+ *
+ * Revision 1.19 2000/11/16 09:58:02 adam
* Implemented local AttributeSet setting for CCL field maps.
*
* Revision 1.18 2000/10/17 19:50:28 adam
ccl_assert (n);
if (set)
{
- n->set = malloc (strlen(set)+1);
+ n->set = (char*) malloc (strlen(set)+1);
strcpy (n->set, set);
}
else
int and_list = 0;
int or_list = 0;
char *attset;
+ const char *truncation_aliases;
+
+ truncation_aliases =
+ ccl_qual_search_special(cclp->bibset, "truncation");
+ if (!truncation_aliases)
+ truncation_aliases = "?";
if (!qa)
{
int truncation_value = -1;
int completeness_value = -1;
int len = 0;
- int max = 200;
+ size_t max = 200;
if (and_list || or_list)
max = 1;
for (no = 0; no < max && is_term_ok(lookahead->kind, term_list); no++)
{
for (i = 0; i<lookahead->len; i++)
- if (truncation_value == -1 && lookahead->name[i] == '?')
+ if (truncation_value == -1 && strchr(truncation_aliases,
+ lookahead->name[i]))
{
if (no == 0 && i == 0 && lookahead->len >= 1)
left_trunc = 1;
{
struct ccl_rpn_node *p;
+
+
cclp->look_token = list;
p = find_spec (cclp, NULL);
if (p && KIND != CCL_TOK_EOL)