class TokenCollector::Builder

Declaration

class TokenCollector::Builder { /* full declaration omitted */ };

Description

Builds mappings and spelled tokens in the TokenBuffer based on the expanded token stream.

Declared at: clang/lib/Tooling/Syntax/Tokens.cpp:754

Member Variables

private clang::syntax::TokenBuffer Result
private unsigned int NextExpanded = 0
private llvm::DenseMap<FileID, unsigned int> NextSpelled
private clang::syntax::TokenCollector::PPExpansions CollectedExpansions
private const clang::SourceManager& SM
private const clang::LangOptions& LangOpts

Method Overview

  • public Builder(std::vector<syntax::Token> Expanded, clang::syntax::TokenCollector::PPExpansions CollectedExpansions, const clang::SourceManager & SM, const clang::LangOptions & LangOpts)
  • private void advance()
  • public clang::syntax::TokenBuffer build() &&
  • private void buildSpelledTokens()
  • private void diagnoseAdvanceFailure()
  • private void discard(llvm::Optional<FileID> Drain = llvm::None)

Methods

Builder(
    std::vector<syntax::Token> Expanded,
    clang::syntax::TokenCollector::PPExpansions
        CollectedExpansions,
    const clang::SourceManager& SM,
    const clang::LangOptions& LangOpts)

Declared at: clang/lib/Tooling/Syntax/Tokens.cpp:756

Parameters

std::vector<syntax::Token> Expanded
clang::syntax::TokenCollector::PPExpansions CollectedExpansions
const clang::SourceManager& SM
const clang::LangOptions& LangOpts

void advance()

Declared at: clang/lib/Tooling/Syntax/Tokens.cpp:859

clang::syntax::TokenBuffer build() &&

Declared at: clang/lib/Tooling/Syntax/Tokens.cpp:763

void buildSpelledTokens()

Description

Initializes TokenBuffer::Files and fills spelled tokens and expanded ranges for each of the files.

Declared at: clang/lib/Tooling/Syntax/Tokens.cpp:917

void diagnoseAdvanceFailure()

Declared at: clang/lib/Tooling/Syntax/Tokens.cpp:902

void discard(
    llvm::Optional<FileID> Drain = llvm::None)

Declared at: clang/lib/Tooling/Syntax/Tokens.cpp:811

Parameters

llvm::Optional<FileID> Drain = llvm::None