} catch (json_spirit::Error_position &e) {
if (fallback_to_plain) {
// fallback to key=value format
- get_str_map(str, "\t\n ", str_map);
+ get_str_map(str, str_map, "\t\n ");
} else {
return -EINVAL;
}
int get_str_map(
const string &str,
- const char *delims,
- map<string,string> *str_map)
+ map<string,string> *str_map,
+ const char *delims)
{
list<string> pairs;
get_str_list(str, delims, pairs);
return 0;
}
-int get_str_map(
- const string &str,
- map<string,string> *str_map)
-{
- const char *delims = ",;\t\n ";
- return get_str_map(str, delims, str_map);
-}
-
string get_str_map_value(
const map<string,string> &str_map,
const string &key,
#ifndef CEPH_STRMAP_H
#define CEPH_STRMAP_H
+#define CONST_DELIMS ",;\t\n "
+
#include <map>
#include <string>
#include <sstream>
*/
extern int get_str_map(
const std::string &str,
- const char *delims,
- std::map<std::string,std::string> *str_map);
-
-extern int get_str_map(
- const std::string &str,
- std::map<std::string,std::string> *str_map);
+ std::map<std::string,std::string> *str_map,
+ const char *delims = CONST_DELIMS);
/**
* Returns the value of **key** in **str_map** if available.
int RocksDBStore::ParseOptionsFromString(const string opt_str, rocksdb::Options &opt)
{
map<string, string> str_map;
- int r = get_str_map(opt_str, ",\n;", &str_map);
+ int r = get_str_map(opt_str, &str_map, ",\n;");
if (r < 0)
return r;
map<string, string>::iterator it;
}
{
map<string,string> str_map;
- ASSERT_EQ(0, get_str_map(" key1=val1; key2=\tval2; key3\t = \t val3; \n ", "\n;", &str_map));
+ ASSERT_EQ(0, get_str_map(" key1=val1; key2=\tval2; key3\t = \t val3; \n ", &str_map, "\n;"));
ASSERT_EQ(4u, str_map.size());
ASSERT_EQ("val1", str_map["key1"]);
ASSERT_EQ("val2", str_map["key2"]);