clang-tools  17.0.0git
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
clang::doc Namespace Reference

Namespaces

 serialize
 

Classes

struct  BaseRecordInfo
 
struct  BitCodeConstants
 
struct  BlockIdToIndexFunctor
 
class  ClangDocBitcodeReader
 
class  ClangDocBitcodeWriter
 
struct  ClangDocContext
 
struct  CommentInfo
 
struct  EnumInfo
 
struct  EnumValueInfo
 
struct  FieldTypeInfo
 
struct  FunctionInfo
 
class  Generator
 
class  HTMLGenerator
 Generator for HTML documentation. More...
 
struct  Index
 
struct  Info
 A base struct for Infos. More...
 
struct  Location
 
class  MapASTVisitor
 
class  MapperActionFactory
 
class  MDGenerator
 Generator for Markdown documentation. More...
 
struct  MemberTypeInfo
 
struct  NamespaceInfo
 
struct  RecordIdDsc
 
struct  RecordIdToIndexFunctor
 
struct  RecordInfo
 
struct  Reference
 
struct  ScopeChildren
 
struct  SymbolInfo
 
struct  TemplateInfo
 
struct  TemplateParamInfo
 
struct  TemplateSpecializationInfo
 
struct  TypedefInfo
 
struct  TypeInfo
 
class  YAMLGenerator
 Generator for YAML documentation. More...
 

Typedefs

using Record = llvm::SmallVector< uint64_t, 1024 >
 
using AbbrevDsc = void(*)(std::shared_ptr< llvm::BitCodeAbbrev > &Abbrev)
 
typedef llvm::Registry< GeneratorGeneratorRegistry
 
using SymbolID = std::array< uint8_t, 20 >
 

Enumerations

enum  BlockId {
  BI_VERSION_BLOCK_ID = llvm::bitc::FIRST_APPLICATION_BLOCKID, BI_NAMESPACE_BLOCK_ID, BI_ENUM_BLOCK_ID, BI_ENUM_VALUE_BLOCK_ID,
  BI_TYPE_BLOCK_ID, BI_FIELD_TYPE_BLOCK_ID, BI_MEMBER_TYPE_BLOCK_ID, BI_RECORD_BLOCK_ID,
  BI_BASE_RECORD_BLOCK_ID, BI_FUNCTION_BLOCK_ID, BI_COMMENT_BLOCK_ID, BI_REFERENCE_BLOCK_ID,
  BI_TEMPLATE_BLOCK_ID, BI_TEMPLATE_SPECIALIZATION_BLOCK_ID, BI_TEMPLATE_PARAM_BLOCK_ID, BI_TYPEDEF_BLOCK_ID,
  BI_LAST, BI_FIRST = BI_VERSION_BLOCK_ID
}
 
enum  RecordId {
  VERSION = 1, FUNCTION_USR, FUNCTION_NAME, FUNCTION_DEFLOCATION,
  FUNCTION_LOCATION, FUNCTION_ACCESS, FUNCTION_IS_METHOD, COMMENT_KIND,
  COMMENT_TEXT, COMMENT_NAME, COMMENT_DIRECTION, COMMENT_PARAMNAME,
  COMMENT_CLOSENAME, COMMENT_SELFCLOSING, COMMENT_EXPLICIT, COMMENT_ATTRKEY,
  COMMENT_ATTRVAL, COMMENT_ARG, FIELD_TYPE_NAME, FIELD_DEFAULT_VALUE,
  MEMBER_TYPE_NAME, MEMBER_TYPE_ACCESS, NAMESPACE_USR, NAMESPACE_NAME,
  NAMESPACE_PATH, ENUM_USR, ENUM_NAME, ENUM_DEFLOCATION,
  ENUM_LOCATION, ENUM_SCOPED, ENUM_VALUE_NAME, ENUM_VALUE_VALUE,
  ENUM_VALUE_EXPR, RECORD_USR, RECORD_NAME, RECORD_PATH,
  RECORD_DEFLOCATION, RECORD_LOCATION, RECORD_TAG_TYPE, RECORD_IS_TYPE_DEF,
  BASE_RECORD_USR, BASE_RECORD_NAME, BASE_RECORD_PATH, BASE_RECORD_TAG_TYPE,
  BASE_RECORD_IS_VIRTUAL, BASE_RECORD_ACCESS, BASE_RECORD_IS_PARENT, REFERENCE_USR,
  REFERENCE_NAME, REFERENCE_QUAL_NAME, REFERENCE_TYPE, REFERENCE_PATH,
  REFERENCE_FIELD, TEMPLATE_PARAM_CONTENTS, TEMPLATE_SPECIALIZATION_OF, TYPEDEF_USR,
  TYPEDEF_NAME, TYPEDEF_DEFLOCATION, TYPEDEF_IS_USING, RI_LAST,
  RI_FIRST = VERSION
}
 
enum  FieldId {
  FieldId::F_default, FieldId::F_namespace, FieldId::F_parent, FieldId::F_vparent,
  FieldId::F_type, FieldId::F_child_namespace, FieldId::F_child_record
}
 
enum  InfoType {
  InfoType::IT_default, InfoType::IT_namespace, InfoType::IT_record, InfoType::IT_function,
  InfoType::IT_enum, InfoType::IT_typedef
}
 

Functions

llvm::Error decodeRecord (const Record &R, llvm::SmallVectorImpl< char > &Field, llvm::StringRef Blob)
 
llvm::Error decodeRecord (const Record &R, SymbolID &Field, llvm::StringRef Blob)
 
llvm::Error decodeRecord (const Record &R, bool &Field, llvm::StringRef Blob)
 
llvm::Error decodeRecord (const Record &R, int &Field, llvm::StringRef Blob)
 
llvm::Error decodeRecord (const Record &R, AccessSpecifier &Field, llvm::StringRef Blob)
 
llvm::Error decodeRecord (const Record &R, TagTypeKind &Field, llvm::StringRef Blob)
 
llvm::Error decodeRecord (const Record &R, std::optional< Location > &Field, llvm::StringRef Blob)
 
llvm::Error decodeRecord (const Record &R, InfoType &Field, llvm::StringRef Blob)
 
llvm::Error decodeRecord (const Record &R, FieldId &Field, llvm::StringRef Blob)
 
llvm::Error decodeRecord (const Record &R, llvm::SmallVectorImpl< llvm::SmallString< 16 >> &Field, llvm::StringRef Blob)
 
llvm::Error decodeRecord (const Record &R, llvm::SmallVectorImpl< Location > &Field, llvm::StringRef Blob)
 
llvm::Error parseRecord (const Record &R, unsigned ID, llvm::StringRef Blob, const unsigned VersionNo)
 
llvm::Error parseRecord (const Record &R, unsigned ID, llvm::StringRef Blob, NamespaceInfo *I)
 
llvm::Error parseRecord (const Record &R, unsigned ID, llvm::StringRef Blob, RecordInfo *I)
 
llvm::Error parseRecord (const Record &R, unsigned ID, llvm::StringRef Blob, BaseRecordInfo *I)
 
llvm::Error parseRecord (const Record &R, unsigned ID, llvm::StringRef Blob, EnumInfo *I)
 
llvm::Error parseRecord (const Record &R, unsigned ID, llvm::StringRef Blob, TypedefInfo *I)
 
llvm::Error parseRecord (const Record &R, unsigned ID, llvm::StringRef Blob, EnumValueInfo *I)
 
llvm::Error parseRecord (const Record &R, unsigned ID, llvm::StringRef Blob, FunctionInfo *I)
 
llvm::Error parseRecord (const Record &R, unsigned ID, llvm::StringRef Blob, TypeInfo *I)
 
llvm::Error parseRecord (const Record &R, unsigned ID, llvm::StringRef Blob, FieldTypeInfo *I)
 
llvm::Error parseRecord (const Record &R, unsigned ID, llvm::StringRef Blob, MemberTypeInfo *I)
 
llvm::Error parseRecord (const Record &R, unsigned ID, llvm::StringRef Blob, CommentInfo *I)
 
llvm::Error parseRecord (const Record &R, unsigned ID, llvm::StringRef Blob, Reference *I, FieldId &F)
 
