X-Git-Url: http://sigaev.ru/git/gitweb.cgi?p=smlar.git;a=blobdiff_plain;f=smlar_gin.c;h=798b9be9d1c0756895bbafd13102afa0da411af2;hp=5ea1570b3cba38c4cdff1beb7d37eecf96f9a45d;hb=8a465bb03ae7e2e85c3f9e1ebd75eb4ec830f3c5;hpb=0bc52593d34ce24b38cbd4fb6225d97601c5b871 diff --git a/smlar_gin.c b/smlar_gin.c index 5ea1570..798b9be 100644 --- a/smlar_gin.c +++ b/smlar_gin.c @@ -1,9 +1,11 @@ +#include + #include "smlar.h" #include "fmgr.h" #include "access/gin.h" #include "access/skey.h" -#include "access/tuptoaster.h" +#include "access/heaptoast.h" PG_FUNCTION_INFO_V1(smlararrayextract); Datum smlararrayextract(PG_FUNCTION_ARGS); @@ -11,7 +13,7 @@ Datum smlararrayextract(PG_FUNCTION_ARGS) { ArrayType *array; - int32 *nentries = (int32 *) PG_GETARG_POINTER(1); + int32 *nentries = (int32 *) PG_GETARG_POINTER(1); SimpleArray *sa; /* @@ -28,7 +30,7 @@ smlararrayextract(PG_FUNCTION_ARGS) if (sa->nelems == 0 && PG_NARGS() == 3) { - switch (PG_GETARG_UINT16(2)) /* StrategyNumber */ + switch (PG_GETARG_UINT16(2)) /* StrategyNumber */ { case SmlarOverlapStrategy: case SmlarSimilarityStrategy: @@ -58,13 +60,13 @@ Datum smlararrayconsistent(PG_FUNCTION_ARGS); Datum smlararrayconsistent(PG_FUNCTION_ARGS) { - bool *check = (bool *) PG_GETARG_POINTER(0); - StrategyNumber strategy = PG_GETARG_UINT16(1); + bool *check = (bool *) PG_GETARG_POINTER(0); + StrategyNumber strategy = PG_GETARG_UINT16(1); SimpleArray *sa; bool res = false; int i, cnt = 0; - bool *recheck = (bool *) PG_GETARG_POINTER(5); + bool *recheck = (bool *) PG_GETARG_POINTER(5); *recheck = true; @@ -91,9 +93,9 @@ smlararrayconsistent(PG_FUNCTION_ARGS) switch(getSmlType()) { - case ST_TFIDF: + case ST_TFIDF: { - double weight = 0.0, /* exact weight of union */ + double weight = 0.0, /* exact weight of union */ saSum = 0.0, /* exact length of query */ siSum = 0.0; /* lower limit of length of indexed value */ @@ -120,7 +122,7 @@ smlararrayconsistent(PG_FUNCTION_ARGS) res = true; } break; - case ST_COSINE: + case ST_COSINE: { double power; @@ -130,7 +132,7 @@ smlararrayconsistent(PG_FUNCTION_ARGS) res = true; } break; - case ST_OVERLAP: + case ST_OVERLAP: if (cnt >= GetSmlarLimit()) res = true; break;