static mrb_value hdb_copy(mrb_state *mrb, mrb_value self) { hdb_context *context = DATA_PTR(self); char *path; mrb_get_args(mrb, "z", &path); return mrb_bool_value(tchdbcopy(context->hdb, path)); }
/* copy */ JNIEXPORT jboolean JNICALL Java_tokyocabinet_HDB_copy (JNIEnv *env, jobject self, jstring path){ if(!path){ throwillarg(env); return false; } TCHDB *hdb = (TCHDB *)(intptr_t)(*env)->GetLongField(env, self, hdb_fid_ptr); jboolean icp; const char *tpath = (*env)->GetStringUTFChars(env, path, &icp); if(!tpath){ throwoutmem(env); return false; } bool rv = tchdbcopy(hdb, tpath); if(icp) (*env)->ReleaseStringUTFChars(env, path, tpath); return rv; }