llvm::Error parseRecord (const Record &R, unsigned ID, llvm::StringRef Blob, TemplateInfo *I)
 
llvm::Error parseRecord (const Record &R, unsigned ID, llvm::StringRef Blob, TemplateSpecializationInfo *I)
 
llvm::Error parseRecord (const Record &R, unsigned ID, llvm::StringRef Blob, TemplateParamInfo *I)
 
template<typename T >
llvm::Expected< CommentInfo * > getCommentInfo (T I)
 
template<>
llvm::Expected< CommentInfo * > getCommentInfo (FunctionInfo *I)
 
template<>
llvm::Expected< CommentInfo * > getCommentInfo (NamespaceInfo *I)
 
template<>
llvm::Expected< CommentInfo * > getCommentInfo (RecordInfo *I)
 
template<>
llvm::Expected< CommentInfo * > getCommentInfo (MemberTypeInfo *I)
 
template<>
llvm::Expected< CommentInfo * > getCommentInfo (EnumInfo *I)
 
template<>
llvm::Expected< CommentInfo * > getCommentInfo (TypedefInfo *I)
 
template<>
llvm::Expected< CommentInfo * > getCommentInfo (CommentInfo *I)
 
template<>
llvm::Expected< CommentInfo * > getCommentInfo (std::unique_ptr< CommentInfo > &I)
 
template<typename T , typename TTypeInfo >
llvm::Error addTypeInfo (T I, TTypeInfo &&TI)
 
template<>
llvm::Error addTypeInfo (RecordInfo *I, MemberTypeInfo &&T)
 
template<>
llvm::Error addTypeInfo (BaseRecordInfo *I, MemberTypeInfo &&T)
 
template<>
llvm::Error addTypeInfo (FunctionInfo *I, TypeInfo &&T)
 
template<>
llvm::Error addTypeInfo (FunctionInfo *I, FieldTypeInfo &&T)
 
template<>
llvm::Error addTypeInfo (EnumInfo *I, TypeInfo &&T)
 
template<>
llvm::Error addTypeInfo (TypedefInfo *I, TypeInfo &&T)
 
template<typename T >
llvm::Error addReference (T I, Reference &&R, FieldId F)
 
template<>
llvm::Error addReference (TypeInfo *I, Reference &&R, FieldId F)
 
template<>
llvm::Error addReference (FieldTypeInfo *I, Reference &&R, FieldId F)
 
template<>
llvm::Error addReference (MemberTypeInfo *I, Reference &&R, FieldId F)
 
template<>
llvm::Error addReference (EnumInfo *I, Reference &&R, FieldId F)
 
template<>
llvm::Error addReference (TypedefInfo *I, Reference &&R, FieldId F)
 
template<>
llvm::Error addReference (NamespaceInfo *I, Reference &&R, FieldId F)
 
template<>
llvm::Error addReference (FunctionInfo *I, Reference &&R, FieldId F)
 
template<>
llvm::Error addReference (RecordInfo *I, Reference &&R, FieldId F)
 
template<typename T , typename ChildInfoType >
void addChild (T I, ChildInfoType &&R)
 
template<>
void addChild (NamespaceInfo *I, FunctionInfo &&R)
 
template<>
void addChild (NamespaceInfo *I, EnumInfo &&R)
 
template<>
void addChild (NamespaceInfo *I, TypedefInfo &&R)
 
template<>
void addChild (RecordInfo *I, FunctionInfo &&R)
 
template<>
void addChild (RecordInfo *I, EnumInfo &&R)
 
template<>
void addChild (RecordInfo *I, TypedefInfo &&R)
 
template<>
void addChild (EnumInfo *I, EnumValueInfo &&R)
 
template<>
void addChild (RecordInfo *I, BaseRecordInfo &&R)
 
template<>
void addChild (BaseRecordInfo *I, FunctionInfo &&R)
 
template<typename T >
void addTemplateParam (T I, TemplateParamInfo &&P)
 
template<>
void addTemplateParam (TemplateInfo *I, TemplateParamInfo &&P)
 
template<>
void addTemplateParam (TemplateSpecializationInfo *I, TemplateParamInfo &&P)
 
template<typename T >
void addTemplate (T I, TemplateInfo &&P)
 
template<>
void addTemplate (RecordInfo *I, TemplateInfo &&P)
 
template<>
void addTemplate (FunctionInfo *I, TemplateInfo &&P)
 
template<typename T >
void addTemplateSpecialization (T I, TemplateSpecializationInfo &&TSI)
 
template<>
void addTemplateSpecialization (TemplateInfo *I, TemplateSpecializationInfo &&TSI)
 
static void AbbrevGen (std::shared_ptr< llvm::BitCodeAbbrev > &Abbrev, const std::initializer_list< llvm::BitCodeAbbrevOp > Ops)
 
static void BoolAbbrev (std::shared_ptr< llvm::BitCodeAbbrev > &Abbrev)
 
static void IntAbbrev (std::shared_ptr< llvm::BitCodeAbbrev > &Abbrev)
 
static void SymbolIDAbbrev (std::shared_ptr< llvm::BitCodeAbbrev > &Abbrev)
 
static void StringAbbrev (std::shared_ptr< llvm::BitCodeAbbrev > &Abbrev)
 
static void LocationAbbrev (std::shared_ptr< llvm::BitCodeAbbrev > &Abbrev)
 
std::unique_ptr< tooling::FrontendActionFactory > newMapperActionFactory (ClangDocContext CDCtx)
 
llvm::Expected< std::unique_ptr< Generator > > findGeneratorByName (llvm::StringRef Format)
 
std::string getTagType (TagTypeKind AS)
 
template<typename Derived , typename Base , typename = std::enable_if<std::is_base_of<Derived, Base>::value>>
static void AppendVector (std::vector< Derived > &&New, std::vector< Base > &Original)
 
static SmallString< 128 > computeRelativePath (StringRef Destination, StringRef Origin)
 
static std::vector< std::unique_ptr< TagNode > > genStylesheetsHTML (StringRef InfoPath, const ClangDocContext &CDCtx)
 
static std::vector< std::unique_ptr< TagNode > > genJsScriptsHTML (StringRef InfoPath, const ClangDocContext &CDCtx)
 
static std::unique_ptr< TagNode > genLink (const Twine &Text, const Twine &Link)
 
static std::unique_ptr< HTMLNode > genReference (const Reference &Type, StringRef CurrentDirectory, std::optional< StringRef > JumpToSection=std::nullopt)
 
static std::vector< std::unique_ptr< HTMLNode > > genReferenceList (const llvm::SmallVectorImpl< Reference > &Refs, const StringRef &CurrentDirectory)
 
static std::vector< std::unique_ptr< TagNode > > genHTML (const EnumInfo &I, const ClangDocContext &CDCtx)
 
static std::vector< std::unique_ptr< TagNode > > genHTML (const FunctionInfo &I, const ClangDocContext &CDCtx, StringRef ParentInfoDir)
 
static std::vector< std::unique_ptr< TagNode > > genEnumsBlock (const std::vector< EnumInfo > &Enums, const ClangDocContext &CDCtx)
 
static std::unique_ptr< TagNode > genEnumMembersBlock (const llvm::SmallVector< EnumValueInfo, 4 > &Members)
 
static std::vector< std::unique_ptr< TagNode > > genFunctionsBlock (const std::vector< FunctionInfo > &Functions, const ClangDocContext &CDCtx, StringRef ParentInfoDir)
 
static std::vector< std::unique_ptr< TagNode > > genRecordMembersBlock (const llvm::SmallVector< MemberTypeInfo, 4 > &Members, StringRef ParentInfoDir)
 
static std::vector< std::unique_ptr< TagNode > > genReferencesBlock (const std::vector< Reference > &References, llvm::StringRef Title, StringRef ParentPath)
 
static std::unique_ptr< TagNode > writeFileDefinition (const Location &L, std::optional< StringRef > RepositoryUrl=std::nullopt)
 
static std::vector< std::unique_ptr< TagNode > > genHTML (const Index &Index, StringRef InfoPath, bool IsOutermostList)
 
static std::vector< std::unique_ptr< TagNode > > genFileHeadNodes (StringRef Title, StringRef InfoPath, const ClangDocContext &CDCtx)
 
static std::unique_ptr< TagNode > genFileHeaderNode (StringRef ProjectName)
 
static std::unique_ptr< TagNode > genInfoFileMainNode (StringRef InfoPath, std::vector< std::unique_ptr< TagNode >> &MainContentInnerNodes, const Index &InfoIndex)
 
static std::unique_ptr< TagNode > genFileFooterNode ()
 
static HTMLFile genInfoFile (StringRef Title, StringRef InfoPath, std::vector< std::unique_ptr< TagNode >> &MainContentNodes, const Index &InfoIndex, const ClangDocContext &CDCtx)
 
template<typename T , typename = std::enable_if<std::is_base_of<T, Info>::value>>
static Index genInfoIndexItem (const std::vector< T > &Infos, StringRef Title)
 
static std::unique_ptr< HTMLNode > genHTML (const CommentInfo &I)
 
static std::unique_ptr< TagNode > genHTML (const std::vector< CommentInfo > &C)
 
static std::vector< std::unique_ptr< TagNode > > genHTML (const NamespaceInfo &I, Index &InfoIndex, const ClangDocContext &CDCtx, std::string &InfoTitle)
 
static std::vector< std::unique_ptr< TagNode > > genHTML (const RecordInfo &I, Index &InfoIndex, const ClangDocContext &CDCtx, std::string &InfoTitle)
 
static std::vector< std::unique_ptr< TagNode > > genHTML (const TypedefInfo &I, const ClangDocContext &CDCtx, std::string &InfoTitle)
 
static std::string getRefType (InfoType IT)
 
static llvm::Error SerializeIndex (ClangDocContext &CDCtx)
 
static std::unique_ptr< TagNode > genIndexFileMainNode ()
 
static llvm::Error GenIndex (const ClangDocContext &CDCtx)
 
static llvm::Error CopyFile (StringRef FilePath, StringRef OutDirectory)
 
static GeneratorRegistry::Add< HTMLGeneratorHTML (HTMLGenerator::Format, "Generator for HTML output.")
 
static std::string genItalic (const Twine &Text)
 
static std::string genEmphasis (const Twine &Text)
 
static std::string genReferenceList (const llvm::SmallVectorImpl< Reference > &Refs)
 
static void writeLine (const Twine &Text, raw_ostream &OS)
 
static void writeNewLine (raw_ostream &OS)
 
static void writeHeader (const Twine &Text, unsigned int Num, raw_ostream &OS)
 
static void writeFileDefinition (const ClangDocContext &CDCtx, const Location &L, raw_ostream &OS)
 
static void writeDescription (const CommentInfo &I, raw_ostream &OS)
 
static void writeNameLink (const StringRef &CurrentPath, const Reference &R, llvm::raw_ostream &OS)
 
static void genMarkdown (const ClangDocContext &CDCtx, const EnumInfo &I, llvm::raw_ostream &OS)
 
static void genMarkdown (const ClangDocContext &CDCtx, const FunctionInfo &I, llvm::raw_ostream &OS)
 
static void genMarkdown (const ClangDocContext &CDCtx, const NamespaceInfo &I, llvm::raw_ostream &OS)
 
static void genMarkdown (const ClangDocContext &CDCtx, const RecordInfo &I, llvm::raw_ostream &OS)
 
static void genMarkdown (const ClangDocContext &CDCtx, const TypedefInfo &I, llvm::raw_ostream &OS)
 
static void serializeReference (llvm::raw_fd_ostream &OS, Index &I, int Level)
 
static llvm::Error serializeIndex (ClangDocContext &CDCtx)
 
static llvm::Error genIndex (ClangDocContext &CDCtx)
 
static GeneratorRegistry::Add< MDGeneratorMD (MDGenerator::Format, "Generator for MD output.")
 
llvm::Expected< std::unique_ptr< Info > > mergeInfos (std::vector< std::unique_ptr< Info >> &Values)
 
static llvm::SmallString< 64 > calculateRelativeFilePath (const InfoType &Type, const StringRef &Path, const StringRef &Name, const StringRef &CurrentPath)
 
static GeneratorRegistry::Add< YAMLGeneratorYAML (YAMLGenerator::Format, "Generator for YAML output.")
 

Variables

static const SymbolID EmptySID = SymbolID()
 
static const llvm::IndexedMap< llvm::StringRef, BlockIdToIndexFunctorBlockIdNameMap
 
static const llvm::IndexedMap< RecordIdDsc, RecordIdToIndexFunctorRecordIdNameMap
 
static const std::vector< std::pair< BlockId, std::vector< RecordId > > > RecordsByBlock
 
static const unsigned VersionNumber = 3
 
static constexpr unsigned BlockIdCount = BI_LAST - BI_FIRST
 
static constexpr unsigned RecordIdCount = RI_LAST - RI_FIRST
 
volatile int YAMLGeneratorAnchorSource = 0
 
volatile int MDGeneratorAnchorSource = 0
 
volatile int HTMLGeneratorAnchorSource = 0
 
static int LLVM_ATTRIBUTE_UNUSED YAMLGeneratorAnchorDest
 
static int LLVM_ATTRIBUTE_UNUSED MDGeneratorAnchorDest
 
static int LLVM_ATTRIBUTE_UNUSED HTMLGeneratorAnchorDest
 

Typedef Documentation

◆ AbbrevDsc

using clang::doc::AbbrevDsc = typedef void (*)(std::shared_ptr<llvm::BitCodeAbbrev> &Abbrev)

Definition at line 31 of file BitcodeWriter.cpp.

◆ GeneratorRegistry

typedef llvm::Registry<Generator> clang::doc::GeneratorRegistry

Definition at line 48 of file Generators.h.

◆ Record

using clang::doc::Record = typedef llvm::SmallVector<uint64_t, 1024>

Definition at line 18 of file BitcodeReader.cpp.

◆ SymbolID

using clang::doc::SymbolID = typedef std::array<uint8_t, 20>

Definition at line 31 of file Representation.h.

Enumeration Type Documentation

◆ BlockId

Enumerator
BI_VERSION_BLOCK_ID 
BI_NAMESPACE_BLOCK_ID 
BI_ENUM_BLOCK_ID 
BI_ENUM_VALUE_BLOCK_ID 
BI_TYPE_BLOCK_ID 
BI_FIELD_TYPE_BLOCK_ID 
BI_MEMBER_TYPE_BLOCK_ID 
BI_RECORD_BLOCK_ID 
BI_BASE_RECORD_BLOCK_ID 
BI_FUNCTION_BLOCK_ID 
BI_COMMENT_BLOCK_ID 
BI_REFERENCE_BLOCK_ID 
BI_TEMPLATE_BLOCK_ID 
BI_TEMPLATE_SPECIALIZATION_BLOCK_ID 
BI_TEMPLATE_PARAM_BLOCK_ID 
BI_TYPEDEF_BLOCK_ID 
BI_LAST 
BI_FIRST 

Definition at line 53 of file BitcodeWriter.h.

◆ FieldId

enum clang::doc::FieldId
strong
Enumerator
F_default 
F_namespace 
F_parent 
F_vparent 
F_type 
F_child_namespace 
F_child_record 

Definition at line 144 of file BitcodeWriter.h.

◆ InfoType

enum clang::doc::InfoType
strong
Enumerator
IT_default 
IT_namespace 
IT_record 
IT_function 
IT_enum 
IT_typedef 

Definition at line 39 of file Representation.h.

◆ RecordId

