25#include <boost/scoped_array.hpp>
27#include "mongo/base/string_data.h"
34void splitStringDelim(
const std::string& str, std::vector<std::string>* res,
char delim);
36void joinStringDelim(
const std::vector<std::string>& strs, std::string* res,
char delim);
38inline std::string tolowerString(StringData input) {
39 std::string::size_type sz = input.size();
41 boost::scoped_array<char> line(
new char[sz + 1]);
42 char* copy = line.get();
44 for (std::string::size_type i = 0; i < sz; i++) {
46 copy[i] = (char)tolower((
int)c);
63 static int cmp(
const StringData& s1,
const StringData& s2,
bool lexOnly);
64 int cmp(
const StringData& s1,
const StringData& s2)
const;
65 bool operator()(
const StringData& s1,
const StringData& s2)
const;
73int versionCmp(
const StringData rhs,
const StringData lhs);
Functor for combining lexical and numeric comparisons.
Definition stringutils.h:53
static int cmp(const StringData &s1, const StringData &s2, bool lexOnly)
Non numeric characters are compared lexicographically; numeric substrings are compared numerically; d...
the main MongoDB namespace
Definition bulk_operation_builder.h:24