[PATCH] Split registry matcher resolution into a lookup phase and a construction phase.

Samuel Benzaquen sbenza at google.com
Tue Nov 19 06:28:10 PST 2013



================
Comment at: include/clang/ASTMatchers/Dynamic/Registry.h:40
@@ -33,3 +39,3 @@
   ///
-  /// Consult the registry of known matchers and construct the appropriate
-  /// matcher by name.
+  /// \return An opaque pointer which may be used to refer to the matcher
+  /// constructor, or null if not found.  In that case \c Error will contain the
----------------
Peter Collingbourne wrote:
> Samuel Benzaquen wrote:
> > If you describe it as an "opaque pointer", I think you should return MatcherCtor* (with the appropriate change in the typedef above).
> Clients don't normally care what this is unless they are trying to check for errors from this function. I guess we can use llvm::Optional for this return value if we don't want to mention the fact that this is a pointer, although I don't think it matters much.
I don't mind it being an opaque value. What I didn't like is that it is a pointer, but the pointer is hidden behind a typedef. Optional<> helps hide that.


http://llvm-reviews.chandlerc.com/D2207

BRANCH
  clangquery6

ARCANIST PROJECT
  clang



More information about the cfe-commits mailing list