[webkit-dev] AncestorChainWalker substance and style thoughts

Ryosuke Niwa rniwa at webkit.org
Mon Feb 18 18:28:10 PST 2013

On Mon, Feb 18, 2013 at 6:18 PM, Darin Adler <darin at apple.com> wrote:

> On Feb 18, 2013, at 6:17 PM, Ryosuke Niwa <rniwa at webkit.org> wrote:
> > See https://bugs.webkit.org/show_bug.cgi?id=110146 where we're going to
> rename the class, member functions and variables.
> Thanks. Good discussion there.
> What about my other question? Why is this a class instead of a function?

I had the same question when I found this class today but when I tried to
turn it into a function, I realized that each caller of this function now
needs to maintain two variables instead of one. Since those two variables
(node and distributedNode) need to be in a consistent state, I've thought
of creating a state object but then it seemed silly to create a state
object only and a free function. It's much more natural for it be just a
"walker" class.

Having said that, I don't like seemingly excessive use of design patterns
prevalent in some of the code we're adding, particularly, for shadow DOM.

- R. Niwa
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-dev/attachments/20130218/3ca14d33/attachment.html>

More information about the webkit-dev mailing list