diff --git a/VersionedMap.cpp b/VersionedMap.cpp index eabb043..f28c220 100644 --- a/VersionedMap.cpp +++ b/VersionedMap.cpp @@ -491,8 +491,18 @@ struct VersionedMap::Impl { } printInOrderHelper(version, child(node, false, version)); - printf("%.*s\n", (int)mm.base[node].entry->keyLen, + printf("%.*s", (int)mm.base[node].entry->keyLen, mm.base[node].entry->getKey()); + if (mm.base[node].entry->valLen >= 0) { + printf(" -> '%.*s'", (int)mm.base[node].entry->valLen, + mm.base[node].entry->getVal()); + } else { + printf(" "); + } + if (mm.base[node].entry->clearTo) { + printf(" "); + } + printf("\n"); printInOrderHelper(version, child(node, true, version)); } @@ -509,7 +519,7 @@ int main() { { weaselab::VersionedMap::Impl impl; - impl.roots.add(impl.newNode(1, (const uint8_t *)"a", 1, nullptr, -1, false), + impl.roots.add(impl.newNode(1, (const uint8_t *)"a", 1, nullptr, 0, true), 1); impl.roots.add(impl.newNode(2, (const uint8_t *)"b", 1, nullptr, -1, false), 2);