-static RSET rpn_search_and (ZServerInfo *zi, RSET r_l, RSET r_r)
-{
- struct it_key k1, k2;
- RSET r_dst;
- int i1, i2;
- rset_open (r_l, 0);
- rset_open (r_r, 0);
- r_dst = rset_create (rset_kind_temp, NULL);
- rset_open (r_dst, 1);
-
- i1 = rset_read (r_l, &k1);
- i2 = rset_read (r_r, &k2);
- while (i1 && i2)
- {
- if (k1.sysno > k2.sysno)
- i2 = rset_read (r_r, &k2);
- else if (k1.sysno < k2.sysno)
- i1 = rset_read (r_l, &k1);
- else if (!(i1 = key_compare_x (&k1, &k2)))
- {
- rset_write (r_dst, &k1);
- i1 = rset_read (r_l, &k1);
- i2 = rset_read (r_r, &k2);
- }
- else if (i1 > 0)
- {
- rset_write (r_dst, &k2);
- i2 = rset_read (r_r, &k2);
- }
- else
- {
- rset_write (r_dst, &k1);
- i1 = rset_read (r_l, &k1);
- }
- }
- rset_close (r_dst);
- return r_dst;
-}
-
-static RSET rpn_search_or (ZServerInfo *zi, RSET r_l, RSET r_r)
-{
- return r_l;
-}
-
-static RSET rpn_search_not (ZServerInfo *zi, RSET r_l, RSET r_r)
-{
- return r_l;
-}
-