> In other words, Foo.h declaring class Foo can focus on interface over 
> implementation, even with a few short inline methods defined within the class 
> or right after it -- but larger inlines may be required for performance, and 
> their bodies can easily depend on headers not properly part of 
> Foo.h-as-interface, which should therefore not "bootleg" along via nested 
> #includes. Whereas FooInlines.h can nest its implementation dependencies 
> freely.

Maybe we should amend again:

(2) Adopt the convention that the following functions got into "*Inlines.h":
        (2a) Functions that cause circular header dependencies
        (2b) Functions that cause a header to #include another header that 
clients would not otherwise #include

An example of (2a): JSValue::toWTFStringInline().

An example of (2b): Node::renderStyle().

Geoff
_______________________________________________
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-dev

Reply via email to