20 #include "mongo/bson/bsonobj.h"
21 #include "mongo/base/status.h"
22 #include "mongo/client/export_macros.h"
39 MONGO_CLIENT_API BSONObj MONGO_CLIENT_FUNC
fromjson(
const std::string& str);
42 MONGO_CLIENT_API BSONObj MONGO_CLIENT_FUNC
fromjson(
const char* str,
int* len=NULL);
59 MONGO_CLIENT_API
bool isArray(
const StringData& str);
68 MONGO_CLIENT_API std::string
tojson(
81 MONGO_CLIENT_API std::string
tojson(
94 explicit JParse(
const StringData& str);
324 Status regexPat(std::string* result);
325 Status regexOpt(std::string* result);
326 Status regexOptCheck(
const StringData& opt);
350 Status field(std::string* result);
359 Status quotedString(std::string* result);
395 Status chars(std::string* result,
const char* terminalSet,
const char* allowedSet=NULL);
403 std::string encodeUTF8(
unsigned char first,
unsigned char second)
const;
411 inline bool peekToken(
const char* token);
419 inline bool readToken(
const char* token);
427 bool readTokenImpl(
const char* token,
bool advance=
true);
433 bool readField(
const StringData& field);
439 bool match(
char matchChar,
const char* matchSet)
const;
444 bool isHexString(
const StringData&)
const;
450 bool isBase64String(
const StringData&)
const;
456 Status parseError(
const StringData& msg);
458 inline int offset() {
return (_input - _buf); }
472 const char*
const _buf;
474 const char*
const _input_end;
JsonStringFormat
Formatting mode for generating JSON from BSON.
Definition: oid.h:204
MONGO_CLIENT_API BSONObj MONGO_CLIENT_FUNC fromjson(const std::string &str)
Create a BSONObj from a JSON http://www.json.org, http://www.ietf.org/rfc/rfc4627.txt string.
the main MongoDB namespace
Definition: bulk_operation_builder.h:24
Parser class.
Definition: json.h:92
strict RFC format
Definition: oid.h:206
Utility for creating a BSONObj.
Definition: bsonobjbuilder.h:53
MONGO_CLIENT_API bool isArray(const StringData &str)
Tests whether the JSON string is an Array.
MONGO_CLIENT_API Status(MONGO_CLIENT_FUNC *saslClientAuthenticate)(DBClientWithCommands *client
Attempts to authenticate "client" using the SASL protocol.
MONGO_CLIENT_API std::string tojson(const BSONArray &arr, JsonStringFormat format=Strict, bool pretty=false)
Convert a BSONArray to a JSON string.