Bitcoin
Public Member Functions | Private Types | Private Attributes | List of all members
leveldb::anonymous_namespace{memenv.cc}::InMemoryEnv Class Reference
Inheritance diagram for leveldb::anonymous_namespace{memenv.cc}::InMemoryEnv:
leveldb::EnvWrapper leveldb::Env

Public Member Functions

 InMemoryEnv (Env *base_env)
 
virtual ~InMemoryEnv ()
 
virtual Status NewSequentialFile (const std::string &fname, SequentialFile **result)
 
virtual Status NewRandomAccessFile (const std::string &fname, RandomAccessFile **result)
 
virtual Status NewWritableFile (const std::string &fname, WritableFile **result)
 
virtual Status NewAppendableFile (const std::string &fname, WritableFile **result)
 
virtual bool FileExists (const std::string &fname)
 
virtual Status GetChildren (const std::string &dir, std::vector< std::string > *result)
 
void DeleteFileInternal (const std::string &fname)
 
virtual Status DeleteFile (const std::string &fname)
 
virtual Status CreateDir (const std::string &dirname)
 
virtual Status DeleteDir (const std::string &dirname)
 
virtual Status GetFileSize (const std::string &fname, uint64_t *file_size)
 
virtual Status RenameFile (const std::string &src, const std::string &target)
 
virtual Status LockFile (const std::string &fname, FileLock **lock)
 
virtual Status UnlockFile (FileLock *lock)
 
virtual Status GetTestDirectory (std::string *path)
 
virtual Status NewLogger (const std::string &fname, Logger **result)
 
- Public Member Functions inherited from leveldb::EnvWrapper
 EnvWrapper (Env *t)
 
virtual ~EnvWrapper ()
 
Envtarget () const
 
Status NewSequentialFile (const std::string &f, SequentialFile **r)
 
Status NewRandomAccessFile (const std::string &f, RandomAccessFile **r)
 
Status NewWritableFile (const std::string &f, WritableFile **r)
 
Status NewAppendableFile (const std::string &f, WritableFile **r)
 
bool FileExists (const std::string &f)
 
Status GetChildren (const std::string &dir, std::vector< std::string > *r)
 
Status DeleteFile (const std::string &f)
 
Status CreateDir (const std::string &d)
 
Status DeleteDir (const std::string &d)
 
Status GetFileSize (const std::string &f, uint64_t *s)
 
Status RenameFile (const std::string &s, const std::string &t)
 
Status LockFile (const std::string &f, FileLock **l)
 
Status UnlockFile (FileLock *l)
 
void Schedule (void(*f)(void *), void *a)
 
void StartThread (void(*f)(void *), void *a)
 
uint64_t NowMicros ()
 
void SleepForMicroseconds (int micros)
 
- Public Member Functions inherited from leveldb::Env
 Env ()
 
virtual ~Env ()
 
virtual void Schedule (void(*function)(void *arg), void *arg)=0
 
virtual void StartThread (void(*function)(void *arg), void *arg)=0
 

Private Types

typedef std::map< std::string, FileState * > FileSystem
 

Private Attributes

port::Mutex mutex_
 
FileSystem file_map_
 

Additional Inherited Members

- Static Public Member Functions inherited from leveldb::Env
static EnvDefault ()
 

Member Typedef Documentation

◆ FileSystem

typedef std::map<std::string, FileState*> leveldb::anonymous_namespace{memenv.cc}::InMemoryEnv::FileSystem
private

Constructor & Destructor Documentation

◆ InMemoryEnv()

leveldb::anonymous_namespace{memenv.cc}::InMemoryEnv::InMemoryEnv ( Env base_env)
inlineexplicit

◆ ~InMemoryEnv()

virtual leveldb::anonymous_namespace{memenv.cc}::InMemoryEnv::~InMemoryEnv ( )
inlinevirtual

Member Function Documentation

◆ CreateDir()

