25#include <boost/scoped_array.hpp>
27#include "mongo/base/string_data.h"
34 void splitStringDelim(
const std::string& str , std::vector<std::string>* res ,
char delim );
36 void joinStringDelim(
const std::vector<std::string>& strs , std::string* res ,
char delim );
38 inline 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;
72 int 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