Skip to content

Use compact nested namespaces

Summary

Currently, namespaces are nested up to a non-negligible depth, e.g. 3 for gem::hardware::optohybrid which does not respect the module namespaces (should be gem::hardware::managers::optohybrid). However, we do compile with C++17 which provides us with nested namespace; they are already used in !23 (merged).

Although WebKit helps us in preventing the indentation level increase, a better design would be to use nested namespaces up to the module name (as defined in cmsgemos, i.e. the modules hierarchy in the filesystem/CMakeLists.txt).

An exception might be with xhal and gemrpc, at least until #64 (closed) is implemented.

What is the expected correct behavior?

Use compact nested namespace up to the module level for increased readability.