[PATCH] D67961: [libTooling] Introduce the MatchConsumer abstraction
Dmitri Gribenko via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Wed Sep 25 05:15:07 PDT 2019
gribozavr accepted this revision.
gribozavr added inline comments.
This revision is now accepted and ready to land.
================
Comment at: clang/include/clang/Tooling/Refactoring/MatchConsumer.h:9
+///
+/// /file This file defines the *MatchConsumer* abstraction: a computation over
+/// match results, specifically the `ast_matchers::MatchFinder::MatchResult`
----------------
\file
================
Comment at: clang/include/clang/Tooling/Refactoring/MatchConsumer.h:27
+
+/// A central abstraction of the Transformer framework is computation over the
+/// results of a match (represented by \c MatchFinder::MatchResult). We
----------------
The comment seems to be a mix of documentation and design justification. How about this?
```
A failable computation over nodes bound by AST matchers.
It is a central abstraction of the Transformer framework.
The computation should report any errors though its return value (rather than terminating the program) to enable usage in interactive scenarios like clang-query.
```
================
Comment at: clang/include/clang/Tooling/Refactoring/MatchConsumer.h:39
+
+/// Convenience function for a common error generated by `MatchConsumer`s.
+inline llvm::Error notBoundError(llvm::StringRef Id) {
----------------
"Creates an error that signals that a `MatchConsumer` expected a certain node to be bound by AST matchers, but is was not actually bound."
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D67961/new/
https://reviews.llvm.org/D67961
More information about the cfe-commits
mailing list