leveldb-ruby 0.14 → 0.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/LICENSE +24 -0
- data/README +60 -16
- data/ext/leveldb/extconf.rb +1 -1
- data/ext/leveldb/leveldb.cc +187 -18
- data/leveldb/Makefile +82 -96
- data/leveldb/build_detect_platform +137 -51
- data/leveldb/db/c.cc +110 -0
- data/leveldb/db/db_bench.cc +105 -4
- data/leveldb/db/db_impl.cc +135 -45
- data/leveldb/db/db_impl.h +12 -10
- data/leveldb/db/db_test.cc +666 -431
- data/leveldb/db/dbformat.cc +20 -0
- data/leveldb/db/dbformat.h +12 -0
- data/leveldb/db/repair.cc +3 -1
- data/leveldb/db/skiplist.h +2 -1
- data/leveldb/db/table_cache.cc +42 -16
- data/leveldb/db/table_cache.h +11 -0
- data/leveldb/db/version_set.cc +46 -41
- data/leveldb/db/version_set.h +9 -0
- data/leveldb/db/write_batch.cc +13 -4
- data/leveldb/db/write_batch_internal.h +2 -0
- data/leveldb/db/write_batch_test.cc +31 -0
- data/leveldb/include/leveldb/c.h +29 -0
- data/leveldb/include/leveldb/db.h +2 -1
- data/leveldb/include/leveldb/filter_policy.h +70 -0
- data/leveldb/include/leveldb/options.h +8 -0
- data/leveldb/include/leveldb/status.h +6 -0
- data/leveldb/include/leveldb/table.h +15 -0
- data/leveldb/include/leveldb/table_builder.h +1 -0
- data/leveldb/port/atomic_pointer.h +13 -5
- data/leveldb/port/port.h +0 -2
- data/leveldb/port/port_example.h +10 -0
- data/leveldb/port/port_posix.cc +4 -0
- data/leveldb/port/port_posix.h +24 -9
- data/leveldb/table/block.cc +8 -4
- data/leveldb/table/block.h +3 -2
- data/leveldb/table/filter_block.cc +111 -0
- data/leveldb/table/filter_block.h +68 -0
- data/leveldb/table/filter_block_test.cc +128 -0
- data/leveldb/table/format.cc +17 -7
- data/leveldb/table/format.h +9 -4
- data/leveldb/table/table.cc +107 -6
- data/leveldb/table/table_builder.cc +49 -6
- data/leveldb/table/table_test.cc +8 -24
- data/leveldb/util/bloom.cc +95 -0
- data/leveldb/util/bloom_test.cc +159 -0
- data/leveldb/util/coding_test.cc +23 -0
- data/leveldb/util/comparator.cc +8 -3
- data/leveldb/util/env_posix.cc +46 -4
- data/leveldb/util/filter_policy.cc +11 -0
- data/leveldb/util/options.cc +2 -1
- data/lib/leveldb.rb +31 -5
- metadata +227 -109
- data/leveldb/port/port_android.cc +0 -64
- data/leveldb/port/port_android.h +0 -156
data/leveldb/util/coding_test.cc
CHANGED
@@ -51,6 +51,29 @@ TEST(Coding, Fixed64) {
|
|
51
51
|
}
|
52
52
|
}
|
53
53
|
|
54
|
+
// Test that encoding routines generate little-endian encodings
|
55
|
+
TEST(Coding, EncodingOutput) {
|
56
|
+
std::string dst;
|
57
|
+
PutFixed32(&dst, 0x04030201);
|
58
|
+
ASSERT_EQ(4, dst.size());
|
59
|
+
ASSERT_EQ(0x01, static_cast<int>(dst[0]));
|
60
|
+
ASSERT_EQ(0x02, static_cast<int>(dst[1]));
|
61
|
+
ASSERT_EQ(0x03, static_cast<int>(dst[2]));
|
62
|
+
ASSERT_EQ(0x04, static_cast<int>(dst[3]));
|
63
|
+
|
64
|
+
dst.clear();
|
65
|
+
PutFixed64(&dst, 0x0807060504030201ull);
|
66
|
+
ASSERT_EQ(8, dst.size());
|
67
|
+
ASSERT_EQ(0x01, static_cast<int>(dst[0]));
|
68
|
+
ASSERT_EQ(0x02, static_cast<int>(dst[1]));
|
69
|
+
ASSERT_EQ(0x03, static_cast<int>(dst[2]));
|
70
|
+
ASSERT_EQ(0x04, static_cast<int>(dst[3]));
|
71
|
+
ASSERT_EQ(0x05, static_cast<int>(dst[4]));
|
72
|
+
ASSERT_EQ(0x06, static_cast<int>(dst[5]));
|
73
|
+
ASSERT_EQ(0x07, static_cast<int>(dst[6]));
|
74
|
+
ASSERT_EQ(0x08, static_cast<int>(dst[7]));
|
75
|
+
}
|
76
|
+
|
54
77
|
TEST(Coding, Varint32) {
|
55
78
|
std::string s;
|
56
79
|
for (uint32_t i = 0; i < (32 * 32); i++) {
|
data/leveldb/util/comparator.cc
CHANGED
@@ -6,6 +6,7 @@
|
|
6
6
|
#include <stdint.h>
|
7
7
|
#include "leveldb/comparator.h"
|
8
8
|
#include "leveldb/slice.h"
|
9
|
+
#include "port/port.h"
|
9
10
|
#include "util/logging.h"
|
10
11
|
|
11
12
|
namespace leveldb {
|
@@ -65,11 +66,15 @@ class BytewiseComparatorImpl : public Comparator {
|
|
65
66
|
};
|
66
67
|
} // namespace
|
67
68
|
|
68
|
-
|
69
|
-
|
70
|
-
|
69
|
+
static port::OnceType once = LEVELDB_ONCE_INIT;
|
70
|
+
static const Comparator* bytewise;
|
71
|
+
|
72
|
+
static void InitModule() {
|
73
|
+
bytewise = new BytewiseComparatorImpl;
|
74
|
+
}
|
71
75
|
|
72
76
|
const Comparator* BytewiseComparator() {
|
77
|
+
port::InitOnce(&once, InitModule);
|
73
78
|
return bytewise;
|
74
79
|
}
|
75
80
|
|
data/leveldb/util/env_posix.cc
CHANGED
@@ -66,6 +66,7 @@ class PosixSequentialFile: public SequentialFile {
|
|
66
66
|
}
|
67
67
|
};
|
68
68
|
|
69
|
+
// pread() based random-access
|
69
70
|
class PosixRandomAccessFile: public RandomAccessFile {
|
70
71
|
private:
|
71
72
|
std::string filename_;
|
@@ -89,6 +90,32 @@ class PosixRandomAccessFile: public RandomAccessFile {
|
|
89
90
|
}
|
90
91
|
};
|
91
92
|
|
93
|
+
// mmap() based random-access
|
94
|
+
class PosixMmapReadableFile: public RandomAccessFile {
|
95
|
+
private:
|
96
|
+
std::string filename_;
|
97
|
+
void* mmapped_region_;
|
98
|
+
size_t length_;
|
99
|
+
|
100
|
+
public:
|
101
|
+
// base[0,length-1] contains the mmapped contents of the file.
|
102
|
+
PosixMmapReadableFile(const std::string& fname, void* base, size_t length)
|
103
|
+
: filename_(fname), mmapped_region_(base), length_(length) { }
|
104
|
+
virtual ~PosixMmapReadableFile() { munmap(mmapped_region_, length_); }
|
105
|
+
|
106
|
+
virtual Status Read(uint64_t offset, size_t n, Slice* result,
|
107
|
+
char* scratch) const {
|
108
|
+
Status s;
|
109
|
+
if (offset + n > length_) {
|
110
|
+
*result = Slice();
|
111
|
+
s = IOError(filename_, EINVAL);
|
112
|
+
} else {
|
113
|
+
*result = Slice(reinterpret_cast<char*>(mmapped_region_) + offset, n);
|
114
|
+
}
|
115
|
+
return s;
|
116
|
+
}
|
117
|
+
};
|
118
|
+
|
92
119
|
// We preallocate up to an extra megabyte and use memcpy to append new
|
93
120
|
// data to the file. This is safe since we either properly close the
|
94
121
|
// file before reading from it, or for log files, the reading code
|
@@ -297,13 +324,28 @@ class PosixEnv : public Env {
|
|
297
324
|
|
298
325
|
virtual Status NewRandomAccessFile(const std::string& fname,
|
299
326
|
RandomAccessFile** result) {
|
327
|
+
*result = NULL;
|
328
|
+
Status s;
|
300
329
|
int fd = open(fname.c_str(), O_RDONLY);
|
301
330
|
if (fd < 0) {
|
302
|
-
|
303
|
-
|
331
|
+
s = IOError(fname, errno);
|
332
|
+
} else if (sizeof(void*) >= 8) {
|
333
|
+
// Use mmap when virtual address-space is plentiful.
|
334
|
+
uint64_t size;
|
335
|
+
s = GetFileSize(fname, &size);
|
336
|
+
if (s.ok()) {
|
337
|
+
void* base = mmap(NULL, size, PROT_READ, MAP_SHARED, fd, 0);
|
338
|
+
if (base != MAP_FAILED) {
|
339
|
+
*result = new PosixMmapReadableFile(fname, base, size);
|
340
|
+
} else {
|
341
|
+
s = IOError(fname, errno);
|
342
|
+
}
|
343
|
+
}
|
344
|
+
close(fd);
|
345
|
+
} else {
|
346
|
+
*result = new PosixRandomAccessFile(fname, fd);
|
304
347
|
}
|
305
|
-
|
306
|
-
return Status::OK();
|
348
|
+
return s;
|
307
349
|
}
|
308
350
|
|
309
351
|
virtual Status NewWritableFile(const std::string& fname,
|
@@ -0,0 +1,11 @@
|
|
1
|
+
// Copyright (c) 2012 The LevelDB Authors. All rights reserved.
|
2
|
+
// Use of this source code is governed by a BSD-style license that can be
|
3
|
+
// found in the LICENSE file. See the AUTHORS file for names of contributors.
|
4
|
+
|
5
|
+
#include "leveldb/filter_policy.h"
|
6
|
+
|
7
|
+
namespace leveldb {
|
8
|
+
|
9
|
+
FilterPolicy::~FilterPolicy() { }
|
10
|
+
|
11
|
+
} // namespace leveldb
|
data/leveldb/util/options.cc
CHANGED
data/lib/leveldb.rb
CHANGED
@@ -6,20 +6,29 @@ class DB
|
|
6
6
|
class << self
|
7
7
|
## Loads or creates a LevelDB database as necessary, stored on disk at
|
8
8
|
## +pathname+.
|
9
|
-
|
10
|
-
|
9
|
+
##
|
10
|
+
## See #make for possible options.
|
11
|
+
def new pathname, options={}
|
12
|
+
make path_string(pathname),
|
13
|
+
options.merge(:create_if_missing => true,
|
14
|
+
:error_if_exists => false)
|
11
15
|
end
|
12
16
|
|
13
17
|
## Creates a new LevelDB database stored on disk at +pathname+. Throws an
|
14
18
|
## exception if the database already exists.
|
15
|
-
|
16
|
-
|
19
|
+
##
|
20
|
+
## See #make for possible options.
|
21
|
+
def create pathname, options={}
|
22
|
+
make path_string(pathname),
|
23
|
+
options.merge(:create_if_missing => true,
|
24
|
+
:error_if_exists => true)
|
17
25
|
end
|
18
26
|
|
19
27
|
## Loads a LevelDB database stored on disk at +pathname+. Throws an
|
20
28
|
## exception unless the database already exists.
|
21
29
|
def load pathname
|
22
|
-
make path_string(pathname),
|
30
|
+
make path_string(pathname),
|
31
|
+
{ :create_if_missing => false, :error_if_exists => false }
|
23
32
|
end
|
24
33
|
|
25
34
|
private
|
@@ -31,12 +40,14 @@ class DB
|
|
31
40
|
end
|
32
41
|
|
33
42
|
attr_reader :pathname
|
43
|
+
attr_reader :options
|
34
44
|
|
35
45
|
alias :includes? :exists?
|
36
46
|
alias :contains? :exists?
|
37
47
|
alias :member? :exists?
|
38
48
|
alias :[] :get
|
39
49
|
alias :[]= :put
|
50
|
+
alias :close! :close
|
40
51
|
|
41
52
|
def each(*args, &block)
|
42
53
|
i = iterator(*args)
|
@@ -73,4 +84,19 @@ class WriteBatch
|
|
73
84
|
private :new
|
74
85
|
end
|
75
86
|
end
|
87
|
+
|
88
|
+
class Options
|
89
|
+
DEFAULT_MAX_OPEN_FILES = 1000
|
90
|
+
DEFAULT_WRITE_BUFFER_SIZE = 4 * 1024 * 1024
|
91
|
+
DEFAULT_BLOCK_SIZE = 4 * 1024
|
92
|
+
DEFAULT_BLOCK_RESTART_INTERVAL = 16
|
93
|
+
DEFAULT_COMPRESSION = LevelDB::CompressionType::SnappyCompression
|
94
|
+
|
95
|
+
attr_reader :create_if_missing, :error_if_exists,
|
96
|
+
:block_cache_size, :paranoid_checks,
|
97
|
+
:write_buffer_size, :max_open_files,
|
98
|
+
:block_size, :block_restart_interval,
|
99
|
+
:compression
|
100
|
+
end
|
101
|
+
|
76
102
|
end # module LevelDB
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: leveldb-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: '0.
|
4
|
+
version: '0.15'
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-06-25 00:00:00.000000000 Z
|
13
13
|
dependencies: []
|
14
14
|
description: LevelDB-Ruby is a Ruby binding to LevelDB.
|
15
15
|
email: wmorgan-leveldb-ruby-gemspec@masanjin.net
|
@@ -21,119 +21,237 @@ extra_rdoc_files:
|
|
21
21
|
- ext/leveldb/leveldb.cc
|
22
22
|
files:
|
23
23
|
- README
|
24
|
+
- LICENSE
|
24
25
|
- ext/leveldb/extconf.rb
|
25
26
|
- ext/leveldb/platform.rb
|
26
27
|
- lib/leveldb.rb
|
27
28
|
- ext/leveldb/leveldb.cc
|
28
29
|
- leveldb/Makefile
|
29
30
|
- leveldb/build_detect_platform
|
30
|
-
-
|
31
|
-
|
32
|
-
-
|
33
|
-
|
34
|
-
-
|
35
|
-
|
36
|
-
-
|
37
|
-
|
38
|
-
-
|
39
|
-
|
40
|
-
-
|
41
|
-
|
42
|
-
-
|
43
|
-
|
44
|
-
-
|
45
|
-
|
46
|
-
-
|
47
|
-
|
48
|
-
-
|
49
|
-
|
50
|
-
-
|
51
|
-
|
52
|
-
-
|
53
|
-
|
54
|
-
-
|
55
|
-
|
56
|
-
-
|
57
|
-
|
58
|
-
-
|
59
|
-
|
60
|
-
-
|
61
|
-
|
62
|
-
-
|
63
|
-
|
64
|
-
-
|
65
|
-
|
66
|
-
-
|
67
|
-
|
68
|
-
-
|
69
|
-
|
70
|
-
-
|
71
|
-
|
72
|
-
-
|
73
|
-
|
74
|
-
-
|
75
|
-
|
76
|
-
-
|
77
|
-
|
78
|
-
-
|
79
|
-
|
80
|
-
-
|
81
|
-
|
82
|
-
-
|
83
|
-
|
84
|
-
-
|
85
|
-
|
86
|
-
-
|
87
|
-
|
88
|
-
-
|
89
|
-
|
90
|
-
-
|
91
|
-
|
92
|
-
-
|
93
|
-
|
94
|
-
-
|
95
|
-
|
96
|
-
-
|
97
|
-
|
98
|
-
-
|
99
|
-
|
100
|
-
-
|
101
|
-
|
102
|
-
-
|
103
|
-
|
104
|
-
-
|
105
|
-
|
106
|
-
-
|
107
|
-
|
108
|
-
-
|
109
|
-
|
110
|
-
-
|
111
|
-
|
112
|
-
-
|
113
|
-
|
114
|
-
-
|
115
|
-
|
116
|
-
-
|
117
|
-
|
118
|
-
-
|
119
|
-
|
120
|
-
-
|
121
|
-
|
122
|
-
-
|
123
|
-
|
124
|
-
-
|
125
|
-
|
126
|
-
-
|
127
|
-
|
128
|
-
-
|
129
|
-
|
130
|
-
-
|
131
|
-
|
132
|
-
-
|
133
|
-
|
134
|
-
-
|
135
|
-
|
136
|
-
-
|
31
|
+
- !binary |-
|
32
|
+
bGV2ZWxkYi9kYi9idWlsZGVyLmNj
|
33
|
+
- !binary |-
|
34
|
+
bGV2ZWxkYi9kYi9idWlsZGVyLmg=
|
35
|
+
- !binary |-
|
36
|
+
bGV2ZWxkYi9kYi9jLmNj
|
37
|
+
- !binary |-
|
38
|
+
bGV2ZWxkYi9kYi9jb3JydXB0aW9uX3Rlc3QuY2M=
|
39
|
+
- !binary |-
|
40
|
+
bGV2ZWxkYi9kYi9kYl9iZW5jaC5jYw==
|
41
|
+
- !binary |-
|
42
|
+
bGV2ZWxkYi9kYi9kYl9pbXBsLmNj
|
43
|
+
- !binary |-
|
44
|
+
bGV2ZWxkYi9kYi9kYl9pbXBsLmg=
|
45
|
+
- !binary |-
|
46
|
+
bGV2ZWxkYi9kYi9kYl9pdGVyLmNj
|
47
|
+
- !binary |-
|
48
|
+
bGV2ZWxkYi9kYi9kYl9pdGVyLmg=
|
49
|
+
- !binary |-
|
50
|
+
bGV2ZWxkYi9kYi9kYl90ZXN0LmNj
|
51
|
+
- !binary |-
|
52
|
+
bGV2ZWxkYi9kYi9kYmZvcm1hdC5jYw==
|
53
|
+
- !binary |-
|
54
|
+
bGV2ZWxkYi9kYi9kYmZvcm1hdC5o
|
55
|
+
- !binary |-
|
56
|
+
bGV2ZWxkYi9kYi9kYmZvcm1hdF90ZXN0LmNj
|
57
|
+
- !binary |-
|
58
|
+
bGV2ZWxkYi9kYi9maWxlbmFtZS5jYw==
|
59
|
+
- !binary |-
|
60
|
+
bGV2ZWxkYi9kYi9maWxlbmFtZS5o
|
61
|
+
- !binary |-
|
62
|
+
bGV2ZWxkYi9kYi9maWxlbmFtZV90ZXN0LmNj
|
63
|
+
- !binary |-
|
64
|
+
bGV2ZWxkYi9kYi9sb2dfZm9ybWF0Lmg=
|
65
|
+
- !binary |-
|
66
|
+
bGV2ZWxkYi9kYi9sb2dfcmVhZGVyLmNj
|
67
|
+
- !binary |-
|
68
|
+
bGV2ZWxkYi9kYi9sb2dfcmVhZGVyLmg=
|
69
|
+
- !binary |-
|
70
|
+
bGV2ZWxkYi9kYi9sb2dfdGVzdC5jYw==
|
71
|
+
- !binary |-
|
72
|
+
bGV2ZWxkYi9kYi9sb2dfd3JpdGVyLmNj
|
73
|
+
- !binary |-
|
74
|
+
bGV2ZWxkYi9kYi9sb2dfd3JpdGVyLmg=
|
75
|
+
- !binary |-
|
76
|
+
bGV2ZWxkYi9kYi9tZW10YWJsZS5jYw==
|
77
|
+
- !binary |-
|
78
|
+
bGV2ZWxkYi9kYi9tZW10YWJsZS5o
|
79
|
+
- !binary |-
|
80
|
+
bGV2ZWxkYi9kYi9yZXBhaXIuY2M=
|
81
|
+
- !binary |-
|
82
|
+
bGV2ZWxkYi9kYi9za2lwbGlzdC5o
|
83
|
+
- !binary |-
|
84
|
+
bGV2ZWxkYi9kYi9za2lwbGlzdF90ZXN0LmNj
|
85
|
+
- !binary |-
|
86
|
+
bGV2ZWxkYi9kYi9zbmFwc2hvdC5o
|
87
|
+
- !binary |-
|
88
|
+
bGV2ZWxkYi9kYi90YWJsZV9jYWNoZS5jYw==
|
89
|
+
- !binary |-
|
90
|
+
bGV2ZWxkYi9kYi90YWJsZV9jYWNoZS5o
|
91
|
+
- !binary |-
|
92
|
+
bGV2ZWxkYi9kYi92ZXJzaW9uX2VkaXQuY2M=
|
93
|
+
- !binary |-
|
94
|
+
bGV2ZWxkYi9kYi92ZXJzaW9uX2VkaXQuaA==
|
95
|
+
- !binary |-
|
96
|
+
bGV2ZWxkYi9kYi92ZXJzaW9uX2VkaXRfdGVzdC5jYw==
|
97
|
+
- !binary |-
|
98
|
+
bGV2ZWxkYi9kYi92ZXJzaW9uX3NldC5jYw==
|
99
|
+
- !binary |-
|
100
|
+
bGV2ZWxkYi9kYi92ZXJzaW9uX3NldC5o
|
101
|
+
- !binary |-
|
102
|
+
bGV2ZWxkYi9kYi92ZXJzaW9uX3NldF90ZXN0LmNj
|
103
|
+
- !binary |-
|
104
|
+
bGV2ZWxkYi9kYi93cml0ZV9iYXRjaC5jYw==
|
105
|
+
- !binary |-
|
106
|
+
bGV2ZWxkYi9kYi93cml0ZV9iYXRjaF9pbnRlcm5hbC5o
|
107
|
+
- !binary |-
|
108
|
+
bGV2ZWxkYi9kYi93cml0ZV9iYXRjaF90ZXN0LmNj
|
109
|
+
- !binary |-
|
110
|
+
bGV2ZWxkYi9oZWxwZXJzL21lbWVudi9tZW1lbnYuY2M=
|
111
|
+
- !binary |-
|
112
|
+
bGV2ZWxkYi9oZWxwZXJzL21lbWVudi9tZW1lbnYuaA==
|
113
|
+
- !binary |-
|
114
|
+
bGV2ZWxkYi9oZWxwZXJzL21lbWVudi9tZW1lbnZfdGVzdC5jYw==
|
115
|
+
- !binary |-
|
116
|
+
bGV2ZWxkYi9pbmNsdWRlL2xldmVsZGIvYy5o
|
117
|
+
- !binary |-
|
118
|
+
bGV2ZWxkYi9pbmNsdWRlL2xldmVsZGIvY2FjaGUuaA==
|
119
|
+
- !binary |-
|
120
|
+
bGV2ZWxkYi9pbmNsdWRlL2xldmVsZGIvY29tcGFyYXRvci5o
|
121
|
+
- !binary |-
|
122
|
+
bGV2ZWxkYi9pbmNsdWRlL2xldmVsZGIvZGIuaA==
|
123
|
+
- !binary |-
|
124
|
+
bGV2ZWxkYi9pbmNsdWRlL2xldmVsZGIvZW52Lmg=
|
125
|
+
- !binary |-
|
126
|
+
bGV2ZWxkYi9pbmNsdWRlL2xldmVsZGIvZmlsdGVyX3BvbGljeS5o
|
127
|
+
- !binary |-
|
128
|
+
bGV2ZWxkYi9pbmNsdWRlL2xldmVsZGIvaXRlcmF0b3IuaA==
|
129
|
+
- !binary |-
|
130
|
+
bGV2ZWxkYi9pbmNsdWRlL2xldmVsZGIvb3B0aW9ucy5o
|
131
|
+
- !binary |-
|
132
|
+
bGV2ZWxkYi9pbmNsdWRlL2xldmVsZGIvc2xpY2UuaA==
|
133
|
+
- !binary |-
|
134
|
+
bGV2ZWxkYi9pbmNsdWRlL2xldmVsZGIvc3RhdHVzLmg=
|
135
|
+
- !binary |-
|
136
|
+
bGV2ZWxkYi9pbmNsdWRlL2xldmVsZGIvdGFibGUuaA==
|
137
|
+
- !binary |-
|
138
|
+
bGV2ZWxkYi9pbmNsdWRlL2xldmVsZGIvdGFibGVfYnVpbGRlci5o
|
139
|
+
- !binary |-
|
140
|
+
bGV2ZWxkYi9pbmNsdWRlL2xldmVsZGIvd3JpdGVfYmF0Y2guaA==
|
141
|
+
- !binary |-
|
142
|
+
bGV2ZWxkYi9wb3J0L2F0b21pY19wb2ludGVyLmg=
|
143
|
+
- !binary |-
|
144
|
+
bGV2ZWxkYi9wb3J0L3BvcnQuaA==
|
145
|
+
- !binary |-
|
146
|
+
bGV2ZWxkYi9wb3J0L3BvcnRfZXhhbXBsZS5o
|
147
|
+
- !binary |-
|
148
|
+
bGV2ZWxkYi9wb3J0L3BvcnRfcG9zaXguY2M=
|
149
|
+
- !binary |-
|
150
|
+
bGV2ZWxkYi9wb3J0L3BvcnRfcG9zaXguaA==
|
151
|
+
- !binary |-
|
152
|
+
bGV2ZWxkYi9wb3J0L3dpbi9zdGRpbnQuaA==
|
153
|
+
- !binary |-
|
154
|
+
bGV2ZWxkYi90YWJsZS9ibG9jay5jYw==
|
155
|
+
- !binary |-
|
156
|
+
bGV2ZWxkYi90YWJsZS9ibG9jay5o
|
157
|
+
- !binary |-
|
158
|
+
bGV2ZWxkYi90YWJsZS9ibG9ja19idWlsZGVyLmNj
|
159
|
+
- !binary |-
|
160
|
+
bGV2ZWxkYi90YWJsZS9ibG9ja19idWlsZGVyLmg=
|
161
|
+
- !binary |-
|
162
|
+
bGV2ZWxkYi90YWJsZS9maWx0ZXJfYmxvY2suY2M=
|
163
|
+
- !binary |-
|
164
|
+
bGV2ZWxkYi90YWJsZS9maWx0ZXJfYmxvY2suaA==
|
165
|
+
- !binary |-
|
166
|
+
bGV2ZWxkYi90YWJsZS9maWx0ZXJfYmxvY2tfdGVzdC5jYw==
|
167
|
+
- !binary |-
|
168
|
+
bGV2ZWxkYi90YWJsZS9mb3JtYXQuY2M=
|
169
|
+
- !binary |-
|
170
|
+
bGV2ZWxkYi90YWJsZS9mb3JtYXQuaA==
|
171
|
+
- !binary |-
|
172
|
+
bGV2ZWxkYi90YWJsZS9pdGVyYXRvci5jYw==
|
173
|
+
- !binary |-
|
174
|
+
bGV2ZWxkYi90YWJsZS9pdGVyYXRvcl93cmFwcGVyLmg=
|
175
|
+
- !binary |-
|
176
|
+
bGV2ZWxkYi90YWJsZS9tZXJnZXIuY2M=
|
177
|
+
- !binary |-
|
178
|
+
bGV2ZWxkYi90YWJsZS9tZXJnZXIuaA==
|
179
|
+
- !binary |-
|
180
|
+
bGV2ZWxkYi90YWJsZS90YWJsZS5jYw==
|
181
|
+
- !binary |-
|
182
|
+
bGV2ZWxkYi90YWJsZS90YWJsZV9idWlsZGVyLmNj
|
183
|
+
- !binary |-
|
184
|
+
bGV2ZWxkYi90YWJsZS90YWJsZV90ZXN0LmNj
|
185
|
+
- !binary |-
|
186
|
+
bGV2ZWxkYi90YWJsZS90d29fbGV2ZWxfaXRlcmF0b3IuY2M=
|
187
|
+
- !binary |-
|
188
|
+
bGV2ZWxkYi90YWJsZS90d29fbGV2ZWxfaXRlcmF0b3IuaA==
|
189
|
+
- !binary |-
|
190
|
+
bGV2ZWxkYi91dGlsL2FyZW5hLmNj
|
191
|
+
- !binary |-
|
192
|
+
bGV2ZWxkYi91dGlsL2FyZW5hLmg=
|
193
|
+
- !binary |-
|
194
|
+
bGV2ZWxkYi91dGlsL2FyZW5hX3Rlc3QuY2M=
|
195
|
+
- !binary |-
|
196
|
+
bGV2ZWxkYi91dGlsL2Jsb29tLmNj
|
197
|
+
- !binary |-
|
198
|
+
bGV2ZWxkYi91dGlsL2Jsb29tX3Rlc3QuY2M=
|
199
|
+
- !binary |-
|
200
|
+
bGV2ZWxkYi91dGlsL2NhY2hlLmNj
|
201
|
+
- !binary |-
|
202
|
+
bGV2ZWxkYi91dGlsL2NhY2hlX3Rlc3QuY2M=
|
203
|
+
- !binary |-
|
204
|
+
bGV2ZWxkYi91dGlsL2NvZGluZy5jYw==
|
205
|
+
- !binary |-
|
206
|
+
bGV2ZWxkYi91dGlsL2NvZGluZy5o
|
207
|
+
- !binary |-
|
208
|
+
bGV2ZWxkYi91dGlsL2NvZGluZ190ZXN0LmNj
|
209
|
+
- !binary |-
|
210
|
+
bGV2ZWxkYi91dGlsL2NvbXBhcmF0b3IuY2M=
|
211
|
+
- !binary |-
|
212
|
+
bGV2ZWxkYi91dGlsL2NyYzMyYy5jYw==
|
213
|
+
- !binary |-
|
214
|
+
bGV2ZWxkYi91dGlsL2NyYzMyYy5o
|
215
|
+
- !binary |-
|
216
|
+
bGV2ZWxkYi91dGlsL2NyYzMyY190ZXN0LmNj
|
217
|
+
- !binary |-
|
218
|
+
bGV2ZWxkYi91dGlsL2Vudi5jYw==
|
219
|
+
- !binary |-
|
220
|
+
bGV2ZWxkYi91dGlsL2Vudl9wb3NpeC5jYw==
|
221
|
+
- !binary |-
|
222
|
+
bGV2ZWxkYi91dGlsL2Vudl90ZXN0LmNj
|
223
|
+
- !binary |-
|
224
|
+
bGV2ZWxkYi91dGlsL2ZpbHRlcl9wb2xpY3kuY2M=
|
225
|
+
- !binary |-
|
226
|
+
bGV2ZWxkYi91dGlsL2hhc2guY2M=
|
227
|
+
- !binary |-
|
228
|
+
bGV2ZWxkYi91dGlsL2hhc2guaA==
|
229
|
+
- !binary |-
|
230
|
+
bGV2ZWxkYi91dGlsL2hpc3RvZ3JhbS5jYw==
|
231
|
+
- !binary |-
|
232
|
+
bGV2ZWxkYi91dGlsL2hpc3RvZ3JhbS5o
|
233
|
+
- !binary |-
|
234
|
+
bGV2ZWxkYi91dGlsL2xvZ2dpbmcuY2M=
|
235
|
+
- !binary |-
|
236
|
+
bGV2ZWxkYi91dGlsL2xvZ2dpbmcuaA==
|
237
|
+
- !binary |-
|
238
|
+
bGV2ZWxkYi91dGlsL211dGV4bG9jay5o
|
239
|
+
- !binary |-
|
240
|
+
bGV2ZWxkYi91dGlsL29wdGlvbnMuY2M=
|
241
|
+
- !binary |-
|
242
|
+
bGV2ZWxkYi91dGlsL3Bvc2l4X2xvZ2dlci5o
|
243
|
+
- !binary |-
|
244
|
+
bGV2ZWxkYi91dGlsL3JhbmRvbS5o
|
245
|
+
- !binary |-
|
246
|
+
bGV2ZWxkYi91dGlsL3N0YXR1cy5jYw==
|
247
|
+
- !binary |-
|
248
|
+
bGV2ZWxkYi91dGlsL3Rlc3RoYXJuZXNzLmNj
|
249
|
+
- !binary |-
|
250
|
+
bGV2ZWxkYi91dGlsL3Rlc3RoYXJuZXNzLmg=
|
251
|
+
- !binary |-
|
252
|
+
bGV2ZWxkYi91dGlsL3Rlc3R1dGlsLmNj
|
253
|
+
- !binary |-
|
254
|
+
bGV2ZWxkYi91dGlsL3Rlc3R1dGlsLmg=
|
137
255
|
homepage: http://github.com/wmorgan/leveldb-ruby
|
138
256
|
licenses: []
|
139
257
|
post_install_message:
|