From 27742a4ea82e9b3494c166203b06d1d7c48da923 Mon Sep 17 00:00:00 2001 From: Adam Dickmeiss Date: Tue, 6 Jun 2006 21:01:30 +0000 Subject: [PATCH] Removed rsbool_create_and, rsbool_create_or because they are no in use. Renamed rs_create functions to rset_create_. --- include/rset.h | 40 ++++----- index/trunc.c | 15 ++-- index/zrpn.c | 99 ++++++++++---------- index/zsets.c | 8 +- rset/rsbetween.c | 12 +-- rset/rsbool.c | 248 +-------------------------------------------------- rset/rsmultiandor.c | 12 +-- rset/rsnull.c | 8 +- rset/rsprox.c | 14 +-- rset/rstemp.c | 8 +- 10 files changed, 107 insertions(+), 357 deletions(-) diff --git a/include/rset.h b/include/rset.h index 12e2e07..ccc66ba 100644 --- a/include/rset.h +++ b/include/rset.h @@ -1,5 +1,5 @@ -/* $Id: rset.h,v 1.58 2006-05-10 08:13:18 adam Exp $ - Copyright (C) 1995-2005 +/* $Id: rset.h,v 1.59 2006-06-06 21:01:30 adam Exp $ + Copyright (C) 1995-2006 Index Data ApS This file is part of the Zebra server. @@ -226,33 +226,27 @@ void rset_close(RSFD rfd); /** rset_count counts or estimates the keys in it*/ zint rset_count(RSET rs); -RSET rstemp_create(NMEM nmem, struct rset_key_control *kcontrol, - int scope, const char *temp_path, TERMID term); +RSET rset_create_temp(NMEM nmem, struct rset_key_control *kcontrol, + int scope, const char *temp_path, TERMID term); -RSET rsnull_create(NMEM nmem, struct rset_key_control *kcontrol, TERMID term); +RSET rset_create_null(NMEM nmem, struct rset_key_control *kcontrol, TERMID term); -RSET rsbool_create_and(NMEM nmem, struct rset_key_control *kcontrol, - int scope, RSET rset_l, RSET rset_r); +RSET rset_create_not(NMEM nmem, struct rset_key_control *kcontrol, + int scope, RSET rset_l, RSET rset_r); -RSET rsbool_create_or(NMEM nmem, struct rset_key_control *kcontrol, - int scope, RSET rset_l, RSET rset_r); +RSET rset_create_between(NMEM nmem, struct rset_key_control *kcontrol, + int scope, RSET rset_l, RSET rset_m, RSET rset_r, + RSET rset_attr); -RSET rsbool_create_not(NMEM nmem, struct rset_key_control *kcontrol, - int scope, RSET rset_l, RSET rset_r); +RSET rset_create_or(NMEM nmem, struct rset_key_control *kcontrol, + int scope, TERMID termid, int no_rsets, RSET* rsets); -RSET rsbetween_create(NMEM nmem, struct rset_key_control *kcontrol, - int scope, RSET rset_l, RSET rset_m, RSET rset_r, - RSET rset_attr); +RSET rset_create_and(NMEM nmem, struct rset_key_control *kcontrol, + int scope, int no_rsets, RSET* rsets); -RSET rsmulti_or_create(NMEM nmem, struct rset_key_control *kcontrol, - int scope, TERMID termid, int no_rsets, RSET* rsets); - -RSET rsmulti_and_create(NMEM nmem, struct rset_key_control *kcontrol, - int scope, int no_rsets, RSET* rsets); - -RSET rsprox_create(NMEM nmem, struct rset_key_control *kcontrol, - int scope, int rset_no, RSET *rset, - int ordered, int exclusion, int relation, int distance); +RSET rset_create_prox(NMEM nmem, struct rset_key_control *kcontrol, + int scope, int rset_no, RSET *rset, + int ordered, int exclusion, int relation, int distance); RSET rsisamb_create(NMEM nmem, struct rset_key_control *kcontrol, int scope, ISAMB is, ISAM_P pos, TERMID term); diff --git a/index/trunc.c b/index/trunc.c index 297795c..5bb9c04 100644 --- a/index/trunc.c +++ b/index/trunc.c @@ -1,4 +1,4 @@ -/* $Id: trunc.c,v 1.65 2006-05-10 08:13:22 adam Exp $ +/* $Id: trunc.c,v 1.66 2006-06-06 21:01:30 adam Exp $ Copyright (C) 1995-2005 Index Data ApS @@ -134,8 +134,8 @@ static RSET rset_trunc_r(ZebraHandle zi, const char *term, int length, RSFD result_rsfd; int nn = 0; - result = rstemp_create(rset_nmem, kctrl, scope, - res_get(zi->res, "setTmpDir"), termid); + result = rset_create_temp(rset_nmem, kctrl, scope, + res_get(zi->res, "setTmpDir"), termid); result_rsfd = rset_open(result, RSETF_WRITE); if (to - from > merge_chunk) @@ -414,7 +414,7 @@ RSET rset_trunc(ZebraHandle zi, ISAM_P *isam_p, int no, termid = rset_term_create(term, length, flags, term_type, rset_nmem, ol, reg_type, hits_limit, term_ref_id); if (no < 1) - return rsnull_create(rset_nmem, kctrl, termid); + return rset_create_null(rset_nmem, kctrl, termid); if (zi->reg->isams) { @@ -445,9 +445,8 @@ RSET rset_trunc(ZebraHandle zi, ISAM_P *isam_p, int no, rsets[i] = rsisamb_create(rset_nmem, kctrl, scope, zi->reg->isamb, isam_p[i], 0 /* termid */); - r = rsmulti_or_create(rset_nmem, kctrl, scope, - termid /* termid */, - no, rsets); + r = rset_create_or(rset_nmem, kctrl, scope, + termid, no, rsets); xfree(rsets); return r; } @@ -456,7 +455,7 @@ RSET rset_trunc(ZebraHandle zi, ISAM_P *isam_p, int no, else { yaz_log(YLOG_WARN, "Unknown isam set in rset_trunc"); - return rsnull_create(rset_nmem, kctrl, 0); + return rset_create_null(rset_nmem, kctrl, 0); } trunc_chunk = atoi(res_get_def(zi->res, "truncchunk", "20")); result = rset_trunc_r(zi, term, length, flags, isam_p, 0, no, trunc_chunk, diff --git a/index/zrpn.c b/index/zrpn.c index 5a6932f..f5ec05c 100644 --- a/index/zrpn.c +++ b/index/zrpn.c @@ -1,4 +1,4 @@ -/* $Id: zrpn.c,v 1.215 2006-05-19 23:20:24 adam Exp $ +/* $Id: zrpn.c,v 1.216 2006-06-06 21:01:30 adam Exp $ Copyright (C) 1995-2006 Index Data ApS @@ -1478,14 +1478,14 @@ static ZEBRA_RES rpn_search_APT_phrase(ZebraHandle zh, if (res != ZEBRA_OK) return res; if (num_result_sets == 0) - *rset = rsnull_create (rset_nmem, kc, 0); + *rset = rset_create_null(rset_nmem, kc, 0); else if (num_result_sets == 1) *rset = result_sets[0]; else - *rset = rsprox_create(rset_nmem, kc, kc->scope, - num_result_sets, result_sets, - 1 /* ordered */, 0 /* exclusion */, - 3 /* relation */, 1 /* distance */); + *rset = rset_create_prox(rset_nmem, kc, kc->scope, + num_result_sets, result_sets, + 1 /* ordered */, 0 /* exclusion */, + 3 /* relation */, 1 /* distance */); if (!*rset) return ZEBRA_FAIL; return ZEBRA_OK; @@ -1516,12 +1516,12 @@ static ZEBRA_RES rpn_search_APT_or_list(ZebraHandle zh, if (res != ZEBRA_OK) return res; if (num_result_sets == 0) - *rset = rsnull_create (rset_nmem, kc, 0); + *rset = rset_create_null(rset_nmem, kc, 0); else if (num_result_sets == 1) *rset = result_sets[0]; else - *rset = rsmulti_or_create(rset_nmem, kc, kc->scope, 0 /* termid */, - num_result_sets, result_sets); + *rset = rset_create_or(rset_nmem, kc, kc->scope, 0 /* termid */, + num_result_sets, result_sets); if (!*rset) return ZEBRA_FAIL; return ZEBRA_OK; @@ -1553,12 +1553,12 @@ static ZEBRA_RES rpn_search_APT_and_list(ZebraHandle zh, if (res != ZEBRA_OK) return res; if (num_result_sets == 0) - *rset = rsnull_create (rset_nmem, kc, 0); + *rset = rset_create_null(rset_nmem, kc, 0); else if (num_result_sets == 1) *rset = result_sets[0]; else - *rset = rsmulti_and_create(rset_nmem, kc, kc->scope, - num_result_sets, result_sets); + *rset = rset_create_and(rset_nmem, kc, kc->scope, + num_result_sets, result_sets); if (!*rset) return ZEBRA_FAIL; return ZEBRA_OK; @@ -1775,12 +1775,12 @@ static ZEBRA_RES rpn_search_APT_numeric(ZebraHandle zh, return ZEBRA_FAIL; } if (num_result_sets == 0) - *rset = rsnull_create(rset_nmem, kc, 0); + *rset = rset_create_null(rset_nmem, kc, 0); if (num_result_sets == 1) *rset = result_sets[0]; else - *rset = rsmulti_and_create(rset_nmem, kc, kc->scope, - num_result_sets, result_sets); + *rset = rset_create_and(rset_nmem, kc, kc->scope, + num_result_sets, result_sets); if (!*rset) return ZEBRA_FAIL; return ZEBRA_OK; @@ -1798,8 +1798,8 @@ static ZEBRA_RES rpn_search_APT_local(ZebraHandle zh, RSFD rsfd; struct it_key key; int sys; - *rset = rstemp_create(rset_nmem, kc, kc->scope, - res_get (zh->res, "setTmpDir"),0 ); + *rset = rset_create_temp(rset_nmem, kc, kc->scope, + res_get (zh->res, "setTmpDir"),0 ); rsfd = rset_open(*rset, RSETF_WRITE); sys = atoi(termz); @@ -1886,7 +1886,7 @@ static ZEBRA_RES rpn_sort_spec(ZebraHandle zh, Z_AttributesPlusTerm *zapt, sks->which = Z_SortKeySpec_null; sks->u.null = odr_nullval (); sort_sequence->specs[i] = sks; - *rset = rsnull_create (rset_nmem, kc, 0); + *rset = rset_create_null(rset_nmem, kc, 0); return ZEBRA_OK; } @@ -1928,10 +1928,10 @@ static RSET xpath_trunc(ZebraHandle zh, NMEM stream, const char *flags = "void"; if (grep_info_prepare(zh, 0 /* zapt */, &grep_info, '0') == ZEBRA_FAIL) - return rsnull_create(rset_nmem, kc, 0); + return rset_create_null(rset_nmem, kc, 0); if (ord < 0) - return rsnull_create(rset_nmem, kc, 0); + return rset_create_null(rset_nmem, kc, 0); if (prefix_len) term_dict[prefix_len++] = '|'; else @@ -2105,9 +2105,9 @@ ZEBRA_RES rpn_search_xpath(ZebraHandle zh, curAttributeSet, rset_nmem, kc); - rset = rsbetween_create(rset_nmem, kc, kc->scope, - rset_start_tag, rset, - rset_end_tag, rset_attr); + rset = rset_create_between(rset_nmem, kc, kc->scope, + rset_start_tag, rset, + rset_end_tag, rset_attr); } first_path = 0; } @@ -2345,20 +2345,20 @@ ZEBRA_RES rpn_search_structure(ZebraHandle zh, Z_RPNStructure *zs, switch (zop->which) { case Z_Operator_and: - rset = rsmulti_and_create(rset_nmem, kc, - kc->scope, - *num_result_sets, *result_sets); + rset = rset_create_and(rset_nmem, kc, + kc->scope, + *num_result_sets, *result_sets); break; case Z_Operator_or: - rset = rsmulti_or_create(rset_nmem, kc, - kc->scope, 0, /* termid */ - *num_result_sets, *result_sets); + rset = rset_create_or(rset_nmem, kc, + kc->scope, 0, /* termid */ + *num_result_sets, *result_sets); break; case Z_Operator_and_not: - rset = rsbool_create_not(rset_nmem, kc, - kc->scope, - (*result_sets)[0], - (*result_sets)[1]); + rset = rset_create_not(rset_nmem, kc, + kc->scope, + (*result_sets)[0], + (*result_sets)[1]); break; case Z_Operator_prox: if (zop->u.prox->which != Z_ProximityOperator_known) @@ -2377,14 +2377,14 @@ ZEBRA_RES rpn_search_structure(ZebraHandle zh, Z_RPNStructure *zs, } else { - rset = rsprox_create(rset_nmem, kc, - kc->scope, - *num_result_sets, *result_sets, - *zop->u.prox->ordered, - (!zop->u.prox->exclusion ? - 0 : *zop->u.prox->exclusion), - *zop->u.prox->relationType, - *zop->u.prox->distance ); + rset = rset_create_prox(rset_nmem, kc, + kc->scope, + *num_result_sets, *result_sets, + *zop->u.prox->ordered, + (!zop->u.prox->exclusion ? + 0 : *zop->u.prox->exclusion), + *zop->u.prox->relationType, + *zop->u.prox->distance ); } break; default: @@ -2749,9 +2749,9 @@ ZEBRA_RES rpn_scan(ZebraHandle zh, ODR stream, Z_AttributesPlusTerm *zapt, zapt->term->which,rset_nmem, kc, kc->scope, 0, index_type, 0 /* hits_limit */, 0 /* term_ref_id_str */ ); - rset = rsmulti_or_create(rset_nmem, kc, - kc->scope, 0 /* termid */, - 2, rsets); + rset = rset_create_or(rset_nmem, kc, + kc->scope, 0 /* termid */, + 2, rsets); } ptr[j]++; } @@ -2766,9 +2766,7 @@ ZEBRA_RES rpn_scan(ZebraHandle zh, ODR stream, Z_AttributesPlusTerm *zapt, rsets[0] = rset; rsets[1] = rset_dup(limit_set); - rset = rsmulti_and_create(rset_nmem, kc, - kc->scope, - 2, rsets); + rset = rset_create_and(rset_nmem, kc, kc->scope, 2, rsets); } /* count it */ count_set(zh, rset, &count); @@ -2843,8 +2841,8 @@ ZEBRA_RES rpn_scan(ZebraHandle zh, ODR stream, Z_AttributesPlusTerm *zapt, zapt->term->which, rset_nmem, kc, kc->scope, 0, index_type, 0 /* hits_limit */, 0 /* term_ref_id_str */); - rset = rsmulti_or_create(rset_nmem, kc, - kc->scope, 0 /* termid */, 2, rsets); + rset = rset_create_or(rset_nmem, kc, + kc->scope, 0 /* termid */, 2, rsets); ptr[j]++; } @@ -2855,8 +2853,7 @@ ZEBRA_RES rpn_scan(ZebraHandle zh, ODR stream, Z_AttributesPlusTerm *zapt, rsets[0] = rset; rsets[1] = rset_dup(limit_set); - rset = rsmulti_and_create(rset_nmem, kc, - kc->scope, 2, rsets); + rset = rset_create_and(rset_nmem, kc, kc->scope, 2, rsets); } count_set(zh, rset, &count); glist[lo].occurrences = count; diff --git a/index/zsets.c b/index/zsets.c index e010d22..5d0be02 100644 --- a/index/zsets.c +++ b/index/zsets.c @@ -1,4 +1,4 @@ -/* $Id: zsets.c,v 1.105 2006-05-30 21:41:35 adam Exp $ +/* $Id: zsets.c,v 1.106 2006-06-06 21:01:30 adam Exp $ Copyright (C) 1995-2006 Index Data ApS @@ -1172,8 +1172,8 @@ ZEBRA_RES zebra_snippets_hit_vector(ZebraHandle zh, const char *setname, NMEM nmem = nmem_create(); struct it_key key; RSET rsets[2], rset_comb; - RSET rset_temp = rstemp_create(nmem, kc, kc->scope, - res_get (zh->res, "setTmpDir"),0 ); + RSET rset_temp = rset_create_temp(nmem, kc, kc->scope, + res_get (zh->res, "setTmpDir"),0 ); TERMID termid; RSFD rsfd = rset_open(rset_temp, RSETF_WRITE); @@ -1189,7 +1189,7 @@ ZEBRA_RES zebra_snippets_hit_vector(ZebraHandle zh, const char *setname, rsets[0] = rset_temp; rsets[1] = rset_dup(sset->rset); - rset_comb = rsmulti_and_create(nmem, kc, kc->scope, 2, rsets); + rset_comb = rset_create_and(nmem, kc, kc->scope, 2, rsets); rsfd = rset_open(rset_comb, RSETF_READ); diff --git a/rset/rsbetween.c b/rset/rsbetween.c index 71de9c6..8d0ffe6 100644 --- a/rset/rsbetween.c +++ b/rset/rsbetween.c @@ -1,4 +1,4 @@ -/* $Id: rsbetween.c,v 1.43 2006-05-10 08:13:32 adam Exp $ +/* $Id: rsbetween.c,v 1.44 2006-06-06 21:01:30 adam Exp $ Copyright (C) 1995-2005 Index Data ApS @@ -102,9 +102,9 @@ static void checkterm(RSET rs, char *tag, NMEM nmem) } -RSET rsbetween_create(NMEM nmem, struct rset_key_control *kcontrol, - int scope, - RSET rset_l, RSET rset_m, RSET rset_r, RSET rset_attr) +RSET rset_create_between(NMEM nmem, struct rset_key_control *kcontrol, + int scope, + RSET rset_l, RSET rset_m, RSET rset_r, RSET rset_attr) { RSET rnew = rset_create_base(&control, nmem, kcontrol, scope, 0, 0, 0); struct rset_between_info *info= @@ -141,8 +141,8 @@ RSET rsbetween_create(NMEM nmem, struct rset_key_control *kcontrol, } rnew->no_children = 1; rnew->children = nmem_malloc(rnew->nmem, sizeof(RSET *)); - rnew->children[0] = rsmulti_and_create(nmem, kcontrol, - scope, n, rsetarray); + rnew->children[0] = rset_create_and(nmem, kcontrol, + scope, n, rsetarray); rnew->priv = info; yaz_log(log_level, "create rset at %p", rnew); return rnew; diff --git a/rset/rsbool.c b/rset/rsbool.c index 8d18751..371e912 100644 --- a/rset/rsbool.c +++ b/rset/rsbool.c @@ -1,5 +1,5 @@ -/* $Id: rsbool.c,v 1.58 2006-05-10 08:13:33 adam Exp $ - Copyright (C) 1995-2005 +/* $Id: rsbool.c,v 1.59 2006-06-06 21:01:30 adam Exp $ + Copyright (C) 1995-2006 Index Data ApS This file is part of the Zebra server. @@ -37,39 +37,10 @@ static void r_close(RSFD rfd); static void r_delete(RSET ct); static int r_forward(RSFD rfd, void *buf, TERMID *term, const void *untilbuf); static void r_pos(RSFD rfd, double *current, double *total); -static int r_read_and(RSFD rfd, void *buf, TERMID *term); -static int r_read_or(RSFD rfd, void *buf, TERMID *term); static int r_read_not(RSFD rfd, void *buf, TERMID *term); static int r_write(RSFD rfd, const void *buf); static void r_get_terms(RSET ct, TERMID *terms, int maxterms, int *curterm); - -static const struct rset_control control_and = -{ - "and", - r_delete, - r_get_terms, - r_open, - r_close, - r_forward, - r_pos, - r_read_and, - r_write, -}; - -static const struct rset_control control_or = -{ - "or", - r_delete, - r_get_terms, - r_open, - r_close, - r_forward, - r_pos, - r_read_or, - r_write, -}; - static const struct rset_control control_not = { "not", @@ -119,23 +90,8 @@ static RSET rsbool_create_base(const struct rset_control *ctrl, return rnew; } -RSET rsbool_create_and( NMEM nmem, struct rset_key_control *kcontrol, - int scope, RSET rset_l, RSET rset_r) -{ - return rsbool_create_base(&control_and, nmem, kcontrol, - scope, - rset_l, rset_r); -} - -RSET rsbool_create_or(NMEM nmem, struct rset_key_control *kcontrol, - int scope, RSET rset_l, RSET rset_r) -{ - return rsbool_create_base(&control_or, nmem, kcontrol, - scope, rset_l, rset_r); -} - -RSET rsbool_create_not(NMEM nmem, struct rset_key_control *kcontrol, - int scope, RSET rset_l, RSET rset_r) +RSET rset_create_not(NMEM nmem, struct rset_key_control *kcontrol, + int scope, RSET rset_l, RSET rset_r) { return rsbool_create_base(&control_not, nmem, kcontrol, scope, rset_l, rset_r); @@ -215,202 +171,6 @@ static int r_forward(RSFD rfd, void *buf, TERMID *term, 3,1 */ -static int r_read_and(RSFD rfd, void *buf, TERMID *term) -{ - struct rfd_private *p=(struct rfd_private *)rfd->priv; - const struct rset_key_control *kctrl=rfd->rset->keycontrol; - - while (p->more_l || p->more_r) - { - int cmp; - - if (p->more_l && p->more_r) - cmp = (*kctrl->cmp)(p->buf_l, p->buf_r); - else if (p->more_l) - cmp = -rfd->rset->scope; - else - cmp = rfd->rset->scope; -#if RSET_DEBUG - yaz_log(YLOG_DEBUG, "r_read_and [%p] looping: m=%d/%d c=%d t=%d", - rfd, p->more_l, p->more_r, cmp, p->tail); - (*kctrl->log_item)(YLOG_DEBUG, p->buf_l, "left "); - (*kctrl->log_item)(YLOG_DEBUG, p->buf_r, "right "); -#endif - if (!cmp) - { /* cmp==0 */ - memcpy (buf, p->buf_l, kctrl->key_size); - if (term) - *term=p->term_l; - p->more_l = rset_read(p->rfd_l, p->buf_l, &p->term_l); - p->tail = 1; - } - else if ( (cmp>0) && (cmprset->scope)) - { /* typically cmp == 1 */ - memcpy (buf, p->buf_r, kctrl->key_size); - if (term) - *term=p->term_r; - p->more_r = rset_read(p->rfd_r, p->buf_r, &p->term_r); - p->tail = 1; -#if RSET_DEBUG - yaz_log(YLOG_DEBUG, "r_read_and [%p] returning R m=%d/%d c=%d", - rfd, p->more_l, p->more_r, cmp); - key_logdump(YLOG_DEBUG,buf); - (*kctrl->log_item)(YLOG_DEBUG, buf, ""); -#endif - p->hits++; - return 1; - } - else if ( (cmp<0) && (-cmprset->scope)) - { /* cmp == -1 */ - memcpy (buf, p->buf_l, kctrl->key_size); - if (term) - *term=p->term_l; - p->more_l = rset_read(p->rfd_l, p->buf_l,&p->term_l); - p->tail = 1; -#if RSET_DEBUG - yaz_log(YLOG_DEBUG, "r_read_and [%p] returning L m=%d/%d c=%d", - rfd, p->more_l, p->more_r, cmp); - (*kctrl->log_item)(YLOG_DEBUG, buf, ""); -#endif - p->hits++; - return 1; - } - else if (cmp >= rfd->rset->scope ) - { /* cmp == 2 */ - if (p->tail) - { - memcpy (buf, p->buf_r, kctrl->key_size); - if (term) - *term=p->term_r; - p->more_r = rset_read(p->rfd_r, p->buf_r, &p->term_r); - if (!p->more_r || (*kctrl->cmp)(p->buf_r, buf) > 1) - p->tail = 0; -#if RSET_DEBUG - yaz_log(YLOG_DEBUG, "r_read_and [%p] returning R tail m=%d/%d c=%d", - rfd, p->more_l, p->more_r, cmp); - (*kctrl->log_item)(YLOG_DEBUG, buf, ""); -#endif - p->hits++; - return 1; - } - else - { -#if RSET_DEBUG - yaz_log(YLOG_DEBUG, "r_read_and [%p] about to forward R " - "m=%d/%d c=%d", - rfd, p->more_l, p->more_r, cmp); -#endif - if (p->more_r && p->more_l) - p->more_r = rset_forward( p->rfd_r, p->buf_r, - &p->term_r, p->buf_l); - else - return 0; /* no point in reading further */ - } - } - else - { /* cmp == -2 */ - if (p->tail) - { - memcpy (buf, p->buf_l, kctrl->key_size); - if (term) - *term = p->term_l; - p->more_l = rset_read(p->rfd_l, p->buf_l, &p->term_l); - if (!p->more_l || (*kctrl->cmp)(p->buf_l, buf) > 1) - p->tail = 0; -#if RSET_DEBUG - yaz_log(YLOG_DEBUG, "r_read_and [%p] returning L tail m=%d/%d c=%d", - rfd, p->more_l, p->more_r, cmp); - (*kctrl->log_item)(YLOG_DEBUG, buf, ""); -#endif - p->hits++; - return 1; - } - else - { -#if RSET_DEBUG - yaz_log(YLOG_DEBUG, "r_read_and [%p] about to forward L " - "m=%d/%d c=%d", - rfd, p->more_l, p->more_r, cmp); -#endif - if (p->more_r && p->more_l) - p->more_l = rset_forward(p->rfd_l, p->buf_l, - &p->term_l, p->buf_r); - else - return 0; /* no point in reading further */ - } - } - } -#if RSET_DEBUG - yaz_log(YLOG_DEBUG, "r_read_and [%p] reached its end",rfd); -#endif - return 0; -} - -static int r_read_or (RSFD rfd, void *buf, TERMID *term) -{ - struct rfd_private *p = (struct rfd_private *)rfd->priv; - const struct rset_key_control *kctrl = rfd->rset->keycontrol; - - while (p->more_l || p->more_r) - { - int cmp; - - if (p->more_l && p->more_r) - cmp = (*kctrl->cmp)(p->buf_l, p->buf_r); - else if (p->more_r) - cmp = rfd->rset->scope; - else - cmp = -rfd->rset->scope; - if (!cmp) - { /* cmp==0 */ - memcpy (buf, p->buf_l, kctrl->key_size); - if (term) - *term = p->term_l; - p->more_l = rset_read(p->rfd_l, p->buf_l, &p->term_l); - /* FIXME - is this right, should we not leave _r as it is */ - /* and return that in the next read, so that ranking etc */ - /* get to see both? */ - p->more_r = rset_read(p->rfd_r, p->buf_r, &p->term_r); -#if RSET_DEBUG - yaz_log(YLOG_DEBUG, "r_read_or returning A m=%d/%d c=%d", - p->more_l, p->more_r, cmp); - (*kctrl->log_item)(YLOG_DEBUG, buf, ""); -#endif - p->hits++; - return 1; - } - else if (cmp > 0) - { - memcpy (buf, p->buf_r, kctrl->key_size); - if (term) - *term = p->term_r; - p->more_r = rset_read(p->rfd_r, p->buf_r, &p->term_r); -#if RSET_DEBUG - yaz_log(YLOG_DEBUG, "r_read_or returning B m=%d/%d c=%d", - p->more_l, p->more_r, cmp); - (*kctrl->log_item)(YLOG_DEBUG, buf, ""); -#endif - p->hits++; - return 1; - } - else - { - memcpy (buf, p->buf_l, kctrl->key_size); - if (term) - *term = p->term_l; - p->more_l = rset_read( p->rfd_l, p->buf_l, &p->term_l); -#if RSET_DEBUG - yaz_log(YLOG_DEBUG, "r_read_or returning C m=%d/%d c=%d", - p->more_l, p->more_r, cmp); - (*kctrl->log_item)(YLOG_DEBUG, buf, ""); -#endif - p->hits++; - return 1; - } - } - return 0; -} - static int r_read_not(RSFD rfd, void *buf, TERMID *term) { struct rfd_private *p = (struct rfd_private *)rfd->priv; diff --git a/rset/rsmultiandor.c b/rset/rsmultiandor.c index ccf57de..c658ba6 100644 --- a/rset/rsmultiandor.c +++ b/rset/rsmultiandor.c @@ -1,5 +1,5 @@ -/* $Id: rsmultiandor.c,v 1.20 2006-05-10 08:13:33 adam Exp $ - Copyright (C) 1995-2005 +/* $Id: rsmultiandor.c,v 1.21 2006-06-06 21:01:31 adam Exp $ + Copyright (C) 1995-2006 Index Data ApS This file is part of the Zebra server. @@ -282,15 +282,15 @@ static RSET rsmulti_andor_create(NMEM nmem, return rnew; } -RSET rsmulti_or_create(NMEM nmem, struct rset_key_control *kcontrol, - int scope, TERMID termid, int no_rsets, RSET* rsets) +RSET rset_create_or(NMEM nmem, struct rset_key_control *kcontrol, + int scope, TERMID termid, int no_rsets, RSET* rsets) { return rsmulti_andor_create(nmem, kcontrol, scope, termid, no_rsets, rsets, &control_or); } -RSET rsmulti_and_create(NMEM nmem, struct rset_key_control *kcontrol, - int scope, int no_rsets, RSET* rsets) +RSET rset_create_and(NMEM nmem, struct rset_key_control *kcontrol, + int scope, int no_rsets, RSET* rsets) { return rsmulti_andor_create(nmem, kcontrol, scope, 0, no_rsets, rsets, &control_and); diff --git a/rset/rsnull.c b/rset/rsnull.c index 0e509c8..153e643 100644 --- a/rset/rsnull.c +++ b/rset/rsnull.c @@ -1,5 +1,5 @@ -/* $Id: rsnull.c,v 1.37 2006-05-10 08:13:34 adam Exp $ - Copyright (C) 1995-2005 +/* $Id: rsnull.c,v 1.38 2006-06-06 21:01:31 adam Exp $ + Copyright (C) 1995-2006 Index Data ApS This file is part of the Zebra server. @@ -45,8 +45,8 @@ static const struct rset_control control = r_write, }; -RSET rsnull_create(NMEM nmem, struct rset_key_control *kcontrol, - TERMID term) +RSET rset_create_null(NMEM nmem, struct rset_key_control *kcontrol, + TERMID term) { RSET rnew = rset_create_base(&control, nmem, kcontrol, 0, term, 0, 0); rnew->priv = 0; diff --git a/rset/rsprox.c b/rset/rsprox.c index a4f7259..2d5cb9c 100644 --- a/rset/rsprox.c +++ b/rset/rsprox.c @@ -1,5 +1,5 @@ -/* $Id: rsprox.c,v 1.30 2006-05-10 08:13:34 adam Exp $ - Copyright (C) 1995-2005 +/* $Id: rsprox.c,v 1.31 2006-06-06 21:01:31 adam Exp $ + Copyright (C) 1995-2006 Index Data ApS This file is part of the Zebra server. @@ -70,11 +70,11 @@ struct rset_prox_rfd { }; -RSET rsprox_create(NMEM nmem, struct rset_key_control *kcontrol, - int scope, - int rset_no, RSET *rset, - int ordered, int exclusion, - int relation, int distance) +RSET rset_create_prox(NMEM nmem, struct rset_key_control *kcontrol, + int scope, + int rset_no, RSET *rset, + int ordered, int exclusion, + int relation, int distance) { RSET rnew = rset_create_base(&control, nmem, kcontrol, scope, 0, rset_no, rset); diff --git a/rset/rstemp.c b/rset/rstemp.c index 3b29b7c..aa886be 100644 --- a/rset/rstemp.c +++ b/rset/rstemp.c @@ -1,5 +1,5 @@ -/* $Id: rstemp.c,v 1.66 2006-05-10 08:13:34 adam Exp $ - Copyright (C) 1995-2005 +/* $Id: rstemp.c,v 1.67 2006-06-06 21:01:31 adam Exp $ + Copyright (C) 1995-2006 Index Data ApS This file is part of the Zebra server. @@ -81,8 +81,8 @@ struct rfd_private { static int log_level = 0; static int log_level_initialized = 0; -RSET rstemp_create(NMEM nmem, struct rset_key_control *kcontrol, - int scope, const char *temp_path, TERMID term) +RSET rset_create_temp(NMEM nmem, struct rset_key_control *kcontrol, + int scope, const char *temp_path, TERMID term) { RSET rnew = rset_create_base(&control, nmem, kcontrol, scope, term, 0, 0); -- 1.7.10.4