/* * _database_ がロックされていれば +true+ を返す。 * * @overload locked? */ static VALUE rb_grn_database_is_locked (VALUE self) { grn_ctx *context; grn_obj *database; rb_grn_database_deconstruct(SELF(self), &database, &context, NULL, NULL, NULL, NULL); return CBOOL2RVAL(grn_obj_is_locked(context, database)); }
static mrb_value mrb_grn_table_is_locked(mrb_state *mrb, mrb_value self) { grn_ctx *ctx = (grn_ctx *)mrb->ud; unsigned int is_locked; is_locked = grn_obj_is_locked(ctx, DATA_PTR(self)); grn_mrb_ctx_check(mrb); return mrb_bool_value(is_locked != 0); }
/* * Document-method: locked? * * call-seq: * column.locked?(options={}) * * _column_がロックされていれば+true+を返す。 * * 利用可能なオプションは以下の通り。 * * [_:id_] * _:id_で指定したレコードがロックされていれば+true+を返す。 * (注: groonga側が未実装のため、現在は無視される。実装さ * れるのではないかと思っているが、実装されないかもしれな * い。) */ static VALUE rb_grn_column_is_locked (int argc, VALUE *argv, VALUE self) { grn_id id = GRN_ID_NIL; grn_ctx *context; grn_obj *column; VALUE options, rb_id; rb_scan_args(argc, argv, "01", &options); rb_grn_column_deconstruct(SELF(self), &column, &context, NULL, NULL, NULL, NULL, NULL); rb_grn_scan_options(options, "id", &rb_id, NULL); if (!NIL_P(rb_id)) id = NUM2UINT(rb_id); return CBOOL2RVAL(grn_obj_is_locked(context, column)); }