On Mon, Mar 11, 2013 at 7:19 AM, Daniel Jasper <[email protected]> wrote:
> > > ================ > Comment at: lib/ASTMatchers/ASTMatchFinder.cpp:425 > @@ -423,3 +424,3 @@ > private: > - bool matchesAncestorOfRecursively( > + bool memoizedMatchesAncestorOfRecursively( > const ast_type_traits::DynTypedNode &Node, const DynTypedMatcher > &Matcher, > ---------------- > I think the combination of these two methods is highly confusing. The name > suggests that both do the same thing, just one with memoization and one > without memoization, which they don't. Furthermore, the responsibilities > are not clear at all. E.g. what happens if I call > matchesAncestorOfRecursively() with the TUDecl? It will probably assert, as > the check for that is only in memoizedMatchesAncestorOfRecursively().. > Any constructive ideas on how to change the layout? > Also, it seems a bit strange, to first match all direct parents (kind of > BFS) and then recursively call matchesAncestorOfRecursively() on each one > (kind of DFS). Is this intended? > Yes. That doesn't mean it was a good idea though :)
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
