-
Hans Wennborg authored
This reverts commit b8ffaf4cfcb5e6b6a9916bb1b314820b10b0daf4. Reason for revert: This broke the build of the blink_gc_plugin, which does not use base/ (see bug). Please don't commit to tools/clang/ without review. Original change's description: > IWYU for bind/callback_helpers.h and ptr_util.h > > These missing includes are preventing removal of unused headers from > task_runner_util.h and consequently migration from task_runner_util.h to > task_runner.h's new PostTaskAndReplyWithResult member method. > > The following script was run on every file in the codebase, prioritizing > .h over matching .cc to best enforce the rule of not include a header > included by your .h : > > def Fix(file_path): > content = refactor_lib.ReadFile(file_path) > > # Assume fwd-decls are correct in first pass. > fwd_decls_match = re.compile(r'\n *[^/\n][^/\n][^/\n]*class (NullCallback|DoNothing|ScopedClosureRunner);', re.DOTALL).findall(content) > if fwd_decls_match: > print 'fwd_decls_match in %s' % (file_path) > return False > > bind_helpers_match = re.compile( > # Doesn't begin with a comment. > r'\n *[^/\n][^/\n]' > # Anything else after a non-comment start (and don't allow this to capture a comment start either) > r'[^/\n]*' > # Anything before but an open angle-bracket to avoid cases like unique_ptr<Foo> where you don't need the full definition of Foo. > r'[^<]' > # Only match with base:: prefix; more precise, can manually fix missing includes in //base proper in a follow-up pass if needed. > r'base::(NullCallback|DoNothing|DeletePointer)\b[^*]', re.DOTALL).findall(content) > > callback_helpers_match = re.compile(r'\n *[^/\n][^/\n][^/\n]*[^<]base::(IsBaseCallback|EnableIfIsBaseCallback|AdaptCallbackForRepeating|ScopedClosureRunner)\b[^*]', re.DOTALL).findall(content) > > ptr_util_match = re.compile(r'\n *[^/\n][^/\n][^/\n]*[^<]base::WrapUnique\b[^*]', re.DOTALL).findall(content) > > if not bind_helpers_match and not callback_helpers_match and not ptr_util_match: > return False > > updated_content = content > if bind_helpers_match: > updated_content = refactor_lib.AddInclude(file_path, updated_content, "base/bind_helpers.h") > if callback_helpers_match: > updated_content = refactor_lib.AddInclude(file_path, updated_content, "base/callback_helpers.h") > if ptr_util_match: > updated_content = refactor_lib.AddInclude(file_path, updated_content, "base/memory/ptr_util.h") > > if updated_content == content: > return False > > # Write updated file > refactor_lib.WriteFile(file_path, updated_content) > > return True > > TBR=danakj@chromium.org > (mechanical change for //base API) > > Bug: 1026641 > Change-Id: Ic88585c62dd2f74d34c59c708faeddb231aee47f > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2087971 > Reviewed-by: Gabriel Charette <gab@chromium.org> > Reviewed-by: danakj <danakj@chromium.org> > Commit-Queue: Gabriel Charette <gab@chromium.org> > Cr-Commit-Position: refs/heads/master@{#747685} TBR=danakj@chromium.org,gab@chromium.org Change-Id: I59d6cd69bd898e9f6d10922c67d8c24ba582bf7f No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 1026641, 1059359 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2091356 Reviewed-by: Hans Wennborg <hans@chromium.org> Commit-Queue: Hans Wennborg <hans@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#747804} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: 7a13e2645a7cd50b0bdfd96e72bcdd9b7e9fee26
25410c20