class Parser

Declaration

class Parser { /* full declaration omitted */ };

Description

Doxygen comment parser.

Declared at: clang/include/clang/AST/CommentParser.h:29

Member Variables

private clang::comments::Lexer& L
private clang::comments::Sema& S
private llvm::BumpPtrAllocator& Allocator
Allocator for anything that goes into AST nodes.
private const clang::SourceManager& SourceMgr
Source manager for the comment being parsed.
private clang::DiagnosticsEngine& Diags
private const clang::comments::CommandTraits& Traits
private clang::comments::Token Tok
Current lookahead token. We can safely assume that all tokens are from a single source file.
private SmallVector<clang::comments::Token, 8> MoreLATokens
A stack of additional lookahead tokens.

Method Overview

  • private clang::DiagnosticBuilder Diag(clang::SourceLocation Loc, unsigned int DiagID)
  • public Parser(clang::comments::Lexer & L, clang::comments::Sema & S, llvm::BumpPtrAllocator & Allocator, const clang::SourceManager & SourceMgr, clang::DiagnosticsEngine & Diags, const clang::comments::CommandTraits & Traits)
  • private Parser(const clang::comments::Parser &)
  • private void consumeToken()
  • private bool isTokBlockCommand()
  • public clang::comments::BlockCommandComment * parseBlockCommand()
  • public clang::comments::BlockContentComment * parseBlockContent()
  • public ArrayRef<Comment::Argument> parseCommandArgs(clang::comments::TextTokenRetokenizer & Retokenizer, unsigned int NumArgs)
  • public clang::comments::FullComment * parseFullComment()
  • public clang::comments::HTMLEndTagComment * parseHTMLEndTag()
  • public clang::comments::HTMLStartTagComment * parseHTMLStartTag()
  • public clang::comments::InlineCommandComment * parseInlineCommand()
  • public clang::comments::BlockContentComment * parseParagraphOrBlockCommand()
  • public void parseParamCommandArgs(clang::comments::ParamCommandComment * PC, clang::comments::TextTokenRetokenizer & Retokenizer)
  • public void parseTParamCommandArgs(clang::comments::TParamCommandComment * TPC, clang::comments::TextTokenRetokenizer & Retokenizer)
  • public clang::comments::VerbatimBlockComment * parseVerbatimBlock()
  • public clang::comments::VerbatimLineComment * parseVerbatimLine()
  • private void putBack(ArrayRef<clang::comments::Token> Toks)
  • private void putBack(const clang::comments::Token & OldTok)

Methods

clang::DiagnosticBuilder Diag(
    clang::SourceLocation Loc,
    unsigned int DiagID)

Declared at: clang/include/clang/AST/CommentParser.h:47

Parameters

clang::SourceLocation Loc
unsigned int DiagID

Parser(
    clang::comments::Lexer& L,
    clang::comments::Sema& S,
    llvm::BumpPtrAllocator& Allocator,
    const clang::SourceManager& SourceMgr,
    clang::DiagnosticsEngine& Diags,
    const clang::comments::CommandTraits& Traits)

Declared at: clang/include/clang/AST/CommentParser.h:88

Parameters

clang::comments::Lexer& L
clang::comments::Sema& S
llvm::BumpPtrAllocator& Allocator
const clang::SourceManager& SourceMgr
clang::DiagnosticsEngine& Diags
const clang::comments::CommandTraits& Traits

Parser(const clang::comments::Parser&)

Declared at: clang/include/clang/AST/CommentParser.h:30

Parameters

const clang::comments::Parser&

void consumeToken()

Declared at: clang/include/clang/AST/CommentParser.h:60

bool isTokBlockCommand()

Declared at: clang/include/clang/AST/CommentParser.h:82

clang::comments::BlockCommandComment*
parseBlockCommand()

Declared at: clang/include/clang/AST/CommentParser.h:103

clang::comments::BlockContentComment*
parseBlockContent()

Declared at: clang/include/clang/AST/CommentParser.h:113

ArrayRef<Comment::Argument> parseCommandArgs(
    clang::comments::TextTokenRetokenizer&
        Retokenizer,
    unsigned int NumArgs)

Declared at: clang/include/clang/AST/CommentParser.h:101

Parameters

clang::comments::TextTokenRetokenizer& Retokenizer
unsigned int NumArgs

clang::comments::FullComment* parseFullComment()

Declared at: clang/include/clang/AST/CommentParser.h:114

clang::comments::HTMLEndTagComment*
parseHTMLEndTag()

Declared at: clang/include/clang/AST/CommentParser.h:107

clang::comments::HTMLStartTagComment*
parseHTMLStartTag()

Declared at: clang/include/clang/AST/CommentParser.h:106

clang::comments::InlineCommandComment*
parseInlineCommand()

Declared at: clang/include/clang/AST/CommentParser.h:104

clang::comments::BlockContentComment*
parseParagraphOrBlockCommand()

Declared at: clang/include/clang/AST/CommentParser.h:109

void parseParamCommandArgs(
    clang::comments::ParamCommandComment* PC,
    clang::comments::TextTokenRetokenizer&
        Retokenizer)

Description

Parse arguments for \ param command.

Declared at: clang/include/clang/AST/CommentParser.h:93

Parameters

clang::comments::ParamCommandComment* PC
clang::comments::TextTokenRetokenizer& Retokenizer

void parseTParamCommandArgs(
    clang::comments::TParamCommandComment* TPC,
    clang::comments::TextTokenRetokenizer&
        Retokenizer)

Description

Parse arguments for \ tparam command.

Declared at: clang/include/clang/AST/CommentParser.h:97

Parameters

clang::comments::TParamCommandComment* TPC
clang::comments::TextTokenRetokenizer& Retokenizer

clang::comments::VerbatimBlockComment*
parseVerbatimBlock()

Declared at: clang/include/clang/AST/CommentParser.h:111

clang::comments::VerbatimLineComment*
parseVerbatimLine()

Declared at: clang/include/clang/AST/CommentParser.h:112

void putBack(
    ArrayRef<clang::comments::Token> Toks)

Declared at: clang/include/clang/AST/CommentParser.h:72

Parameters

ArrayRef<clang::comments::Token> Toks

void putBack(const clang::comments::Token& OldTok)

Declared at: clang/include/clang/AST/CommentParser.h:67

Parameters

const clang::comments::Token& OldTok