aaron.ballman added inline comments.
================ Comment at: include/clang/ASTMatchers/ASTMatchers.h:718 +template <typename T> +internal::Matcher<T> traverse(ast_type_traits::TraversalKind TK, + const internal::Matcher<T> &InnerMatcher) { ---------------- steveire wrote: > aaron.ballman wrote: > > steveire wrote: > > > aaron.ballman wrote: > > > > Is this an API we should be exposing to clang-query as well? Will those > > > > users be able to use a string literal for the traversal kind, like they > > > > already do for attribute kinds (etc)? > > > Yes, I thought about that, but in a follow-up patch. First, I aim to > > > extend the `TraversalKind` enum with `TK_IgnoreInvisble`. > > This is new functionality, so why do you want to wait for a follow-up patch > > (is it somehow more involved)? We typically add support for dynamic > > matchers at the same time we add support for the static matchers because > > otherwise the two get frustratingly out of sync. > Perhaps I can add the support in DynamicASTMatchers. Can you give some > direction on that? I don't recall where the attr strings are handled. > > A corresponding change to `clang-query` will be in another patch anyway > because it's a different repo. > Perhaps I can add the support in DynamicASTMatchers. Can you give some > direction on that? I don't recall where the attr strings are handled. I always wind up having to use svn blame to figure it out, so you're not alone in your recollections. ;-) You add a new specialization of `ArgTypeTraits` to Marshallers.h for the enumeration type. See around line 123 or so for how it's done for `attr::Kind`. > A corresponding change to clang-query will be in another patch anyway because > it's a different repo. Once you have the enumeration being marshaled, I believe all you have to do is expose the new API via Registry.cpp like any other matcher, though I'd also request tests be added to Dynamic/RegistryTest.cpp since this is adding a small amount of new marshaling code. Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D61837/new/ https://reviews.llvm.org/D61837 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits