60 void tstr(
const char* token) {
69 void istr(
const char* token,
int level) {
70 const string cr(
"\n");
73 for (
int i=0; i < level; i++) {
76 string s(cr + indent + token);
80 void istr(
string& token,
int level) {
81 istr(token.c_str(), level);
88 const int ARRAY_PARENT_OFFSET = 2;
89 if (stack.
depth() >= ARRAY_PARENT_OFFSET) {
91 bool parentIsNotArray = parent.
getType() != BSONParserStackItem::ItemType::ARRAY;
100 const int ARRAY_PARENT_OFFSET = 2;
101 bool parentIsNotArray =
true;
102 if (stack.
depth() >= ARRAY_PARENT_OFFSET) {
104 parentIsNotArray = parent.
getType() != BSONParserStackItem::ItemType::ARRAY;
107 if (stack.
depth() > 1 && parentIsNotArray) {
175 getOStream = [&] () -> ostream& {
return os; };
181 virtual void begin(
const char* prefix) {
188 virtual void end(
const char* suffix) {
196 virtual void render(
const BSONObj&
object,
int docIndex,
int docCount) {
201 objectParser.
parse(
object);