rroonga 1.2.7 → 1.2.8
Sign up to get free protection for your applications and to get access to all the features.
- data/ext/groonga/Makefile +27 -27
- data/ext/groonga/groonga.so +0 -0
- data/ext/groonga/rb-grn-accessor.o +0 -0
- data/ext/groonga/rb-grn-array-cursor.o +0 -0
- data/ext/groonga/rb-grn-array.o +0 -0
- data/ext/groonga/rb-grn-column.o +0 -0
- data/ext/groonga/rb-grn-context.c +22 -1
- data/ext/groonga/rb-grn-context.o +0 -0
- data/ext/groonga/rb-grn-database.c +3 -1
- data/ext/groonga/rb-grn-database.o +0 -0
- data/ext/groonga/rb-grn-encoding-support.o +0 -0
- data/ext/groonga/rb-grn-encoding.o +0 -0
- data/ext/groonga/rb-grn-exception.o +0 -0
- data/ext/groonga/rb-grn-expression-builder.o +0 -0
- data/ext/groonga/rb-grn-expression.o +0 -0
- data/ext/groonga/rb-grn-fix-size-column.o +0 -0
- data/ext/groonga/rb-grn-hash-cursor.o +0 -0
- data/ext/groonga/rb-grn-hash.o +0 -0
- data/ext/groonga/rb-grn-index-column.o +0 -0
- data/ext/groonga/rb-grn-index-cursor.o +0 -0
- data/ext/groonga/rb-grn-logger.o +0 -0
- data/ext/groonga/rb-grn-object.c +29 -13
- data/ext/groonga/rb-grn-object.o +0 -0
- data/ext/groonga/rb-grn-operator.o +0 -0
- data/ext/groonga/rb-grn-patricia-trie-cursor.o +0 -0
- data/ext/groonga/rb-grn-patricia-trie.o +0 -0
- data/ext/groonga/rb-grn-plugin.o +0 -0
- data/ext/groonga/rb-grn-posting.o +0 -0
- data/ext/groonga/rb-grn-procedure.o +0 -0
- data/ext/groonga/rb-grn-query.o +0 -0
- data/ext/groonga/rb-grn-record.o +0 -0
- data/ext/groonga/rb-grn-snippet.o +0 -0
- data/ext/groonga/rb-grn-table-cursor-key-support.o +0 -0
- data/ext/groonga/rb-grn-table-cursor.o +0 -0
- data/ext/groonga/rb-grn-table-key-support.o +0 -0
- data/ext/groonga/rb-grn-table.c +16 -0
- data/ext/groonga/rb-grn-table.o +0 -0
- data/ext/groonga/rb-grn-type.o +0 -0
- data/ext/groonga/rb-grn-utils.c +77 -8
- data/ext/groonga/rb-grn-utils.o +0 -0
- data/ext/groonga/rb-grn-variable-size-column.o +0 -0
- data/ext/groonga/rb-grn-variable.o +0 -0
- data/ext/groonga/rb-grn-view-accessor.o +0 -0
- data/ext/groonga/rb-grn-view-cursor.o +0 -0
- data/ext/groonga/rb-grn-view-record.o +0 -0
- data/ext/groonga/rb-grn-view.o +0 -0
- data/ext/groonga/rb-grn.h +5 -1
- data/ext/groonga/rb-groonga.o +0 -0
- data/lib/groonga/dumper.rb +35 -6
- data/lib/groonga/expression-builder-19.rb +40 -0
- data/lib/groonga/expression-builder.rb +4 -0
- data/test/groonga-test-utils.rb +8 -0
- data/test/test-schema-dumper.rb +6 -0
- data/test/test-table-select.rb +9 -0
- metadata +140 -96
data/ext/groonga/Makefile
CHANGED
@@ -3,7 +3,7 @@ SHELL = /bin/sh
|
|
3
3
|
|
4
4
|
#### Start of system configuration section. ####
|
5
5
|
|
6
|
-
srcdir = /home/
|
6
|
+
srcdir = /home/yue/work/rroonga/ext/groonga
|
7
7
|
topdir = /usr/include/ruby-1.9.1
|
8
8
|
hdrdir = /usr/include/ruby-1.9.1
|
9
9
|
arch_hdrdir = /usr/include/ruby-1.9.1/$(arch)
|
@@ -54,13 +54,13 @@ COUTFLAG = -o
|
|
54
54
|
|
55
55
|
RUBY_EXTCONF_H =
|
56
56
|
cflags = $(optflags) $(debugflags) $(warnflags)
|
57
|
-
optflags = -
|
58
|
-
debugflags = -
|
57
|
+
optflags = -O0
|
58
|
+
debugflags = -ggdb3
|
59
59
|
warnflags = -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wno-long-long
|
60
|
-
CFLAGS = -fPIC -fno-strict-aliasing -
|
60
|
+
CFLAGS = -fPIC -fno-strict-aliasing -ggdb3 -O0 -fPIC -Wall -I/tmp/local/include/groonga
|
61
61
|
INCFLAGS = -I. -I$(arch_hdrdir) -I$(hdrdir)/ruby/backward -I$(hdrdir) -I$(srcdir)
|
62
62
|
DEFS =
|
63
|
-
CPPFLAGS = -DRB_GRN_COMPILATION -DGRN_MAJOR_VERSION=1 -DGRN_MINOR_VERSION=2 -DGRN_MICRO_VERSION=
|
63
|
+
CPPFLAGS = -DRB_GRN_COMPILATION -DGRN_MAJOR_VERSION=1 -DGRN_MINOR_VERSION=2 -DGRN_MICRO_VERSION=1 -DHAVE_RB_ERRINFO -DHAVE_TYPE_ENUM_RUBY_VALUE_TYPE $(DEFS) $(cppflags)
|
64
64
|
CXXFLAGS = $(CFLAGS) -fno-strict-aliasing -g
|
65
65
|
ldflags = -L. -rdynamic -Wl,-export-dynamic -L/tmp/local/lib
|
66
66
|
dldflags =
|
@@ -105,8 +105,8 @@ extout_prefix =
|
|
105
105
|
target_prefix =
|
106
106
|
LOCAL_LIBS =
|
107
107
|
LIBS = $(LIBRUBYARG_SHARED) -lgroonga -lpthread -lrt -ldl -lcrypt -lm -lc
|
108
|
-
SRCS = rb-grn-
|
109
|
-
OBJS = rb-grn-
|
108
|
+
SRCS = rb-grn-snippet.c rb-grn-view.c rb-grn-query.c rb-grn-encoding-support.c rb-grn-record.c rb-grn-utils.c rb-grn-index-column.c rb-grn-index-cursor.c rb-grn-view-accessor.c rb-grn-object.c rb-grn-patricia-trie.c rb-grn-expression-builder.c rb-grn-variable.c rb-grn-hash-cursor.c rb-grn-fix-size-column.c rb-grn-variable-size-column.c rb-grn-table-key-support.c rb-grn-table.c rb-groonga.c rb-grn-table-cursor.c rb-grn-hash.c rb-grn-exception.c rb-grn-logger.c rb-grn-plugin.c rb-grn-encoding.c rb-grn-view-record.c rb-grn-view-cursor.c rb-grn-column.c rb-grn-procedure.c rb-grn-posting.c rb-grn-accessor.c rb-grn-operator.c rb-grn-type.c rb-grn-array.c rb-grn-patricia-trie-cursor.c rb-grn-context.c rb-grn-database.c rb-grn-array-cursor.c rb-grn-expression.c rb-grn-table-cursor-key-support.c
|
109
|
+
OBJS = rb-grn-snippet.o rb-grn-view.o rb-grn-query.o rb-grn-encoding-support.o rb-grn-record.o rb-grn-utils.o rb-grn-index-column.o rb-grn-index-cursor.o rb-grn-view-accessor.o rb-grn-object.o rb-grn-patricia-trie.o rb-grn-expression-builder.o rb-grn-variable.o rb-grn-hash-cursor.o rb-grn-fix-size-column.o rb-grn-variable-size-column.o rb-grn-table-key-support.o rb-grn-table.o rb-groonga.o rb-grn-table-cursor.o rb-grn-hash.o rb-grn-exception.o rb-grn-logger.o rb-grn-plugin.o rb-grn-encoding.o rb-grn-view-record.o rb-grn-view-cursor.o rb-grn-column.o rb-grn-procedure.o rb-grn-posting.o rb-grn-accessor.o rb-grn-operator.o rb-grn-type.o rb-grn-array.o rb-grn-patricia-trie-cursor.o rb-grn-context.o rb-grn-database.o rb-grn-array-cursor.o rb-grn-expression.o rb-grn-table-cursor-key-support.o
|
110
110
|
TARGET = groonga
|
111
111
|
DLLIB = $(TARGET).so
|
112
112
|
EXTSTATIC =
|
@@ -160,18 +160,10 @@ $(RUBYLIBDIR)/groonga.rb: $(srcdir)/../../lib/groonga.rb
|
|
160
160
|
@-$(MAKEDIRS) $(@D)
|
161
161
|
$(INSTALL_DATA) $(srcdir)/../../lib/groonga.rb $(@D)
|
162
162
|
pre-install-rb: $(RUBYLIBDIR)/groonga
|
163
|
-
install-rb: $(RUBYLIBDIR)/groonga/
|
164
|
-
$(RUBYLIBDIR)/groonga/
|
165
|
-
@-$(MAKEDIRS) $(@D)
|
166
|
-
$(INSTALL_DATA) $(srcdir)/../../lib/groonga/record.rb $(@D)
|
167
|
-
install-rb: $(RUBYLIBDIR)/groonga/view-record.rb
|
168
|
-
$(RUBYLIBDIR)/groonga/view-record.rb: $(srcdir)/../../lib/groonga/view-record.rb
|
169
|
-
@-$(MAKEDIRS) $(@D)
|
170
|
-
$(INSTALL_DATA) $(srcdir)/../../lib/groonga/view-record.rb $(@D)
|
171
|
-
install-rb: $(RUBYLIBDIR)/groonga/context.rb
|
172
|
-
$(RUBYLIBDIR)/groonga/context.rb: $(srcdir)/../../lib/groonga/context.rb
|
163
|
+
install-rb: $(RUBYLIBDIR)/groonga/dumper.rb
|
164
|
+
$(RUBYLIBDIR)/groonga/dumper.rb: $(srcdir)/../../lib/groonga/dumper.rb
|
173
165
|
@-$(MAKEDIRS) $(@D)
|
174
|
-
$(INSTALL_DATA) $(srcdir)/../../lib/groonga/
|
166
|
+
$(INSTALL_DATA) $(srcdir)/../../lib/groonga/dumper.rb $(@D)
|
175
167
|
install-rb: $(RUBYLIBDIR)/groonga/pagination.rb
|
176
168
|
$(RUBYLIBDIR)/groonga/pagination.rb: $(srcdir)/../../lib/groonga/pagination.rb
|
177
169
|
@-$(MAKEDIRS) $(@D)
|
@@ -180,22 +172,30 @@ install-rb: $(RUBYLIBDIR)/groonga/schema.rb
|
|
180
172
|
$(RUBYLIBDIR)/groonga/schema.rb: $(srcdir)/../../lib/groonga/schema.rb
|
181
173
|
@-$(MAKEDIRS) $(@D)
|
182
174
|
$(INSTALL_DATA) $(srcdir)/../../lib/groonga/schema.rb $(@D)
|
183
|
-
install-rb: $(RUBYLIBDIR)/groonga/
|
184
|
-
$(RUBYLIBDIR)/groonga/
|
175
|
+
install-rb: $(RUBYLIBDIR)/groonga/expression-builder.rb
|
176
|
+
$(RUBYLIBDIR)/groonga/expression-builder.rb: $(srcdir)/../../lib/groonga/expression-builder.rb
|
185
177
|
@-$(MAKEDIRS) $(@D)
|
186
|
-
$(INSTALL_DATA) $(srcdir)/../../lib/groonga/
|
178
|
+
$(INSTALL_DATA) $(srcdir)/../../lib/groonga/expression-builder.rb $(@D)
|
187
179
|
install-rb: $(RUBYLIBDIR)/groonga/patricia-trie.rb
|
188
180
|
$(RUBYLIBDIR)/groonga/patricia-trie.rb: $(srcdir)/../../lib/groonga/patricia-trie.rb
|
189
181
|
@-$(MAKEDIRS) $(@D)
|
190
182
|
$(INSTALL_DATA) $(srcdir)/../../lib/groonga/patricia-trie.rb $(@D)
|
191
|
-
install-rb: $(RUBYLIBDIR)/groonga/
|
192
|
-
$(RUBYLIBDIR)/groonga/
|
183
|
+
install-rb: $(RUBYLIBDIR)/groonga/view-record.rb
|
184
|
+
$(RUBYLIBDIR)/groonga/view-record.rb: $(srcdir)/../../lib/groonga/view-record.rb
|
193
185
|
@-$(MAKEDIRS) $(@D)
|
194
|
-
$(INSTALL_DATA) $(srcdir)/../../lib/groonga/
|
195
|
-
install-rb: $(RUBYLIBDIR)/groonga/
|
196
|
-
$(RUBYLIBDIR)/groonga/
|
186
|
+
$(INSTALL_DATA) $(srcdir)/../../lib/groonga/view-record.rb $(@D)
|
187
|
+
install-rb: $(RUBYLIBDIR)/groonga/context.rb
|
188
|
+
$(RUBYLIBDIR)/groonga/context.rb: $(srcdir)/../../lib/groonga/context.rb
|
197
189
|
@-$(MAKEDIRS) $(@D)
|
198
|
-
$(INSTALL_DATA) $(srcdir)/../../lib/groonga/
|
190
|
+
$(INSTALL_DATA) $(srcdir)/../../lib/groonga/context.rb $(@D)
|
191
|
+
install-rb: $(RUBYLIBDIR)/groonga/record.rb
|
192
|
+
$(RUBYLIBDIR)/groonga/record.rb: $(srcdir)/../../lib/groonga/record.rb
|
193
|
+
@-$(MAKEDIRS) $(@D)
|
194
|
+
$(INSTALL_DATA) $(srcdir)/../../lib/groonga/record.rb $(@D)
|
195
|
+
install-rb: $(RUBYLIBDIR)/groonga/posting.rb
|
196
|
+
$(RUBYLIBDIR)/groonga/posting.rb: $(srcdir)/../../lib/groonga/posting.rb
|
197
|
+
@-$(MAKEDIRS) $(@D)
|
198
|
+
$(INSTALL_DATA) $(srcdir)/../../lib/groonga/posting.rb $(@D)
|
199
199
|
$(RUBYARCHDIR):
|
200
200
|
$(MAKEDIRS) $@
|
201
201
|
$(RUBYLIBDIR):
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -59,12 +59,29 @@ rb_grn_context_from_ruby_object (VALUE object)
|
|
59
59
|
return rb_grn_context->context;
|
60
60
|
}
|
61
61
|
|
62
|
+
static void
|
63
|
+
rb_grn_context_unlink_database (grn_ctx *context)
|
64
|
+
{
|
65
|
+
grn_obj *database;
|
66
|
+
|
67
|
+
database = grn_ctx_db(context);
|
68
|
+
debug("context:database: %p:%p\n", context, database);
|
69
|
+
if (database && database->header.type == GRN_DB) {
|
70
|
+
debug("context:database: %p:%p: unlink\n", context, database);
|
71
|
+
grn_obj_unlink(context, database);
|
72
|
+
}
|
73
|
+
debug("context:database: %p:%p: done\n", context, database);
|
74
|
+
}
|
75
|
+
|
62
76
|
void
|
63
77
|
rb_grn_context_fin (grn_ctx *context)
|
64
78
|
{
|
65
79
|
if (context->stat == GRN_CTX_FIN)
|
66
80
|
return;
|
67
81
|
|
82
|
+
if (!(context->flags & GRN_CTX_PER_DB)) {
|
83
|
+
rb_grn_context_unlink_database(context);
|
84
|
+
}
|
68
85
|
grn_ctx_fin(context);
|
69
86
|
}
|
70
87
|
|
@@ -99,6 +116,10 @@ rb_grn_context_finalizer (grn_ctx *context, int n_args, grn_obj **grn_objects,
|
|
99
116
|
|
100
117
|
rb_grn_context = user_data->ptr;
|
101
118
|
|
119
|
+
if (!(context->flags & GRN_CTX_PER_DB)) {
|
120
|
+
rb_grn_context_unlink_database(context);
|
121
|
+
}
|
122
|
+
|
102
123
|
GRN_CTX_USER_DATA(context)->ptr = NULL;
|
103
124
|
grn_ctx_set_finalizer(context, NULL);
|
104
125
|
|
@@ -298,7 +319,7 @@ rb_grn_context_initialize (int argc, VALUE *argv, VALUE self)
|
|
298
319
|
{
|
299
320
|
RbGrnContext *rb_grn_context;
|
300
321
|
grn_ctx *context;
|
301
|
-
int flags = GRN_CTX_PER_DB
|
322
|
+
int flags = 0; /* TODO: GRN_CTX_PER_DB */
|
302
323
|
VALUE options, default_options;
|
303
324
|
VALUE rb_encoding;
|
304
325
|
|
Binary file
|
@@ -174,6 +174,7 @@ rb_grn_database_s_create (int argc, VALUE *argv, VALUE klass)
|
|
174
174
|
const char *path = NULL;
|
175
175
|
VALUE rb_database;
|
176
176
|
VALUE rb_path, options, rb_context, builtin_type_names;
|
177
|
+
grn_bool owner;
|
177
178
|
|
178
179
|
rb_scan_args(argc, argv, "01", &options);
|
179
180
|
|
@@ -195,7 +196,8 @@ rb_grn_database_s_create (int argc, VALUE *argv, VALUE klass)
|
|
195
196
|
grn_obj_unlink(context, old_database);
|
196
197
|
database = grn_db_create(context, path, &create_args);
|
197
198
|
rb_grn_context_check(context, rb_ary_new4(argc, argv));
|
198
|
-
|
199
|
+
owner = (context->flags & GRN_CTX_PER_DB) ? GRN_FALSE : GRN_TRUE;
|
200
|
+
rb_database = GRNOBJECT2RVAL(klass, context, database, owner);
|
199
201
|
rb_iv_set(rb_database, "@context", rb_context);
|
200
202
|
if (!NIL_P(rb_context))
|
201
203
|
rb_iv_set(rb_context, "database", rb_database);
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/ext/groonga/rb-grn-object.c
CHANGED
@@ -88,9 +88,10 @@ rb_grn_object_run_finalizer (grn_ctx *context, grn_obj *grn_object,
|
|
88
88
|
|
89
89
|
grn_obj_set_finalizer(context, grn_object, NULL);
|
90
90
|
|
91
|
-
debug("finalize: %p:%p:%p:%p:%p
|
91
|
+
debug("finalize: %p:%p:%p:%p:%p %s(%#x)\n",
|
92
92
|
context, grn_object, rb_grn_object,
|
93
93
|
rb_grn_object->context, rb_grn_object->object,
|
94
|
+
rb_grn_inspect_type(grn_object->header.type),
|
94
95
|
grn_object->header.type);
|
95
96
|
|
96
97
|
rb_grn_object->context = NULL;
|
@@ -99,6 +100,10 @@ rb_grn_object_run_finalizer (grn_ctx *context, grn_obj *grn_object,
|
|
99
100
|
|
100
101
|
switch (grn_object->header.type) {
|
101
102
|
case GRN_DB:
|
103
|
+
if (!(context->flags & GRN_CTX_PER_DB)) {
|
104
|
+
grn_ctx_use(context, NULL);
|
105
|
+
}
|
106
|
+
break;
|
102
107
|
case GRN_TYPE:
|
103
108
|
case GRN_PROC:
|
104
109
|
case GRN_CURSOR_TABLE_HASH_KEY:
|
@@ -137,7 +142,8 @@ rb_grn_object_run_finalizer (grn_ctx *context, grn_obj *grn_object,
|
|
137
142
|
break;
|
138
143
|
default:
|
139
144
|
rb_raise(rb_eTypeError,
|
140
|
-
"unsupported groonga object type for finalizer:
|
145
|
+
"unsupported groonga object type for finalizer: %s(%#x)",
|
146
|
+
rb_grn_inspect_type(grn_object->header.type),
|
141
147
|
grn_object->header.type);
|
142
148
|
break;
|
143
149
|
}
|
@@ -178,7 +184,8 @@ rb_grn_object_free (RbGrnObject *rb_grn_object)
|
|
178
184
|
if (rb_grn_object->have_finalizer) {
|
179
185
|
user_data = grn_obj_user_data(context, grn_object);
|
180
186
|
}
|
181
|
-
debug("type: %#x; need_close: %d; user_data: %p; ptr: %p\n",
|
187
|
+
debug("type: %s(%#x); need_close: %d; user_data: %p; ptr: %p\n",
|
188
|
+
rb_grn_inspect_type(grn_object->header.type),
|
182
189
|
grn_object->header.type,
|
183
190
|
rb_grn_object->need_close,
|
184
191
|
user_data,
|
@@ -313,23 +320,27 @@ rb_grn_object_bind_common (VALUE klass, VALUE self, VALUE rb_context,
|
|
313
320
|
|
314
321
|
user_data = grn_obj_user_data(context, object);
|
315
322
|
if (user_data) {
|
316
|
-
debug("set-finalizer: %p:%p:%p %#x\n",
|
323
|
+
debug("set-finalizer: %p:%p:%p %s(%#x)\n",
|
317
324
|
context, object, rb_grn_object,
|
325
|
+
rb_grn_inspect_type(object->header.type),
|
318
326
|
object->header.type);
|
319
327
|
user_data->ptr = rb_grn_object;
|
320
328
|
grn_obj_set_finalizer(context, object, rb_grn_object_finalizer);
|
321
329
|
rb_grn_object->have_finalizer = GRN_TRUE;
|
322
330
|
} else if (object->header.type == GRN_ACCESSOR) {
|
323
|
-
debug("set-finalizer(implicit): %p:%p:%p %#x\n",
|
331
|
+
debug("set-finalizer(implicit): %p:%p:%p %s(%#x)\n",
|
324
332
|
context, object, rb_grn_object,
|
333
|
+
rb_grn_inspect_type(object->header.type),
|
325
334
|
object->header.type);
|
326
|
-
|
335
|
+
/* TODO: We want to call finalizer for GRN_ACCESSOR. */
|
336
|
+
rb_grn_object->have_finalizer = GRN_FALSE;
|
327
337
|
}
|
328
338
|
|
329
339
|
switch (object->header.type) {
|
330
340
|
case GRN_DB:
|
331
341
|
case GRN_PROC:
|
332
342
|
case GRN_TYPE:
|
343
|
+
case GRN_ACCESSOR: /* TODO: We want to close GRN_ACCESSOR. */
|
333
344
|
rb_grn_object->need_close = GRN_FALSE;
|
334
345
|
break;
|
335
346
|
default:
|
@@ -422,14 +433,16 @@ rb_grn_object_assign (VALUE klass, VALUE self, VALUE rb_context,
|
|
422
433
|
context, object);
|
423
434
|
} else {
|
424
435
|
rb_raise(rb_eTypeError,
|
425
|
-
"unsupported groonga object type for assignment:
|
436
|
+
"unsupported groonga object type for assignment: %s(%#x)",
|
437
|
+
rb_grn_inspect_type(object->header.type),
|
426
438
|
object->header.type);
|
427
439
|
}
|
428
440
|
|
429
441
|
rb_iv_set(self, "@context", rb_context);
|
430
442
|
|
431
|
-
debug("assign: %p:%p:%p
|
432
|
-
|
443
|
+
debug("assign: %p:%p:%p %s(%#x)\n",
|
444
|
+
context, object, rb_grn_object,
|
445
|
+
rb_grn_inspect_type(object->header.type), object->header.type);
|
433
446
|
}
|
434
447
|
|
435
448
|
void
|
@@ -459,14 +472,17 @@ rb_grn_named_object_set_name (RbGrnNamedObject *rb_grn_named_object,
|
|
459
472
|
rb_grn_named_object->name = NULL;
|
460
473
|
}
|
461
474
|
if (name_size > 0) {
|
475
|
+
RbGrnObject *rb_grn_object;
|
462
476
|
rb_grn_named_object->name = ALLOC_N(char, name_size + 1);
|
463
477
|
memcpy(rb_grn_named_object->name, name, name_size);
|
464
478
|
rb_grn_named_object->name[name_size] = '\0';
|
465
|
-
|
466
|
-
|
467
|
-
|
479
|
+
rb_grn_object = RB_GRN_OBJECT(rb_grn_named_object);
|
480
|
+
debug("set-name: %p:%p:%p %s(%#x): <%.*s>\n",
|
481
|
+
rb_grn_object->context,
|
482
|
+
rb_grn_object->object,
|
468
483
|
rb_grn_named_object,
|
469
|
-
|
484
|
+
rb_grn_inspect_type(rb_grn_object->object->header.type),
|
485
|
+
rb_grn_object->object->header.type,
|
470
486
|
name_size, name);
|
471
487
|
}
|
472
488
|
rb_grn_named_object->name_size = name_size;
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/ext/groonga/rb-grn-table.c
CHANGED
@@ -1741,6 +1741,22 @@ rb_grn_table_is_locked (int argc, VALUE *argv, VALUE self)
|
|
1741
1741
|
* ブロックで条件を指定する場合は
|
1742
1742
|
* Groonga::RecordExpressionBuilderを参照。
|
1743
1743
|
*
|
1744
|
+
* Ruby1.9以降では、ブロックで条件を指定する際に
|
1745
|
+
* Groonga::ColumnExpressionBuilderの他に"!="も使用可能。
|
1746
|
+
* 例:
|
1747
|
+
* comments = Groonga::Array.create(:name => "Comments")
|
1748
|
+
* comments.define_column("content", "Text")
|
1749
|
+
*
|
1750
|
+
* comments.add(:content => "Hello Good-bye!")
|
1751
|
+
* comments.add(:content => "Hello World")
|
1752
|
+
* comments.add(:content => "test")
|
1753
|
+
*
|
1754
|
+
* result = comments.select do |record|
|
1755
|
+
* record.content != "test"
|
1756
|
+
* end
|
1757
|
+
* p result.collect {|record| record.content}
|
1758
|
+
* # => ["Hello Good-bye!", "Hello World"]
|
1759
|
+
*
|
1744
1760
|
* _options_に指定可能な値は以下の通り。
|
1745
1761
|
*
|
1746
1762
|
* [+:default_column+]
|
Binary file
|
Binary file
|
data/ext/groonga/rb-grn-utils.c
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
/* -*- c-file-style: "ruby" -*- */
|
2
2
|
/* vim: set sts=4 sw=4 ts=8 noet: */
|
3
3
|
/*
|
4
|
-
Copyright (C) 2009-
|
4
|
+
Copyright (C) 2009-2011 Kouhei Sutou <kou@clear-code.com>
|
5
5
|
|
6
6
|
This library is free software; you can redistribute it and/or
|
7
7
|
modify it under the terms of the GNU Lesser General Public
|
@@ -30,20 +30,86 @@ rb_grn_inspect (VALUE object)
|
|
30
30
|
return StringValueCStr(inspected);
|
31
31
|
}
|
32
32
|
|
33
|
+
const char *
|
34
|
+
rb_grn_inspect_type (unsigned char type)
|
35
|
+
{
|
36
|
+
switch (type) {
|
37
|
+
case GRN_VOID:
|
38
|
+
return "void";
|
39
|
+
case GRN_BULK:
|
40
|
+
return "bulk";
|
41
|
+
case GRN_PTR:
|
42
|
+
return "ptr";
|
43
|
+
case GRN_UVECTOR:
|
44
|
+
return "uvector";
|
45
|
+
case GRN_PVECTOR:
|
46
|
+
return "pvector";
|
47
|
+
case GRN_MSG:
|
48
|
+
return "msg";
|
49
|
+
case GRN_QUERY:
|
50
|
+
return "query";
|
51
|
+
case GRN_ACCESSOR:
|
52
|
+
return "accessor";
|
53
|
+
case GRN_SNIP:
|
54
|
+
return "snip";
|
55
|
+
case GRN_PATSNIP:
|
56
|
+
return "patsnip";
|
57
|
+
case GRN_CURSOR_TABLE_HASH_KEY:
|
58
|
+
return "cursor-table-hash-key";
|
59
|
+
case GRN_CURSOR_TABLE_PAT_KEY:
|
60
|
+
return "cursor-table-pat-key";
|
61
|
+
case GRN_CURSOR_TABLE_DAT_KEY:
|
62
|
+
return "cursor-table-dat-key";
|
63
|
+
case GRN_CURSOR_TABLE_NO_KEY:
|
64
|
+
return "cursor-table-no-key";
|
65
|
+
case GRN_CURSOR_TABLE_VIEW:
|
66
|
+
return "cursor-table-view";
|
67
|
+
case GRN_CURSOR_COLUMN_INDEX:
|
68
|
+
return "cursor-column-index";
|
69
|
+
case GRN_TYPE:
|
70
|
+
return "type";
|
71
|
+
case GRN_PROC:
|
72
|
+
return "proc";
|
73
|
+
case GRN_EXPR:
|
74
|
+
return "expr";
|
75
|
+
case GRN_TABLE_HASH_KEY:
|
76
|
+
return "table-hash-key";
|
77
|
+
case GRN_TABLE_PAT_KEY:
|
78
|
+
return "table-pat-key";
|
79
|
+
case GRN_TABLE_DAT_KEY:
|
80
|
+
return "table-dat-key";
|
81
|
+
case GRN_TABLE_NO_KEY:
|
82
|
+
return "table-no-key";
|
83
|
+
case GRN_TABLE_VIEW:
|
84
|
+
return "table-view";
|
85
|
+
case GRN_DB:
|
86
|
+
return "db";
|
87
|
+
case GRN_COLUMN_FIX_SIZE:
|
88
|
+
return "column-fix-size";
|
89
|
+
case GRN_COLUMN_VAR_SIZE:
|
90
|
+
return "column-var-size";
|
91
|
+
case GRN_COLUMN_INDEX:
|
92
|
+
return "column-index";
|
93
|
+
default:
|
94
|
+
return "unknown";
|
95
|
+
}
|
96
|
+
}
|
97
|
+
|
33
98
|
void
|
34
99
|
rb_grn_scan_options (VALUE options, ...)
|
35
100
|
{
|
101
|
+
VALUE original_options = options;
|
36
102
|
VALUE available_keys;
|
37
103
|
const char *key;
|
38
104
|
VALUE *value;
|
39
105
|
va_list args;
|
40
106
|
|
41
|
-
|
107
|
+
options = rb_check_convert_type(options, T_HASH, "Hash", "to_hash");
|
108
|
+
if (NIL_P(options)) {
|
42
109
|
options = rb_hash_new();
|
43
|
-
else
|
110
|
+
} else if (options == original_options) {
|
44
111
|
options = rb_funcall(options, rb_intern("dup"), 0);
|
45
|
-
|
46
|
-
Check_Type(options, T_HASH);
|
112
|
+
}
|
47
113
|
|
48
114
|
available_keys = rb_ary_new();
|
49
115
|
va_start(args, options);
|
@@ -622,8 +688,10 @@ rb_grn_value_to_ruby_object (grn_ctx *context,
|
|
622
688
|
break;
|
623
689
|
default:
|
624
690
|
rb_raise(rb_eGrnError,
|
625
|
-
"unsupported value type:
|
626
|
-
value->header.type,
|
691
|
+
"unsupported value type: %s(%#x): %s",
|
692
|
+
rb_grn_inspect_type(value->header.type),
|
693
|
+
value->header.type,
|
694
|
+
rb_grn_inspect(related_object));
|
627
695
|
break;
|
628
696
|
}
|
629
697
|
|
@@ -775,7 +843,8 @@ rb_grn_obj_to_ruby_object (VALUE klass, grn_ctx *context,
|
|
775
843
|
/* case GRN_COLUMN_INDEX: */
|
776
844
|
default:
|
777
845
|
rb_raise(rb_eTypeError,
|
778
|
-
"unsupported groonga object:
|
846
|
+
"unsupported groonga object: %s(%#x): <%s>",
|
847
|
+
rb_grn_inspect_type(obj->header.type),
|
779
848
|
obj->header.type,
|
780
849
|
rb_grn_inspect(related_object));
|
781
850
|
break;
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/ext/groonga/rb-grn.h
CHANGED
@@ -24,6 +24,9 @@
|
|
24
24
|
#ifdef HAVE_RUBY_ENCODING_H
|
25
25
|
# include <ruby/encoding.h>
|
26
26
|
#endif
|
27
|
+
#ifdef HAVE_RUBY_INTERN_H
|
28
|
+
# include <ruby/intern.h>
|
29
|
+
#endif
|
27
30
|
|
28
31
|
#include <groonga.h>
|
29
32
|
|
@@ -69,7 +72,7 @@ RB_GRN_BEGIN_DECLS
|
|
69
72
|
|
70
73
|
#define RB_GRN_MAJOR_VERSION 1
|
71
74
|
#define RB_GRN_MINOR_VERSION 2
|
72
|
-
#define RB_GRN_MICRO_VERSION
|
75
|
+
#define RB_GRN_MICRO_VERSION 8
|
73
76
|
|
74
77
|
#define RB_GRN_QUERY_DEFAULT_MAX_EXPRESSIONS 32
|
75
78
|
|
@@ -290,6 +293,7 @@ grn_obj *rb_grn_context_get_backward_compatibility
|
|
290
293
|
unsigned int name_size);
|
291
294
|
|
292
295
|
const char *rb_grn_inspect (VALUE object);
|
296
|
+
const char *rb_grn_inspect_type (unsigned char type);
|
293
297
|
void rb_grn_scan_options (VALUE options, ...)
|
294
298
|
RB_GRN_GNUC_NULL_TERMINATED;
|
295
299
|
grn_bool rb_grn_equal_option (VALUE option,
|
Binary file
|
data/lib/groonga/dumper.rb
CHANGED
@@ -266,13 +266,19 @@ module Groonga
|
|
266
266
|
def define_column(table, column)
|
267
267
|
type = column_method(column)
|
268
268
|
name = column.local_name
|
269
|
-
|
269
|
+
options = column_options(column)
|
270
|
+
arguments = [dump_object(name), options].compact.join(", ")
|
271
|
+
write(" table.#{type}(#{arguments})\n")
|
270
272
|
end
|
271
273
|
|
272
274
|
def define_reference_column(table, column)
|
273
275
|
name = column.local_name
|
274
276
|
reference = column.range
|
275
|
-
|
277
|
+
options = column_options(column)
|
278
|
+
arguments = [dump_object(name),
|
279
|
+
dump_object(reference.name),
|
280
|
+
options].compact.join(", ")
|
281
|
+
write(" table.reference(#{arguments})\n")
|
276
282
|
end
|
277
283
|
|
278
284
|
def define_index_column(table, column)
|
@@ -280,14 +286,15 @@ module Groonga
|
|
280
286
|
sources = column.sources
|
281
287
|
source_names = sources.collect do |source|
|
282
288
|
if source.is_a?(Groonga::Table)
|
283
|
-
"_key"
|
289
|
+
name = "_key"
|
284
290
|
else
|
285
|
-
source.local_name
|
291
|
+
name = source.local_name
|
286
292
|
end
|
293
|
+
dump_object(name)
|
287
294
|
end.join(", ")
|
288
|
-
arguments = [target_table_name
|
295
|
+
arguments = [dump_object(target_table_name),
|
289
296
|
sources.size == 1 ? source_names : "[#{source_names}]",
|
290
|
-
":name => #{column.local_name
|
297
|
+
":name => #{dump_object(column.local_name)}"]
|
291
298
|
write(" table.index(#{arguments.join(', ')})\n")
|
292
299
|
end
|
293
300
|
|
@@ -316,6 +323,28 @@ module Groonga
|
|
316
323
|
raise ArgumentError, "unsupported column: #{column.inspect}"
|
317
324
|
end
|
318
325
|
end
|
326
|
+
|
327
|
+
def column_options(column)
|
328
|
+
options = {}
|
329
|
+
options[:type] = :vector if column.vector?
|
330
|
+
return nil if options.empty?
|
331
|
+
|
332
|
+
dumped_options = ""
|
333
|
+
options.each do |key, value|
|
334
|
+
dumped_key = dump_object(key)
|
335
|
+
dumped_value = dump_object(value)
|
336
|
+
dumped_options << "#{dumped_key} => #{dumped_value}"
|
337
|
+
end
|
338
|
+
dumped_options
|
339
|
+
end
|
340
|
+
|
341
|
+
def dump_object(object)
|
342
|
+
if object.respond_to?(:dump)
|
343
|
+
object.dump
|
344
|
+
else
|
345
|
+
object.inspect
|
346
|
+
end
|
347
|
+
end
|
319
348
|
end
|
320
349
|
|
321
350
|
class CommandSyntax < BaseSyntax # :nodoc:
|
@@ -0,0 +1,40 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
#
|
3
|
+
# Copyright (C) 2011 Kouhei Sutou <kou@clear-code.com>
|
4
|
+
#
|
5
|
+
# This library is free software; you can redistribute it and/or
|
6
|
+
# modify it under the terms of the GNU Lesser General Public
|
7
|
+
# License version 2.1 as published by the Free Software Foundation.
|
8
|
+
#
|
9
|
+
# This library is distributed in the hope that it will be useful,
|
10
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
11
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
12
|
+
# Lesser General Public License for more details.
|
13
|
+
#
|
14
|
+
# You should have received a copy of the GNU Lesser General Public
|
15
|
+
# License along with this library; if not, write to the Free Software
|
16
|
+
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
17
|
+
|
18
|
+
module Groonga
|
19
|
+
module ExpressionBuildable
|
20
|
+
class ColumnValueExpressionBuilder
|
21
|
+
def !=(other)
|
22
|
+
NotEqualExpressionBuilder.new(self, normalize(other))
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
# @private
|
27
|
+
class NotEqualExpressionBuilder < BinaryExpressionBuilder
|
28
|
+
def initialize(column_value_builder, value)
|
29
|
+
super(Groonga::Operation::NOT_EQUAL, column_value_builder, value)
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
# @private
|
35
|
+
class ColumnExpressionBuilder
|
36
|
+
def !=(other)
|
37
|
+
column_value_builder != other
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
data/test/groonga-test-utils.rb
CHANGED
data/test/test-schema-dumper.rb
CHANGED
@@ -23,6 +23,7 @@ class SchemaDumperTest < Test::Unit::TestCase
|
|
23
23
|
Groonga::Schema.define do |schema|
|
24
24
|
schema.create_table("Posts") do |table|
|
25
25
|
table.short_text :title
|
26
|
+
table.short_text :comments, :type => :vector
|
26
27
|
end
|
27
28
|
end
|
28
29
|
end
|
@@ -40,6 +41,7 @@ class SchemaDumperTest < Test::Unit::TestCase
|
|
40
41
|
schema.create_table("Comments") do |table|
|
41
42
|
table.reference("item", "Items")
|
42
43
|
table.reference("author", "Users")
|
44
|
+
table.reference("children", "Items", :type => :vector)
|
43
45
|
table.text("content")
|
44
46
|
table.time("issued")
|
45
47
|
end
|
@@ -71,6 +73,7 @@ class SchemaDumperTest < Test::Unit::TestCase
|
|
71
73
|
assert_equal(<<-EOS, dump)
|
72
74
|
create_table("Posts",
|
73
75
|
:force => true) do |table|
|
76
|
+
table.short_text("comments", :type => :vector)
|
74
77
|
table.short_text("title")
|
75
78
|
end
|
76
79
|
EOS
|
@@ -97,6 +100,7 @@ end
|
|
97
100
|
|
98
101
|
change_table("Comments") do |table|
|
99
102
|
table.reference("author", "Users")
|
103
|
+
table.reference("children", "Items", :type => :vector)
|
100
104
|
table.reference("item", "Items")
|
101
105
|
end
|
102
106
|
EOS
|
@@ -138,6 +142,7 @@ EOS
|
|
138
142
|
define_simple_schema
|
139
143
|
assert_equal(<<-EOS, dump)
|
140
144
|
table_create Posts TABLE_NO_KEY
|
145
|
+
column_create Posts comments COLUMN_VECTOR ShortText
|
141
146
|
column_create Posts title COLUMN_SCALAR ShortText
|
142
147
|
EOS
|
143
148
|
end
|
@@ -156,6 +161,7 @@ table_create Users TABLE_NO_KEY
|
|
156
161
|
column_create Users name COLUMN_SCALAR ShortText
|
157
162
|
|
158
163
|
column_create Comments author COLUMN_SCALAR Users
|
164
|
+
column_create Comments children COLUMN_VECTOR Items
|
159
165
|
column_create Comments item COLUMN_SCALAR Items
|
160
166
|
EOS
|
161
167
|
end
|
data/test/test-table-select.rb
CHANGED
@@ -146,6 +146,15 @@ class TableSelectTest < Test::Unit::TestCase
|
|
146
146
|
result)
|
147
147
|
end
|
148
148
|
|
149
|
+
def test_not_equal_block
|
150
|
+
only_ruby19
|
151
|
+
result = @comments.select do |record|
|
152
|
+
record.user != "darashi"
|
153
|
+
end
|
154
|
+
assert_equal_select_result([@comment1, @comment2, @comment3],
|
155
|
+
result)
|
156
|
+
end
|
157
|
+
|
149
158
|
def test_equal_reference_column_by_nonexistent_key
|
150
159
|
result = @comments.select do |record|
|
151
160
|
record["user"] == "nonexistent"
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rroonga
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
5
|
-
prerelease:
|
4
|
+
hash: 15
|
5
|
+
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 1
|
8
8
|
- 2
|
9
|
-
-
|
10
|
-
version: 1.2.
|
9
|
+
- 8
|
10
|
+
version: 1.2.8
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Kouhei Sutou
|
@@ -19,9 +19,13 @@ autorequire:
|
|
19
19
|
bindir: bin
|
20
20
|
cert_chain: []
|
21
21
|
|
22
|
-
date: 2011-
|
22
|
+
date: 2011-09-16 00:00:00 +09:00
|
23
|
+
default_executable: grndump
|
23
24
|
dependencies:
|
24
25
|
- !ruby/object:Gem::Dependency
|
26
|
+
type: :runtime
|
27
|
+
prerelease: false
|
28
|
+
name: pkg-config
|
25
29
|
version_requirements: &id001 !ruby/object:Gem::Requirement
|
26
30
|
none: false
|
27
31
|
requirements:
|
@@ -31,11 +35,11 @@ dependencies:
|
|
31
35
|
segments:
|
32
36
|
- 0
|
33
37
|
version: "0"
|
34
|
-
name: pkg-config
|
35
|
-
prerelease: false
|
36
|
-
type: :runtime
|
37
38
|
requirement: *id001
|
38
39
|
- !ruby/object:Gem::Dependency
|
40
|
+
type: :development
|
41
|
+
prerelease: false
|
42
|
+
name: test-unit
|
39
43
|
version_requirements: &id002 !ruby/object:Gem::Requirement
|
40
44
|
none: false
|
41
45
|
requirements:
|
@@ -45,11 +49,11 @@ dependencies:
|
|
45
49
|
segments:
|
46
50
|
- 0
|
47
51
|
version: "0"
|
48
|
-
name: test-unit
|
49
|
-
prerelease: false
|
50
|
-
type: :development
|
51
52
|
requirement: *id002
|
52
53
|
- !ruby/object:Gem::Dependency
|
54
|
+
type: :development
|
55
|
+
prerelease: false
|
56
|
+
name: test-unit-notify
|
53
57
|
version_requirements: &id003 !ruby/object:Gem::Requirement
|
54
58
|
none: false
|
55
59
|
requirements:
|
@@ -59,11 +63,11 @@ dependencies:
|
|
59
63
|
segments:
|
60
64
|
- 0
|
61
65
|
version: "0"
|
62
|
-
name: test-unit-notify
|
63
|
-
prerelease: false
|
64
|
-
type: :development
|
65
66
|
requirement: *id003
|
66
67
|
- !ruby/object:Gem::Dependency
|
68
|
+
type: :development
|
69
|
+
prerelease: false
|
70
|
+
name: rake
|
67
71
|
version_requirements: &id004 !ruby/object:Gem::Requirement
|
68
72
|
none: false
|
69
73
|
requirements:
|
@@ -73,11 +77,11 @@ dependencies:
|
|
73
77
|
segments:
|
74
78
|
- 0
|
75
79
|
version: "0"
|
76
|
-
name: rake
|
77
|
-
prerelease: false
|
78
|
-
type: :development
|
79
80
|
requirement: *id004
|
80
81
|
- !ruby/object:Gem::Dependency
|
82
|
+
type: :development
|
83
|
+
prerelease: false
|
84
|
+
name: rake-compiler
|
81
85
|
version_requirements: &id005 !ruby/object:Gem::Requirement
|
82
86
|
none: false
|
83
87
|
requirements:
|
@@ -87,11 +91,11 @@ dependencies:
|
|
87
91
|
segments:
|
88
92
|
- 0
|
89
93
|
version: "0"
|
90
|
-
name: rake-compiler
|
91
|
-
prerelease: false
|
92
|
-
type: :development
|
93
94
|
requirement: *id005
|
94
95
|
- !ruby/object:Gem::Dependency
|
96
|
+
type: :development
|
97
|
+
prerelease: false
|
98
|
+
name: jeweler
|
95
99
|
version_requirements: &id006 !ruby/object:Gem::Requirement
|
96
100
|
none: false
|
97
101
|
requirements:
|
@@ -101,11 +105,11 @@ dependencies:
|
|
101
105
|
segments:
|
102
106
|
- 0
|
103
107
|
version: "0"
|
104
|
-
name: jeweler
|
105
|
-
prerelease: false
|
106
|
-
type: :development
|
107
108
|
requirement: *id006
|
108
109
|
- !ruby/object:Gem::Dependency
|
110
|
+
type: :development
|
111
|
+
prerelease: false
|
112
|
+
name: yard
|
109
113
|
version_requirements: &id007 !ruby/object:Gem::Requirement
|
110
114
|
none: false
|
111
115
|
requirements:
|
@@ -115,11 +119,11 @@ dependencies:
|
|
115
119
|
segments:
|
116
120
|
- 0
|
117
121
|
version: "0"
|
118
|
-
name: yard
|
119
|
-
prerelease: false
|
120
|
-
type: :development
|
121
122
|
requirement: *id007
|
122
123
|
- !ruby/object:Gem::Dependency
|
124
|
+
type: :development
|
125
|
+
prerelease: false
|
126
|
+
name: packnga
|
123
127
|
version_requirements: &id008 !ruby/object:Gem::Requirement
|
124
128
|
none: false
|
125
129
|
requirements:
|
@@ -129,9 +133,6 @@ dependencies:
|
|
129
133
|
segments:
|
130
134
|
- 0
|
131
135
|
version: "0"
|
132
|
-
name: packnga
|
133
|
-
prerelease: false
|
134
|
-
type: :development
|
135
136
|
requirement: *id008
|
136
137
|
description: |-
|
137
138
|
rroonga is an extension library to use groonga's DB-API
|
@@ -163,51 +164,93 @@ files:
|
|
163
164
|
- ext/groonga/Makefile
|
164
165
|
- ext/groonga/extconf.rb
|
165
166
|
- ext/groonga/groonga.def
|
167
|
+
- ext/groonga/groonga.so
|
166
168
|
- ext/groonga/rb-grn-accessor.c
|
169
|
+
- ext/groonga/rb-grn-accessor.o
|
167
170
|
- ext/groonga/rb-grn-array-cursor.c
|
171
|
+
- ext/groonga/rb-grn-array-cursor.o
|
168
172
|
- ext/groonga/rb-grn-array.c
|
173
|
+
- ext/groonga/rb-grn-array.o
|
169
174
|
- ext/groonga/rb-grn-column.c
|
175
|
+
- ext/groonga/rb-grn-column.o
|
170
176
|
- ext/groonga/rb-grn-context.c
|
177
|
+
- ext/groonga/rb-grn-context.o
|
171
178
|
- ext/groonga/rb-grn-database.c
|
179
|
+
- ext/groonga/rb-grn-database.o
|
172
180
|
- ext/groonga/rb-grn-encoding-support.c
|
181
|
+
- ext/groonga/rb-grn-encoding-support.o
|
173
182
|
- ext/groonga/rb-grn-encoding.c
|
183
|
+
- ext/groonga/rb-grn-encoding.o
|
174
184
|
- ext/groonga/rb-grn-exception.c
|
185
|
+
- ext/groonga/rb-grn-exception.o
|
175
186
|
- ext/groonga/rb-grn-expression-builder.c
|
187
|
+
- ext/groonga/rb-grn-expression-builder.o
|
176
188
|
- ext/groonga/rb-grn-expression.c
|
189
|
+
- ext/groonga/rb-grn-expression.o
|
177
190
|
- ext/groonga/rb-grn-fix-size-column.c
|
191
|
+
- ext/groonga/rb-grn-fix-size-column.o
|
178
192
|
- ext/groonga/rb-grn-hash-cursor.c
|
193
|
+
- ext/groonga/rb-grn-hash-cursor.o
|
179
194
|
- ext/groonga/rb-grn-hash.c
|
195
|
+
- ext/groonga/rb-grn-hash.o
|
180
196
|
- ext/groonga/rb-grn-index-column.c
|
197
|
+
- ext/groonga/rb-grn-index-column.o
|
181
198
|
- ext/groonga/rb-grn-index-cursor.c
|
199
|
+
- ext/groonga/rb-grn-index-cursor.o
|
182
200
|
- ext/groonga/rb-grn-logger.c
|
201
|
+
- ext/groonga/rb-grn-logger.o
|
183
202
|
- ext/groonga/rb-grn-object.c
|
203
|
+
- ext/groonga/rb-grn-object.o
|
184
204
|
- ext/groonga/rb-grn-operator.c
|
205
|
+
- ext/groonga/rb-grn-operator.o
|
185
206
|
- ext/groonga/rb-grn-patricia-trie-cursor.c
|
207
|
+
- ext/groonga/rb-grn-patricia-trie-cursor.o
|
186
208
|
- ext/groonga/rb-grn-patricia-trie.c
|
209
|
+
- ext/groonga/rb-grn-patricia-trie.o
|
187
210
|
- ext/groonga/rb-grn-plugin.c
|
211
|
+
- ext/groonga/rb-grn-plugin.o
|
188
212
|
- ext/groonga/rb-grn-posting.c
|
213
|
+
- ext/groonga/rb-grn-posting.o
|
189
214
|
- ext/groonga/rb-grn-procedure.c
|
215
|
+
- ext/groonga/rb-grn-procedure.o
|
190
216
|
- ext/groonga/rb-grn-query.c
|
217
|
+
- ext/groonga/rb-grn-query.o
|
191
218
|
- ext/groonga/rb-grn-record.c
|
219
|
+
- ext/groonga/rb-grn-record.o
|
192
220
|
- ext/groonga/rb-grn-snippet.c
|
221
|
+
- ext/groonga/rb-grn-snippet.o
|
193
222
|
- ext/groonga/rb-grn-table-cursor-key-support.c
|
223
|
+
- ext/groonga/rb-grn-table-cursor-key-support.o
|
194
224
|
- ext/groonga/rb-grn-table-cursor.c
|
225
|
+
- ext/groonga/rb-grn-table-cursor.o
|
195
226
|
- ext/groonga/rb-grn-table-key-support.c
|
227
|
+
- ext/groonga/rb-grn-table-key-support.o
|
196
228
|
- ext/groonga/rb-grn-table.c
|
229
|
+
- ext/groonga/rb-grn-table.o
|
197
230
|
- ext/groonga/rb-grn-type.c
|
231
|
+
- ext/groonga/rb-grn-type.o
|
198
232
|
- ext/groonga/rb-grn-utils.c
|
233
|
+
- ext/groonga/rb-grn-utils.o
|
199
234
|
- ext/groonga/rb-grn-variable-size-column.c
|
235
|
+
- ext/groonga/rb-grn-variable-size-column.o
|
200
236
|
- ext/groonga/rb-grn-variable.c
|
237
|
+
- ext/groonga/rb-grn-variable.o
|
201
238
|
- ext/groonga/rb-grn-view-accessor.c
|
239
|
+
- ext/groonga/rb-grn-view-accessor.o
|
202
240
|
- ext/groonga/rb-grn-view-cursor.c
|
241
|
+
- ext/groonga/rb-grn-view-cursor.o
|
203
242
|
- ext/groonga/rb-grn-view-record.c
|
243
|
+
- ext/groonga/rb-grn-view-record.o
|
204
244
|
- ext/groonga/rb-grn-view.c
|
245
|
+
- ext/groonga/rb-grn-view.o
|
205
246
|
- ext/groonga/rb-grn.h
|
206
247
|
- ext/groonga/rb-groonga.c
|
248
|
+
- ext/groonga/rb-groonga.o
|
207
249
|
- extconf.rb
|
208
250
|
- lib/groonga.rb
|
209
251
|
- lib/groonga/context.rb
|
210
252
|
- lib/groonga/dumper.rb
|
253
|
+
- lib/groonga/expression-builder-19.rb
|
211
254
|
- lib/groonga/expression-builder.rb
|
212
255
|
- lib/groonga/pagination.rb
|
213
256
|
- lib/groonga/patricia-trie.rb
|
@@ -219,52 +262,53 @@ files:
|
|
219
262
|
- rroonga-build.rb
|
220
263
|
- README.textile
|
221
264
|
- TODO
|
265
|
+
- test/test-database.rb
|
266
|
+
- test/test-array.rb
|
267
|
+
- test/test-table-offset-and-limit.rb
|
268
|
+
- test/run-test.rb
|
269
|
+
- test/test-schema-type.rb
|
222
270
|
- test/test-remote.rb
|
223
271
|
- test/test-table-cursor.rb
|
224
|
-
- test/test-
|
225
|
-
- test/test-database-dumper.rb
|
226
|
-
- test/test-index-column.rb
|
227
|
-
- test/test-context-select.rb
|
228
|
-
- test/groonga-test-utils.rb
|
229
|
-
- test/test-pagination.rb
|
230
|
-
- test/test-table.rb
|
231
|
-
- test/test-variable-size-column.rb
|
232
|
-
- test/test-plugin.rb
|
233
|
-
- test/test-hash.rb
|
272
|
+
- test/test-table-select.rb
|
234
273
|
- test/test-encoding.rb
|
235
|
-
- test/test-schema-create-table.rb
|
236
274
|
- test/test-type.rb
|
237
|
-
- test/test-
|
238
|
-
- test/test-
|
239
|
-
- test/test-table-select.rb
|
240
|
-
- test/test-patricia-trie.rb
|
275
|
+
- test/test-table.rb
|
276
|
+
- test/test-query.rb
|
277
|
+
- test/test-table-select-weight.rb
|
241
278
|
- test/test-expression-builder.rb
|
242
|
-
- test/test-
|
243
|
-
- test/test-
|
244
|
-
- test/test-
|
245
|
-
- test/test-column.rb
|
246
|
-
- test/test-fix-size-column.rb
|
247
|
-
- test/run-test.rb
|
279
|
+
- test/test-exception.rb
|
280
|
+
- test/test-plugin.rb
|
281
|
+
- test/test-schema-view.rb
|
248
282
|
- test/test-procedure.rb
|
283
|
+
- test/test-snippet.rb
|
284
|
+
- test/groonga-test-utils.rb
|
285
|
+
- test/test-variable-size-column.rb
|
286
|
+
- test/test-database-dumper.rb
|
287
|
+
- test/test-pagination.rb
|
288
|
+
- test/test-variable.rb
|
289
|
+
- test/test-version.rb
|
249
290
|
- test/test-table-dumper.rb
|
250
|
-
- test/test-
|
291
|
+
- test/test-vector-column.rb
|
292
|
+
- test/test-schema-dumper.rb
|
293
|
+
- test/test-hash.rb
|
294
|
+
- test/test-logger.rb
|
251
295
|
- test/test-view.rb
|
296
|
+
- test/test-schema.rb
|
297
|
+
- test/test-accessor.rb
|
252
298
|
- test/test-table-select-mecab.rb
|
253
299
|
- test/test-table-select-normalize.rb
|
254
|
-
- test/test-expression.rb
|
255
|
-
- test/test-vector-column.rb
|
256
|
-
- test/test-version.rb
|
257
|
-
- test/test-schema-view.rb
|
258
300
|
- test/test-index-cursor.rb
|
259
|
-
- test/test-
|
260
|
-
- test/test-schema-
|
261
|
-
- test/test-
|
262
|
-
- test/test-
|
263
|
-
- test/test-table-select-weight.rb
|
301
|
+
- test/test-fix-size-column.rb
|
302
|
+
- test/test-schema-create-table.rb
|
303
|
+
- test/test-context-select.rb
|
304
|
+
- test/test-expression.rb
|
264
305
|
- test/test-gqtp.rb
|
265
306
|
- test/test-context.rb
|
266
|
-
- test/test-
|
267
|
-
- test/test-
|
307
|
+
- test/test-record.rb
|
308
|
+
- test/test-column.rb
|
309
|
+
- test/test-index-column.rb
|
310
|
+
- test/test-patricia-trie.rb
|
311
|
+
has_rdoc: true
|
268
312
|
homepage: http://groonga.rubyforge.org/
|
269
313
|
licenses:
|
270
314
|
- LGPLv2
|
@@ -294,54 +338,54 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
294
338
|
requirements: []
|
295
339
|
|
296
340
|
rubyforge_project: groonga
|
297
|
-
rubygems_version: 1.7
|
341
|
+
rubygems_version: 1.3.7
|
298
342
|
signing_key:
|
299
343
|
specification_version: 3
|
300
344
|
summary: Ruby bindings for groonga that provide full text search and column store features.
|
301
345
|
test_files:
|
346
|
+
- test/test-database.rb
|
347
|
+
- test/test-array.rb
|
348
|
+
- test/test-table-offset-and-limit.rb
|
349
|
+
- test/run-test.rb
|
350
|
+
- test/test-schema-type.rb
|
302
351
|
- test/test-remote.rb
|
303
352
|
- test/test-table-cursor.rb
|
304
|
-
- test/test-
|
305
|
-
- test/test-database-dumper.rb
|
306
|
-
- test/test-index-column.rb
|
307
|
-
- test/test-context-select.rb
|
308
|
-
- test/groonga-test-utils.rb
|
309
|
-
- test/test-pagination.rb
|
310
|
-
- test/test-table.rb
|
311
|
-
- test/test-variable-size-column.rb
|
312
|
-
- test/test-plugin.rb
|
313
|
-
- test/test-hash.rb
|
353
|
+
- test/test-table-select.rb
|
314
354
|
- test/test-encoding.rb
|
315
|
-
- test/test-schema-create-table.rb
|
316
355
|
- test/test-type.rb
|
317
|
-
- test/test-
|
318
|
-
- test/test-
|
319
|
-
- test/test-table-select.rb
|
320
|
-
- test/test-patricia-trie.rb
|
356
|
+
- test/test-table.rb
|
357
|
+
- test/test-query.rb
|
358
|
+
- test/test-table-select-weight.rb
|
321
359
|
- test/test-expression-builder.rb
|
322
|
-
- test/test-
|
323
|
-
- test/test-
|
324
|
-
- test/test-
|
325
|
-
- test/test-column.rb
|
326
|
-
- test/test-fix-size-column.rb
|
327
|
-
- test/run-test.rb
|
360
|
+
- test/test-exception.rb
|
361
|
+
- test/test-plugin.rb
|
362
|
+
- test/test-schema-view.rb
|
328
363
|
- test/test-procedure.rb
|
364
|
+
- test/test-snippet.rb
|
365
|
+
- test/groonga-test-utils.rb
|
366
|
+
- test/test-variable-size-column.rb
|
367
|
+
- test/test-database-dumper.rb
|
368
|
+
- test/test-pagination.rb
|
369
|
+
- test/test-variable.rb
|
370
|
+
- test/test-version.rb
|
329
371
|
- test/test-table-dumper.rb
|
330
|
-
- test/test-
|
372
|
+
- test/test-vector-column.rb
|
373
|
+
- test/test-schema-dumper.rb
|
374
|
+
- test/test-hash.rb
|
375
|
+
- test/test-logger.rb
|
331
376
|
- test/test-view.rb
|
377
|
+
- test/test-schema.rb
|
378
|
+
- test/test-accessor.rb
|
332
379
|
- test/test-table-select-mecab.rb
|
333
380
|
- test/test-table-select-normalize.rb
|
334
|
-
- test/test-expression.rb
|
335
|
-
- test/test-vector-column.rb
|
336
|
-
- test/test-version.rb
|
337
|
-
- test/test-schema-view.rb
|
338
381
|
- test/test-index-cursor.rb
|
339
|
-
- test/test-
|
340
|
-
- test/test-schema-
|
341
|
-
- test/test-
|
342
|
-
- test/test-
|
343
|
-
- test/test-table-select-weight.rb
|
382
|
+
- test/test-fix-size-column.rb
|
383
|
+
- test/test-schema-create-table.rb
|
384
|
+
- test/test-context-select.rb
|
385
|
+
- test/test-expression.rb
|
344
386
|
- test/test-gqtp.rb
|
345
387
|
- test/test-context.rb
|
346
|
-
- test/test-
|
347
|
-
- test/test-
|
388
|
+
- test/test-record.rb
|
389
|
+
- test/test-column.rb
|
390
|
+
- test/test-index-column.rb
|
391
|
+
- test/test-patricia-trie.rb
|