Enumerator
VERSION 
FUNCTION_USR 
FUNCTION_NAME 
FUNCTION_DEFLOCATION 
FUNCTION_LOCATION 
FUNCTION_ACCESS 
FUNCTION_IS_METHOD 
COMMENT_KIND 
COMMENT_TEXT 
COMMENT_NAME 
COMMENT_DIRECTION 
COMMENT_PARAMNAME 
COMMENT_CLOSENAME 
COMMENT_SELFCLOSING 
COMMENT_EXPLICIT 
COMMENT_ATTRKEY 
COMMENT_ATTRVAL 
COMMENT_ARG 
FIELD_TYPE_NAME 
FIELD_DEFAULT_VALUE 
MEMBER_TYPE_NAME 
MEMBER_TYPE_ACCESS 
NAMESPACE_USR 
NAMESPACE_NAME 
NAMESPACE_PATH 
ENUM_USR 
ENUM_NAME 
ENUM_DEFLOCATION 
ENUM_LOCATION 
ENUM_SCOPED 
ENUM_VALUE_NAME 
ENUM_VALUE_VALUE 
ENUM_VALUE_EXPR 
RECORD_USR 
RECORD_NAME 
RECORD_PATH 
RECORD_DEFLOCATION 
RECORD_LOCATION 
RECORD_TAG_TYPE 
RECORD_IS_TYPE_DEF 
BASE_RECORD_USR 
BASE_RECORD_NAME 
BASE_RECORD_PATH 
BASE_RECORD_TAG_TYPE 
BASE_RECORD_IS_VIRTUAL 
BASE_RECORD_ACCESS 
BASE_RECORD_IS_PARENT 
REFERENCE_USR 
REFERENCE_NAME 
REFERENCE_QUAL_NAME 
REFERENCE_TYPE 
REFERENCE_PATH 
REFERENCE_FIELD 
TEMPLATE_PARAM_CONTENTS 
TEMPLATE_SPECIALIZATION_OF 
TYPEDEF_USR 
TYPEDEF_NAME 
TYPEDEF_DEFLOCATION 
TYPEDEF_IS_USING 
RI_LAST 
RI_FIRST 

Definition at line 76 of file BitcodeWriter.h.

Function Documentation

◆ AbbrevGen()

static void clang::doc::AbbrevGen ( std::shared_ptr< llvm::BitCodeAbbrev > &  Abbrev,
const std::initializer_list< llvm::BitCodeAbbrevOp >  Ops 
)
static

Definition at line 33 of file BitcodeWriter.cpp.

Referenced by BoolAbbrev(), IntAbbrev(), LocationAbbrev(), StringAbbrev(), and SymbolIDAbbrev().

◆ addChild() [1/10]

template<>
void clang::doc::addChild ( BaseRecordInfo I,
FunctionInfo &&  R 
)

◆ addChild() [2/10]

template<>
void clang::doc::addChild ( EnumInfo I,
EnumValueInfo &&  R 
)

Definition at line 612 of file BitcodeReader.cpp.

References clang::doc::EnumInfo::Members.

◆ addChild() [3/10]

template<>
void clang::doc::addChild ( NamespaceInfo I,
EnumInfo &&  R 
)

◆ addChild() [4/10]

template<>
void clang::doc::addChild ( NamespaceInfo I,
FunctionInfo &&  R 
)

◆ addChild() [5/10]

template<>
void clang::doc::addChild ( NamespaceInfo I,
TypedefInfo &&  R 
)

◆ addChild() [6/10]

template<>
void clang::doc::addChild ( RecordInfo I,
BaseRecordInfo &&  R 
)

Definition at line 615 of file BitcodeReader.cpp.

References clang::doc::RecordInfo::Bases.

◆ addChild() [7/10]

template<>
void clang::doc::addChild ( RecordInfo I,
EnumInfo &&  R 
)

◆ addChild() [8/10]

template<>
void clang::doc::addChild ( RecordInfo I,
FunctionInfo &&  R 
)

◆ addChild() [9/10]

template<>
void clang::doc::addChild ( RecordInfo I,
TypedefInfo &&  R 
)

◆ addChild() [10/10]

template<typename T , typename ChildInfoType >
void clang::doc::addChild ( I,
ChildInfoType &&  R 
)

Definition at line 584 of file BitcodeReader.cpp.

◆ addReference() [1/9]

template<>
llvm::Error clang::doc::addReference ( EnumInfo I,
Reference &&  R,
FieldId  F 
)

Definition at line 508 of file BitcodeReader.cpp.

◆ addReference() [2/9]

template<>
llvm::Error clang::doc::addReference ( FieldTypeInfo I,
Reference &&  R,
FieldId  F 
)

Definition at line 485 of file BitcodeReader.cpp.

◆ addReference() [3/9]

template<>
llvm::Error clang::doc::addReference ( FunctionInfo I,
Reference &&  R,
FieldId  F 
)

Definition at line 549 of file BitcodeReader.cpp.

◆ addReference() [4/9]

template<>
llvm::Error clang::doc::addReference ( MemberTypeInfo I,
Reference &&  R,
FieldId  F 
)

Definition at line 497 of file BitcodeReader.cpp.

◆ addReference() [5/9]

template<>
llvm::Error clang::doc::addReference ( NamespaceInfo I,
Reference &&  R,
FieldId  F 
)

Definition at line 531 of file BitcodeReader.cpp.

◆ addReference() [6/9]

template<>
llvm::Error clang::doc::addReference ( RecordInfo I,
Reference &&  R,
FieldId  F 
)

Definition at line 563 of file BitcodeReader.cpp.

◆ addReference() [7/9]

template<typename T >
llvm::Error clang::doc::addReference ( I,
Reference &&  R,
FieldId  F 
)

Definition at line 468 of file BitcodeReader.cpp.

◆ addReference() [8/9]

template<>
llvm::Error clang::doc::addReference ( TypedefInfo I,
Reference &&  R,
FieldId  F 
)

Definition at line 519 of file BitcodeReader.cpp.

◆ addReference() [9/9]

template<>
llvm::Error clang::doc::addReference ( TypeInfo I,
Reference &&  R,
FieldId  F 
)

Definition at line 473 of file BitcodeReader.cpp.

◆ addTemplate() [1/3]

template<>
void clang::doc::addTemplate ( FunctionInfo I,
TemplateInfo &&  P 
)

Definition at line 645 of file BitcodeReader.cpp.

References clang::doc::FunctionInfo::Template.

◆ addTemplate() [2/3]

template<>
void clang::doc::addTemplate ( RecordInfo I,
TemplateInfo &&  P 
)

Definition at line 642 of file BitcodeReader.cpp.

References clang::doc::RecordInfo::Template.

◆ addTemplate() [3/3]

template<typename T >
void clang::doc::addTemplate ( I,
TemplateInfo &&  P 
)

Definition at line 638 of file BitcodeReader.cpp.

◆ addTemplateParam() [1/3]

template<typename T >
void clang::doc::addTemplateParam ( I,
TemplateParamInfo &&  P 
)

Definition at line 625 of file BitcodeReader.cpp.

◆ addTemplateParam() [2/3]

template<>
void clang::doc::addTemplateParam ( TemplateInfo I,
TemplateParamInfo &&  P 
)

Definition at line 629 of file BitcodeReader.cpp.

References clang::doc::TemplateInfo::Params.

◆ addTemplateParam() [3/3]

template<>
void clang::doc::addTemplateParam ( TemplateSpecializationInfo I,
TemplateParamInfo &&  P 
)

Definition at line 633 of file BitcodeReader.cpp.

References clang::doc::TemplateSpecializationInfo::Params.

◆ addTemplateSpecialization() [1/2]

template<typename T >
void clang::doc::addTemplateSpecialization ( I,
TemplateSpecializationInfo &&  TSI 
)

Definition at line 651 of file BitcodeReader.cpp.

◆ addTemplateSpecialization() [2/2]

template<>
void clang::doc::addTemplateSpecialization ( TemplateInfo I,
TemplateSpecializationInfo &&  TSI 
)

Definition at line 656 of file BitcodeReader.cpp.

References clang::doc::TemplateInfo::Specialization.

◆ addTypeInfo() [1/7]

template<>
llvm::Error clang::doc::addTypeInfo ( BaseRecordInfo I,
MemberTypeInfo &&  T 
)

Definition at line 443 of file BitcodeReader.cpp.

◆ addTypeInfo() [2/7]

template<>
llvm::Error clang::doc::addTypeInfo ( EnumInfo I,
TypeInfo &&  T 
)

Definition at line 458 of file BitcodeReader.cpp.

◆ addTypeInfo() [3/7]

