clang-tools  10.0.0svn
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  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  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< 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_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_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, NAMESPACE_PATH,
  ENUM_USR, ENUM_NAME, ENUM_DEFLOCATION, ENUM_LOCATION,
  ENUM_MEMBER, ENUM_SCOPED, 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_TYPE, REFERENCE_PATH,
  REFERENCE_IS_IN_GLOBAL_NAMESPACE, 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, BaseRecordInfo *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 (BaseRecordInfo *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)
 
template<>
void addChild (RecordInfo *I, BaseRecordInfo &&R)
 
template<>
void addChild (BaseRecordInfo *I, FunctionInfo &&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)
 
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, llvm::Optional< StringRef > JumpToSection=None)
 
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< SmallString< 16 >, 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, llvm::Optional< StringRef > RepositoryUrl=None)
 
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::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 Location &L, raw_ostream &OS)
 
static void writeDescription (const CommentInfo &I, raw_ostream &OS)
 
static void genMarkdown (const EnumInfo &I, llvm::raw_ostream &OS)
 
static void genMarkdown (const FunctionInfo &I, llvm::raw_ostream &OS)
 
static void genMarkdown (const NamespaceInfo &I, llvm::raw_ostream &OS)
 
static void genMarkdown (const RecordInfo &I, llvm::raw_ostream &OS)
 
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 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 40 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 30 of file Representation.h.

Enumeration Type Documentation

◆ 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_BASE_RECORD_BLOCK_ID 
BI_FUNCTION_BLOCK_ID 
BI_COMMENT_BLOCK_ID 
BI_REFERENCE_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 130 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

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 
NAMESPACE_PATH 
ENUM_USR 
ENUM_NAME 
ENUM_DEFLOCATION 
ENUM_LOCATION 
ENUM_MEMBER 
ENUM_SCOPED 
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_TYPE 
REFERENCE_PATH 
REFERENCE_IS_IN_GLOBAL_NAMESPACE 
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 33 of file BitcodeWriter.cpp.

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

◆ addChild() [1/7]

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

Definition at line 494 of file BitcodeReader.cpp.

◆ addChild() [2/7]

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

Definition at line 499 of file BitcodeReader.cpp.

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

◆ addChild() [3/7]

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

Definition at line 503 of file BitcodeReader.cpp.

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

◆ addChild() [4/7]

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

Definition at line 507 of file BitcodeReader.cpp.

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

◆ addChild() [5/7]

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

Definition at line 511 of file BitcodeReader.cpp.

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

◆ addChild() [6/7]

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

Definition at line 515 of file BitcodeReader.cpp.

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

◆ addChild() [7/7]

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

Definition at line 519 of file BitcodeReader.cpp.

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

◆ addReference() [1/8]

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

Definition at line 389 of file BitcodeReader.cpp.

◆ addReference() [2/8]

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

Definition at line 394 of file BitcodeReader.cpp.

◆ addReference() [3/8]

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

Definition at line 406 of file BitcodeReader.cpp.

◆ addReference() [4/8]

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

Definition at line 418 of file BitcodeReader.cpp.

◆ addReference() [5/8]

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

Definition at line 429 of file BitcodeReader.cpp.

◆ addReference() [6/8]

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

Definition at line 441 of file BitcodeReader.cpp.

◆ addReference() [7/8]

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

Definition at line 459 of file BitcodeReader.cpp.

◆ addReference() [8/8]

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

Definition at line 473 of file BitcodeReader.cpp.

◆ addTypeInfo() [1/5]

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

Definition at line 364 of file BitcodeReader.cpp.

◆ addTypeInfo() [2/5]

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

Definition at line 369 of file BitcodeReader.cpp.

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

◆ addTypeInfo() [3/5]

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

Definition at line 374 of file BitcodeReader.cpp.

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

◆ addTypeInfo() [4/5]

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

Definition at line 379 of file BitcodeReader.cpp.

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

◆ addTypeInfo() [5/5]

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

Definition at line 384 of file BitcodeReader.cpp.

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

◆ 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 222 of file HTMLGenerator.cpp.

Referenced by 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.

