summaryrefslogtreecommitdiff
path: root/helpers/memenv/memenv.h
diff options
context:
space:
mode:
authorHans Wennborg <hans@chromium.org>2011-09-12 10:21:10 +0100
committerHans Wennborg <hans@chromium.org>2011-09-12 10:21:10 +0100
commit213a68eb68ece93a8915ef18a8eba920d5a924a4 (patch)
tree392a4087dc91ee8f2fae8a06705a53c847afa046 /helpers/memenv/memenv.h
parent72630236513e7384cb0a2e8fffcae232135a5adc (diff)
downloadleveldb-213a68eb68ece93a8915ef18a8eba920d5a924a4.tar.gz
Sync with upstream @23860137.
Fix GCC -Wshadow warnings in LevelDB's public header files, reported by Dustin. Add in-memory Env implementation (helpers/memenv/*). This enables users to create LevelDB databases in-memory. Initialize ShardedLRUCache::last_id_ to zero. This fixes a Valgrind warning. (Also delete port/sha1_* which were removed upstream some time ago.)
Diffstat (limited to 'helpers/memenv/memenv.h')
-rw-r--r--helpers/memenv/memenv.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/helpers/memenv/memenv.h b/helpers/memenv/memenv.h
new file mode 100644
index 0000000..835b944
--- /dev/null
+++ b/helpers/memenv/memenv.h
@@ -0,0 +1,20 @@
+// 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.
+
+#ifndef STORAGE_LEVELDB_HELPERS_MEMENV_MEMENV_H_
+#define STORAGE_LEVELDB_HELPERS_MEMENV_MEMENV_H_
+
+namespace leveldb {
+
+class Env;
+
+// Returns a new environment that stores its data in memory and delegates
+// all non-file-storage tasks to base_env. The caller must delete the result
+// when it is no longer needed.
+// *base_env must remain live while the result is in use.
+Env* NewMemEnv(Env* base_env);
+
+}
+
+#endif // STORAGE_LEVELDB_HELPERS_MEMENV_MEMENV_H_