15#ifndef LLVM_CLANG_TOOLS_EXTRA_CLANG_DOC_SERIALIZE_H
16#define LLVM_CLANG_TOOLS_EXTRA_CLANG_DOC_SERIALIZE_H
21using namespace clang::comments;
36std::pair<std::unique_ptr<Info>, std::unique_ptr<Info>>
37emitInfo(
const NamespaceDecl *D,
const FullComment *FC, Location Loc,
40std::pair<std::unique_ptr<Info>, std::unique_ptr<Info>>
41emitInfo(
const RecordDecl *D,
const FullComment *FC, Location Loc,
44std::pair<std::unique_ptr<Info>, std::unique_ptr<Info>>
45emitInfo(
const EnumDecl *D,
const FullComment *FC, Location Loc,
48std::pair<std::unique_ptr<Info>, std::unique_ptr<Info>>
49emitInfo(
const FunctionDecl *D,
const FullComment *FC, Location Loc,
52std::pair<std::unique_ptr<Info>, std::unique_ptr<Info>>
53emitInfo(
const VarDecl *D,
const FullComment *FC,
int LineNumber,
54 StringRef File,
bool IsFileInRootDir,
bool PublicOnly);
56std::pair<std::unique_ptr<Info>, std::unique_ptr<Info>>
60std::pair<std::unique_ptr<Info>, std::unique_ptr<Info>>
64std::pair<std::unique_ptr<Info>, std::unique_ptr<Info>>
68std::pair<std::unique_ptr<Info>, std::unique_ptr<Info>>
72std::pair<std::unique_ptr<Info>, std::unique_ptr<Info>>
83std::string
serialize(std::unique_ptr<Info> &I);
static llvm::cl::opt< bool > PublicOnly("public", llvm::cl::desc("Document only public declarations."), llvm::cl::init(false), llvm::cl::cat(ClangDocCategory))
std::pair< std::unique_ptr< Info >, std::unique_ptr< Info > > emitInfo(const NamespaceDecl *D, const FullComment *FC, Location Loc, bool PublicOnly)
static std::string serialize(T &I)
SymbolID hashUSR(llvm::StringRef USR)
std::array< uint8_t, 20 > SymbolID
===– Representation.cpp - ClangDoc Representation --------—*- C++ -*-===//