◆ computeRelativePath()

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

Definition at line 228 of file HTMLGenerator.cpp.

Referenced by genReference().

◆ CopyFile()

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

Definition at line 966 of file HTMLGenerator.cpp.

◆ decodeRecord() [1/11]

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

Definition at line 20 of file BitcodeReader.cpp.

◆ decodeRecord() [2/11]

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

Definition at line 26 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 38 of file BitcodeReader.cpp.

◆ decodeRecord() [4/11]

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

Definition at line 43 of file BitcodeReader.cpp.

◆ decodeRecord() [5/11]

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

Definition at line 51 of file BitcodeReader.cpp.

◆ decodeRecord() [6/11]

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

Definition at line 66 of file BitcodeReader.cpp.

◆ decodeRecord() [7/11]

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

Definition at line 81 of file BitcodeReader.cpp.

◆ decodeRecord() [8/11]

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

Definition at line 90 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 104 of file BitcodeReader.cpp.

◆ decodeRecord() [10/11]

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

Definition at line 120 of file BitcodeReader.cpp.

◆ decodeRecord() [11/11]

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

Definition at line 127 of file BitcodeReader.cpp.

◆ 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.

◆ genEnumMembersBlock()

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

Definition at line 364 of file HTMLGenerator.cpp.

◆ genEnumsBlock()

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

Definition at line 346 of file HTMLGenerator.cpp.

◆ genFileFooterNode()

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

Definition at line 532 of file HTMLGenerator.cpp.

◆ genFileHeaderNode()

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

Definition at line 487 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 469 of file HTMLGenerator.cpp.

◆ 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 375 of file HTMLGenerator.cpp.

◆ genHTML() [1/7]

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

Definition at line 637 of file HTMLGenerator.cpp.

◆ genHTML() [2/7]

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

Definition at line 670 of file HTMLGenerator.cpp.

◆ genHTML() [3/7]

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

Definition at line 574 of file HTMLGenerator.cpp.

◆ genHTML() [4/7]

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

Definition at line 600 of file HTMLGenerator.cpp.

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

◆ genHTML() [5/7]

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

Definition at line 627 of file HTMLGenerator.cpp.

◆ genHTML() [6/7]

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

Definition at line 719 of file HTMLGenerator.cpp.

◆ genHTML() [7/7]

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

◆ GenIndex()

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

Definition at line 936 of file HTMLGenerator.cpp.

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

◆ genIndexFileMainNode()

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

Definition at line 921 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 543 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 497 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 565 of file HTMLGenerator.cpp.

References clang::doc::Index::Children.

◆ genItalic()

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

Definition at line 23 of file MDGenerator.cpp.

◆ genJsScriptsHTML()

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

Definition at line 288 of file HTMLGenerator.cpp.

◆ genLink()

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

Definition at line 302 of file HTMLGenerator.cpp.

Referenced by genReference().

◆ genMarkdown() [1/4]

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

Definition at line 107 of file MDGenerator.cpp.

◆ genMarkdown() [2/4]

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

Definition at line 127 of file MDGenerator.cpp.

◆ genMarkdown() [3/4]

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

Definition at line 154 of file MDGenerator.cpp.

◆ genMarkdown() [4/4]

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

Definition at line 193 of file MDGenerator.cpp.

◆ genRecordMembersBlock()

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

Definition at line 394 of file HTMLGenerator.cpp.

◆ genReference()

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

◆ genReferenceList() [1/2]

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

Definition at line 32 of file MDGenerator.cpp.

◆ 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 328 of file HTMLGenerator.cpp.

◆ 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 418 of file HTMLGenerator.cpp.

◆ genStylesheetsHTML()

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

Definition at line 271 of file HTMLGenerator.cpp.

◆ getAccess()

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

Definition at line 30 of file Generators.cpp.

◆ getCommentInfo() [1/7]

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

Definition at line 328 of file BitcodeReader.cpp.

Referenced by getCommentInfo().

◆ getCommentInfo() [2/7]

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

Definition at line 333 of file BitcodeReader.cpp.

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

◆ getCommentInfo() [3/7]

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

Definition at line 338 of file BitcodeReader.cpp.

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

