clang-tools 23.0.0git
Representation.h File Reference
#include "clang/AST/Type.h"
#include "clang/Basic/Diagnostic.h"
#include "clang/Basic/Specifiers.h"
#include "clang/Tooling/Execution.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/ilist_node.h"
#include "llvm/ADT/simple_ilist.h"
#include "llvm/Support/Allocator.h"
#include "llvm/Support/Mutex.h"
#include "llvm/Support/StringSaver.h"
#include <array>
#include <memory>
#include <optional>
#include <string>

Go to the source code of this file.

Classes

class  clang::doc::ConcurrentStringPool
struct  clang::doc::InfoNode< T >
struct  clang::doc::CommentInfo
struct  clang::doc::Reference
struct  clang::doc::Context
struct  clang::doc::ScopeChildren
struct  clang::doc::TypeInfo
struct  clang::doc::TemplateParamInfo
struct  clang::doc::TemplateSpecializationInfo
struct  clang::doc::ConstraintInfo
struct  clang::doc::TemplateInfo
struct  clang::doc::FieldTypeInfo
struct  clang::doc::MemberTypeInfo
struct  clang::doc::Location
struct  clang::doc::Info
 A base struct for Infos. More...
struct  clang::doc::NamespaceInfo
struct  clang::doc::SymbolInfo
struct  clang::doc::FriendInfo
struct  clang::doc::VarInfo
struct  clang::doc::FunctionInfo
struct  clang::doc::RecordInfo
struct  clang::doc::TypedefInfo
struct  clang::doc::BaseRecordInfo
struct  clang::doc::EnumValueInfo
struct  clang::doc::EnumInfo
struct  clang::doc::ConceptInfo
struct  clang::doc::Index
struct  clang::doc::ClangDocContext

Namespaces

namespace  clang
 ===– Representation.cpp - ClangDoc Representation --------—*- C++ -*-===//
namespace  clang::doc

Typedefs

template<typename T>
using clang::doc::DocList = llvm::simple_ilist<InfoNode<T>>
using clang::doc::SymbolID = std::array<uint8_t, 20>

Enumerations

enum class  clang::doc::InfoType {
  clang::doc::IT_default , clang::doc::IT_namespace , clang::doc::IT_record , clang::doc::IT_function ,
  clang::doc::IT_enum , clang::doc::IT_typedef , clang::doc::IT_concept , clang::doc::IT_variable ,
  clang::doc::IT_friend
}
enum class  clang::doc::CommentKind {
  clang::doc::CK_FullComment , clang::doc::CK_ParagraphComment , clang::doc::CK_TextComment , clang::doc::CK_InlineCommandComment ,
  clang::doc::CK_HTMLStartTagComment , clang::doc::CK_HTMLEndTagComment , clang::doc::CK_BlockCommandComment , clang::doc::CK_ParamCommandComment ,
  clang::doc::CK_TParamCommandComment , clang::doc::CK_VerbatimBlockComment , clang::doc::CK_VerbatimBlockLineComment , clang::doc::CK_VerbatimLineComment ,
  clang::doc::CK_Unknown
}
enum  clang::doc::OutputFormatTy {
  clang::doc::md , clang::doc::yaml , clang::doc::html , clang::doc::json ,
  clang::doc::md_mustache
}

Functions

ConcurrentStringPoolclang::doc::getGlobalStringPool ()
StringRef clang::doc::internString (const Twine &T)
template<typename T>
llvm::ArrayRef< T > clang::doc::allocateArray (llvm::SmallVectorImpl< T > &V, llvm::BumpPtrAllocator &Alloc)
template<typename T>
llvm::ArrayRef< T > clang::doc::allocateArray (llvm::ArrayRef< T > V, llvm::BumpPtrAllocator &Alloc)
template<typename T>
llvm::ArrayRef< T > clang::doc::deepCopyArray (llvm::ArrayRef< T > V, llvm::BumpPtrAllocator &Alloc)
template<typename T, typename... Args>
T * clang::doc::allocateTransient (Args &&...args)
template<typename T, typename... Args>
T * clang::doc::allocatePersistent (Args &&...args)
template<typename T, typename... Args>
T * clang::doc::allocatePtr (llvm::BumpPtrAllocator &Alloc, Args &&...args)
template<typename T, typename... Args>
InfoNode< T > * clang::doc::allocateListNode (llvm::BumpPtrAllocator &Alloc, Args &&...args)
template<typename T, typename... Args>
InfoNode< T > * clang::doc::allocateListNodeTransient (Args &&...args)
template<typename T>
InfoNode< T > * clang::doc::allocateListNode (llvm::BumpPtrAllocator &Alloc, T *Item)
template<typename T>
InfoNode< T > * clang::doc::allocateListNodeTransient (T *Item)
template<typename T, typename... Args>
InfoNode< T > * clang::doc::allocateListNodePersistent (Args &&...args)
template<typename T>
InfoNode< T > * clang::doc::allocateListNodePersistent (T *Item)
CommentKind clang::doc::stringToCommentKind (llvm::StringRef KindStr)
llvm::StringRef clang::doc::commentKindToString (CommentKind Kind)
llvm::Expected< Info * > clang::doc::mergeInfos (SmallVectorImpl< Info * > &Values)
llvm::Error clang::doc::mergeSingleInfo (doc::Info *&Reduced, doc::Info *NewInfo, llvm::BumpPtrAllocator &Arena)

Variables

constexpr SymbolID clang::doc::GlobalNamespaceID