void JSONWriter::end() { WriteBlock b(this); xAssert(_stack.size()); auto &obj = _stack.back(); xAssert(!obj.hasOpenElement); tabOut(); if(obj.hasElements) { beginNewlineImpl(); } if(_stack.back().type == Scope::Object) { _vector->pushBack('}'); } else { _vector->pushBack(']'); } _stack.popBack(); }
void phyloDebugTree( struct phyloTree *tree,FILE *f) /* print out phylogenetic tree */ { if (tree) { int ii; fprintf(f,"%s:%g numEdges %d\n",tree->ident->name, tree->ident->length, tree->numEdges); recurseCount++; for (ii= 0; ii < tree->numEdges; ii++) { tabOut(f); phyloDebugTree(tree->edges[ii], f); } recurseCount--; } }