19 lines
724 B
Markdown
19 lines
724 B
Markdown
|
# Extra rules
|
||
|
|
||
|
These are rules that can't be captured directly
|
||
|
by clang-format / clang-tidy.
|
||
|
|
||
|
* Use .hpp for C++ headers, .cpp for C++ files
|
||
|
* \#pragma once
|
||
|
* includes:
|
||
|
- double-quotes for ebee-developed applications
|
||
|
- angular brackets for external projects / system headers
|
||
|
- full relative path from src/ folder
|
||
|
- for libraries: public includes in a folder separated from private includes
|
||
|
- includes ordered by most specific to most generic
|
||
|
- for libraries: mark interfaces available externaly with a `DLL_EXPORT` macro for `__attribute__((visibility("default")))`
|
||
|
|
||
|
## TODO
|
||
|
|
||
|
- change xgettext parameter to "--add-comments" to TRANSLATORS in CMakeLists.txt
|
||
|
- remove bundled doctest.h or trompeloeil from project
|