cmOutputConverter: Constify API.

This commit is contained in:
Stephen Kelly 2015-06-14 20:27:37 +02:00
parent 155ef53597
commit ccf7760f00
4 changed files with 24 additions and 22 deletions

View File

@ -27,7 +27,7 @@ cmOutputConverter::cmOutputConverter(cmState::Snapshot snapshot)
std::string std::string
cmOutputConverter::ConvertToOutputForExistingCommon(const std::string& remote, cmOutputConverter::ConvertToOutputForExistingCommon(const std::string& remote,
std::string const& result, std::string const& result,
OutputFormat format) OutputFormat format) const
{ {
// If this is a windows shell, the result has a space, and the path // If this is a windows shell, the result has a space, and the path
// already exists, we can use a short-path to reference it without a // already exists, we can use a short-path to reference it without a
@ -50,7 +50,7 @@ cmOutputConverter::ConvertToOutputForExistingCommon(const std::string& remote,
std::string std::string
cmOutputConverter::ConvertToOutputForExisting(const std::string& remote, cmOutputConverter::ConvertToOutputForExisting(const std::string& remote,
RelativeRoot local, RelativeRoot local,
OutputFormat format) OutputFormat format) const
{ {
static_cast<void>(local); static_cast<void>(local);
@ -65,7 +65,7 @@ cmOutputConverter::ConvertToOutputForExisting(const std::string& remote,
std::string std::string
cmOutputConverter::ConvertToOutputForExisting(RelativeRoot remote, cmOutputConverter::ConvertToOutputForExisting(RelativeRoot remote,
const std::string& local, const std::string& local,
OutputFormat format) OutputFormat format) const
{ {
// Perform standard conversion. // Perform standard conversion.
std::string result = this->Convert(remote, local, format, true); std::string result = this->Convert(remote, local, format, true);
@ -76,7 +76,7 @@ cmOutputConverter::ConvertToOutputForExisting(RelativeRoot remote,
} }
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
const char* cmOutputConverter::GetRelativeRootPath(RelativeRoot relroot) const char* cmOutputConverter::GetRelativeRootPath(RelativeRoot relroot) const
{ {
switch (relroot) switch (relroot)
{ {
@ -91,7 +91,7 @@ const char* cmOutputConverter::GetRelativeRootPath(RelativeRoot relroot)
std::string cmOutputConverter::Convert(const std::string& source, std::string cmOutputConverter::Convert(const std::string& source,
RelativeRoot relative, RelativeRoot relative,
OutputFormat output) OutputFormat output) const
{ {
// Convert the path to a relative path. // Convert the path to a relative path.
std::string result = source; std::string result = source;
@ -125,7 +125,7 @@ std::string cmOutputConverter::Convert(const std::string& source,
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
std::string cmOutputConverter::ConvertToOutputFormat(const std::string& source, std::string cmOutputConverter::ConvertToOutputFormat(const std::string& source,
OutputFormat output) OutputFormat output) const
{ {
std::string result = source; std::string result = source;
// Convert it to an output path. // Convert it to an output path.
@ -163,7 +163,7 @@ std::string cmOutputConverter::ConvertToOutputFormat(const std::string& source,
std::string cmOutputConverter::Convert(RelativeRoot remote, std::string cmOutputConverter::Convert(RelativeRoot remote,
const std::string& local, const std::string& local,
OutputFormat output, OutputFormat output,
bool optional) bool optional) const
{ {
const char* remotePath = this->GetRelativeRootPath(remote); const char* remotePath = this->GetRelativeRootPath(remote);
@ -192,7 +192,7 @@ static bool cmOutputConverterNotAbove(const char* a, const char* b)
std::string std::string
cmOutputConverter::ConvertToRelativePath(const std::vector<std::string>& local, cmOutputConverter::ConvertToRelativePath(const std::vector<std::string>& local,
const std::string& in_remote, const std::string& in_remote,
bool force) bool force) const
{ {
// The path should never be quoted. // The path should never be quoted.
assert(in_remote[0] != '\"'); assert(in_remote[0] != '\"');
@ -318,7 +318,7 @@ static bool cmOutputConverterIsShellOperator(const std::string& str)
std::string cmOutputConverter::EscapeForShell(const std::string& str, std::string cmOutputConverter::EscapeForShell(const std::string& str,
bool makeVars, bool makeVars,
bool forEcho, bool forEcho,
bool useWatcomQuote) bool useWatcomQuote) const
{ {
// Do not escape shell operators. // Do not escape shell operators.
if(cmOutputConverterIsShellOperator(str)) if(cmOutputConverterIsShellOperator(str))

View File

@ -39,35 +39,35 @@ public:
enum RelativeRoot { NONE, FULL, HOME, START, HOME_OUTPUT, START_OUTPUT }; enum RelativeRoot { NONE, FULL, HOME, START, HOME_OUTPUT, START_OUTPUT };
enum OutputFormat { UNCHANGED, MAKERULE, SHELL, WATCOMQUOTE, RESPONSE }; enum OutputFormat { UNCHANGED, MAKERULE, SHELL, WATCOMQUOTE, RESPONSE };
std::string ConvertToOutputFormat(const std::string& source, std::string ConvertToOutputFormat(const std::string& source,
OutputFormat output); OutputFormat output) const;
std::string Convert(const std::string& remote, RelativeRoot local, std::string Convert(const std::string& remote, RelativeRoot local,
OutputFormat output = UNCHANGED); OutputFormat output = UNCHANGED) const;
std::string Convert(RelativeRoot remote, const std::string& local, std::string Convert(RelativeRoot remote, const std::string& local,
OutputFormat output = UNCHANGED, OutputFormat output = UNCHANGED,
bool optional = false); bool optional = false) const;
/** /**
* Get path for the specified relative root. * Get path for the specified relative root.
*/ */
const char* GetRelativeRootPath(RelativeRoot relroot); const char* GetRelativeRootPath(RelativeRoot relroot) const;
///! for existing files convert to output path and short path if spaces ///! for existing files convert to output path and short path if spaces
std::string ConvertToOutputForExisting(const std::string& remote, std::string ConvertToOutputForExisting(const std::string& remote,
RelativeRoot local = START_OUTPUT, RelativeRoot local = START_OUTPUT,
OutputFormat format = SHELL); OutputFormat format = SHELL) const;
/** For existing path identified by RelativeRoot convert to output /** For existing path identified by RelativeRoot convert to output
path and short path if spaces. */ path and short path if spaces. */
std::string ConvertToOutputForExisting(RelativeRoot remote, std::string ConvertToOutputForExisting(RelativeRoot remote,
const std::string& local = "", const std::string& local = "",
OutputFormat format = SHELL); OutputFormat format = SHELL) const;
void SetLinkScriptShell(bool linkScriptShell); void SetLinkScriptShell(bool linkScriptShell);
std::string EscapeForShell(const std::string& str, std::string EscapeForShell(const std::string& str,
bool makeVars = false, bool makeVars = false,
bool forEcho = false, bool forEcho = false,
bool useWatcomQuote = false); bool useWatcomQuote = false) const;
static std::string EscapeForCMake(const std::string& str); static std::string EscapeForCMake(const std::string& str);
@ -88,14 +88,14 @@ public:
*/ */
std::string ConvertToRelativePath(const std::vector<std::string>& local, std::string ConvertToRelativePath(const std::vector<std::string>& local,
const std::string& in_remote, const std::string& in_remote,
bool force = false); bool force = false) const;
private: private:
cmState* GetState() const; cmState* GetState() const;
std::string ConvertToOutputForExistingCommon(const std::string& remote, std::string ConvertToOutputForExistingCommon(const std::string& remote,
std::string const& result, std::string const& result,
OutputFormat format); OutputFormat format) const;
private: private:
cmState::Snapshot StateSnapshot; cmState::Snapshot StateSnapshot;

View File

@ -741,14 +741,14 @@ void cmState::Snapshot::SetCurrentBinaryDirectory(std::string const& dir)
} }
std::vector<std::string> const& std::vector<std::string> const&
cmState::Snapshot::GetCurrentSourceDirectoryComponents() cmState::Snapshot::GetCurrentSourceDirectoryComponents() const
{ {
return this->Position->BuildSystemDirectory return this->Position->BuildSystemDirectory
->CurrentSourceDirectoryComponents; ->CurrentSourceDirectoryComponents;
} }
std::vector<std::string> const& std::vector<std::string> const&
cmState::Snapshot::GetCurrentBinaryDirectoryComponents() cmState::Snapshot::GetCurrentBinaryDirectoryComponents() const
{ {
return this->Position->BuildSystemDirectory return this->Position->BuildSystemDirectory
->CurrentBinaryDirectoryComponents; ->CurrentBinaryDirectoryComponents;

View File

@ -43,8 +43,10 @@ public:
const char* GetCurrentBinaryDirectory() const; const char* GetCurrentBinaryDirectory() const;
void SetCurrentBinaryDirectory(std::string const& dir); void SetCurrentBinaryDirectory(std::string const& dir);
std::vector<std::string> const& GetCurrentSourceDirectoryComponents(); std::vector<std::string> const&
std::vector<std::string> const& GetCurrentBinaryDirectoryComponents(); GetCurrentSourceDirectoryComponents() const;
std::vector<std::string> const&
GetCurrentBinaryDirectoryComponents() const;
const char* GetRelativePathTopSource() const; const char* GetRelativePathTopSource() const;
const char* GetRelativePathTopBinary() const; const char* GetRelativePathTopBinary() const;