template<>
llvm::Error clang::doc::addTypeInfo ( FunctionInfo I,
FieldTypeInfo &&  T 
)

Definition at line 453 of file BitcodeReader.cpp.

◆ addTypeInfo() [4/7]

template<>
llvm::Error clang::doc::addTypeInfo ( FunctionInfo I,
TypeInfo &&  T 
)

Definition at line 448 of file BitcodeReader.cpp.

◆ addTypeInfo() [5/7]

template<>
llvm::Error clang::doc::addTypeInfo ( RecordInfo I,
MemberTypeInfo &&  T 
)

Definition at line 438 of file BitcodeReader.cpp.

◆ addTypeInfo() [6/7]

template<typename T , typename TTypeInfo >
llvm::Error clang::doc::addTypeInfo ( I,
TTypeInfo &&  TI 
)

Definition at line 433 of file BitcodeReader.cpp.

◆ addTypeInfo() [7/7]

template<>
llvm::Error clang::doc::addTypeInfo ( TypedefInfo I,
TypeInfo &&  T 
)

Definition at line 463 of file BitcodeReader.cpp.

◆ AppendVector()

template<typename Derived , typename Base , typename = std::enable_if<std::is_base_of<Derived, Base>::value>>
static void clang::doc::AppendVector ( std::vector< Derived > &&  New,
std::vector< Base > &  Original 
)
static

Definition at line 224 of file HTMLGenerator.cpp.

Referenced by genFileHeadNodes(), genHTML(), and genInfoFileMainNode().

◆ BoolAbbrev()

static void clang::doc::BoolAbbrev ( std::shared_ptr< llvm::BitCodeAbbrev > &  Abbrev)
static

Definition at line 39 of file BitcodeWriter.cpp.

References AbbrevGen(), and clang::doc::BitCodeConstants::BoolSize.

◆ calculateRelativeFilePath()

static llvm::SmallString<64> clang::doc::calculateRelativeFilePath ( const InfoType Type,
const StringRef &  Path,
const StringRef &  Name,
const StringRef &  CurrentPath 
)
static

◆ computeRelativePath()

static SmallString<128> clang::doc::computeRelativePath ( StringRef  Destination,
StringRef  Origin 
)
static

Definition at line 230 of file HTMLGenerator.cpp.

Referenced by genJsScriptsHTML(), and genStylesheetsHTML().

◆ CopyFile()

static llvm::Error clang::doc::CopyFile ( StringRef  FilePath,
StringRef  OutDirectory 
)
static

Definition at line 1042 of file HTMLGenerator.cpp.

References OutDirectory().

◆ decodeRecord() [1/11]

llvm::Error clang::doc::decodeRecord ( const Record R,
AccessSpecifier &  Field,
llvm::StringRef  Blob 
)

Definition at line 53 of file BitcodeReader.cpp.

References Field.

◆ decodeRecord() [2/11]

llvm::Error clang::doc::decodeRecord ( const Record R,
bool &  Field,
llvm::StringRef  Blob 
)

Definition at line 40 of file BitcodeReader.cpp.

References Field.

◆ decodeRecord() [3/11]

llvm::Error clang::doc::decodeRecord ( const Record R,
FieldId Field,
llvm::StringRef  Blob 
)

Definition at line 109 of file BitcodeReader.cpp.

◆ decodeRecord() [4/11]

llvm::Error clang::doc::decodeRecord ( const Record R,
InfoType Field,
llvm::StringRef  Blob 
)

Definition at line 93 of file BitcodeReader.cpp.

References Field, IT_default, IT_enum, IT_function, IT_namespace, IT_record, and IT_typedef.

◆ decodeRecord() [5/11]

llvm::Error clang::doc::decodeRecord ( const Record R,
int &  Field,
llvm::StringRef  Blob 
)

Definition at line 45 of file BitcodeReader.cpp.

References Field.

◆ decodeRecord() [6/11]

llvm::Error clang::doc::decodeRecord ( const Record R,
llvm::SmallVectorImpl< char > &  Field,
llvm::StringRef  Blob 
)

Definition at line 21 of file BitcodeReader.cpp.

References Field.

Referenced by parseRecord().

◆ decodeRecord() [7/11]

llvm::Error clang::doc::decodeRecord ( const Record R,
llvm::SmallVectorImpl< llvm::SmallString< 16 >> &  Field,
llvm::StringRef  Blob 
)

Definition at line 126 of file BitcodeReader.cpp.

References Field.

◆ decodeRecord() [8/11]

llvm::Error clang::doc::decodeRecord ( const Record R,
llvm::SmallVectorImpl< Location > &  Field,
llvm::StringRef  Blob 
)

Definition at line 133 of file BitcodeReader.cpp.

References Field.

◆ decodeRecord() [9/11]

llvm::Error clang::doc::decodeRecord ( const Record R,
std::optional< Location > &  Field,
llvm::StringRef  Blob 
)

Definition at line 84 of file BitcodeReader.cpp.

References Field.

◆ decodeRecord() [10/11]

llvm::Error clang::doc::decodeRecord ( const Record R,
SymbolID Field,
llvm::StringRef  Blob 
)

Definition at line 27 of file BitcodeReader.cpp.

References E, Field, and clang::doc::BitCodeConstants::USRHashSize.

◆ decodeRecord() [11/11]

llvm::Error clang::doc::decodeRecord ( const Record R,
TagTypeKind &  Field,
llvm::StringRef  Blob 
)

Definition at line 68 of file BitcodeReader.cpp.

References Field.

◆ findGeneratorByName()

llvm::Expected< std::unique_ptr< Generator > > clang::doc::findGeneratorByName ( llvm::StringRef  Format)

Definition at line 17 of file Generators.cpp.

◆ genEmphasis()

static std::string clang::doc::genEmphasis ( const Twine &  Text)
static

Definition at line 27 of file MDGenerator.cpp.

References Text.

◆ genEnumMembersBlock()

static std::unique_ptr<TagNode> clang::doc::genEnumMembersBlock ( const llvm::SmallVector< EnumValueInfo, 4 > &  Members)
static

Definition at line 366 of file HTMLGenerator.cpp.

References M.

◆ genEnumsBlock()

static std::vector<std::unique_ptr<TagNode> > clang::doc::genEnumsBlock ( const std::vector< EnumInfo > &  Enums,
const ClangDocContext CDCtx 
)
static

Definition at line 348 of file HTMLGenerator.cpp.

References E, and Out.

Referenced by genHTML().

◆ genFileFooterNode()

static std::unique_ptr<TagNode> clang::doc::genFileFooterNode ( )
static

Definition at line 535 of file HTMLGenerator.cpp.

◆ genFileHeaderNode()

static std::unique_ptr<TagNode> clang::doc::genFileHeaderNode ( StringRef  ProjectName)
static

Definition at line 490 of file HTMLGenerator.cpp.

References ProjectName().

◆ genFileHeadNodes()

static std::vector<std::unique_ptr<TagNode> > clang::doc::genFileHeadNodes ( StringRef  Title,
StringRef  InfoPath,
const ClangDocContext CDCtx 
)
static

Definition at line 472 of file HTMLGenerator.cpp.

References AppendVector(), genJsScriptsHTML(), genStylesheetsHTML(), and Out.

◆ genFunctionsBlock()

static std::vector<std::unique_ptr<TagNode> > clang::doc::genFunctionsBlock ( const std::vector< FunctionInfo > &  Functions,
const ClangDocContext CDCtx,
StringRef  ParentInfoDir 
)
static

Definition at line 378 of file HTMLGenerator.cpp.

References Out.

Referenced by genHTML().

◆ genHTML() [1/8]

static std::unique_ptr<HTMLNode> clang::doc::genHTML ( const CommentInfo I)
static

Definition at line 603 of file HTMLGenerator.cpp.

References clang::doc::CommentInfo::Kind.

◆ genHTML() [2/8]

static std::vector< std::unique_ptr< TagNode > > clang::doc::genHTML ( const EnumInfo I,
const ClangDocContext CDCtx 
)
static

◆ genHTML() [3/8]

