Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Move grn_rset_* related code to grn_rset.h
- Loading branch information
Showing
3 changed files
with
67 additions
and
34 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,65 @@ | ||
| /* -*- c-basic-offset: 2 -*- */ | ||
| /* Copyright(C) 2009-2015 Brazil | ||
| This library is free software; you can redistribute it and/or | ||
| modify it under the terms of the GNU Lesser General Public | ||
| License version 2.1 as published by the Free Software Foundation. | ||
| This library is distributed in the hope that it will be useful, | ||
| but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| Lesser General Public License for more details. | ||
| You should have received a copy of the GNU Lesser General Public | ||
| License along with this library; if not, write to the Free Software | ||
| Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | ||
| */ | ||
| #ifndef GRN_RSET_H | ||
| #define GRN_RSET_H | ||
|
|
||
| #include "grn.h" | ||
|
|
||
| #ifdef __cplusplus | ||
| extern "C" { | ||
| #endif | ||
|
|
||
| typedef struct { | ||
| int score; | ||
| int n_subrecs; | ||
| int subrecs[1]; | ||
| } grn_rset_recinfo; | ||
|
|
||
| typedef struct { | ||
| grn_id rid; | ||
| uint32_t sid; | ||
| uint32_t pos; | ||
| } grn_rset_posinfo; | ||
|
|
||
| #define GRN_RSET_UTIL_BIT (0x80000000) | ||
|
|
||
| #define GRN_RSET_N_SUBRECS_SIZE (sizeof(int)) | ||
| #define GRN_RSET_MAX_SIZE (sizeof(int64_t)) | ||
| #define GRN_RSET_MIN_SIZE (sizeof(int64_t)) | ||
| #define GRN_RSET_SUM_SIZE (sizeof(int64_t)) | ||
| #define GRN_RSET_AVG_SIZE (sizeof(double)) | ||
|
|
||
| #define GRN_RSET_SCORE_SIZE (sizeof(int)) | ||
|
|
||
| #define GRN_RSET_N_SUBRECS(ri) ((ri)->n_subrecs & ~GRN_RSET_UTIL_BIT) | ||
|
|
||
| #define GRN_RSET_SUBREC_SIZE(subrec_size) \ | ||
| (GRN_RSET_SCORE_SIZE + subrec_size) | ||
| #define GRN_RSET_SUBRECS_CMP(a,b,dir) (((a) - (b))*(dir)) | ||
| #define GRN_RSET_SUBRECS_NTH(subrecs,size,n) \ | ||
| ((int *)((byte *)subrecs + n * GRN_RSET_SUBREC_SIZE(size))) | ||
| #define GRN_RSET_SUBRECS_COPY(subrecs,size,n,src) \ | ||
| (memcpy(GRN_RSET_SUBRECS_NTH(subrecs, size, n), src, GRN_RSET_SUBREC_SIZE(size))) | ||
| #define GRN_RSET_SUBRECS_SIZE(subrec_size,n) \ | ||
| (GRN_RSET_SUBREC_SIZE(subrec_size) * n) | ||
|
|
||
|
|
||
| #ifdef __cplusplus | ||
| } | ||
| #endif | ||
|
|
||
| #endif /* GRN_RSET_H */ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters