Lines Matching refs:pLeft
1374 static int posListCmp(PLReader *pLeft, PLReader *pRight){
1375 assert( pLeft->iType==pRight->iType );
1376 if( pLeft->iType==DL_DOCIDS ) return 0;
1378 if( plrAtEnd(pLeft) ) return plrAtEnd(pRight) ? 0 : 1;
1381 if( plrColumn(pLeft)<plrColumn(pRight) ) return -1;
1382 if( plrColumn(pLeft)>plrColumn(pRight) ) return 1;
1384 if( plrPosition(pLeft)<plrPosition(pRight) ) return -1;
1385 if( plrPosition(pLeft)>plrPosition(pRight) ) return 1;
1386 if( pLeft->iType==DL_POSITIONS ) return 0;
1388 if( plrStartOffset(pLeft)<plrStartOffset(pRight) ) return -1;
1389 if( plrStartOffset(pLeft)>plrStartOffset(pRight) ) return 1;
1391 if( plrEndOffset(pLeft)<plrEndOffset(pRight) ) return -1;
1392 if( plrEndOffset(pLeft)>plrEndOffset(pRight) ) return 1;
1397 /* Write the union of position lists in pLeft and pRight to pOut.
1402 static int posListUnion(DLReader *pLeft, DLReader *pRight, DLWriter *pOut){
1407 assert( dlrDocid(pLeft)==dlrDocid(pRight) );
1408 assert( pLeft->iType==pRight->iType );
1409 assert( pLeft->iType==pOut->iType );
1411 rc = plrInit(&left, pLeft);
1418 plwInit(&writer, pOut, dlrDocid(pLeft));
1446 /* Write the union of doclists in pLeft and pRight to pOut. For
1451 const char *pLeft, int nLeft,
1464 dataBufferAppend(pOut, pLeft, nLeft);
1468 rc = dlrInit(&left, DL_DEFAULT, pLeft, nLeft);
1514 /* pLeft and pRight are DLReaders positioned to the same docid.
1516 ** If there are no instances in pLeft or pRight where the position
1517 ** of pLeft is one less than the position of pRight, then this
1520 ** If there are one or more instances where positions from pLeft
1524 ** position in pLeft. In other words: pRight.iPos==pLeft.iPos+1.
1526 static int posListPhraseMerge(DLReader *pLeft, DLReader *pRight,
1533 assert( dlrDocid(pLeft)==dlrDocid(pRight) );
1536 rc = plrInit(&left, pLeft);
1559 plwInit(&writer, pOut, dlrDocid(pLeft));
1580 /* We have two doclists with positions: pLeft and pRight.
1584 ** if pLeft.iPos+1==pRight.iPos.
1590 const char *pLeft, int nLeft,
1603 rc = dlrInit(&left, DL_POSITIONS, pLeft, nLeft);
1635 /* We have two DL_DOCIDS doclists: pLeft and pRight.
1640 const char *pLeft, int nLeft,
1650 rc = dlrInit(&left, DL_DOCIDS, pLeft, nLeft);
1681 /* We have two DL_DOCIDS doclists: pLeft and pRight.
1686 const char *pLeft, int nLeft,
1699 dataBufferAppend(pOut, pLeft, nLeft);
1703 rc = dlrInit(&left, DL_DOCIDS, pLeft, nLeft);
1744 /* We have two DL_DOCIDS doclists: pLeft and pRight.
1746 ** occur in pLeft but not in pRight.
1749 const char *pLeft, int nLeft,
1759 dataBufferAppend(pOut, pLeft, nLeft);
1763 rc = dlrInit(&left, DL_DOCIDS, pLeft, nLeft);