]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
common: get_str_vec takes std::string_view
authorAdam C. Emerson <aemerson@redhat.com>
Tue, 27 Apr 2021 23:31:15 +0000 (19:31 -0400)
committerAdam C. Emerson <aemerson@redhat.com>
Mon, 13 Sep 2021 16:27:51 +0000 (12:27 -0400)
Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
src/common/str_list.cc
src/include/str_list.h

index e2284e1e19989de7df88ea0aaf7887d6dba89ce3..8ed5afcb55df0f9b2456abc1677eb338578fe421 100644 (file)
@@ -40,7 +40,7 @@ list<string> get_str_list(const string& str, const char *delims)
   return result;
 }
 
-void get_str_vec(const string& str, const char *delims, vector<string>& str_vec)
+void get_str_vec(std::string_view str, const char *delims, vector<string>& str_vec)
 {
   str_vec.clear();
   for_each_substr(str, delims, [&str_vec] (auto token) {
@@ -48,13 +48,13 @@ void get_str_vec(const string& str, const char *delims, vector<string>& str_vec)
     });
 }
 
-void get_str_vec(const string& str, vector<string>& str_vec)
+void get_str_vec(std::string_view str, vector<string>& str_vec)
 {
   const char *delims = ";,= \t";
   get_str_vec(str, delims, str_vec);
 }
 
-vector<string> get_str_vec(const string& str, const char *delims)
+vector<string> get_str_vec(std::string_view str, const char *delims)
 {
   vector<string> result;
   get_str_vec(str, delims, result);
index 1ca61099a247b7f2f810b9068a0ef651915d08bd..cad76c1d6f5510fa6e4514de267c17a3a7794dcb 100644 (file)
@@ -54,8 +54,7 @@ std::list<std::string> get_str_list(const std::string& str,
  * @param [in] str String to split and save as Vector
  * @param [out] str_vec Vector modified containing str after it has been split
 **/
-extern void get_str_vec(const std::string& str,
-                        std::vector<std::string>& str_vec);
+void get_str_vec(std::string_view str, std::vector<std::string>& str_vec);
 
 /**
  * Split **str** into a vector of strings, using the **delims** delimiters and output the result in **str_vec**.
@@ -64,11 +63,11 @@ extern void get_str_vec(const std::string& str,
  * @param [in] delims characters used to split **str**
  * @param [out] str_vec Vector modified containing str after it has been split
 **/
-extern void get_str_vec(const std::string& str,
-                         const char *delims,
-                        std::vector<std::string>& str_vec);
+void get_str_vec(std::string_view str,
+                 const char *delims,
+                 std::vector<std::string>& str_vec);
 
-std::vector<std::string> get_str_vec(const std::string& str,
+std::vector<std::string> get_str_vec(std::string_view str,
                                      const char *delims = ";,= \t");
 
 /**