Home | History | Annotate | Download | only in Support
      1 //===- PathCache.h --------------------------------------------------------===//
      2 //
      3 //                     The MCLinker Project
      4 //
      5 // This file is distributed under the University of Illinois Open Source
      6 // License. See LICENSE.TXT for details.
      7 //
      8 //===----------------------------------------------------------------------===//
      9 #ifndef MCLD_PATHCACHE_H
     10 #define MCLD_PATHCACHE_H
     11 #ifdef ENABLE_UNITTEST
     12 #include <gtest.h>
     13 #endif
     14 
     15 #include <mcld/ADT/HashEntry.h>
     16 #include <mcld/ADT/HashTable.h>
     17 #include <mcld/ADT/StringHash.h>
     18 #include <mcld/Support/Path.h>
     19 
     20 namespace mcld {
     21 namespace sys  {
     22 namespace fs   {
     23 
     24 namespace {
     25   typedef HashEntry<llvm::StringRef,
     26                     mcld::sys::fs::Path,
     27                     hash::StringCompare<llvm::StringRef> > HashEntryType;
     28 } // anonymous namespace
     29 
     30 typedef HashTable<HashEntryType, hash::StringHash<hash::BKDR>, EntryFactory<HashEntryType> > PathCache;
     31 
     32 } // namespace of fs
     33 } // namespace of sys
     34 } // namespace of mcld
     35 
     36 #endif
     37 
     38