mirror of
https://github.com/facebook/rocksdb.git
synced 2024-11-26 07:30:54 +00:00
make LevelFileNumIterator and LevelFileIteratorState anonymous
Summary: No need to expose them in .h Test Plan: make release Reviewers: igor, yhchiang, rven, sdong Reviewed By: sdong Subscribers: dhruba, leveldb Differential Revision: https://reviews.facebook.net/D27645
This commit is contained in:
parent
eb357af58c
commit
efa2fb33b0
|
@ -417,12 +417,14 @@ bool SomeFileOverlapsRange(
|
|||
return !BeforeFile(ucmp, largest_user_key, &file_level.files[index]);
|
||||
}
|
||||
|
||||
namespace {
|
||||
|
||||
// An internal iterator. For a given version/level pair, yields
|
||||
// information about the files in the level. For a given entry, key()
|
||||
// is the largest key that occurs in the file, and value() is an
|
||||
// 16-byte value containing the file number and file size, both
|
||||
// encoded using EncodeFixed64.
|
||||
class Version::LevelFileNumIterator : public Iterator {
|
||||
class LevelFileNumIterator : public Iterator {
|
||||
public:
|
||||
LevelFileNumIterator(const InternalKeyComparator& icmp,
|
||||
const LevelFilesBrief* flevel)
|
||||
|
@ -473,7 +475,7 @@ class Version::LevelFileNumIterator : public Iterator {
|
|||
mutable FileDescriptor current_value_;
|
||||
};
|
||||
|
||||
class Version::LevelFileIteratorState : public TwoLevelIteratorState {
|
||||
class LevelFileIteratorState : public TwoLevelIteratorState {
|
||||
public:
|
||||
LevelFileIteratorState(TableCache* table_cache,
|
||||
const ReadOptions& read_options, const EnvOptions& env_options,
|
||||
|
@ -509,6 +511,8 @@ class Version::LevelFileIteratorState : public TwoLevelIteratorState {
|
|||
bool for_compaction_;
|
||||
};
|
||||
|
||||
} // anonymous namespace
|
||||
|
||||
Status Version::GetTableProperties(std::shared_ptr<const TableProperties>* tp,
|
||||
const FileMetaData* file_meta,
|
||||
const std::string* fname) {
|
||||
|
@ -2811,11 +2815,11 @@ Iterator* VersionSet::MakeInputIterator(Compaction* c) {
|
|||
}
|
||||
} else {
|
||||
// Create concatenating iterator for the files from this level
|
||||
list[num++] = NewTwoLevelIterator(new Version::LevelFileIteratorState(
|
||||
list[num++] = NewTwoLevelIterator(new LevelFileIteratorState(
|
||||
cfd->table_cache(), read_options, env_options_,
|
||||
cfd->internal_comparator(), true /* for_compaction */,
|
||||
false /* prefix enabled */),
|
||||
new Version::LevelFileNumIterator(cfd->internal_comparator(),
|
||||
new LevelFileNumIterator(cfd->internal_comparator(),
|
||||
c->input_levels(which)));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -308,9 +308,6 @@ class Version {
|
|||
friend class DBImpl;
|
||||
friend class InternalStats;
|
||||
|
||||
class LevelFileNumIterator;
|
||||
class LevelFileIteratorState;
|
||||
|
||||
bool PrefixMayMatch(const ReadOptions& read_options, Iterator* level_iter,
|
||||
const Slice& internal_prefix) const;
|
||||
|
||||
|
|
Loading…
Reference in a new issue