[Groonga-commit] groonga/groonga [master] suggest: pass named arguments

Back to archive index

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;




Groonga-commit メーリングリストの案内
Back to archive index