X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=ccl%2Fcclfind.c;h=98b99bed3e4e1b4807f4df13fb120267241a5a1d;hb=9f1933e4107d7d50f1cd102031f8d22d98ab673c;hp=ab16f42517eed0796150ae6844649b2824a5d655;hpb=e1ec9d39463f431383547891f38e30f2ff17842c;p=egate.git diff --git a/ccl/cclfind.c b/ccl/cclfind.c index ab16f42..98b99be 100644 --- a/ccl/cclfind.c +++ b/ccl/cclfind.c @@ -45,7 +45,14 @@ * Europagate, 1995 * * $Log: cclfind.c,v $ - * Revision 1.14 1995/05/16 09:39:26 adam + * Revision 1.16 1996/01/08 08:41:13 adam + * Removed unused function. + * + * Revision 1.15 1995/07/20 08:14:34 adam + * Qualifiers were observed too often. Instead tokens are treated as + * qualifiers only when separated by comma. + * + * Revision 1.14 1995/05/16 09:39:26 adam * LICENSE. * * Revision 1.13 1995/04/17 09:31:42 adam @@ -111,33 +118,6 @@ static CCL_bibset bibset; #define ADVANCE look_token = look_token->next /* - * qual_val_range: search for attribute of type with range - * qa: Attribute array - * type: Type of attribute to search for - * vmin: Lower bound of value to search for - * vmax: Upper bound of value to search for - * return: Return pointer to integer of attribute value found; NULL - * otherwise. - */ -static int *qual_val_range (struct ccl_rpn_attr **qa, int type, - int vmin, int vmax) -{ - int i; - struct ccl_rpn_attr *q; - - if (!qa) - return NULL; - for (i = 0; (q=qa[i]); i++) - while (q) - { - if (q->type == type && q->value >= vmin && q->value <= vmax) - return &q->value; - q = q->next; - } - return NULL; -} - -/* * qual_val_type: test for existance of attribute type/value pair. * qa: Attribute array * type: Type of attribute to search for @@ -706,10 +686,15 @@ static struct ccl_rpn_node *search_elements (struct ccl_rpn_attr **qa) } lookahead = look_token; - while (lookahead->kind==CCL_TOK_TERM || lookahead->kind==CCL_TOK_COMMA) - lookahead = lookahead->next; - if (lookahead->kind == CCL_TOK_REL || lookahead->kind == CCL_TOK_EQ) - return qualifiers (lookahead, qa); + while (lookahead->kind==CCL_TOK_TERM) + { + lookahead = lookahead->next; + if (lookahead->kind == CCL_TOK_REL || lookahead->kind == CCL_TOK_EQ) + return qualifiers (lookahead, qa); + if (lookahead->kind != CCL_TOK_COMMA) + break; + lookahead = lookahead->next; + } return search_terms (qa); }