static Error dumpStructure(RawSession &RS) { PDBFile &File = RS.getPDBFile(); std::unique_ptr<OutputStyle> O; if (opts::RawOutputStyle == opts::OutputStyleTy::LLVM) O = llvm::make_unique<LLVMOutputStyle>(File); else if (opts::RawOutputStyle == opts::OutputStyleTy::YAML) O = llvm::make_unique<YAMLOutputStyle>(File); else return make_error<RawError>(raw_error_code::feature_unsupported, "Requested output style unsupported"); if (auto EC = O->dumpFileHeaders()) return EC; if (auto EC = O->dumpStreamSummary()) return EC; if (auto EC = O->dumpStreamBlocks()) return EC; if (auto EC = O->dumpStreamData()) return EC; if (auto EC = O->dumpInfoStream()) return EC; if (auto EC = O->dumpNamedStream()) return EC; if (auto EC = O->dumpTpiStream(StreamTPI)) return EC; if (auto EC = O->dumpTpiStream(StreamIPI)) return EC; if (auto EC = O->dumpDbiStream()) return EC; if (auto EC = O->dumpSectionContribs()) return EC; if (auto EC = O->dumpSectionMap()) return EC; if (auto EC = O->dumpPublicsStream()) return EC; if (auto EC = O->dumpSectionHeaders()) return EC; if (auto EC = O->dumpFpoStream()) return EC; O->flush(); return Error::success(); }
static void dumpStructure(RawSession &RS) { PDBFile &File = RS.getPDBFile(); ScopedPrinter P(outs()); dumpFileHeaders(P, File); dumpStreamSizes(P, File); dumpStreamBlocks(P, File); dumpStreamData(P, File); dumpInfoStream(P, File); dumpNamedStream(P, File, "/names"); dumpDbiStream(P, File); dumpTpiStream(P, File); }