[Groonga-commit] groonga/groonga at c081f89 [master] Extract table columns inspection code

Back to archive index

Kouhei Sutou null+****@clear*****
Wed Jun 19 14:59:10 JST 2013


Kouhei Sutou	2013-06-19 14:59:10 +0900 (Wed, 19 Jun 2013)

  New Revision: c081f8982b270ffc4d72262a885062c9d3954cd5
  https://github.com/groonga/groonga/commit/c081f8982b270ffc4d72262a885062c9d3954cd5

  Message:
    Extract table columns inspection code

  Modified files:
    lib/util.c

  Modified: lib/util.c (+29 -19)
===================================================================
--- lib/util.c    2013-06-19 14:57:11 +0900 (38f066e)
+++ lib/util.c    2013-06-19 14:59:10 +0900 (7f2ea7e)
@@ -521,9 +521,35 @@ grn_table_key_inspect(grn_ctx *ctx, grn_obj *buf, grn_obj *obj)
 }
 
 static grn_rc
-grn_table_inspect(grn_ctx *ctx, grn_obj *buf, grn_obj *obj)
+grn_table_columns_inspect(grn_ctx *ctx, grn_obj *buf, grn_obj *obj)
 {
   grn_hash *cols;
+
+  GRN_TEXT_PUTS(ctx, buf, "columns:[");
+  if ((cols = grn_hash_create(ctx, NULL, sizeof(grn_id), 0,
+                              GRN_OBJ_TABLE_HASH_KEY|GRN_HASH_TINY))) {
+    if (grn_table_columns(ctx, obj, "", 0, (grn_obj *)cols)) {
+      int i = 0;
+      grn_id *key;
+      GRN_HASH_EACH(ctx, cols, id, &key, NULL, NULL, {
+          grn_obj *col = grn_ctx_at(ctx, *key);
+          if (col) {
+            if (i++ > 0) { GRN_TEXT_PUTS(ctx, buf, ", "); }
+            grn_column_name_(ctx, col, buf);
+            grn_obj_unlink(ctx, col);
+          }
+        });
+    }
+    grn_hash_close(ctx, cols);
+  }
+  GRN_TEXT_PUTS(ctx, buf, "]");
+
+  return GRN_SUCCESS;
+}
+
+static grn_rc
+grn_table_inspect(grn_ctx *ctx, grn_obj *buf, grn_obj *obj)
+{
   grn_id range_id;
   grn_obj *range;
 
@@ -552,24 +578,8 @@ grn_table_inspect(grn_ctx *ctx, grn_obj *buf, grn_obj *obj)
   GRN_TEXT_PUTS(ctx, buf, " size:");
   grn_text_lltoa(ctx, buf, grn_table_size(ctx, obj));
 
-  GRN_TEXT_PUTS(ctx, buf, " columns:[");
-  if ((cols = grn_hash_create(ctx, NULL, sizeof(grn_id), 0,
-                              GRN_OBJ_TABLE_HASH_KEY|GRN_HASH_TINY))) {
-    if (grn_table_columns(ctx, obj, "", 0, (grn_obj *)cols)) {
-      int i = 0;
-      grn_id *key;
-      GRN_HASH_EACH(ctx, cols, id, &key, NULL, NULL, {
-          grn_obj *col = grn_ctx_at(ctx, *key);
-          if (col) {
-            if (i++ > 0) { GRN_TEXT_PUTS(ctx, buf, ", "); }
-            grn_column_name_(ctx, col, buf);
-            grn_obj_unlink(ctx, col);
-          }
-        });
-    }
-    grn_hash_close(ctx, cols);
-  }
-  GRN_TEXT_PUTS(ctx, buf, "]");
+  GRN_TEXT_PUTS(ctx, buf, " ");
+  grn_table_columns_inspect(ctx, buf, obj);
 
   if (obj->header.type == GRN_TABLE_NO_KEY) {
     grn_table_cursor *tc;
-------------- next part --------------
HTML����������������������������...
Download 



More information about the Groonga-commit mailing list
Back to archive index