null+****@clear*****
null+****@clear*****
2012年 3月 9日 (金) 15:39:54 JST
Kouhei Sutou 2012-03-09 15:39:54 +0900 (Fri, 09 Mar 2012)
New Revision: adda14c0f16db65784b069c128796e0984d10713
Log:
suggest: pass named arguments
Modified files:
plugins/suggest/suggest.c
Modified: plugins/suggest/suggest.c (+9 -8)
===================================================================
--- plugins/suggest/suggest.c 2012-03-09 15:38:42 +0900 (b3ba22f)
+++ plugins/suggest/suggest.c 2012-03-09 15:39:54 +0900 (8f566b8)
@@ -532,21 +532,16 @@ command_suggest(grn_ctx *ctx, int nargs, grn_obj **args, grn_user_data *user_dat
}
static int
-learn(grn_ctx *ctx, grn_obj **args)
+learn(grn_ctx *ctx, grn_obj *post_event, grn_obj *post_type, grn_obj *post_item,
+ grn_obj *seq, grn_obj *post_time, grn_obj *pairs)
{
int r = 0;
grn_obj v1, pre_events;
- grn_obj *post_event = args[0];
grn_id post_event_id = GRN_RECORD_VALUE(post_event);
- grn_obj *post_type = args[1];
grn_id post_type_id = GRN_RECORD_VALUE(post_type);
- grn_obj *post_item = args[2];
grn_id post_item_id = GRN_RECORD_VALUE(post_item);
- grn_obj *seq = args[3];
grn_id seq_id = GRN_RECORD_VALUE(seq);
- grn_obj *post_time = args[4];
int64_t post_time_value = GRN_TIME_VALUE(post_time);
- grn_obj *pairs = args[5];
if (post_event_id && post_item_id && seq_id) {
grn_obj *items = grn_ctx_at(ctx, GRN_OBJ_GET_DOMAIN(post_item));
grn_obj *items_freq = grn_obj_column(ctx, items, CONST_STR_LEN("freq"));
@@ -642,7 +637,13 @@ func_suggest_preparer(grn_ctx *ctx, int nargs, grn_obj **args, grn_user_data *us
int r = 0;
grn_obj *obj;
if (nargs == 6) {
- r = learn(ctx, args);
+ grn_obj *post_event = args[0];
+ grn_obj *post_type = args[1];
+ grn_obj *post_item = args[2];
+ grn_obj *seq = args[3];
+ grn_obj *post_time = args[4];
+ grn_obj *pairs = args[5];
+ r = learn(ctx, post_event, post_type, post_item, seq, post_time, pairs);
}
if ((obj = GRN_PROC_ALLOC(GRN_DB_UINT32, 0))) { GRN_UINT32_SET(ctx, obj, r); }
return obj;