@@ -364,8 +364,10 @@ calc_rank(const float *w, TSVector t, TSQuery q, int32 method)
364
364
return 0.0 ;
365
365
366
366
/* XXX: What about NOT? */
367
- res = (item -> type == QI_OPR && (item -> qoperator .oper == OP_AND || item -> qoperator .oper == OP_PHRASE )) ?
368
- calc_rank_and (w ,t ,q ) :calc_rank_or (w ,t ,q );
367
+ res = (item -> type == QI_OPR && (item -> qoperator .oper == OP_AND ||
368
+ item -> qoperator .oper == OP_PHRASE )) ?
369
+ calc_rank_and (w ,t ,q ) :
370
+ calc_rank_or (w ,t ,q );
369
371
370
372
if (res < 0 )
371
373
res = 1e-20f ;
@@ -532,13 +534,13 @@ compareDocR(const void *va, const void *vb)
532
534
}
533
535
534
536
#define MAXQROPOS MAXENTRYPOS
535
- typedef struct
537
+ typedef struct
536
538
{
537
539
bool operandexist ;
538
540
bool reverseinsert ;/* indicates order to insert,
539
541
true means descending order */
540
542
uint32 npos ;
541
- WordEntryPos pos [MAXQROPOS ];
543
+ WordEntryPos pos [MAXQROPOS ];
542
544
}QueryRepresentationOperand ;
543
545
544
546
typedef struct
@@ -547,13 +549,14 @@ typedef struct
547
549
QueryRepresentationOperand * operandData ;
548
550
}QueryRepresentation ;
549
551
550
- #define QR_GET_OPERAND_DATA (q ,v )( (q)->operandData + (((QueryItem*)(v)) - GETQUERY((q)->query)) )
552
+ #define QR_GET_OPERAND_DATA (q ,v ) \
553
+ ( (q)->operandData + (((QueryItem*)(v)) - GETQUERY((q)->query)) )
551
554
552
555
static bool
553
556
checkcondition_QueryOperand (void * checkval ,QueryOperand * val ,ExecPhraseData * data )
554
557
{
555
- QueryRepresentation * qr = (QueryRepresentation * )checkval ;
556
- QueryRepresentationOperand * opData = QR_GET_OPERAND_DATA (qr ,val );
558
+ QueryRepresentation * qr = (QueryRepresentation * )checkval ;
559
+ QueryRepresentationOperand * opData = QR_GET_OPERAND_DATA (qr ,val );
557
560
558
561
if (!opData -> operandexist )
559
562
return false;
@@ -562,7 +565,7 @@ checkcondition_QueryOperand(void *checkval, QueryOperand *val, ExecPhraseData *d
562
565
{
563
566
data -> npos = opData -> npos ;
564
567
data -> pos = opData -> pos ;
565
- if (opData -> reverseinsert )
568
+ if (opData -> reverseinsert )
566
569
data -> pos += MAXQROPOS - opData -> npos ;
567
570
}
568
571
@@ -581,9 +584,9 @@ typedef struct
581
584
static void
582
585
resetQueryRepresentation (QueryRepresentation * qr ,bool reverseinsert )
583
586
{
584
- int i ;
587
+ int i ;
585
588
586
- for (i = 0 ;i < qr -> query -> size ;i ++ )
589
+ for (i = 0 ;i < qr -> query -> size ;i ++ )
587
590
{
588
591
qr -> operandData [i ].operandexist = false;
589
592
qr -> operandData [i ].reverseinsert = reverseinsert ;
@@ -607,19 +610,25 @@ fillQueryRepresentationData(QueryRepresentation *qr, DocRepresentation *entry)
607
610
608
611
opData -> operandexist = true;
609
612
610
- if (opData -> npos == 0 )
613
+ if (opData -> npos == 0 )
611
614
{
612
615
lastPos = (opData -> reverseinsert ) ? (MAXQROPOS - 1 ) :0 ;
613
- opData -> pos [lastPos ]= entry -> pos ;
616
+ opData -> pos [lastPos ]= entry -> pos ;
614
617
opData -> npos ++ ;
615
618
continue ;
616
619
}
617
-
618
- lastPos = (opData -> reverseinsert ) ? (MAXQROPOS - opData -> npos ) : (opData -> npos - 1 );
619
- if (WEP_GETPOS (opData -> pos [lastPos ])!= WEP_GETPOS (entry -> pos ) )
620
+
621
+ lastPos = opData -> reverseinsert ?
622
+ (MAXQROPOS - opData -> npos ) :
623
+ (opData -> npos - 1 );
624
+
625
+ if (WEP_GETPOS (opData -> pos [lastPos ])!= WEP_GETPOS (entry -> pos ))
620
626
{
621
- lastPos = (opData -> reverseinsert ) ? (MAXQROPOS - 1 - opData -> npos ) : (opData -> npos );
622
- opData -> pos [lastPos ]= entry -> pos ;
627
+ lastPos = opData -> reverseinsert ?
628
+ (MAXQROPOS - 1 - opData -> npos ) :
629
+ (opData -> npos );
630
+
631
+ opData -> pos [lastPos ]= entry -> pos ;
623
632
opData -> npos ++ ;
624
633
}
625
634
}
@@ -628,9 +637,9 @@ fillQueryRepresentationData(QueryRepresentation *qr, DocRepresentation *entry)
628
637
static bool
629
638
Cover (DocRepresentation * doc ,int len ,QueryRepresentation * qr ,CoverExt * ext )
630
639
{
631
- DocRepresentation * ptr ;
632
- int lastpos = ext -> pos ;
633
- bool found = false;
640
+ DocRepresentation * ptr ;
641
+ int lastpos = ext -> pos ;
642
+ bool found = false;
634
643
635
644
/*
636
645
* since this function recurses, it could be driven to stack overflow.
@@ -777,7 +786,7 @@ get_docrep(TSVector txt, QueryRepresentation *qr, int *doclen)
777
786
778
787
if (cur > 0 )
779
788
{
780
- DocRepresentation * rptr = doc + 1 ,
789
+ DocRepresentation * rptr = doc + 1 ,
781
790
* wptr = doc ,
782
791
storage ;
783
792
@@ -790,23 +799,24 @@ get_docrep(TSVector txt, QueryRepresentation *qr, int *doclen)
790
799
* Join QueryItem per WordEntry and it's position
791
800
*/
792
801
storage .pos = doc -> pos ;
793
- storage .data .query .items = palloc (sizeof (QueryItem * )* qr -> query -> size );
802
+ storage .data .query .items = palloc (sizeof (QueryItem * )* qr -> query -> size );
794
803
storage .data .query .items [0 ]= doc -> data .map .item ;
795
804
storage .data .query .nitem = 1 ;
796
805
797
- while ( rptr - doc < cur )
806
+ while ( rptr - doc < cur )
798
807
{
799
- if (rptr -> pos == (rptr - 1 )-> pos && rptr -> data .map .entry == (rptr - 1 )-> data .map .entry )
808
+ if (rptr -> pos == (rptr - 1 )-> pos &&
809
+ rptr -> data .map .entry == (rptr - 1 )-> data .map .entry )
800
810
{
801
- storage .data .query .items [storage .data .query .nitem ]= rptr -> data .map .item ;
811
+ storage .data .query .items [storage .data .query .nitem ]= rptr -> data .map .item ;
802
812
storage .data .query .nitem ++ ;
803
813
}
804
814
else
805
815
{
806
816
* wptr = storage ;
807
817
wptr ++ ;
808
818
storage .pos = rptr -> pos ;
809
- storage .data .query .items = palloc (sizeof (QueryItem * )* qr -> query -> size );
819
+ storage .data .query .items = palloc (sizeof (QueryItem * )* qr -> query -> size );
810
820
storage .data .query .items [0 ]= rptr -> data .map .item ;
811
821
storage .data .query .nitem = 1 ;
812
822
}
@@ -853,7 +863,8 @@ calc_rank_cd(const float4 *arrdata, TSVector txt, TSQuery query, int method)
853
863
}
854
864
855
865
qr .query = query ;
856
- qr .operandData = (QueryRepresentationOperand * )palloc0 (sizeof (QueryRepresentationOperand )* query -> size );
866
+ qr .operandData = (QueryRepresentationOperand * )
867
+ palloc0 (sizeof (QueryRepresentationOperand )* query -> size );
857
868
858
869
doc = get_docrep (txt ,& qr ,& doclen );
859
870
if (!doc )
@@ -872,7 +883,7 @@ calc_rank_cd(const float4 *arrdata, TSVector txt, TSQuery query, int method)
872
883
873
884
while (ptr <=ext .end )
874
885
{
875
- InvSum += invws [WEP_GETWEIGHT (ptr -> pos ) ];
886
+ InvSum += invws [WEP_GETWEIGHT (ptr -> pos )];
876
887
ptr ++ ;
877
888
}
878
889