This repository was archived by the owner on Dec 29, 2022. It is now read-only.
forked from cpp-netlib/cpp-netlib
-
Notifications
You must be signed in to change notification settings - Fork 60
C++ Network Library Style Guidelines
Glyn Matthews edited this page Nov 28, 2013
·
4 revisions
I’m starting this in response to a question raised on the mailing list.
Now, style guidelines sound like a great idea, but in practice this is going to be impossible to enforce. For one thing, any guidelines are going to be pretty much arbitrary and not easy to defend if anyone breaks them, and the project admins will probably feel it’s not a valuable use of their time. But, consistency of style is going to be vital as this project grows.
So, beyond boost’s own requirements, it’s perhaps a good idea to define what’s acceptable and not acceptable within our own project.
We follow Google’s style guidelines.
I can start with some observations I’ve made about the organisation of the directory and namespace structures:
- protocol specific stuff belongs in the namespace (e.g. HTTP)
network::http
and the directorynetwork/http/
. -
URI specific stuff belongs in the uri submodule
network
namespace and directorynetwork/uri/
. - Implementation specific headers belong in
network::*::detail
network/*/detail
. - Implementations are put in
.ipp
files that live alongside the.hpp
files. The.ipp
file is included by a.cpp
file inlibs/network/src/
which is then compiled.