15
15
16
16
namespace sb ::cf::details::utils
17
17
{
18
- EXPORT [[nodiscard]] bool isNumberString (std::string_view str);
18
+ EXPORT bool isNumberString (std::string_view str);
19
19
20
- EXPORT [[nodiscard]] bool ignoreCaseLess (std::string_view str, std::string_view search);
20
+ EXPORT bool ignoreCaseLess (std::string_view str, std::string_view search);
21
21
22
- EXPORT [[nodiscard]] bool ignoreCaseEqual (std::string_view str, std::string_view search);
22
+ EXPORT bool ignoreCaseEqual (std::string_view str, std::string_view search);
23
23
24
- EXPORT [[nodiscard]] bool containsAt (std::string_view str, size_t index, std::string_view search);
24
+ EXPORT bool containsAt (std::string_view str, size_t index, std::string_view search);
25
25
26
- EXPORT [[nodiscard]] std::optional<std::string_view> containsAt (std::string_view str, size_t index,
27
- const std::vector<std::string_view> &searches);
26
+ EXPORT std::optional<std::string_view> containsAt (std::string_view str, size_t index,
27
+ const std::vector<std::string_view> &searches);
28
28
29
- EXPORT [[nodiscard]] bool containsAtFromEnd (std::string_view str, size_t index, std::string_view search);
29
+ EXPORT bool containsAtFromEnd (std::string_view str, size_t index, std::string_view search);
30
30
31
- EXPORT [[nodiscard]] std::optional<std::string_view> containsAtFromEnd (
32
- std::string_view str, size_t index, const std::vector<std::string_view> &searches);
31
+ EXPORT std::optional<std::string_view> containsAtFromEnd (std::string_view str, size_t index,
32
+ const std::vector<std::string_view> &searches);
33
33
34
- EXPORT [[nodiscard]] bool startsWith (std::string_view str, std::string_view search);
34
+ EXPORT bool startsWith (std::string_view str, std::string_view search);
35
35
36
- EXPORT [[nodiscard]] std::vector<std::string_view> split (std::string_view str, std::string_view divider);
36
+ EXPORT std::vector<std::string_view> split (std::string_view str, std::string_view divider);
37
37
38
- EXPORT [[nodiscard]] std::vector<std::string_view> split (std::string_view str,
39
- const std::vector<std::string_view> ÷rs);
38
+ EXPORT std::vector<std::string_view> split (std::string_view str, const std::vector<std::string_view> ÷rs);
40
39
41
- EXPORT [[nodiscard]] std::optional<std::pair<std::string_view, std::string_view>> tryBreak (
40
+ EXPORT std::optional<std::pair<std::string_view, std::string_view>> tryBreak (
42
41
std::string_view str, const std::vector<std::string_view> ÷rs);
43
42
44
- EXPORT [[nodiscard]] std::optional<std::pair<std::string_view, std::string_view>> tryBreakFromEnd (
43
+ EXPORT std::optional<std::pair<std::string_view, std::string_view>> tryBreakFromEnd (
45
44
std::string_view str, const std::vector<std::string_view> ÷rs);
46
45
47
- EXPORT [[nodiscard]] std::string joinViews (const std::vector<std::string_view> &strings,
48
- const std::string ÷r);
46
+ EXPORT std::string joinViews (const std::vector<std::string_view> &strings, const std::string ÷r);
49
47
50
48
template <class T > void assertPtr (const T *ptr)
51
49
{
@@ -59,7 +57,7 @@ namespace sb::cf::details::utils
59
57
60
58
template <class T > void assertPtr (const std::shared_ptr<T> &ptr) { assertPtr (ptr.get ()); }
61
59
62
- template <class TNumber > [[nodiscard]] std::pair<bool , TNumber> tryStringTo (std::string_view str, bool full = true )
60
+ template <class TNumber > std::pair<bool , TNumber> tryStringTo (std::string_view str, bool full = true )
63
61
{
64
62
TNumber number = 0 ;
65
63
while (!str.empty () && std::isspace (str.front ()))
@@ -72,7 +70,7 @@ namespace sb::cf::details::utils
72
70
return {success, number};
73
71
}
74
72
75
- template <> [[nodiscard]] inline std::pair<bool , double > tryStringTo<double >(std::string_view str, bool full)
73
+ template <> inline std::pair<bool , double > tryStringTo<double >(std::string_view str, bool full)
76
74
{
77
75
try
78
76
{
@@ -88,7 +86,7 @@ namespace sb::cf::details::utils
88
86
}
89
87
}
90
88
91
- template <> [[nodiscard]] inline std::pair<bool , bool > tryStringTo<bool >(std::string_view str, bool full)
89
+ template <> inline std::pair<bool , bool > tryStringTo<bool >(std::string_view str, bool full)
92
90
{
93
91
if (ignoreCaseEqual (str, " true" ))
94
92
{
@@ -105,7 +103,7 @@ namespace sb::cf::details::utils
105
103
return {false , false };
106
104
}
107
105
108
- template <class TNumber > [[nodiscard]] TNumber stringTo (std::string_view str, bool full = true )
106
+ template <class TNumber > TNumber stringTo (std::string_view str, bool full = true )
109
107
{
110
108
if (auto [success, number] = tryStringTo<TNumber>(str, full); success)
111
109
{
0 commit comments