rroonga 1.2.7 → 1.2.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|