◆ getCommentInfo() [4/7]

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

Definition at line 343 of file BitcodeReader.cpp.

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

◆ getCommentInfo() [5/7]

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

Definition at line 348 of file BitcodeReader.cpp.

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

◆ getCommentInfo() [6/7]

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

Definition at line 353 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 359 of file BitcodeReader.cpp.

References getCommentInfo().

◆ getRefType()

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

Definition at line 870 of file HTMLGenerator.cpp.

◆ getTagType()

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

Definition at line 44 of file Generators.cpp.

◆ 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 97 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 56 of file ClangDoc.cpp.

◆ parseRecord() [1/11]

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

Definition at line 136 of file BitcodeReader.cpp.

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

◆ parseRecord() [2/11]

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

Definition at line 144 of file BitcodeReader.cpp.

◆ parseRecord() [3/11]

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

Definition at line 159 of file BitcodeReader.cpp.

◆ parseRecord() [4/11]

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

Definition at line 182 of file BitcodeReader.cpp.

◆ parseRecord() [5/11]

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

Definition at line 205 of file BitcodeReader.cpp.

◆ parseRecord() [6/11]

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

Definition at line 226 of file BitcodeReader.cpp.

◆ parseRecord() [7/11]

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

Definition at line 247 of file BitcodeReader.cpp.

◆ parseRecord() [8/11]

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

Definition at line 252 of file BitcodeReader.cpp.

◆ parseRecord() [9/11]

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

Definition at line 263 of file BitcodeReader.cpp.

◆ parseRecord() [10/11]

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

Definition at line 276 of file BitcodeReader.cpp.

◆ parseRecord() [11/11]

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

Definition at line 307 of file BitcodeReader.cpp.

◆ SerializeIndex()

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

Definition at line 886 of file HTMLGenerator.cpp.

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

◆ 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 59 of file MDGenerator.cpp.

◆ writeFileDefinition() [1/2]

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

Definition at line 53 of file MDGenerator.cpp.

◆ writeFileDefinition() [2/2]

static std::unique_ptr<TagNode> clang::doc::writeFileDefinition ( const Location L,
llvm::Optional< StringRef >  RepositoryUrl = None 
)
static

◆ writeHeader()

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

Definition at line 49 of file MDGenerator.cpp.

◆ writeLine()

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

Definition at line 43 of file MDGenerator.cpp.

◆ writeNewLine()

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

Definition at line 47 of file MDGenerator.cpp.

◆ 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
static

Definition at line 126 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_BASE_RECORD_BLOCK_ID, "BaseRecordBlock"},
{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);
}()
static constexpr unsigned BlockIdCount
static const llvm::IndexedMap< llvm::StringRef, BlockIdToIndexFunctor > BlockIdNameMap

Definition at line 105 of file BitcodeWriter.cpp.

◆ EmptySID

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

Definition at line 17 of file BitcodeWriter.cpp.

◆ HTMLGeneratorAnchorDest

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

Definition at line 122 of file Generators.cpp.

◆ HTMLGeneratorAnchorSource

volatile int clang::doc::HTMLGeneratorAnchorSource = 0

Definition at line 1009 of file HTMLGenerator.cpp.

Referenced by clang::doc::Generator::addInfoToIndex().

◆ MDGeneratorAnchorDest

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

Definition at line 120 of file Generators.cpp.

◆ MDGeneratorAnchorSource

volatile int clang::doc::MDGeneratorAnchorSource = 0

Definition at line 286 of file MDGenerator.cpp.

Referenced by clang::doc::Generator::addInfoToIndex().

◆ RecordIdCount

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

Definition at line 127 of file BitcodeWriter.h.

◆ RecordIdNameMap

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

Definition at line 131 of file BitcodeWriter.cpp.

◆ RecordsByBlock

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

Definition at line 199 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 118 of file Generators.cpp.

◆ YAMLGeneratorAnchorSource

volatile int clang::doc::YAMLGeneratorAnchorSource = 0

Definition at line 303 of file YAMLGenerator.cpp.

Referenced by clang::doc::Generator::addInfoToIndex().