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