Page MenuHomePhabricator

D11574.diff
No OneTemporary

D11574.diff

diff --git a/src/radix.h b/src/radix.h
--- a/src/radix.h
+++ b/src/radix.h
@@ -37,7 +37,7 @@
* taken before reading anything in the tree.
*/
template <typename T, typename Adapter = PassthroughAdapter<T>>
-struct RadixTree {
+struct RadixTree : private Adapter {
private:
static const int BITS = 4;
static const int MASK = (1 << BITS) - 1;
@@ -51,7 +51,6 @@
struct RadixElement;
struct RadixNode;
- Adapter adapter;
std::atomic<RadixElement> root;
public:
@@ -207,7 +206,7 @@
}
private:
- KeyType getId(const T &value) const { return adapter.getId(value); }
+ KeyType getId(const T &value) const { return Adapter::getId(value); }
bool insert(const KeyType &key, RCUPtr<T> value) {
uint32_t level = TOP_LEVEL;

File Metadata

Mime Type
text/plain
Expires
Sat, Apr 26, 12:06 (2 h, 47 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
5573511
Default Alt Text
D11574.diff (779 B)

Event Timeline