aboutsummaryrefslogtreecommitdiffstats
path: root/HACKING
diff options
context:
space:
mode:
authorVincent Richard <[email protected]>2013-12-29 09:14:36 +0000
committerVincent Richard <[email protected]>2013-12-29 09:14:36 +0000
commit28398076c22c9195a3516365d95b1b41ed27a4b3 (patch)
tree971f971b1c0db86d0bfcd565ecf97d8b6e13d9da /HACKING
parentMerged source and header files in directory structure. Got rid of SConstruct ... (diff)
downloadvmime-28398076c22c9195a3516365d95b1b41ed27a4b3.tar.gz
vmime-28398076c22c9195a3516365d95b1b41ed27a4b3.zip
Update HACKING
Diffstat (limited to 'HACKING')
-rw-r--r--HACKING18
1 files changed, 10 insertions, 8 deletions
diff --git a/HACKING b/HACKING
index f51d738c..cf259708 100644
--- a/HACKING
+++ b/HACKING
@@ -1,4 +1,3 @@
-
This file contains coding guidelines for VMime. You should follow them
if you want to contribute to VMime. The rules below are not guidelines
or recommendations, but strict rules.
@@ -7,7 +6,7 @@ or recommendations, but strict rules.
1. General rules
1.1. Language
1.2. Unit tests
- 1.3. CVS
+ 1.3. Version Control
1.4. ChangeLog
1.5. Warnings
2. Style, indentation and braces
@@ -53,8 +52,8 @@ When you fix a bug, also add a new test case to ensure the bug will not
happen anymore.
-1.3. SVN
---------
+1.3. Version Control
+--------------------
Each commit MUST be done with a message ('-m' flag) that briefly describes what
changes have been done.
@@ -276,8 +275,7 @@ Files have to be named exactly like the class they define. For example, class
"mailboxList" should be declared in "mailboxList.hpp" and implemented in
"mailboxList.cpp".
-Header files must be placed in 'vmime/' directory.
-Implementation files must be placed in 'src/' directory.
+Both header and implementation files must be placed in 'src/vmime/' directory.
3.5. Namespaces
@@ -310,17 +308,21 @@ Tabs should NOT be used to indent at the end of a line:
int m_secondMember; // second member
};
+Note about special comment blocks: Doxygen is used to generate documentation
+from annotated C++ sources, so be sure to use available markings to annotate
+the purpose of the functions/classes and the meaning of the parameters.
5. Miscellaneous
================
* No code should be put in header files, only declarations (except for
- templates).
+ templates and inline functions).
* Try to avoid public member variables. Write accessors instead (get/set).
-* Do NOT use 'using namespace'. All namespaces should be explicitely named.
+* Do NOT use 'using namespace' (and especially not in header files). All
+ namespaces should be explicitely named.
* Use the 'get' and 'set' prefix for accessors: