From 5135333d5c0b49e36d8ee872f179de52ae9f67ce Mon Sep 17 00:00:00 2001 From: =?utf8?q?=EB=B0=95=EC=84=B8=ED=9D=AC/On-Device=20Lab=28SR=29/Princip?= =?utf8?q?al=20Engineer/=EC=82=BC=EC=84=B1=EC=A0=84=EC=9E=90?= Date: Fri, 14 Jun 2019 10:43:23 +0900 Subject: [PATCH] [moco/tf] Introduce str_toupper (#3770) This will introduce str_toupper() method to convert string to upper case Signed-off-by: SaeHie Park --- contrib/moco/lib/frontend/tf/src/Convert.cpp | 17 +++++++++++++++++ contrib/moco/lib/frontend/tf/src/Convert.h | 8 ++++++++ contrib/moco/lib/frontend/tf/src/Convert.test.cpp | 8 ++++++++ 3 files changed, 33 insertions(+) diff --git a/contrib/moco/lib/frontend/tf/src/Convert.cpp b/contrib/moco/lib/frontend/tf/src/Convert.cpp index cc3c89d..b89dd11 100644 --- a/contrib/moco/lib/frontend/tf/src/Convert.cpp +++ b/contrib/moco/lib/frontend/tf/src/Convert.cpp @@ -118,3 +118,20 @@ const DataLayout get_data_layout(const tensorflow::NodeDef &node, const std::str } // namespace tf } // namespace moco + +// TODO move to some common file + +#include +#include + +namespace moco +{ + +std::string str_toupper(std::string s) +{ + // from https://en.cppreference.com/w/cpp/string/byte/toupper + std::transform(s.begin(), s.end(), s.begin(), [](unsigned char c) { return std::toupper(c); }); + return s; +} + +} // namespace moco diff --git a/contrib/moco/lib/frontend/tf/src/Convert.h b/contrib/moco/lib/frontend/tf/src/Convert.h index a9d9606..1ec9438 100644 --- a/contrib/moco/lib/frontend/tf/src/Convert.h +++ b/contrib/moco/lib/frontend/tf/src/Convert.h @@ -58,4 +58,12 @@ const DataLayout get_data_layout(const tensorflow::NodeDef &node, const std::str } // namespace tf } // namespace moco +// TODO move to some common file +namespace moco +{ + +std::string str_toupper(std::string s); + +} // namespace moco + #endif // __CONVERT_H__ diff --git a/contrib/moco/lib/frontend/tf/src/Convert.test.cpp b/contrib/moco/lib/frontend/tf/src/Convert.test.cpp index 3df1bb0..4f3b6f9 100644 --- a/contrib/moco/lib/frontend/tf/src/Convert.test.cpp +++ b/contrib/moco/lib/frontend/tf/src/Convert.test.cpp @@ -77,3 +77,11 @@ TEST(moco_Convert, to_loco_datatype) { ASSERT_EQ(moco::tf::as_loco_datatype(tensorflow::DT_FLOAT), loco::DataType::FLOAT32); } + +TEST(moco_Convert, string_toupper) +{ + std::string source = "Hello World!!!"; + std::string convert = moco::str_toupper(source); + + ASSERT_EQ(convert, "HELLO WORLD!!!"); +} -- 2.7.4