virtual Status leveldb::anonymous_namespace{memenv.cc}::InMemoryEnv::CreateDir ( const std::string &  dirname)
inlinevirtual

Implements leveldb::Env.

◆ DeleteDir()

virtual Status leveldb::anonymous_namespace{memenv.cc}::InMemoryEnv::DeleteDir ( const std::string &  dirname)
inlinevirtual

Implements leveldb::Env.

◆ DeleteFile()

virtual Status leveldb::anonymous_namespace{memenv.cc}::InMemoryEnv::DeleteFile ( const std::string &  fname)
inlinevirtual

Implements leveldb::Env.

◆ DeleteFileInternal()

void leveldb::anonymous_namespace{memenv.cc}::InMemoryEnv::DeleteFileInternal ( const std::string &  fname)
inline

◆ FileExists()

virtual bool leveldb::anonymous_namespace{memenv.cc}::InMemoryEnv::FileExists ( const std::string &  fname)
inlinevirtual

Implements leveldb::Env.

◆ GetChildren()

virtual Status leveldb::anonymous_namespace{memenv.cc}::InMemoryEnv::GetChildren ( const std::string &  dir,
std::vector< std::string > *  result 
)
inlinevirtual

Implements leveldb::Env.

◆ GetFileSize()

virtual Status leveldb::anonymous_namespace{memenv.cc}::InMemoryEnv::GetFileSize ( const std::string &  fname,
uint64_t file_size 
)
inlinevirtual

Implements leveldb::Env.

◆ GetTestDirectory()

virtual Status leveldb::anonymous_namespace{memenv.cc}::InMemoryEnv::GetTestDirectory ( std::string *  path)
inlinevirtual

Reimplemented from leveldb::EnvWrapper.

◆ LockFile()

virtual Status leveldb::anonymous_namespace{memenv.cc}::InMemoryEnv::LockFile ( const std::string &  fname,
FileLock **  lock 
)
inlinevirtual

Implements leveldb::Env.

◆ NewAppendableFile()

virtual Status leveldb::anonymous_namespace{memenv.cc}::InMemoryEnv::NewAppendableFile ( const std::string &  fname,
WritableFile **  result 
)
inlinevirtual

Reimplemented from leveldb::Env.

◆ NewLogger()

virtual Status leveldb::anonymous_namespace{memenv.cc}::InMemoryEnv::NewLogger ( const std::string &  fname,
Logger **  result 
)
inlinevirtual

Reimplemented from leveldb::EnvWrapper.

◆ NewRandomAccessFile()

virtual Status leveldb::anonymous_namespace{memenv.cc}::InMemoryEnv::NewRandomAccessFile ( const std::string &  fname,
RandomAccessFile **  result 
)
inlinevirtual

Implements leveldb::Env.

◆ NewSequentialFile()

virtual Status leveldb::anonymous_namespace{memenv.cc}::InMemoryEnv::NewSequentialFile ( const std::string &  fname,
SequentialFile **  result 
)
inlinevirtual

Implements leveldb::Env.

◆ NewWritableFile()

virtual Status leveldb::anonymous_namespace{memenv.cc}::InMemoryEnv::NewWritableFile ( const std::string &  fname,
WritableFile **  result 
)
inlinevirtual

Implements leveldb::Env.

◆ RenameFile()

virtual Status leveldb::anonymous_namespace{memenv.cc}::InMemoryEnv::RenameFile ( const std::string &  src,
const std::string &  target 
)
inlinevirtual

Implements leveldb::Env.

◆ UnlockFile()

virtual Status leveldb::anonymous_namespace{memenv.cc}::InMemoryEnv::UnlockFile ( FileLock lock)
inlinevirtual

Implements leveldb::Env.

Member Data Documentation

◆ file_map_

FileSystem leveldb::anonymous_namespace{memenv.cc}::InMemoryEnv::file_map_
private

◆ mutex_

port::Mutex leveldb::anonymous_namespace{memenv.cc}::InMemoryEnv::mutex_
private

The documentation for this class was generated from the following file: