clang-tools  10.0.0svn
Classes | Namespaces | Enumerations | Functions
HTMLGenerator.cpp File Reference
#include "Generators.h"
#include "Representation.h"
#include "clang/Basic/Version.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Support/FileSystem.h"
#include "llvm/Support/JSON.h"
#include "llvm/Support/Path.h"
#include "llvm/Support/raw_ostream.h"
#include <string>
Include dependency graph for HTMLGenerator.cpp:

Go to the source code of this file.

Classes

class  clang::doc::HTMLGenerator
 Generator for HTML documentation. More...
 

Namespaces

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

Enumerations

enum  clang::doc::@11::NodeType
 

Functions

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 SmallString< 128 > clang::doc::computeRelativePath (StringRef Destination, StringRef Origin)
 
static std::vector< std::unique_ptr< TagNode > > clang::doc::genStylesheetsHTML (StringRef InfoPath, const ClangDocContext &CDCtx)
 
static std::vector< std::unique_ptr< TagNode > > clang::doc::genJsScriptsHTML (StringRef InfoPath, const ClangDocContext &CDCtx)
 
static std::unique_ptr< TagNode > clang::doc::genLink (const Twine &Text, const Twine &Link)
 
static std::unique_ptr< HTMLNode > clang::doc::genReference (const Reference &Type, StringRef CurrentDirectory, llvm::Optional< StringRef > JumpToSection=None)
 
static std::vector< std::unique_ptr< HTMLNode > > clang::doc::genReferenceList (const llvm::SmallVectorImpl< Reference > &Refs, const StringRef &CurrentDirectory)
 
static std::vector< std::unique_ptr< TagNode > > clang::doc::genHTML (const EnumInfo &I, const ClangDocContext &CDCtx)
 
static std::vector< std::unique_ptr< TagNode > > clang::doc::genHTML (const FunctionInfo &I, const ClangDocContext &CDCtx, StringRef ParentInfoDir)
 
static std::vector< std::unique_ptr< TagNode > > clang::doc::genEnumsBlock (const std::vector< EnumInfo > &Enums, const ClangDocContext &CDCtx)
 
static std::unique_ptr< TagNode > clang::doc::genEnumMembersBlock (const llvm::SmallVector< SmallString< 16 >, 4 > &Members)
 
static std::vector< std::unique_ptr< TagNode > > clang::doc::genFunctionsBlock (const std::vector< FunctionInfo > &Functions, const ClangDocContext &CDCtx, StringRef ParentInfoDir)
 
static std::vector< std::unique_ptr< TagNode > > clang::doc::genRecordMembersBlock (const llvm::SmallVector< MemberTypeInfo, 4 > &Members, StringRef ParentInfoDir)
 
static std::vector< std::unique_ptr< TagNode > > clang::doc::genReferencesBlock (const std::vector< Reference > &References, llvm::StringRef Title, StringRef ParentPath)
 
static std::unique_ptr< TagNode > clang::doc::writeFileDefinition (const Location &L, llvm::Optional< StringRef > RepositoryUrl=None)
 
static std::vector< std::unique_ptr< TagNode > > clang::doc::genHTML (const Index &Index, StringRef InfoPath, bool IsOutermostList)
 
static std::vector< std::unique_ptr< TagNode > > clang::doc::genFileHeadNodes (StringRef Title, StringRef InfoPath, const ClangDocContext &CDCtx)
 
static std::unique_ptr< TagNode > clang::doc::genFileHeaderNode (StringRef ProjectName)
 
static std::unique_ptr< TagNode > clang::doc::genInfoFileMainNode (StringRef InfoPath, std::vector< std::unique_ptr< TagNode >> &MainContentInnerNodes, const Index &InfoIndex)
 
static std::unique_ptr< TagNode > clang::doc::genFileFooterNode ()
 
static HTMLFile clang::doc::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 clang::doc::genInfoIndexItem (const std::vector< T > &Infos, StringRef Title)
 
static std::unique_ptr< HTMLNode > clang::doc::genHTML (const CommentInfo &I)
 
static std::unique_ptr< TagNode > clang::doc::genHTML (const std::vector< CommentInfo > &C)
 
static std::vector< std::unique_ptr< TagNode > > clang::doc::genHTML (const NamespaceInfo &I, Index &InfoIndex, const ClangDocContext &CDCtx, std::string &InfoTitle)
 
static std::vector< std::unique_ptr< TagNode > > clang::doc::genHTML (const RecordInfo &I, Index &InfoIndex, const ClangDocContext &CDCtx, std::string &InfoTitle)
 
static std::string clang::doc::getRefType (InfoType IT)
 
static llvm::Error clang::doc::SerializeIndex (ClangDocContext &CDCtx)
 
static std::unique_ptr< TagNode > clang::doc::genIndexFileMainNode ()
 
static llvm::Error clang::doc::GenIndex (const ClangDocContext &CDCtx)
 
static llvm::Error clang::doc::CopyFile (StringRef FilePath, StringRef OutDirectory)
 
static GeneratorRegistry::Add< HTMLGenerator > clang::doc::HTML (HTMLGenerator::Format, "Generator for HTML output.")
 

Enumeration Type Documentation

◆ NodeType

enum clang::doc::@11::NodeType

Definition at line 63 of file HTMLGenerator.cpp.

Variable Documentation

◆ Attributes

std::vector<std::pair<std::string, std::string> > Attributes

Definition at line 93 of file HTMLGenerator.cpp.

◆ Children

std::vector<std::unique_ptr<HTMLNode> > Children

◆ Tag

HTMLTag Tag

◆ Text

std::string Text

◆ Type

NodeType Type