clang-tools 8.0.0

Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
clang::doc Namespace Reference

## Namespaces
| serialize

## Classes
struct | BitCodeConstants
struct | BlockIdToIndexFunctor
class | ClangDocBitcodeReader
class | ClangDocBitcodeWriter
struct | ClangDocContext
struct | CommentInfo
struct | EnumInfo
struct | FieldTypeInfo
struct | FunctionInfo
class | Generator
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 | SymbolInfo
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< Generator > | GeneratorRegistry
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_TYPE_BLOCK_ID, BI_FIELD_TYPE_BLOCK_ID, BI_MEMBER_TYPE_BLOCK_ID, BI_RECORD_BLOCK_ID, BI_FUNCTION_BLOCK_ID, BI_COMMENT_BLOCK_ID, BI_REFERENCE_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, MEMBER_TYPE_NAME, MEMBER_TYPE_ACCESS, NAMESPACE_USR, NAMESPACE_NAME, ENUM_USR, ENUM_NAME, ENUM_DEFLOCATION, ENUM_LOCATION, ENUM_MEMBER, ENUM_SCOPED, RECORD_USR, RECORD_NAME, RECORD_DEFLOCATION, RECORD_LOCATION, RECORD_TAG_TYPE, REFERENCE_USR, REFERENCE_NAME, REFERENCE_TYPE, REFERENCE_FIELD, 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 }

