class ASTMatchRefactorer

Declaration

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

Description

Adaptor between \c ast_matchers::MatchFinder and \c tooling::RefactoringTool. Runs AST matchers and stores the \c tooling::Replacements in a map.

Declared at: clang/include/clang/Tooling/RefactoringCallbacks.h:53

Member Variables

private std::vector<RefactoringCallback*> Callbacks
private ast_matchers::MatchFinder MatchFinder
private std::map<std::string, Replacements>& FileToReplaces

Method Overview

  • public ASTMatchRefactorer(std::map<std::string, Replacements> & FileToReplaces)
  • public void addDynamicMatcher(const ast_matchers::internal::DynTypedMatcher & Matcher, clang::tooling::RefactoringCallback * Callback)
  • public template <typename T>void addMatcher(const T & Matcher, clang::tooling::RefactoringCallback * Callback)
  • public std::unique_ptr<ASTConsumer> newASTConsumer()

Methods

ASTMatchRefactorer(
    std::map<std::string, Replacements>&
        FileToReplaces)

Declared at: clang/include/clang/Tooling/RefactoringCallbacks.h:55

Parameters

std::map<std::string, Replacements>& FileToReplaces

void addDynamicMatcher(
    const ast_matchers::internal::DynTypedMatcher&
        Matcher,
    clang::tooling::RefactoringCallback* Callback)

Declared at: clang/include/clang/Tooling/RefactoringCallbacks.h:64

Parameters

const ast_matchers::internal::DynTypedMatcher& Matcher
clang::tooling::RefactoringCallback* Callback

template <typename T>
void addMatcher(
    const T& Matcher,
    clang::tooling::RefactoringCallback* Callback)

Declared at: clang/include/clang/Tooling/RefactoringCallbacks.h:59

Templates

T

Parameters

const T& Matcher
clang::tooling::RefactoringCallback* Callback

std::unique_ptr<ASTConsumer> newASTConsumer()

Declared at: clang/include/clang/Tooling/RefactoringCallbacks.h:67