Skip to content

meebey/leveldb-sharp

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.

leveldb-sharp is a portable C# binding for the C API of the LevelDB library.

To support the most reach leveldb-sharp is available under the 3-clause BSD license, which is the same license LevelDB uses.

leveldb-sharp uses the C API instead of the C++ API for portability. Using C++/CLI would have been the direct route but it is currently not portable outside of Windows. As I use the binding for Smuxi which targets Linux, Windows and OS X, the C API was the better pick.

Features

leveldb-sharp offers:

  • low-level function calls to LevelDB
  • high-level object oriented API with .NET enrichments (IEnumerable, IDisposable)
    • DB API
    • ReadOptions/WriteOptions/Options API
    • Write batch API
    • Iterator API
    • Cache API
    • Snapshot API
    • Compact range API
  • Allows combined use of low-level and high-level APIs
  • NUnit test-case coverage

Limitations

Currently leveldb-sharp lacks:

  • comparator API (unsafe code? no thanks...)

Download

Projects using leveldb-sharp