summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Lioncash2018-11-13 14:09:05 -0500
committerGravatar Lioncash2018-11-13 18:13:45 -0500
commitf1219e3a874bb16f2928e8b9e879f2a4ddf22ab7 (patch)
treef74eecf8914cc377b8b7af64f6d50d33edafba1f
parentstring_util: Remove ThousandSeparate() (diff)
downloadyuzu-f1219e3a874bb16f2928e8b9e879f2a4ddf22ab7.tar.gz
yuzu-f1219e3a874bb16f2928e8b9e879f2a4ddf22ab7.tar.xz
yuzu-f1219e3a874bb16f2928e8b9e879f2a4ddf22ab7.zip
string_util: Remove TryParse()
This is an unused hold-over from Dolphin that was primarily used to parse values out of the .ini files. Given we already have libraries that do this for us, we don't need to keep this around.
Diffstat (limited to '')
-rw-r--r--src/common/string_util.cpp40
-rw-r--r--src/common/string_util.h17
2 files changed, 3 insertions, 54 deletions
diff --git a/src/common/string_util.cpp b/src/common/string_util.cpp
index 731d1db34..5b004ef48 100644
--- a/src/common/string_util.cpp
+++ b/src/common/string_util.cpp
@@ -4,11 +4,11 @@
4 4
5#include <algorithm> 5#include <algorithm>
6#include <cctype> 6#include <cctype>
7#include <cerrno>
8#include <codecvt> 7#include <codecvt>
9#include <cstdio>
10#include <cstdlib> 8#include <cstdlib>
11#include <cstring> 9#include <iomanip>
10#include <locale>
11#include <sstream>
12#include "common/common_paths.h" 12#include "common/common_paths.h"
13#include "common/logging/log.h" 13#include "common/logging/log.h"
14#include "common/string_util.h" 14#include "common/string_util.h"
@@ -75,40 +75,6 @@ std::string StripQuotes(const std::string& s) {
75 return s; 75 return s;
76} 76}
77 77
78bool TryParse(const std::string& str, u32* const output) {
79 char* endptr = nullptr;
80
81 // Reset errno to a value other than ERANGE
82 errno = 0;
83
84 unsigned long value = strtoul(str.c_str(), &endptr, 0);
85
86 if (!endptr || *endptr)
87 return false;
88
89 if (errno == ERANGE)
90 return false;
91
92#if ULONG_MAX > UINT_MAX
93 if (value >= 0x100000000ull && value <= 0xFFFFFFFF00000000ull)
94 return false;
95#endif
96
97 *output = static_cast<u32>(value);
98 return true;
99}
100
101bool TryParse(const std::string& str, bool* const output) {
102 if ("1" == str || "true" == ToLower(str))
103 *output = true;
104 else if ("0" == str || "false" == ToLower(str))
105 *output = false;
106 else
107 return false;
108
109 return true;
110}
111
112std::string StringFromBool(bool value) { 78std::string StringFromBool(bool value) {
113 return value ? "True" : "False"; 79 return value ? "True" : "False";
114} 80}
diff --git a/src/common/string_util.h b/src/common/string_util.h
index f76fc43dc..7e32d6405 100644
--- a/src/common/string_util.h
+++ b/src/common/string_util.h
@@ -5,8 +5,6 @@
5#pragma once 5#pragma once
6 6
7#include <cstddef> 7#include <cstddef>
8#include <iomanip>
9#include <sstream>
10#include <string> 8#include <string>
11#include <vector> 9#include <vector>
12#include "common/common_types.h" 10#include "common/common_types.h"
@@ -28,21 +26,6 @@ std::string StripQuotes(const std::string& s);
28 26
29std::string StringFromBool(bool value); 27std::string StringFromBool(bool value);
30 28
31bool TryParse(const std::string& str, bool* output);
32bool TryParse(const std::string& str, u32* output);
33
34template <typename N>
35static bool TryParse(const std::string& str, N* const output) {
36 std::istringstream iss(str);
37
38 N tmp = 0;
39 if (iss >> tmp) {
40 *output = tmp;
41 return true;
42 } else
43 return false;
44}
45
46std::string TabsToSpaces(int tab_size, std::string in); 29std::string TabsToSpaces(int tab_size, std::string in);
47 30
48void SplitString(const std::string& str, char delim, std::vector<std::string>& output); 31void SplitString(const std::string& str, char delim, std::vector<std::string>& output);