static std::vector< std::unique_ptr< TagNode > > clang::doc::genHTML ( const FunctionInfo I,
const ClangDocContext CDCtx,
StringRef  ParentInfoDir 
)
static

◆ genHTML() [4/8]

static std::vector< std::unique_ptr< TagNode > > clang::doc::genHTML ( const Index Index,
StringRef  InfoPath,
bool  IsOutermostList 
)
static

◆ genHTML() [5/8]

static std::vector<std::unique_ptr<TagNode> > clang::doc::genHTML ( const NamespaceInfo I,
Index InfoIndex,
const ClangDocContext CDCtx,
std::string &  InfoTitle 
)
static

◆ genHTML() [6/8]

static std::vector<std::unique_ptr<TagNode> > clang::doc::genHTML ( const RecordInfo I,
Index InfoIndex,
const ClangDocContext CDCtx,
std::string &  InfoTitle 
)
static

◆ genHTML() [7/8]

static std::unique_ptr<TagNode> clang::doc::genHTML ( const std::vector< CommentInfo > &  C)
static

Definition at line 630 of file HTMLGenerator.cpp.

◆ genHTML() [8/8]

static std::vector<std::unique_ptr<TagNode> > clang::doc::genHTML ( const TypedefInfo I,
const ClangDocContext CDCtx,
std::string &  InfoTitle 
)
static

◆ genIndex()

static llvm::Error clang::doc::genIndex ( ClangDocContext CDCtx)
static

◆ GenIndex()

static llvm::Error clang::doc::GenIndex ( const ClangDocContext CDCtx)
static

Definition at line 1012 of file HTMLGenerator.cpp.

References clang::doc::ClangDocContext::OutDirectory.

◆ genIndexFileMainNode()

static std::unique_ptr<TagNode> clang::doc::genIndexFileMainNode ( )
static

Definition at line 997 of file HTMLGenerator.cpp.

◆ genInfoFile()

static HTMLFile clang::doc::genInfoFile ( StringRef  Title,
StringRef  InfoPath,
std::vector< std::unique_ptr< TagNode >> &  MainContentNodes,
const Index InfoIndex,
const ClangDocContext CDCtx 
)
static

Definition at line 546 of file HTMLGenerator.cpp.

◆ genInfoFileMainNode()

static std::unique_ptr<TagNode> clang::doc::genInfoFileMainNode ( StringRef  InfoPath,
std::vector< std::unique_ptr< TagNode >> &  MainContentInnerNodes,
const Index InfoIndex 
)
static

Definition at line 500 of file HTMLGenerator.cpp.

References AppendVector(), and genHTML().

◆ genInfoIndexItem()

template<typename T , typename = std::enable_if<std::is_base_of<T, Info>::value>>
static Index clang::doc::genInfoIndexItem ( const std::vector< T > &  Infos,
StringRef  Title 
)
static

Definition at line 568 of file HTMLGenerator.cpp.

References C, and clang::doc::Index::Children.

Referenced by genHTML().

◆ genItalic()

static std::string clang::doc::genItalic ( const Twine &  Text)
static

Definition at line 23 of file MDGenerator.cpp.

References Text.

Referenced by genMarkdown().

◆ genJsScriptsHTML()

static std::vector<std::unique_ptr<TagNode> > clang::doc::genJsScriptsHTML ( StringRef  InfoPath,
const ClangDocContext CDCtx 
)
static

Definition at line 290 of file HTMLGenerator.cpp.

References computeRelativePath(), clang::doc::ClangDocContext::JsScripts, and Out.

Referenced by genFileHeadNodes().

◆ genLink()

static std::unique_ptr<TagNode> clang::doc::genLink ( const Twine &  Text,
const Twine &  Link 
)
static

Definition at line 304 of file HTMLGenerator.cpp.

References Text.

Referenced by genReference().

◆ genMarkdown() [1/5]

static void clang::doc::genMarkdown ( const ClangDocContext CDCtx,
const EnumInfo I,
llvm::raw_ostream &  OS 
)
static

◆ genMarkdown() [2/5]

static void clang::doc::genMarkdown ( const ClangDocContext CDCtx,
const FunctionInfo I,
llvm::raw_ostream &  OS 
)
static

◆ genMarkdown() [3/5]

static void clang::doc::genMarkdown ( const ClangDocContext CDCtx,
const NamespaceInfo I,
llvm::raw_ostream &  OS 
)
static

◆ genMarkdown() [4/5]

static void clang::doc::genMarkdown ( const ClangDocContext CDCtx,
const RecordInfo I,
llvm::raw_ostream &  OS 
)
static

◆ genMarkdown() [5/5]

static void clang::doc::genMarkdown ( const ClangDocContext CDCtx,
const TypedefInfo I,
llvm::raw_ostream &  OS 
)
static

Definition at line 282 of file MDGenerator.cpp.

Referenced by clang::doc::MDGenerator::generateDocForInfo().

◆ genRecordMembersBlock()

static std::vector<std::unique_ptr<TagNode> > clang::doc::genRecordMembersBlock ( const llvm::SmallVector< MemberTypeInfo, 4 > &  Members,
StringRef  ParentInfoDir 
)
static

Definition at line 397 of file HTMLGenerator.cpp.

References genReference(), M, and Out.

Referenced by genHTML().

◆ genReference()

static std::unique_ptr<HTMLNode> clang::doc::genReference ( const Reference Type,
StringRef  CurrentDirectory,
std::optional< StringRef >  JumpToSection = std::nullopt 
)
static

Definition at line 311 of file HTMLGenerator.cpp.

References genLink(), Path, and Type.

Referenced by genHTML(), genRecordMembersBlock(), genReferenceList(), and genReferencesBlock().

◆ genReferenceList() [1/2]

static std::string clang::doc::genReferenceList ( const llvm::SmallVectorImpl< Reference > &  Refs)
static

Definition at line 32 of file MDGenerator.cpp.

References Refs.

Referenced by genMarkdown().

◆ genReferenceList() [2/2]

static std::vector<std::unique_ptr<HTMLNode> > clang::doc::genReferenceList ( const llvm::SmallVectorImpl< Reference > &  Refs,
const StringRef &  CurrentDirectory 
)
static

Definition at line 330 of file HTMLGenerator.cpp.

References genReference(), Out, and Refs.

Referenced by genHTML().

◆ genReferencesBlock()

static std::vector<std::unique_ptr<TagNode> > clang::doc::genReferencesBlock ( const std::vector< Reference > &  References,
llvm::StringRef  Title,
StringRef  ParentPath 
)
static

Definition at line 421 of file HTMLGenerator.cpp.

References genReference(), Out, and References.

Referenced by genHTML().

◆ genStylesheetsHTML()

static std::vector<std::unique_ptr<TagNode> > clang::doc::genStylesheetsHTML ( StringRef  InfoPath,
const ClangDocContext CDCtx 
)
static

◆ getCommentInfo() [1/9]

template<>
llvm::Expected<CommentInfo *> clang::doc::getCommentInfo ( CommentInfo I)

Definition at line 419 of file BitcodeReader.cpp.

References clang::doc::CommentInfo::Children.

◆ getCommentInfo() [2/9]

template<>
llvm::Expected<CommentInfo *> clang::doc::getCommentInfo ( EnumInfo I)

Definition at line 411 of file BitcodeReader.cpp.

References clang::doc::Info::Description.

◆ getCommentInfo() [3/9]

template<>
llvm::Expected<CommentInfo *> clang::doc::getCommentInfo ( FunctionInfo I)

Definition at line 395 of file BitcodeReader.cpp.

References clang::doc::Info::Description.

◆ getCommentInfo() [4/9]

template<>
llvm::Expected<CommentInfo *> clang::doc::getCommentInfo ( MemberTypeInfo I)

Definition at line 407 of file BitcodeReader.cpp.

References clang::doc::MemberTypeInfo::Description.

◆ getCommentInfo() [5/9]

template<>
llvm::Expected<CommentInfo *> clang::doc::getCommentInfo ( NamespaceInfo I)

Definition at line 399 of file BitcodeReader.cpp.

References clang::doc::Info::Description.

◆ getCommentInfo() [6/9]

