]> 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>
Tue, 1 Feb 2022 19:30:52 +0000 (14:30 -0500)
Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
src/common/str_list.cc
src/include/str_list.h

index 09e00b6702013fa466c0f5c35b5d58a4af6980ca..6904e8d131f9a1713cdf952a194231df8153f099 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;
   for_each_substr(str, delims, [&result] (auto token) {
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");
 
 /**