#include "Representation.h"
#include "llvm/Support/Error.h"
#include "llvm/Support/Path.h"
namespace clang {
namespace doc {
namespace {
const SymbolID EmptySID = …;
template <typename T>
llvm::Expected<std::unique_ptr<Info>>
reduce(std::vector<std::unique_ptr<Info>> &Values) { … }
template <typename T>
int getChildIndexIfExists(std::vector<T> &Children, T &ChildToMerge) { … }
template <typename T>
void reduceChildren(std::vector<T> &Children,
std::vector<T> &&ChildrenToMerge) { … }
}
llvm::Expected<std::unique_ptr<Info>>
mergeInfos(std::vector<std::unique_ptr<Info>> &Values) { … }
bool CommentInfo::operator==(const CommentInfo &Other) const { … }
bool CommentInfo::operator<(const CommentInfo &Other) const { … }
static llvm::SmallString<64>
calculateRelativeFilePath(const InfoType &Type, const StringRef &Path,
const StringRef &Name, const StringRef &CurrentPath) { … }
llvm::SmallString<64>
Reference::getRelativeFilePath(const StringRef &CurrentPath) const { … }
llvm::SmallString<16> Reference::getFileBaseName() const { … }
llvm::SmallString<64>
Info::getRelativeFilePath(const StringRef &CurrentPath) const { … }
llvm::SmallString<16> Info::getFileBaseName() const { … }
bool Reference::mergeable(const Reference &Other) { … }
void Reference::merge(Reference &&Other) { … }
void Info::mergeBase(Info &&Other) { … }
bool Info::mergeable(const Info &Other) { … }
void SymbolInfo::merge(SymbolInfo &&Other) { … }
NamespaceInfo::NamespaceInfo(SymbolID USR, StringRef Name, StringRef Path)
: … { … }
void NamespaceInfo::merge(NamespaceInfo &&Other) { … }
RecordInfo::RecordInfo(SymbolID USR, StringRef Name, StringRef Path)
: … { … }
void RecordInfo::merge(RecordInfo &&Other) { … }
void EnumInfo::merge(EnumInfo &&Other) { … }
void FunctionInfo::merge(FunctionInfo &&Other) { … }
void TypedefInfo::merge(TypedefInfo &&Other) { … }
BaseRecordInfo::BaseRecordInfo() : … { … }
BaseRecordInfo::BaseRecordInfo(SymbolID USR, StringRef Name, StringRef Path,
bool IsVirtual, AccessSpecifier Access,
bool IsParent)
: … { … }
llvm::SmallString<16> Info::extractName() const { … }
bool Index::operator<(const Index &Other) const { … }
void Index::sort() { … }
ClangDocContext::ClangDocContext(tooling::ExecutionContext *ECtx,
StringRef ProjectName, bool PublicOnly,
StringRef OutDirectory, StringRef SourceRoot,
StringRef RepositoryUrl,
std::vector<std::string> UserStylesheets)
: … { … }
void ScopeChildren::sort() { … }
}
}