template<>
llvm::Expected<CommentInfo *> clang::doc::getCommentInfo ( RecordInfo I)

Definition at line 403 of file BitcodeReader.cpp.

References clang::doc::Info::Description.

◆ getCommentInfo() [7/9]

template<>
llvm::Expected<CommentInfo *> clang::doc::getCommentInfo ( std::unique_ptr< CommentInfo > &  I)

Definition at line 425 of file BitcodeReader.cpp.

References getCommentInfo().

◆ getCommentInfo() [8/9]

template<typename T >
llvm::Expected<CommentInfo *> clang::doc::getCommentInfo ( I)

Definition at line 390 of file BitcodeReader.cpp.

Referenced by getCommentInfo().

◆ getCommentInfo() [9/9]

template<>
llvm::Expected<CommentInfo *> clang::doc::getCommentInfo ( TypedefInfo I)

Definition at line 415 of file BitcodeReader.cpp.

References clang::doc::Info::Description.

◆ getRefType()

static std::string clang::doc::getRefType ( InfoType  IT)
static

Definition at line 944 of file HTMLGenerator.cpp.

Referenced by SerializeIndex().

◆ getTagType()

std::string clang::doc::getTagType ( TagTypeKind  AS)

Definition at line 29 of file Generators.cpp.

Referenced by genHTML(), and genMarkdown().

◆ HTML()

static GeneratorRegistry::Add<HTMLGenerator> clang::doc::HTML ( HTMLGenerator::Format  ,
"Generator for HTML output."   
)
static

◆ IntAbbrev()

static void clang::doc::IntAbbrev ( std::shared_ptr< llvm::BitCodeAbbrev > &  Abbrev)
static

Definition at line 46 of file BitcodeWriter.cpp.

References AbbrevGen(), and clang::doc::BitCodeConstants::IntSize.

◆ LocationAbbrev()

static void clang::doc::LocationAbbrev ( std::shared_ptr< llvm::BitCodeAbbrev > &  Abbrev)
static

◆ MD()

static GeneratorRegistry::Add<MDGenerator> clang::doc::MD ( MDGenerator::Format  ,
"Generator for MD output."   
)
static

◆ mergeInfos()

llvm::Expected< std::unique_ptr< Info > > clang::doc::mergeInfos ( std::vector< std::unique_ptr< Info >> &  Values)

Definition at line 74 of file Representation.cpp.

References IT_enum, IT_function, IT_namespace, IT_record, and IT_typedef.

◆ newMapperActionFactory()

std::unique_ptr< tooling::FrontendActionFactory > clang::doc::newMapperActionFactory ( ClangDocContext  CDCtx)

Definition at line 56 of file ClangDoc.cpp.

◆ parseRecord() [1/16]

llvm::Error clang::doc::parseRecord ( const Record R,
unsigned  ID,
llvm::StringRef  Blob,
BaseRecordInfo I 
)

◆ parseRecord() [2/16]

llvm::Error clang::doc::parseRecord ( const Record R,
unsigned  ID,
llvm::StringRef  Blob,
CommentInfo I 
)

◆ parseRecord() [3/16]

llvm::Error clang::doc::parseRecord ( const Record R,
unsigned  ID,
llvm::StringRef  Blob,
const unsigned  VersionNo 
)

Definition at line 143 of file BitcodeReader.cpp.

References ID, and VERSION.

Referenced by clang::doc::ClangDocBitcodeReader::readRecord().

◆ parseRecord() [4/16]

llvm::Error clang::doc::parseRecord ( const Record R,
unsigned  ID,
llvm::StringRef  Blob,
EnumInfo I 
)

◆ parseRecord() [5/16]

llvm::Error clang::doc::parseRecord ( const Record R,
unsigned  ID,
llvm::StringRef  Blob,
EnumValueInfo I 
)

◆ parseRecord() [6/16]

llvm::Error clang::doc::parseRecord ( const Record R,
unsigned  ID,
llvm::StringRef  Blob,
FieldTypeInfo I 
)

◆ parseRecord() [7/16]

llvm::Error clang::doc::parseRecord ( const Record R,
unsigned  ID,
llvm::StringRef  Blob,
FunctionInfo I 
)

◆ parseRecord() [8/16]

llvm::Error clang::doc::parseRecord ( const Record R,
unsigned  ID,
llvm::StringRef  Blob,
MemberTypeInfo I 
)

◆ parseRecord() [9/16]

llvm::Error clang::doc::parseRecord ( const Record R,
unsigned  ID,
llvm::StringRef  Blob,
NamespaceInfo I 
)

◆ parseRecord() [10/16]

llvm::Error clang::doc::parseRecord ( const Record R,
unsigned  ID,
llvm::StringRef  Blob,
RecordInfo I 
)

◆ parseRecord() [11/16]

llvm::Error clang::doc::parseRecord ( const Record R,
unsigned  ID,
llvm::StringRef  Blob,
Reference I,
FieldId F 
)

Definition at line 346 of file BitcodeReader.cpp.

◆ parseRecord() [12/16]

llvm::Error clang::doc::parseRecord ( const Record R,
unsigned  ID,
llvm::StringRef  Blob,
TemplateInfo I 
)

Definition at line 367 of file BitcodeReader.cpp.

◆ parseRecord() [13/16]

llvm::Error clang::doc::parseRecord ( const Record R,
unsigned  ID,
llvm::StringRef  Blob,
TemplateParamInfo I 
)

◆ parseRecord() [14/16]

llvm::Error clang::doc::parseRecord ( const Record R,
unsigned  ID,
llvm::StringRef  Blob,
TemplateSpecializationInfo I 
)

◆ parseRecord() [15/16]

llvm::Error clang::doc::parseRecord ( const Record R,
unsigned  ID,
llvm::StringRef  Blob,
TypedefInfo I 
)

◆ parseRecord() [16/16]

llvm::Error clang::doc::parseRecord ( const Record R,
unsigned  ID,
llvm::StringRef  Blob,
TypeInfo I 
)

Definition at line 284 of file BitcodeReader.cpp.

◆ serializeIndex()

static llvm::Error clang::doc::serializeIndex ( ClangDocContext CDCtx)
static

◆ SerializeIndex()

static llvm::Error clang::doc::SerializeIndex ( ClangDocContext CDCtx)
static

◆ serializeReference()

static void clang::doc::serializeReference ( llvm::raw_fd_ostream &  OS,
Index I,
int  Level 
)
static

Definition at line 287 of file MDGenerator.cpp.

Referenced by serializeIndex().

◆ StringAbbrev()

static void clang::doc::StringAbbrev ( std::shared_ptr< llvm::BitCodeAbbrev > &  Abbrev)
static

◆ SymbolIDAbbrev()

static void clang::doc::SymbolIDAbbrev ( std::shared_ptr< llvm::BitCodeAbbrev > &  Abbrev)
static

◆ writeDescription()

static void clang::doc::writeDescription ( const CommentInfo I,
raw_ostream &  OS 
)
static

Definition at line 69 of file MDGenerator.cpp.

References clang::doc::CommentInfo::Kind.

Referenced by genMarkdown().

◆ writeFileDefinition() [1/2]

static void clang::doc::writeFileDefinition ( const ClangDocContext CDCtx,
const Location L,
raw_ostream &  OS 
)
static

Definition at line 53 of file MDGenerator.cpp.

Referenced by genMarkdown().

◆ writeFileDefinition() [2/2]

static std::unique_ptr<TagNode> clang::doc::writeFileDefinition ( const Location L,
std::optional< StringRef >  RepositoryUrl = std::nullopt 
)
static

Definition at line 440 of file HTMLGenerator.cpp.

Referenced by genHTML().

◆ writeHeader()

static void clang::doc::writeHeader ( const Twine &  Text,
unsigned int  Num,
raw_ostream &  OS 
)
static

Definition at line 49 of file MDGenerator.cpp.

References OS, and Text.

Referenced by genMarkdown().

◆ writeLine()

static void clang::doc::writeLine ( const Twine &  Text,
raw_ostream &  OS 
)
static

Definition at line 43 of file MDGenerator.cpp.

References OS, and Text.

Referenced by genMarkdown().

