Use string_view instead of string 16/319416/2
authorpjh9216 <jh9216.park@samsung.com>
Wed, 23 Oct 2024 01:32:24 +0000 (10:32 +0900)
committerJunghoon Park <jh9216.park@samsung.com>
Wed, 23 Oct 2024 01:34:14 +0000 (01:34 +0000)
- Because constructors do not store the string, we can use string_view
  instead of string

Change-Id: Id779cc1b72845b11efca3eacc42bc31451dc5b34
Signed-off-by: pjh9216 <jh9216.park@samsung.com>
src/tizen-database/database.hpp

index 6a4e7c9183cb1e48710af767a65403e919b8cad0..9560d5ce021b94f281e80e1d98d7df5577a6d98c 100644 (file)
@@ -27,6 +27,7 @@
 #include <optional>
 #include <stdexcept>
 #include <string>
+#include <string_view>
 #include <tuple>
 #include <utility>
 #include <variant>
@@ -662,19 +663,19 @@ class Database {
     bool is_done_ = false;
   };
 
-  Database(std::string db_path, int flags) {
+  Database(std::string_view db_path, int flags) {
     sqlite3* raw_db = nullptr;
-    int r = sqlite3_open_v2(db_path.c_str(), &raw_db, flags, nullptr);
+    int r = sqlite3_open_v2(db_path.data(), &raw_db, flags, nullptr);
     if (r != SQLITE_OK)
       throw DbException("open failed", r);
 
     db_.reset(raw_db, sqlite3_close_v2);
   }
 
-  Database(std::string db_path, int flags,
+  Database(std::string_view db_path, int flags,
       std::function<bool(int)> busy_handler) {
     sqlite3* raw_db = nullptr;
-    int r = sqlite3_open_v2(db_path.c_str(), &raw_db, flags, nullptr);
+    int r = sqlite3_open_v2(db_path.data(), &raw_db, flags, nullptr);
     if (r != SQLITE_OK)
       throw DbException("sqlite3_open_v2() failed", r);