资源简介
leveldb 源码,源于google 官方github 源码,解压缩即可
代码片段和文件信息
/* Copyright (c) 2011 The LevelDB Authors. All rights reserved.
Use of this source code is governed by a BSD-style license that can be
found in the LICENSE file. See the AUTHORS file for names of contributors. */
#include “leveldb/c.h“
#include “leveldb/options.h“
#include “port/port.h“
#include
#include
#include
#include
#include
#include
using leveldb::ValueType;
struct leveldb_keymetadata_t { leveldb::KeymetaData rep; };
const char* phase = ““;
static char dbname[200];
static leveldb::ExpiryTimeMicros gStartTime;
static void StartPhase(const char* name) {
fprintf(stderr “=== Test %s\n“ name);
phase = name;
}
static const char* GetTempDir(void) {
const char* ret = getenv(“TEST_TMPDIR“);
if (ret == NULL || ret[0] == ‘\0‘)
ret = “/tmp“;
return ret;
}
#define CheckNoError(err) \
if ((err) != NULL) { \
fprintf(stderr “%s:%d: %s: %s\n“ __FILE__ __LINE__ phase (err)); \
abort(); \
}
#define CheckCondition(cond) \
if (!(cond)) { \
fprintf(stderr “%s:%d: %s: %s\n“ __FILE__ __LINE__ phase #cond); \
abort(); \
}
static void CheckEqual(const char* expected const char* v size_t n) {
if (expected == NULL && v == NULL) {
// ok
} else if (expected != NULL && v != NULL && n == strlen(expected) &&
memcmp(expected v n) == 0) {
// ok
return;
} else {
fprintf(stderr “%s: expected ‘%s‘ got ‘%s‘\n“
phase
(expected ? expected : “(null)“)
(v ? v : “(null)“));
abort();
}
}
static void Free(char** ptr) {
if (*ptr) {
free(*ptr);
*ptr = NULL;
}
}
static void CheckGet(
leveldb_t* db
const leveldb_readoptions_t* options
const char* key
const char* expected) {
char* err = NULL;
size_t val_len;
char* val;
val = leveldb_get(db options key strlen(key) &val_len &err);
CheckNoError(err);
CheckEqual(expected val val_len);
Free(&val);
}
static void CheckIter(leveldb_iterator_t* iter
const char* key const char* val) {
size_t len;
const char* str;
str = leveldb_iter_key(iter &len);
CheckEqual(key str len);
str = leveldb_iter_value(iter &len);
CheckEqual(val str len);
}
// Callback from leveldb_writebatch_iterate()
static void CheckPut(void* ptr
const char* k size_t klen
const char* v size_t vlen) {
int* state = (int*) ptr;
CheckCondition(*state < 2);
switch (*state) {
case 0:
CheckEqual(“bar“ k klen);
CheckEqual(“b“ v vlen);
break;
case 1:
CheckEqual(“box“ k klen);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2017-03-16 20:21 leveldb-develop\
文件 150 2017-03-16 20:21 leveldb-develop\.gitignore
文件 83 2017-03-16 20:21 leveldb-develop\.gitmodules
文件 93 2017-03-16 20:21 leveldb-develop\.travis.yml
文件 193 2017-03-16 20:21 leveldb-develop\AUTHORS
文件 3153 2017-03-16 20:21 leveldb-develop\BASHO_RELEASES
文件 1484 2017-03-16 20:21 leveldb-develop\LICENSE
文件 6834 2017-03-16 20:21 leveldb-develop\Makefile
文件 509 2017-03-16 20:21 leveldb-develop\NEWS
文件 3092 2017-03-16 20:21 leveldb-develop\README
文件 1713 2017-03-16 20:21 leveldb-develop\README.GOOGLE
文件 494 2017-03-16 20:21 leveldb-develop\TODO
文件 7735 2017-03-16 20:21 leveldb-develop\build_detect_platform
目录 0 2017-03-16 20:21 leveldb-develop\db\
文件 3799 2017-03-16 20:21 leveldb-develop\db\builder.cc
文件 1247 2017-03-16 20:21 leveldb-develop\db\builder.h
文件 18150 2017-03-16 20:21 leveldb-develop\db\c.cc
文件 18218 2017-03-16 20:21 leveldb-develop\db\c_test.c
文件 10708 2017-03-16 20:21 leveldb-develop\db\corruption_test.cc
文件 29994 2017-03-16 20:21 leveldb-develop\db\db_bench.cc
文件 73668 2017-03-16 20:21 leveldb-develop\db\db_impl.cc
文件 9091 2017-03-16 20:21 leveldb-develop\db\db_impl.h
文件 9620 2017-03-16 20:21 leveldb-develop\db\db_iter.cc
文件 871 2017-03-16 20:21 leveldb-develop\db\db_iter.h
文件 60276 2017-03-16 20:21 leveldb-develop\db\db_test.cc
文件 9656 2017-03-16 20:21 leveldb-develop\db\dbformat.cc
文件 12988 2017-03-16 20:21 leveldb-develop\db\dbformat.h
文件 3994 2017-03-16 20:21 leveldb-develop\db\dbformat_test.cc
文件 8899 2017-03-16 20:21 leveldb-develop\db\filename.cc
文件 4066 2017-03-16 20:21 leveldb-develop\db\filename.h
文件 6070 2017-03-16 20:21 leveldb-develop\db\filename_test.cc
............此处省略168个文件信息
- 上一篇:蚁群聚类算法研究综述
- 下一篇:利用qt creator 实现的mp3的功能,有界面
相关资源
- wifidog官方源码
- 小清新网站模板源码
- 微信公众号生成推广二维码源码
- 骷髅头硬盘锁源码
- unity项目源码 仿dnf demo
- 由unity3d开发的《最后一战》手游全套
- OA办公自动化项目源码及视频讲解教程
- OpenGL编程指南(第八版)中文高清晰
- unity3D5.x 游戏开发技术详解与典型案例
- osg视频教程
- 三种方法实现图像的分割含程序源码
- 汇编语言写的时钟小程序
- 小程序源码 仿百度小说
- vc播放avi的源程序
- Saliency Detection with Multi-Scale Superpixel
- Saliency Detection via Absorbing Markov Chain 中
- libtpm源码
- Proteus的LCD19264A仿真模型和源码
- 教育小程序视频版
- 基于Huffman树的文件压缩C源码
- 纯Win32 API 编写的截图小工具
- QT 使用飞秋协议与飞秋通信源码
- 基于webgis的系统源码
- AJAX级联下拉框源码
- JPEG2000图像编解码 源码
- spring mvc 项目源码 + 完整环境配置详细
- funcode坦克大战源码
- TCC(Tiny C Compiler)0.9.26源码 VS版工程
- TCC(Tiny C Compiler)0.9.26源码 VS版工程
- B2C电子商务网站系统源码
评论
共有 条评论