◆ writeNameLink()

static void clang::doc::writeNameLink ( const StringRef &  CurrentPath,
const Reference R,
llvm::raw_ostream &  OS 
)
static

◆ writeNewLine()

static void clang::doc::writeNewLine ( raw_ostream &  OS)
static

Definition at line 47 of file MDGenerator.cpp.

References OS.

Referenced by genMarkdown().

◆ YAML()

static GeneratorRegistry::Add<YAMLGenerator> clang::doc::YAML ( YAMLGenerator::Format  ,
"Generator for YAML output."   
)
static

Variable Documentation

◆ BlockIdCount

constexpr unsigned clang::doc::BlockIdCount = BI_LAST - BI_FIRST
staticconstexpr

Definition at line 140 of file BitcodeWriter.h.

◆ BlockIdNameMap

const llvm::IndexedMap<llvm::StringRef, BlockIdToIndexFunctor> clang::doc::BlockIdNameMap
static
Initial value:
= []() {
llvm::IndexedMap<llvm::StringRef, BlockIdToIndexFunctor> BlockIdNameMap;
static const std::vector<std::pair<BlockId, const char *const>> Inits = {
{BI_VERSION_BLOCK_ID, "VersionBlock"},
{BI_NAMESPACE_BLOCK_ID, "NamespaceBlock"},
{BI_ENUM_BLOCK_ID, "EnumBlock"},
{BI_ENUM_VALUE_BLOCK_ID, "EnumValueBlock"},
{BI_TYPEDEF_BLOCK_ID, "TypedefBlock"},
{BI_TYPE_BLOCK_ID, "TypeBlock"},
{BI_FIELD_TYPE_BLOCK_ID, "FieldTypeBlock"},
{BI_MEMBER_TYPE_BLOCK_ID, "MemberTypeBlock"},
{BI_RECORD_BLOCK_ID, "RecordBlock"},
{BI_BASE_RECORD_BLOCK_ID, "BaseRecordBlock"},
{BI_FUNCTION_BLOCK_ID, "FunctionBlock"},
{BI_COMMENT_BLOCK_ID, "CommentBlock"},
{BI_REFERENCE_BLOCK_ID, "ReferenceBlock"},
{BI_TEMPLATE_BLOCK_ID, "TemplateBlock"},
{BI_TEMPLATE_SPECIALIZATION_BLOCK_ID, "TemplateSpecializationBlock"},
{BI_TEMPLATE_PARAM_BLOCK_ID, "TemplateParamBlock"}};
assert(Inits.size() == BlockIdCount);
for (const auto &Init : Inits)
BlockIdNameMap[Init.first] = Init.second;
assert(BlockIdNameMap.size() == BlockIdCount);
}()

Definition at line 105 of file BitcodeWriter.cpp.

◆ EmptySID

const SymbolID clang::doc::EmptySID = SymbolID()
static

◆ HTMLGeneratorAnchorDest

int LLVM_ATTRIBUTE_UNUSED clang::doc::HTMLGeneratorAnchorDest
static
Initial value:

Definition at line 107 of file Generators.cpp.

◆ HTMLGeneratorAnchorSource

volatile int clang::doc::HTMLGeneratorAnchorSource = 0

Definition at line 1085 of file HTMLGenerator.cpp.

◆ MDGeneratorAnchorDest

int LLVM_ATTRIBUTE_UNUSED clang::doc::MDGeneratorAnchorDest
static
Initial value:

Definition at line 105 of file Generators.cpp.

◆ MDGeneratorAnchorSource

volatile int clang::doc::MDGeneratorAnchorSource = 0

Definition at line 466 of file MDGenerator.cpp.

◆ RecordIdCount

constexpr unsigned clang::doc::RecordIdCount = RI_LAST - RI_FIRST
staticconstexpr

Definition at line 141 of file BitcodeWriter.h.

◆ RecordIdNameMap

const llvm::IndexedMap<RecordIdDsc, RecordIdToIndexFunctor> clang::doc::RecordIdNameMap
static

Definition at line 136 of file BitcodeWriter.cpp.

◆ RecordsByBlock

const std::vector<std::pair<BlockId, std::vector<RecordId> > > clang::doc::RecordsByBlock
static

Definition at line 212 of file BitcodeWriter.cpp.

◆ VersionNumber

const unsigned clang::doc::VersionNumber = 3
static

Definition at line 33 of file BitcodeWriter.h.

◆ YAMLGeneratorAnchorDest

int LLVM_ATTRIBUTE_UNUSED clang::doc::YAMLGeneratorAnchorDest
static
Initial value:

Definition at line 103 of file Generators.cpp.

◆ YAMLGeneratorAnchorSource

volatile int clang::doc::YAMLGeneratorAnchorSource = 0

Definition at line 395 of file YAMLGenerator.cpp.

clang::doc::BI_VERSION_BLOCK_ID
@ BI_VERSION_BLOCK_ID
Definition: BitcodeWriter.h:54
clang::doc::MDGeneratorAnchorSource
volatile int MDGeneratorAnchorSource
Definition: MDGenerator.cpp:466
clang::doc::BI_FUNCTION_BLOCK_ID
@ BI_FUNCTION_BLOCK_ID
Definition: BitcodeWriter.h:63
clang::doc::YAMLGeneratorAnchorSource
volatile int YAMLGeneratorAnchorSource
Definition: YAMLGenerator.cpp:395
clang::doc::BI_BASE_RECORD_BLOCK_ID
@ BI_BASE_RECORD_BLOCK_ID
Definition: BitcodeWriter.h:62
clang::doc::BI_MEMBER_TYPE_BLOCK_ID
@ BI_MEMBER_TYPE_BLOCK_ID
Definition: BitcodeWriter.h:60
clang::doc::BlockIdNameMap
static const llvm::IndexedMap< llvm::StringRef, BlockIdToIndexFunctor > BlockIdNameMap
Definition: BitcodeWriter.cpp:105
clang::doc::BI_ENUM_VALUE_BLOCK_ID
@ BI_ENUM_VALUE_BLOCK_ID
Definition: BitcodeWriter.h:57
clang::doc::BlockIdCount
static constexpr unsigned BlockIdCount
Definition: BitcodeWriter.h:140
clang::doc::BI_COMMENT_BLOCK_ID
@ BI_COMMENT_BLOCK_ID
Definition: BitcodeWriter.h:64
clang::doc::BI_RECORD_BLOCK_ID
@ BI_RECORD_BLOCK_ID
Definition: BitcodeWriter.h:61
clang::doc::BI_REFERENCE_BLOCK_ID
@ BI_REFERENCE_BLOCK_ID
Definition: BitcodeWriter.h:65
clang::doc::BI_TEMPLATE_PARAM_BLOCK_ID
@ BI_TEMPLATE_PARAM_BLOCK_ID
Definition: BitcodeWriter.h:68
clang::doc::BI_FIELD_TYPE_BLOCK_ID
@ BI_FIELD_TYPE_BLOCK_ID
Definition: BitcodeWriter.h:59
clang::doc::HTMLGeneratorAnchorSource
volatile int HTMLGeneratorAnchorSource
Definition: HTMLGenerator.cpp:1085
clang::doc::BI_TEMPLATE_BLOCK_ID
@ BI_TEMPLATE_BLOCK_ID
Definition: BitcodeWriter.h:66
clang::doc::BI_TEMPLATE_SPECIALIZATION_BLOCK_ID
@ BI_TEMPLATE_SPECIALIZATION_BLOCK_ID
Definition: BitcodeWriter.h:67
clang::doc::BI_NAMESPACE_BLOCK_ID
@ BI_NAMESPACE_BLOCK_ID
Definition: BitcodeWriter.h:55
clang::doc::BI_TYPEDEF_BLOCK_ID
@ BI_TYPEDEF_BLOCK_ID
Definition: BitcodeWriter.h:69
clang::doc::BI_TYPE_BLOCK_ID
@ BI_TYPE_BLOCK_ID
Definition: BitcodeWriter.h:58
clang::doc::BI_ENUM_BLOCK_ID
@ BI_ENUM_BLOCK_ID
Definition: BitcodeWriter.h:56