logic: reduce access to filesystem while indexing
* use canonical filepath cache in cxx indexer * made constructors of FilePath explicit * use FilePath at more places instead of string * forward declares FilePath wherever possible
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
#include "utility/path_detector/CombinedPathDetector.h"
|
||||
|
||||
#include "utility/file/FilePath.h"
|
||||
|
||||
CombinedPathDetector::CombinedPathDetector()
|
||||
: PathDetector("combined")
|
||||
{
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
#include "utility/path_detector/PathDetector.h"
|
||||
|
||||
#include "utility/file/FilePath.h"
|
||||
|
||||
PathDetector::PathDetector(const std::string& name)
|
||||
: m_name(name)
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
#include "utility/file/FilePath.h"
|
||||
class FilePath;
|
||||
|
||||
class PathDetector
|
||||
{
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#include "utility/path_detector/cxx_header/CxxFrameworkPathDetector.h"
|
||||
|
||||
#include "utility/file/FilePath.h"
|
||||
#include "utility/path_detector/cxx_header/utilityCxxHeaderDetection.h"
|
||||
#include "utility/utilityApp.h"
|
||||
#include "utility/utilityString.h"
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#include "utility/path_detector/cxx_header/CxxHeaderPathDetector.h"
|
||||
|
||||
#include "utility/file/FilePath.h"
|
||||
#include "utility/path_detector/cxx_header/utilityCxxHeaderDetection.h"
|
||||
#include "utility/utilityApp.h"
|
||||
#include "utility/utilityString.h"
|
||||
|
||||
@@ -34,10 +34,10 @@ std::vector<FilePath> CxxVsHeaderPathDetector::getPaths() const
|
||||
|
||||
for (size_t i = 0; i < subdirectories.size(); i++)
|
||||
{
|
||||
FilePath headerSearchPath = vsInstallPath.concat(subdirectories[i]);
|
||||
FilePath headerSearchPath = vsInstallPath.concat(FilePath(subdirectories[i]));
|
||||
if (headerSearchPath.exists())
|
||||
{
|
||||
headerPaths.push_back(headerSearchPath.canonical().str());
|
||||
headerPaths.push_back(headerSearchPath.canonical());
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -56,7 +56,7 @@ std::vector<FilePath> CxxVsHeaderPathDetector::getPaths() const
|
||||
FilePath sdkPath = getWindowsSdkPathUsingRegistry(windowsSdkVersions[i]);
|
||||
if (sdkPath.exists())
|
||||
{
|
||||
FilePath sdkIncludePath = sdkPath.concat("include/");
|
||||
FilePath sdkIncludePath = sdkPath.concat(FilePath("include/"));
|
||||
if (sdkIncludePath.exists())
|
||||
{
|
||||
std::vector<std::string> subdirectories;
|
||||
@@ -67,7 +67,7 @@ std::vector<FilePath> CxxVsHeaderPathDetector::getPaths() const
|
||||
bool usingSubdirectories = false;
|
||||
for (size_t j = 0; j < subdirectories.size(); j++)
|
||||
{
|
||||
FilePath sdkSubdirectory = sdkPath.concat(subdirectories[j]);
|
||||
FilePath sdkSubdirectory = sdkPath.concat(FilePath(subdirectories[j]));
|
||||
if (sdkSubdirectory.exists())
|
||||
{
|
||||
headerPaths.push_back(sdkSubdirectory);
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
#define JAVA_PATH_DETECTOR_H
|
||||
|
||||
#include "utility/path_detector/PathDetector.h"
|
||||
#include "utility/file/FilePath.h"
|
||||
|
||||
class JavaPathDetector: public PathDetector
|
||||
{
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#include "utility/path_detector/java_runtime/JavaPathDetectorLinux.h"
|
||||
|
||||
#include "utility/file/FilePath.h"
|
||||
#include "utility/utilityApp.h"
|
||||
#include "utility/utilityString.h"
|
||||
|
||||
@@ -43,7 +44,7 @@ FilePath JavaPathDetectorLinux::readLink(const FilePath& path) const
|
||||
{
|
||||
std::string command = "readlink -f " + path.str();
|
||||
FilePath javaPath( utility::executeProcess(command.c_str()));
|
||||
if ( !javaPath.empty() )
|
||||
if (!javaPath.empty())
|
||||
{
|
||||
return javaPath;
|
||||
}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#include "utility/path_detector/java_runtime/JavaPathDetectorMac.h"
|
||||
|
||||
#include "utility/file/FilePath.h"
|
||||
#include "utility/utilityApp.h"
|
||||
#include "utility/utilityString.h"
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
#include <QSettings>
|
||||
#include <QSysInfo>
|
||||
|
||||
#include "utility/file/FilePath.h"
|
||||
#include "utility/utilityApp.h"
|
||||
|
||||
JavaPathDetectorWindows::JavaPathDetectorWindows(const std::string javaVersion)
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#include "utility/path_detector/maven_executable/MavenPathDetectorUnix.h"
|
||||
|
||||
#include "utility/file/FilePath.h"
|
||||
#include "utility/utilityApp.h"
|
||||
|
||||
MavenPathDetectorUnix::MavenPathDetectorUnix()
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#include "utility/path_detector/maven_executable/MavenPathDetectorWindows.h"
|
||||
|
||||
#include "utility/file/FilePath.h"
|
||||
#include "utility/utilityApp.h"
|
||||
|
||||
MavenPathDetectorWindows::MavenPathDetectorWindows()
|
||||
|
||||
Reference in New Issue
Block a user