Add doc/CODING-GUIDELINES document
authorJames Golovich <james@gnuinter.net>
Sun, 2 May 2004 19:24:05 +0000 (19:24 +0000)
committerJames Golovich <james@gnuinter.net>
Sun, 2 May 2004 19:24:05 +0000 (19:24 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@2863 65c4cc65-6c06-0410-ace0-fbb531ad65f3

doc/CODING-GUIDELINES [new file with mode: 0755]

diff --git a/doc/CODING-GUIDELINES b/doc/CODING-GUIDELINES
new file mode 100755 (executable)
index 0000000..7d621b4
--- /dev/null
@@ -0,0 +1,53 @@
+Asterisk Patch/Coding Guidelines
+
+To be accepted into the codebase, all non-trivial changes must be
+disclaimed to Digium or placed in the public domain. For more information
+see http://bugs.digium.com
+
+Patches should be in the form of a unified (-u) diff.
+
+Don't annotate your changes with comments like "/* JMG 4/20/04 */";
+Comments should explain what the code does, not when something was changed
+or who changed it.
+
+Don't make unnecessary whitespace changes throughout the code.
+
+Don't use C++ type (//) comments.
+
+Try to match the existing formatting of the file you are working on.
+
+Functions and variables that are not intended to be global must be
+declared static.
+
+Function calls and arguments should be spaced in a consistent way across
+the codebase.
+GOOD: foo(arg1, arg2);
+GOOD: foo(arg1,arg2);  /* Acceptable but not preferred */
+BAD: foo (arg1, arg2);
+BAD: foo( arg1, arg2 );
+BAD: foo(arg1, arg2,arg3);
+
+Following are examples of how code should be formatted.
+
+Functions:
+int foo(int a, char *s)
+{
+       return 0;
+}
+
+If statements:
+if (foo) {
+       bar();
+} else {
+       blah();
+}
+
+Case statements:
+switch (foo) {
+       case BAR:
+               blah();
+               break;
+       case OTHER:
+               other();
+               break;
+}