class RecursiveSymbolVisitor

Declaration

template <typename T>
class RecursiveSymbolVisitor { /* full declaration omitted */ };

Description

Traverses the AST and visits the occurrence of each named symbol in the given nodes.

Declared at: clang/include/clang/Tooling/Refactoring/RecursiveSymbolVisitor.h:28

Templates

T

Member Variables

private const clang::SourceManager& SM
private const clang::LangOptions& LangOpts

Method Overview

Methods

RecursiveSymbolVisitor<T>(
    const clang::SourceManager& SM,
    const clang::LangOptions& LangOpts)

Declared at: clang/include/clang/Tooling/Refactoring/RecursiveSymbolVisitor.h:33

Parameters

const clang::SourceManager& SM
const clang::LangOptions& LangOpts

bool TraverseNestedNameSpecifierLoc(
    clang::NestedNameSpecifierLoc NNS)

Declared at: clang/include/clang/Tooling/Refactoring/RecursiveSymbolVisitor.h:114

Parameters

clang::NestedNameSpecifierLoc NNS

bool VisitCXXConstructorDecl(
    const clang::CXXConstructorDecl* CD)

Declared at: clang/include/clang/Tooling/Refactoring/RecursiveSymbolVisitor.h:47

Parameters

const clang::CXXConstructorDecl* CD

bool VisitDeclRefExpr(
    const clang::DeclRefExpr* Expr)

Declared at: clang/include/clang/Tooling/Refactoring/RecursiveSymbolVisitor.h:64

Parameters

const clang::DeclRefExpr* Expr

bool VisitDesignatedInitExpr(
    const clang::DesignatedInitExpr* E)

Declared at: clang/include/clang/Tooling/Refactoring/RecursiveSymbolVisitor.h:125

Parameters

const clang::DesignatedInitExpr* E

bool VisitMemberExpr(
    const clang::MemberExpr* Expr)

Declared at: clang/include/clang/Tooling/Refactoring/RecursiveSymbolVisitor.h:68

Parameters

const clang::MemberExpr* Expr

bool VisitNamedDecl(const clang::NamedDecl* D)

Declared at: clang/include/clang/Tooling/Refactoring/RecursiveSymbolVisitor.h:43

Parameters

const clang::NamedDecl* D

bool VisitOffsetOfExpr(
    const clang::OffsetOfExpr* S)

Declared at: clang/include/clang/Tooling/Refactoring/RecursiveSymbolVisitor.h:72

Parameters

const clang::OffsetOfExpr* S

bool VisitTypeLoc(const clang::TypeLoc Loc)

Declared at: clang/include/clang/Tooling/Refactoring/RecursiveSymbolVisitor.h:86

Parameters

const clang::TypeLoc Loc

bool VisitTypedefTypeLoc(clang::TypedefTypeLoc TL)

Declared at: clang/include/clang/Tooling/Refactoring/RecursiveSymbolVisitor.h:108

Parameters

clang::TypedefTypeLoc TL

bool visit(const clang::NamedDecl* ND,
           clang::SourceLocation BeginLoc,
           clang::SourceLocation EndLoc)

Declared at: clang/include/clang/Tooling/Refactoring/RecursiveSymbolVisitor.h:140

Parameters

const clang::NamedDecl* ND
clang::SourceLocation BeginLoc
clang::SourceLocation EndLoc

bool visit(const clang::NamedDecl* ND,
           clang::SourceLocation Loc)

Declared at: clang/include/clang/Tooling/Refactoring/RecursiveSymbolVisitor.h:145

Parameters

const clang::NamedDecl* ND
clang::SourceLocation Loc

bool visitSymbolOccurrence(
    const clang::NamedDecl* ND,
    ArrayRef<clang::SourceRange> NameRanges)

Declared at: clang/include/clang/Tooling/Refactoring/RecursiveSymbolVisitor.h:36

Parameters

const clang::NamedDecl* ND
ArrayRef<clang::SourceRange> NameRanges