From 5b42298a25769afeb6f50a79cab99bb6eb08cdbe Mon Sep 17 00:00:00 2001 From: Eberhard Graether Date: Mon, 30 Jul 2018 16:26:23 +0200 Subject: [PATCH] data: Use ordered_map in canonical filepath cache --- src/lib_cxx/data/parser/cxx/CanonicalFilePathCache.h | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/lib_cxx/data/parser/cxx/CanonicalFilePathCache.h b/src/lib_cxx/data/parser/cxx/CanonicalFilePathCache.h index e8ffbb75..54836297 100644 --- a/src/lib_cxx/data/parser/cxx/CanonicalFilePathCache.h +++ b/src/lib_cxx/data/parser/cxx/CanonicalFilePathCache.h @@ -23,12 +23,20 @@ public: bool isProjectFile(const clang::FileID fileId, const clang::SourceManager& sourceManager); private: + struct FileIdHash + { + size_t operator()(clang::FileID fileID) const + { + return fileID.getHashValue(); + } + }; + std::shared_ptr m_fileRegister; - std::map m_fileIdMap; + std::unordered_map m_fileIdMap; std::unordered_map m_fileStringMap; - std::map m_isProjectFileMap; + std::unordered_map m_isProjectFileMap; }; #endif // CANONICAL_FILE_PATH_CACHE_H