CPlusPlus: Proliferate FilePath use

The starts with CppDocument::filePath(), plus a bit of the fallout

This is one patch of potentially many. It is hard to draw the
line where to stop this kind of chunk, this here converts a few
additional functions for which including it in the patch looked
like less churn than without.

Converting is mostly fromString/toString, with a few exceptions
for "already seem" like caches, that use cheaper "path()" to
avoid likely performance regressions (on Windows FilePath
comparison is currently case-insenstive, and more expensive).

There should be no difference for local operation with this patch.

Change-Id: I7b35f98a0a6f0bfed4ea0f8f987faf586f7a8f2b
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
hjk
2022-11-21 16:48:50 +01:00
parent 822e2a224a
commit fa1adf4d40
69 changed files with 351 additions and 313 deletions

View File

@@ -31,6 +31,7 @@
#include <cplusplus/cppassert.h>
#include <utils/executeondestruction.h>
#include <utils/filepath.h>
#include <utils/scopedswap.h>
#include <QDebug>
@@ -235,7 +236,6 @@ struct Value
};
} // namespace Internal
} // namespace CPlusPlus
using namespace CPlusPlus;
using namespace CPlusPlus::Internal;
@@ -251,7 +251,7 @@ Macro *macroDefinition(const ByteArrayRef &name,
unsigned bytesOffset,
unsigned utf16charsOffset,
unsigned line,
Environment *env,
CPlusPlus::Environment *env,
Client *client)
{
Macro *m = env->resolve(name);
@@ -320,7 +320,7 @@ class ExpressionEvaluator
void operator = (const ExpressionEvaluator &other);
public:
ExpressionEvaluator(Client *client, Environment *env)
ExpressionEvaluator(Client *client, CPlusPlus::Environment *env)
: client(client), env(env), _lex(nullptr)
{ }
@@ -726,6 +726,14 @@ Preprocessor::Preprocessor(Client *client, Environment *env)
{
}
QByteArray Preprocessor::run(const Utils::FilePath &filePath,
const QByteArray &source,
bool noLines,
bool markGeneratedTokens)
{
return run(filePath.toString(), source, noLines, markGeneratedTokens);
}
QByteArray Preprocessor::run(const QString &fileName,
const QByteArray &source,
bool noLines,
@@ -2158,3 +2166,5 @@ void Preprocessor::maybeStartOutputLine()
if (*ch == '\\')
buffer.append('\n');
}
} // namespace CPlusPlus