Skip to content

Commit 089886c

Browse files
committed
start to add some string_view overloads to string_util
1 parent ab6aa4f commit 089886c

File tree

3 files changed

+36
-12
lines changed

3 files changed

+36
-12
lines changed

include/string_util.hpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
// but MSVC for now.
1111
#include <codecvt>
1212
#endif
13+
#include <boost/utility/string_view.hpp>
1314

1415
namespace string_util
1516
{
@@ -126,6 +127,11 @@ namespace string_util
126127
return (haystack.find(needle) != std::string::npos);
127128
}
128129

130+
inline bool contains(boost::string_view haystack, boost::string_view needle)
131+
{
132+
return (haystack.find(needle) != boost::string_view::npos);
133+
}
134+
129135
#ifdef _MSC_VER
130136
inline std::string wstring_to_utf8(const std::wstring& str)
131137
{

test/string_util_tests.cpp

Lines changed: 28 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
#include <gmock/gmock.h>
22
#include "string_util.hpp"
33
#include "resourcemapper.hpp"
4+
#include <boost/utility/string_view.hpp>
5+
46

57
TEST(StringHash, hash)
68
{
@@ -76,17 +78,32 @@ TEST(string_util, endsWith)
7678

7779
TEST(string_util, contains)
7880
{
79-
std::string t1 = "LOLrofl";
80-
std::string t2 = "roflLOL";
81-
std::string t3 = "LroflL";
82-
ASSERT_FALSE(string_util::contains(t1, "zzz"));
83-
ASSERT_TRUE(string_util::contains(t1, "LOL"));
84-
ASSERT_TRUE(string_util::contains(t1, "rofl"));
85-
ASSERT_TRUE(string_util::contains(t2, "LOL"));
86-
ASSERT_TRUE(string_util::contains(t2, "rofl"));
87-
ASSERT_TRUE(string_util::contains(t3, "Lr"));
88-
ASSERT_TRUE(string_util::contains(t3, ""));
89-
ASSERT_TRUE(string_util::contains(t3, "lL"));
81+
{
82+
std::string t1 = "LOLrofl";
83+
std::string t2 = "roflLOL";
84+
std::string t3 = "LroflL";
85+
ASSERT_FALSE(string_util::contains(t1, "zzz"));
86+
ASSERT_TRUE(string_util::contains(t1, "LOL"));
87+
ASSERT_TRUE(string_util::contains(t1, "rofl"));
88+
ASSERT_TRUE(string_util::contains(t2, "LOL"));
89+
ASSERT_TRUE(string_util::contains(t2, "rofl"));
90+
ASSERT_TRUE(string_util::contains(t3, "Lr"));
91+
ASSERT_TRUE(string_util::contains(t3, ""));
92+
ASSERT_TRUE(string_util::contains(t3, "lL"));
93+
}
94+
{
95+
boost::string_view t1 = "LOLrofl";
96+
boost::string_view t2 = "roflLOL";
97+
boost::string_view t3 = "LroflL";
98+
ASSERT_FALSE(string_util::contains(t1, "zzz"));
99+
ASSERT_TRUE(string_util::contains(t1, "LOL"));
100+
ASSERT_TRUE(string_util::contains(t1, "rofl"));
101+
ASSERT_TRUE(string_util::contains(t2, "LOL"));
102+
ASSERT_TRUE(string_util::contains(t2, "rofl"));
103+
ASSERT_TRUE(string_util::contains(t3, "Lr"));
104+
ASSERT_TRUE(string_util::contains(t3, ""));
105+
ASSERT_TRUE(string_util::contains(t3, "lL"));
106+
}
90107
}
91108

92109
TEST(string_util, iequals)

tools/engine_hook/dllmain.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
#include "types.hpp"
99
#include "oddlib/anim.hpp"
1010
#include "oddlib/stream.hpp"
11+
#include "sound_hooks.hpp"
1112

1213
// Hack to access private parts of ResourceMapper
1314
#define private public
@@ -330,7 +331,7 @@ static int __fastcall set_first_camera_hook(void *thisPtr, void* , __int16 level
330331

331332
// Setting to Feco lets us go directly in game, with the side effect that pausing will crash
332333
// and some other nasties, still its good enough for debugging animations
333-
levelNumber = 5;
334+
//levelNumber = 5;
334335

335336
// Abe "hello" screen when levelNumber is left as the intro level
336337
cameraNumber = 1;

0 commit comments

Comments
 (0)