null+****@clear*****
null+****@clear*****
2011年 12月 22日 (木) 07:41:37 JST
Daijiro MORI 2011-12-21 22:41:37 +0000 (Wed, 21 Dec 2011) New Revision: 9a373e1b2521924c82a086eb0942df971057f1eb Log: added GRN_COLUMN_EACH() Modified files: include/groonga.h Modified: include/groonga.h (+10 -0) =================================================================== --- include/groonga.h 2011-12-21 15:39:34 +0000 (af5ed49) +++ include/groonga.h 2011-12-21 22:41:37 +0000 (3f3ecf4) @@ -1431,6 +1431,16 @@ GRN_API grn_obj *grn_obj_get_value(grn_ctx *ctx, grn_obj *obj, grn_id id, grn_ob **/ GRN_API int grn_obj_get_values(grn_ctx *ctx, grn_obj *obj, grn_id offset, void **values); +#define GRN_COLUMN_EACH(ctx,column,id,value,block) do {\ + int _n;\ + grn_id id = 1;\ + while ((_n = grn_obj_get_values(ctx, column, id, (void **)&value)) > 0) {\ + for (; _n; _n--, id++, value++) {\ + block\ + }\ + }\ +} while (0) + /** * grn_obj_set_value: * @obj: 対象object