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_SUPPORT_PATHCACHE_H
10#define MCLD_SUPPORT_PATHCACHE_H
11
12#include <mcld/ADT/HashEntry.h>
13#include <mcld/ADT/HashTable.h>
14#include <mcld/ADT/StringHash.h>
15#include <mcld/Support/Path.h>
16
17namespace mcld {
18namespace sys  {
19namespace fs   {
20
21namespace {
22  typedef HashEntry<llvm::StringRef,
23                    mcld::sys::fs::Path,
24                    hash::StringCompare<llvm::StringRef> > HashEntryType;
25} // anonymous namespace
26
27typedef HashTable<HashEntryType, hash::StringHash<hash::BKDR>, EntryFactory<HashEntryType> > PathCache;
28
29} // namespace of fs
30} // namespace of sys
31} // namespace of mcld
32
33#endif
34
35