clang: clang::ModuleCache Class Reference (original) (raw)

The module cache used for compiling modules implicitly. More...

#include "[clang/Serialization/ModuleCache.h](ModuleCache%5F8h%5Fsource.html)"

Public Member Functions
virtual void prepareForGetLock (StringRef ModuleFilename)=0
May perform any work that only needs to be performed once for multiple calls getLock() with the same module filename.
virtual std::unique_ptr< llvm::AdvisoryLock > getLock (StringRef ModuleFilename)=0
Returns lock for the given module file. The lock is initially unlocked.
virtual std::time_t getModuleTimestamp (StringRef ModuleFilename)=0
Returns the timestamp denoting the last time inputs of the module file were validated.
virtual void updateModuleTimestamp (StringRef ModuleFilename)=0
Updates the timestamp denoting the last time inputs of the module file were validated.
virtual void maybePrune (StringRef Path, time_t PruneInterval, time_t PruneAfter)=0
Prune module files that haven't been accessed in a long time.
virtual InMemoryModuleCache & getInMemoryModuleCache ()=0
Returns this process's view of the module cache.
virtual const InMemoryModuleCache & getInMemoryModuleCache () const =0
virtual ~ModuleCache ()=default

The module cache used for compiling modules implicitly.

This centralizes the operations the compiler might want to perform on the cache.

Definition at line 26 of file ModuleCache.h.

virtual clang::ModuleCache::~ModuleCache ( ) virtualdefault

getInMemoryModuleCache() [1/2]

virtual const InMemoryModuleCache & clang::ModuleCache::getInMemoryModuleCache ( ) const pure virtual

getInMemoryModuleCache() [2/2]

getLock()

virtual std::unique_ptr< llvm::AdvisoryLock > clang::ModuleCache::getLock ( StringRef ModuleFilename) pure virtual

getModuleTimestamp()

virtual std::time_t clang::ModuleCache::getModuleTimestamp ( StringRef ModuleFilename) pure virtual

Returns the timestamp denoting the last time inputs of the module file were validated.

maybePrune()

virtual void clang::ModuleCache::maybePrune ( StringRef Path, time_t PruneInterval, time_t PruneAfter ) pure virtual

Prune module files that haven't been accessed in a long time.

prepareForGetLock()

virtual void clang::ModuleCache::prepareForGetLock ( StringRef ModuleFilename) pure virtual

updateModuleTimestamp()

virtual void clang::ModuleCache::updateModuleTimestamp ( StringRef ModuleFilename) pure virtual

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