-
Notifications
You must be signed in to change notification settings - Fork 37
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Establish Distinction between public and private headers #239
Comments
This is clearly important and something we need to eventually clarify and stick to. Thanks for bringing it up. That said, I'm not sure we're ready to solidify this... It's true that we're beginning to build things downstream with |
I agree with @JoshuaSBrown. My concern with waiting is that it ossifies the exported APIs. |
My proposal for this is:
|
That seems reasonable to me. As discussed with @nmsriram yesterday, I also think we should try to deliberately make better use of forward declarations if we can, to reduce the amount of private headers that end up "published" via a tree of includes. |
Well, I will start this process by moving all headers to a public includes folder. Will probably wait until after this has been merged though. #238 |
A clear distinction in missing between what in parthenon should be publicly exposed. This makes it easy to break down stream code that depends on parthenon as a library as internal changes are likely to break down stream packages.
It would be nice to list the classes and functions that external programs need access to so as to hide internals and thus make parthenon more robust as a dependency.
The text was updated successfully, but these errors were encountered: