| Index: tools/clang/value_cleanup/ListValueRewriter.h
|
| diff --git a/tools/clang/value_cleanup/ListValueRewriter.h b/tools/clang/value_cleanup/ListValueRewriter.h
|
| index dff54385c9b12645ddb61372fe0ff9d1b429691d..5c788db0ee8892bfab7f5eb34f0d830cbf570e10 100644
|
| --- a/tools/clang/value_cleanup/ListValueRewriter.h
|
| +++ b/tools/clang/value_cleanup/ListValueRewriter.h
|
| @@ -8,6 +8,7 @@
|
| #define TOOLS_CLANG_VALUE_CLEANUP_LIST_VALUE_REWRITER_H_
|
|
|
| #include <memory>
|
| +#include <unordered_set>
|
|
|
| #include "clang/ASTMatchers/ASTMatchFinder.h"
|
| #include "clang/Tooling/Refactoring.h"
|
| @@ -72,8 +73,21 @@ class ListValueRewriter {
|
| void run(
|
| const clang::ast_matchers::MatchFinder::MatchResult& result) override;
|
|
|
| - protected:
|
| + private:
|
| + clang::tooling::Replacements* const replacements_;
|
| + };
|
| +
|
| + class AppendRawPtrCallback
|
| + : public clang::ast_matchers::MatchFinder::MatchCallback {
|
| + public:
|
| + explicit AppendRawPtrCallback(clang::tooling::Replacements* replacements);
|
| +
|
| + void run(
|
| + const clang::ast_matchers::MatchFinder::MatchResult& result) override;
|
| +
|
| + private:
|
| clang::tooling::Replacements* const replacements_;
|
| + std::unordered_set<const clang::VarDecl*> visited_;
|
| };
|
|
|
| AppendBooleanCallback append_boolean_callback_;
|
| @@ -81,6 +95,7 @@ class ListValueRewriter {
|
| AppendDoubleCallback append_double_callback_;
|
| AppendStringCallback append_string_callback_;
|
| AppendReleasedUniquePtrCallback append_released_unique_ptr_callback_;
|
| + AppendRawPtrCallback append_raw_ptr_callback_;
|
| };
|
|
|
| #endif // TOOLS_CLANG_VALUE_CLEANUP_LIST_VALUE_REWRITER_H_
|
|
|