5 #ifndef STORAGE_LEVELDB_DB_DBFORMAT_H_ 6 #define STORAGE_LEVELDB_DB_DBFORMAT_H_ 77 : user_key(u), sequence(seq), type(t) { }
78 std::string DebugString()
const;
99 assert(internal_key.
size() >= 8);
104 assert(internal_key.
size() >= 8);
105 const size_t n = internal_key.
size();
107 unsigned char c = num & 0xff;
118 virtual const char* Name()
const;
119 virtual int Compare(
const Slice& a,
const Slice& b)
const;
120 virtual void FindShortestSeparator(
122 const Slice& limit)
const;
123 virtual void FindShortSuccessor(std::string* key)
const;
136 virtual const char* Name()
const;
137 virtual void CreateFilter(
const Slice* keys,
int n, std::string* dst)
const;
138 virtual bool KeyMayMatch(
const Slice& key,
const Slice& filter)
const;
155 assert(!rep_.empty());
168 std::string DebugString()
const;
178 const size_t n = internal_key.
size();
179 if (n < 8)
return false;
181 unsigned char c = num & 0xff;
185 return (c <= static_cast<unsigned char>(
kTypeValue));
225 if (start_ != space_)
delete[] start_;
230 #endif // STORAGE_LEVELDB_DB_DBFORMAT_H_ virtual int Compare(const Slice &a, const Slice &b) const
static const SequenceNumber kMaxSequenceNumber
uint64_t DecodeFixed64(const char *ptr)
static const int kL0_StopWritesTrigger
static const int kNumLevels
static const int kL0_SlowdownWritesTrigger
const Comparator * user_comparator() const
InternalKey(const Slice &user_key, SequenceNumber s, ValueType t)
ValueType ExtractValueType(const Slice &internal_key)
InternalKeyComparator(const Comparator *c)
bool ParseInternalKey(const Slice &internal_key, ParsedInternalKey *result)
void AppendInternalKey(std::string *result, const ParsedInternalKey &key)
static const int kReadBytesPeriod
static const int kL0_CompactionTrigger
ParsedInternalKey(const Slice &u, const SequenceNumber &seq, ValueType t)
static const ValueType kValueTypeForSeek
size_t InternalKeyEncodingLength(const ParsedInternalKey &key)
InternalFilterPolicy(const FilterPolicy *p)
static const int kMaxMemCompactLevel
void DecodeFrom(const Slice &s)
Slice internal_key() const
void SetFrom(const ParsedInternalKey &p)
Slice memtable_key() const
Slice ExtractUserKey(const Slice &internal_key)
const FilterPolicy *const user_policy_
const Comparator * user_comparator_
const char * data() const