## Functions
llvm::Error | decodeRecord (Record R, llvm::SmallVectorImpl< char > &Field, llvm::StringRef Blob)
llvm::Error | decodeRecord (Record R, SymbolID &Field, llvm::StringRef Blob)
llvm::Error | decodeRecord (Record R, bool &Field, llvm::StringRef Blob)
llvm::Error | decodeRecord (Record R, int &Field, llvm::StringRef Blob)
llvm::Error | decodeRecord (Record R, AccessSpecifier &Field, llvm::StringRef Blob)
llvm::Error | decodeRecord (Record R, TagTypeKind &Field, llvm::StringRef Blob)
llvm::Error | decodeRecord (Record R, llvm::Optional< Location > &Field, llvm::StringRef Blob)
llvm::Error | decodeRecord (Record R, InfoType &Field, llvm::StringRef Blob)
llvm::Error | decodeRecord (Record R, FieldId &Field, llvm::StringRef Blob)
llvm::Error | decodeRecord (Record R, llvm::SmallVectorImpl< llvm::SmallString< 16 >> &Field, llvm::StringRef Blob)
llvm::Error | decodeRecord (Record R, llvm::SmallVectorImpl< Location > &Field, llvm::StringRef Blob)
llvm::Error | parseRecord (Record R, unsigned ID, llvm::StringRef Blob, const unsigned VersionNo)
llvm::Error | parseRecord (Record R, unsigned ID, llvm::StringRef Blob, NamespaceInfo *I)
llvm::Error | parseRecord (Record R, unsigned ID, llvm::StringRef Blob, RecordInfo *I)
llvm::Error | parseRecord (Record R, unsigned ID, llvm::StringRef Blob, EnumInfo *I)
llvm::Error | parseRecord (Record R, unsigned ID, llvm::StringRef Blob, FunctionInfo *I)
llvm::Error | parseRecord (Record R, unsigned ID, llvm::StringRef Blob, TypeInfo *I)
llvm::Error | parseRecord (Record R, unsigned ID, llvm::StringRef Blob, FieldTypeInfo *I)
llvm::Error | parseRecord (Record R, unsigned ID, llvm::StringRef Blob, MemberTypeInfo *I)
llvm::Error | parseRecord (Record R, unsigned ID, llvm::StringRef Blob, CommentInfo *I)
llvm::Error | parseRecord (Record R, unsigned ID, llvm::StringRef Blob, Reference *I, FieldId &F)
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 (EnumInfo *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 (FunctionInfo *I, TypeInfo &&T)
template<>
llvm::Error | addTypeInfo (FunctionInfo *I, FieldTypeInfo &&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 (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 (RecordInfo *I, FunctionInfo &&R)
template<>
void | addChild (RecordInfo *I, EnumInfo &&R)
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 | getAccess (AccessSpecifier AS)
std::string | getTagType (TagTypeKind AS)
std::string | genItalic (const Twine &Text)
std::string | genEmphasis (const Twine &Text)
std::string | genLink (const Twine &Text, const Twine &Link)
std::string | genReferenceList (const llvm::SmallVectorImpl< Reference > &Refs)
void | writeLine (const Twine &Text, raw_ostream &OS)
void | writeNewLine (raw_ostream &OS)
void | writeHeader (const Twine &Text, unsigned int Num, raw_ostream &OS)
void | writeFileDefinition (const Location &L, raw_ostream &OS)
void | writeDescription (const CommentInfo &I, raw_ostream &OS)
void | genMarkdown (const EnumInfo &I, llvm::raw_ostream &OS)
void | genMarkdown (const FunctionInfo &I, llvm::raw_ostream &OS)
void | genMarkdown (const NamespaceInfo &I, llvm::raw_ostream &OS)
void | genMarkdown (const RecordInfo &I, llvm::raw_ostream &OS)
static GeneratorRegistry::Add< MDGenerator > | MD (MDGenerator::Format, "Generator for MD output.")
llvm::Expected< std::unique_ptr< Info > > | mergeInfos (std::vector< std::unique_ptr< Info >> &Values)
static GeneratorRegistry::Add< YAMLGenerator > | YAML (YAMLGenerator::Format, "Generator for YAML output.")

## Variables
static const SymbolID | EmptySID = SymbolID()
static const llvm::IndexedMap< llvm::StringRef, BlockIdToIndexFunctor > | BlockIdNameMap
static const llvm::IndexedMap< RecordIdDsc, RecordIdToIndexFunctor > | RecordIdNameMap
static const std::vector< std::pair< BlockId, std::vector< RecordId > > > | RecordsByBlock
static const unsigned | VersionNumber = 2
static constexpr unsigned | BlockIdCount = BI_LAST - BI_FIRST
static constexpr unsigned | RecordIdCount = RI_LAST - RI_FIRST
volatile int | YAMLGeneratorAnchorSource = 0
volatile int | MDGeneratorAnchorSource = 0
static int LLVM_ATTRIBUTE_UNUSED | YAMLGeneratorAnchorDest
static int LLVM_ATTRIBUTE_UNUSED | MDGeneratorAnchorDest

## Typedef Documentation

## ◆ AbbrevDsc

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

Definition at line 32 of file BitcodeWriter.cpp.

## ◆ GeneratorRegistry

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

Definition at line 33 of file Generators.h.

## ◆ Record

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

Definition at line 19 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

enum clang::doc::BlockId

Enumerator
BI_VERSION_BLOCK_ID |
BI_NAMESPACE_BLOCK_ID |
BI_ENUM_BLOCK_ID |
BI_TYPE_BLOCK_ID |
BI_FIELD_TYPE_BLOCK_ID |
BI_MEMBER_TYPE_BLOCK_ID |
BI_RECORD_BLOCK_ID |
BI_FUNCTION_BLOCK_ID |
BI_COMMENT_BLOCK_ID |
BI_REFERENCE_BLOCK_ID |
BI_LAST |
BI_FIRST |

Definition at line 54 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 118 of file BitcodeWriter.h.

## ◆ InfoType

enum clang::doc::InfoType
| strong

Enumerator
IT_default |
IT_namespace |
IT_record |
IT_function |
IT_enum |

Definition at line 37 of file Representation.h.

## ◆ RecordId

enum clang::doc::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 |
MEMBER_TYPE_NAME |
MEMBER_TYPE_ACCESS |
NAMESPACE_USR |
NAMESPACE_NAME |
ENUM_USR |
ENUM_NAME |
ENUM_DEFLOCATION |
ENUM_LOCATION |
ENUM_MEMBER |
ENUM_SCOPED |
RECORD_USR |
RECORD_NAME |
RECORD_DEFLOCATION |
RECORD_LOCATION |
RECORD_TAG_TYPE |
REFERENCE_USR |
REFERENCE_NAME |
REFERENCE_TYPE |
REFERENCE_FIELD |
RI_LAST |
RI_FIRST |

Definition at line 71 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 34 of file BitcodeWriter.cpp.

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

## ◆ addChild() [1/5]

template<typename T , typename ChildInfoType >

void clang::doc::addChild | ( | T | I,
|  | ChildInfoType && | R
| ) |  |

Definition at line 467 of file BitcodeReader.cpp.

## ◆ addChild() [2/5]

template<>

void clang::doc::addChild | ( | NamespaceInfo * | I,
|  | FunctionInfo && | R
| ) |  |

Definition at line 472 of file BitcodeReader.cpp.

References clang::doc::NamespaceInfo::ChildFunctions.

## ◆ addChild() [3/5]

template<>

void clang::doc::addChild | ( | NamespaceInfo * | I,
|  | EnumInfo && | R
| ) |  |

Definition at line 476 of file BitcodeReader.cpp.

References clang::doc::NamespaceInfo::ChildEnums.

## ◆ addChild() [4/5]

template<>

void clang::doc::addChild | ( | RecordInfo * | I,
|  | FunctionInfo && | R
| ) |  |

Definition at line 480 of file BitcodeReader.cpp.

References clang::doc::RecordInfo::ChildFunctions.

## ◆ addChild() [5/5]

template<>

void clang::doc::addChild | ( | RecordInfo * | I,
|  | EnumInfo && | R
| ) |  |

Definition at line 484 of file BitcodeReader.cpp.

References clang::doc::RecordInfo::ChildEnums.

## ◆ addReference() [1/8]

template<typename T >

llvm::Error clang::doc::addReference | ( | T | I,
|  | Reference && | R,
|  | FieldId | F
| ) |  |

Definition at line 354 of file BitcodeReader.cpp.

## ◆ addReference() [2/8]

template<>

llvm::Error clang::doc::addReference | ( | TypeInfo * | I,
|  | Reference && | R,
|  | FieldId | F
| ) |  |

Definition at line 360 of file BitcodeReader.cpp.

References F_type, and clang::doc::TypeInfo::Type.

## ◆ addReference() [3/8]

template<>

llvm::Error clang::doc::addReference | ( | FieldTypeInfo * | I,
|  | Reference && | R,
|  | FieldId | F
| ) |  |

Definition at line 373 of file BitcodeReader.cpp.

References F_type, and clang::doc::TypeInfo::Type.

## ◆ addReference() [4/8]

template<>

llvm::Error clang::doc::addReference | ( | MemberTypeInfo * | I,
|  | Reference && | R,
|  | FieldId | F
| ) |  |

Definition at line 386 of file BitcodeReader.cpp.

References F_type, and clang::doc::TypeInfo::Type.

## ◆ addReference() [5/8]

template<>

llvm::Error clang::doc::addReference | ( | EnumInfo * | I,
|  | Reference && | R,
|  | FieldId | F
| ) |  |

Definition at line 398 of file BitcodeReader.cpp.

References F_namespace, and clang::doc::Info::Namespace.

## ◆ addReference() [6/8]

template<>

llvm::Error clang::doc::addReference | ( | NamespaceInfo * | I,
|  | Reference && | R,
|  | FieldId | F
| ) |  |

Definition at line 411 of file BitcodeReader.cpp.

References clang::doc::NamespaceInfo::ChildNamespaces, clang::doc::NamespaceInfo::ChildRecords, F_child_namespace, F_child_record, F_namespace, and clang::doc::Info::Namespace.

## ◆ addReference() [7/8]

template<>

llvm::Error clang::doc::addReference | ( | FunctionInfo * | I,
|  | Reference && | R,
|  | FieldId | F
| ) |  |

Definition at line 430 of file BitcodeReader.cpp.

References F_namespace, F_parent, clang::doc::Info::Namespace, and clang::doc::FunctionInfo::Parent.

## ◆ addReference() [8/8]

template<>

llvm::Error clang::doc::addReference | ( | RecordInfo * | I,
|  | Reference && | R,
|  | FieldId | F
| ) |  |

Definition at line 445 of file BitcodeReader.cpp.

References clang::doc::RecordInfo::ChildRecords, F_child_record, F_namespace, F_parent, F_vparent, clang::doc::Info::Namespace, clang::doc::RecordInfo::Parents, and clang::doc::RecordInfo::VirtualParents.

## ◆ addTypeInfo() [1/4]

template<typename T , typename TTypeInfo >

llvm::Error clang::doc::addTypeInfo | ( | T | I,
|  | TTypeInfo && | TI
| ) |  |

Definition at line 333 of file BitcodeReader.cpp.

## ◆ addTypeInfo() [2/4]

template<>

llvm::Error clang::doc::addTypeInfo | ( | RecordInfo * | I,
|  | MemberTypeInfo && | T
| ) |  |

Definition at line 339 of file BitcodeReader.cpp.

References clang::doc::RecordInfo::Members.

## ◆ addTypeInfo() [3/4]

template<>

llvm::Error clang::doc::addTypeInfo | ( | FunctionInfo * | I,
|  | TypeInfo && | T
| ) |  |

Definition at line 344 of file BitcodeReader.cpp.

References clang::doc::FunctionInfo::ReturnType.

## ◆ addTypeInfo() [4/4]

template<>

llvm::Error clang::doc::addTypeInfo | ( | FunctionInfo * | I,
|  | FieldTypeInfo && | T
| ) |  |

Definition at line 349 of file BitcodeReader.cpp.

References clang::doc::FunctionInfo::Params.

## ◆ BoolAbbrev()

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

Definition at line 40 of file BitcodeWriter.cpp.

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

## ◆ decodeRecord() [1/11]

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

Definition at line 21 of file BitcodeReader.cpp.

## ◆ decodeRecord() [2/11]

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

Definition at line 27 of file BitcodeReader.cpp.

References clang::doc::BitCodeConstants::USRHashSize.

## ◆ decodeRecord() [3/11]

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

Definition at line 39 of file BitcodeReader.cpp.

## ◆ decodeRecord() [4/11]

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

Definition at line 44 of file BitcodeReader.cpp.

## ◆ decodeRecord() [5/11]

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

Definition at line 52 of file BitcodeReader.cpp.

## ◆ decodeRecord() [6/11]

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

Definition at line 67 of file BitcodeReader.cpp.

## ◆ decodeRecord() [7/11]

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

Definition at line 82 of file BitcodeReader.cpp.

## ◆ decodeRecord() [8/11]

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

Definition at line 91 of file BitcodeReader.cpp.

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

## ◆ decodeRecord() [9/11]

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

Definition at line 105 of file BitcodeReader.cpp.

References F_child_namespace, F_child_record, F_default, F_namespace, F_parent, F_type, and F_vparent.

## ◆ decodeRecord() [10/11]

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

Definition at line 121 of file BitcodeReader.cpp.

## ◆ decodeRecord() [11/11]

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

Definition at line 128 of file BitcodeReader.cpp.

## ◆ findGeneratorByName()

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

Definition at line 18 of file Generators.cpp.

References MDGeneratorAnchorSource, and YAMLGeneratorAnchorSource.

Referenced by main().

## ◆ genEmphasis()

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

Definition at line 58 of file MDGenerator.cpp.

## ◆ genItalic()

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

Definition at line 56 of file MDGenerator.cpp.

Referenced by genMarkdown(), and writeFileDefinition().

## ◆ genLink()

std::string clang::doc::genLink | ( | const Twine & | Text,
|  | const Twine & | Link
| ) |  |

Definition at line 60 of file MDGenerator.cpp.

## ◆ genMarkdown() [1/4]

void clang::doc::genMarkdown | ( | const EnumInfo & | I,
|  | llvm::raw_ostream & | OS
| ) |  |

Definition at line 139 of file MDGenerator.cpp.

References clang::doc::SymbolInfo::DefLoc, clang::doc::Info::Description, clang::doc::EnumInfo::Members, clang::doc::Info::Name, clang::doc::EnumInfo::Scoped, writeDescription(), writeFileDefinition(), and writeLine().

## ◆ genMarkdown() [2/4]

void clang::doc::genMarkdown | ( | const FunctionInfo & | I,
|  | llvm::raw_ostream & | OS
| ) |  |

Definition at line 159 of file MDGenerator.cpp.

References clang::doc::FunctionInfo::Access, clang::doc::SymbolInfo::DefLoc, clang::doc::Info::Description, genItalic(), getAccess(), clang::doc::Reference::Name, clang::doc::Info::Name, clang::doc::FunctionInfo::Params, clang::doc::FunctionInfo::ReturnType, clang::doc::TypeInfo::Type, writeDescription(), writeFileDefinition(), writeHeader(), and writeLine().

## ◆ genMarkdown() [3/4]

void clang::doc::genMarkdown | ( | const NamespaceInfo & | I,
|  | llvm::raw_ostream & | OS
| ) |  |

Definition at line 186 of file MDGenerator.cpp.

References clang::doc::NamespaceInfo::ChildEnums, clang::doc::NamespaceInfo::ChildFunctions, clang::doc::NamespaceInfo::ChildNamespaces, clang::doc::NamespaceInfo::ChildRecords, clang::doc::Info::Description, genMarkdown(), clang::doc::Info::Name, writeDescription(), writeHeader(), writeLine(), and writeNewLine().

## ◆ genMarkdown() [4/4]

void clang::doc::genMarkdown | ( | const RecordInfo & | I,
|  | llvm::raw_ostream & | OS
| ) |  |

Definition at line 225 of file MDGenerator.cpp.

References clang::doc::RecordInfo::ChildEnums, clang::doc::RecordInfo::ChildFunctions, clang::doc::RecordInfo::ChildRecords, clang::doc::SymbolInfo::DefLoc, clang::doc::Info::Description, genReferenceList(), getAccess(), getTagType(), clang::doc::RecordInfo::Members, clang::doc::Info::Name, clang::doc::RecordInfo::Parents, clang::doc::RecordInfo::TagType, clang::doc::RecordInfo::VirtualParents, writeDescription(), writeFileDefinition(), writeHeader(), writeLine(), and writeNewLine().

Referenced by clang::doc::MDGenerator::generateDocForInfo(), and genMarkdown().

## ◆ genReferenceList()

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

Definition at line 64 of file MDGenerator.cpp.

Referenced by genMarkdown().

## ◆ getAccess()

std::string clang::doc::getAccess | ( | AccessSpecifier | AS | ) |

Definition at line 24 of file MDGenerator.cpp.

Referenced by genMarkdown().

## ◆ getCommentInfo() [1/7]

template<typename T >

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

Definition at line 296 of file BitcodeReader.cpp.

Referenced by getCommentInfo().

## ◆ getCommentInfo() [2/7]

template<>

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

Definition at line 302 of file BitcodeReader.cpp.

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

## ◆ getCommentInfo() [3/7]

template<>

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

Definition at line 307 of file BitcodeReader.cpp.

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

## ◆ getCommentInfo() [4/7]

template<>

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

Definition at line 312 of file BitcodeReader.cpp.

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

## ◆ getCommentInfo() [5/7]

template<>

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

Definition at line 317 of file BitcodeReader.cpp.

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

## ◆ getCommentInfo() [6/7]

template<>

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

Definition at line 322 of file BitcodeReader.cpp.

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

## ◆ getCommentInfo() [7/7]

template<>

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

Definition at line 328 of file BitcodeReader.cpp.

References getCommentInfo().

## ◆ getTagType()

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

Definition at line 38 of file MDGenerator.cpp.

Referenced by genMarkdown().

## ◆ IntAbbrev()

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

Definition at line 47 of file BitcodeWriter.cpp.

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

## ◆ LocationAbbrev()

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

Definition at line 75 of file BitcodeWriter.cpp.

References AbbrevGen(), clang::doc::BitCodeConstants::LineNumberSize, and clang::doc::BitCodeConstants::StringLengthSize.

## ◆ MD()

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

Referenced by clang::tidy::misc::DefinitionsInHeadersCheck::check(), clang::find_all_symbols::FindAllMacros::FindAllMacros(), clang::doc::MDGenerator::generateDocForInfo(), and clang::find_all_symbols::FindAllMacros::MacroDefined().

## ◆ mergeInfos()

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

Definition at line 95 of file Representation.cpp.

References IT_enum, IT_function, IT_namespace, and IT_record.

## ◆ newMapperActionFactory()

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

Definition at line 57 of file ClangDoc.cpp.

## ◆ parseRecord() [1/10]

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

Definition at line 137 of file BitcodeReader.cpp.

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

## ◆ parseRecord() [2/10]

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

Definition at line 145 of file BitcodeReader.cpp.

## ◆ parseRecord() [3/10]

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

Definition at line 158 of file BitcodeReader.cpp.

## ◆ parseRecord() [4/10]

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

Definition at line 177 of file BitcodeReader.cpp.

## ◆ parseRecord() [5/10]

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

Definition at line 198 of file BitcodeReader.cpp.

## ◆ parseRecord() [6/10]

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

Definition at line 219 of file BitcodeReader.cpp.

## ◆ parseRecord() [7/10]

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

Definition at line 224 of file BitcodeReader.cpp.

## ◆ parseRecord() [8/10]

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

Definition at line 235 of file BitcodeReader.cpp.

## ◆ parseRecord() [9/10]

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

Definition at line 248 of file BitcodeReader.cpp.

## ◆ parseRecord() [10/10]

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

Definition at line 279 of file BitcodeReader.cpp.

## ◆ StringAbbrev()

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

Definition at line 65 of file BitcodeWriter.cpp.

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

## ◆ SymbolIDAbbrev()

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

Definition at line 54 of file BitcodeWriter.cpp.

References AbbrevGen(), clang::doc::BitCodeConstants::USRBitLengthSize, and clang::doc::BitCodeConstants::USRLengthSize.

## ◆ writeDescription()

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

Definition at line 91 of file MDGenerator.cpp.

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

Referenced by genMarkdown().

## ◆ writeFileDefinition()

void clang::doc::writeFileDefinition | ( | const Location & | L,
|  | raw_ostream & | OS
| ) |  |

Definition at line 85 of file MDGenerator.cpp.

References clang::doc::Location::Filename, genItalic(), and clang::doc::Location::LineNumber.

Referenced by genMarkdown().

## ◆ writeHeader()

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

Definition at line 81 of file MDGenerator.cpp.

Referenced by genMarkdown().

## ◆ writeLine()

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

Definition at line 77 of file MDGenerator.cpp.

Referenced by genMarkdown().

## ◆ writeNewLine()

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

Definition at line 79 of file MDGenerator.cpp.

Referenced by genMarkdown().

## ◆ YAML()

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

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

## Variable Documentation

## ◆ BlockIdCount

constexpr unsigned clang::doc::BlockIdCount = BI_LAST - BI_FIRST
| static

Definition at line 114 of file BitcodeWriter.h.

## ◆ BlockIdNameMap

const llvm::IndexedMap<llvm::StringRef, BlockIdToIndexFunctor> clang::doc::BlockIdNameMap
| static

Initial value:
= []() {
llvm::IndexedMap<llvm::StringRef, BlockIdToIndexFunctor> BlockIdNameMap;
BlockIdNameMap.resize(BlockIdCount);
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_TYPE_BLOCK_ID, "TypeBlock"},
{BI_FIELD_TYPE_BLOCK_ID, "FieldTypeBlock"},
{BI_MEMBER_TYPE_BLOCK_ID, "MemberTypeBlock"},
{BI_RECORD_BLOCK_ID, "RecordBlock"},
{BI_FUNCTION_BLOCK_ID, "FunctionBlock"},
{BI_COMMENT_BLOCK_ID, "CommentBlock"},
{BI_REFERENCE_BLOCK_ID, "ReferenceBlock"}};
assert(Inits.size() == BlockIdCount);
for (const auto &Init : Inits)
BlockIdNameMap[Init.first] = Init.second;
assert(BlockIdNameMap.size() == BlockIdCount);
return BlockIdNameMap;
}()
clang::doc::BI_MEMBER_TYPE_BLOCK_ID
Definition: BitcodeWriter.h:60
clang::doc::BlockIdCount
static constexpr unsigned BlockIdCount
Definition: BitcodeWriter.h:114
clang::doc::BI_RECORD_BLOCK_ID
Definition: BitcodeWriter.h:61
clang::doc::BI_ENUM_BLOCK_ID
Definition: BitcodeWriter.h:57
clang::doc::BI_VERSION_BLOCK_ID
Definition: BitcodeWriter.h:55
clang::doc::BI_REFERENCE_BLOCK_ID
Definition: BitcodeWriter.h:64
clang::doc::BI_COMMENT_BLOCK_ID
Definition: BitcodeWriter.h:63
clang::doc::BI_FIELD_TYPE_BLOCK_ID
Definition: BitcodeWriter.h:59
clang::doc::BI_TYPE_BLOCK_ID
Definition: BitcodeWriter.h:58
clang::doc::BlockIdNameMap
static const llvm::IndexedMap< llvm::StringRef, BlockIdToIndexFunctor > BlockIdNameMap
Definition: BitcodeWriter.cpp:103
clang::doc::BI_NAMESPACE_BLOCK_ID
Definition: BitcodeWriter.h:56
clang::doc::BI_FUNCTION_BLOCK_ID
Definition: BitcodeWriter.h:62

Definition at line 103 of file BitcodeWriter.cpp.

## ◆ EmptySID

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

Definition at line 18 of file BitcodeWriter.cpp.

## ◆ MDGeneratorAnchorDest

int LLVM_ATTRIBUTE_UNUSED clang::doc::MDGeneratorAnchorDest
| static

Initial value:
=
MDGeneratorAnchorSource
clang::doc::MDGeneratorAnchorSource
volatile int MDGeneratorAnchorSource
Definition: MDGenerator.cpp:316

Definition at line 35 of file Generators.cpp.

## ◆ MDGeneratorAnchorSource

volatile int clang::doc::MDGeneratorAnchorSource = 0

Definition at line 316 of file MDGenerator.cpp.

Referenced by findGeneratorByName().

## ◆ RecordIdCount

constexpr unsigned clang::doc::RecordIdCount = RI_LAST - RI_FIRST
| static

Definition at line 115 of file BitcodeWriter.h.

## ◆ RecordIdNameMap

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

Definition at line 128 of file BitcodeWriter.cpp.

## ◆ RecordsByBlock

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

Definition at line 183 of file BitcodeWriter.cpp.

## ◆ VersionNumber

const unsigned clang::doc::VersionNumber = 2
| static

Definition at line 34 of file BitcodeWriter.h.

## ◆ YAMLGeneratorAnchorDest

int LLVM_ATTRIBUTE_UNUSED clang::doc::YAMLGeneratorAnchorDest
| static

Initial value:
=
YAMLGeneratorAnchorSource
clang::doc::YAMLGeneratorAnchorSource
volatile int YAMLGeneratorAnchorSource
Definition: YAMLGenerator.cpp:277

Definition at line 33 of file Generators.cpp.

## ◆ YAMLGeneratorAnchorSource

volatile int clang::doc::YAMLGeneratorAnchorSource = 0

Definition at line 277 of file YAMLGenerator.cpp.

Referenced by findGeneratorByName().