summaryrefslogtreecommitdiff
path: root/Source
diff options
context:
space:
mode:
authorflacs <tilkax@gmail.com>2015-08-20 10:01:16 +0200
committerflacs <tilkax@gmail.com>2015-08-20 10:01:16 +0200
commit62028357a230c81b8b34a1b9502fcc549d2eea2b (patch)
treee18aadb720e4360f23e7fc2a2a4570a0fbffd2b7 /Source
parent4fb48fd2094d97a888565749a58cad0238e3d820 (diff)
parent822cf2bcbfa1e412f02144453a266ec37f360c52 (diff)
Merge pull request #2879 from lioncash/const
IniFile: Mark getter functions as const
Diffstat (limited to 'Source')
-rw-r--r--Source/Core/Common/IniFile.cpp43
-rw-r--r--Source/Core/Common/IniFile.h15
2 files changed, 36 insertions, 22 deletions
diff --git a/Source/Core/Common/IniFile.cpp b/Source/Core/Common/IniFile.cpp
index 9ea8f50533..0c53d9569e 100644
--- a/Source/Core/Common/IniFile.cpp
+++ b/Source/Core/Common/IniFile.cpp
@@ -72,7 +72,7 @@ void IniFile::Section::Set(const std::string& key, const std::vector<std::string
Set(key, temp);
}
-bool IniFile::Section::Get(const std::string& key, std::string* value, const std::string& defaultValue)
+bool IniFile::Section::Get(const std::string& key, std::string* value, const std::string& defaultValue) const
{
auto it = values.find(key);
if (it != values.end())
@@ -85,11 +85,11 @@ bool IniFile::Section::Get(const std::string& key, std::string* value, const std
*value = defaultValue;
return true;
}
- else
- return false;
+
+ return false;
}
-bool IniFile::Section::Get(const std::string& key, std::vector<std::string>* out)
+bool IniFile::Section::Get(const std::string& key, std::vector<std::string>* out) const
{
std::string temp;
bool retval = Get(key, &temp);
@@ -97,69 +97,84 @@ bool IniFile::Section::Get(const std::string& key, std::vector<std::string>* out
{
return false;
}
- // ignore starting , if any
+
+ // ignore starting comma, if any
size_t subStart = temp.find_first_not_of(",");
- // split by ,
+ // split by comma
while (subStart != std::string::npos)
{
- // Find next ,
+ // Find next comma
size_t subEnd = temp.find(',', subStart);
if (subStart != subEnd)
- // take from first char until next ,
+ {
+ // take from first char until next comma
out->push_back(StripSpaces(temp.substr(subStart, subEnd - subStart)));
- // Find the next non , char
+ }
+
+ // Find the next non-comma char
subStart = temp.find_first_not_of(",", subEnd);
}
+
return true;
}
-bool IniFile::Section::Get(const std::string& key, int* value, int defaultValue)
+bool IniFile::Section::Get(const std::string& key, int* value, int defaultValue) const
{
std::string temp;
bool retval = Get(key, &temp);
+
if (retval && TryParse(temp, value))
return true;
+
*value = defaultValue;
return false;
}
-bool IniFile::Section::Get(const std::string& key, u32* value, u32 defaultValue)
+bool IniFile::Section::Get(const std::string& key, u32* value, u32 defaultValue) const
{
std::string temp;
bool retval = Get(key, &temp);
+
if (retval && TryParse(temp, value))
return true;
+
*value = defaultValue;
return false;
}
-bool IniFile::Section::Get(const std::string& key, bool* value, bool defaultValue)
+bool IniFile::Section::Get(const std::string& key, bool* value, bool defaultValue) const
{
std::string temp;
bool retval = Get(key, &temp);
+
if (retval && TryParse(temp, value))
return true;
+
*value = defaultValue;
return false;
}
-bool IniFile::Section::Get(const std::string& key, float* value, float defaultValue)
+bool IniFile::Section::Get(const std::string& key, float* value, float defaultValue) const
{
std::string temp;
bool retval = Get(key, &temp);
+
if (retval && TryParse(temp, value))
return true;
+
*value = defaultValue;
return false;
}
-bool IniFile::Section::Get(const std::string& key, double* value, double defaultValue)
+bool IniFile::Section::Get(const std::string& key, double* value, double defaultValue) const
{
std::string temp;
bool retval = Get(key, &temp);
+
if (retval && TryParse(temp, value))
return true;
+
*value = defaultValue;
return false;
}
diff --git a/Source/Core/Common/IniFile.h b/Source/Core/Common/IniFile.h
index fc39e783cc..29a6ddba8c 100644
--- a/Source/Core/Common/IniFile.h
+++ b/Source/Core/Common/IniFile.h
@@ -38,8 +38,6 @@ public:
void Set(const std::string& key, const std::string& newValue);
void Set(const std::string& key, const std::string& newValue, const std::string& defaultValue);
- bool Get(const std::string& key, std::string* value, const std::string& defaultValue = NULL_STRING);
-
void Set(const std::string& key, u32 newValue)
{
Set(key, StringFromFormat("0x%08x", newValue));
@@ -76,12 +74,13 @@ public:
void Set(const std::string& key, const std::vector<std::string>& newValues);
- bool Get(const std::string& key, int* value, int defaultValue = 0);
- bool Get(const std::string& key, u32* value, u32 defaultValue = 0);
- bool Get(const std::string& key, bool* value, bool defaultValue = false);
- bool Get(const std::string& key, float* value, float defaultValue = false);
- bool Get(const std::string& key, double* value, double defaultValue = false);
- bool Get(const std::string& key, std::vector<std::string>* values);
+ bool Get(const std::string& key, std::string* value, const std::string& defaultValue = NULL_STRING) const;
+ bool Get(const std::string& key, int* value, int defaultValue = 0) const;
+ bool Get(const std::string& key, u32* value, u32 defaultValue = 0) const;
+ bool Get(const std::string& key, bool* value, bool defaultValue = false) const;
+ bool Get(const std::string& key, float* value, float defaultValue = 0.0f) const;
+ bool Get(const std::string& key, double* value, double defaultValue = 0.0) const;
+ bool Get(const std::string& key, std::vector<std::string>* values) const;
bool operator < (const Section& other) const
{