summaryrefslogtreecommitdiffstats
path: root/CONTRIBUTING.md
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--CONTRIBUTING.md43
1 files changed, 26 insertions, 17 deletions
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index cb1067c92..82b66be75 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -24,27 +24,36 @@ Citra is a brand new project, so we have a great opportunity to keep things clea
### Indentation/Whitespace Style
Follow the indentation/whitespace style shown below. Do not use tabs, use 4-spaces instead.
+### Comments
+* For regular comments, use C++ style (`//`) comments, even for multi-line ones.
+* For doc-comments (Doxygen comments), use `/// ` if it's a single line, else use the `/**` `*/` style featured in the example. Start the text on the second line, not the first containing `/**`.
+
```cpp
namespace Example {
// Namespace contents are not indented
-
+
// Declare globals at the top
int g_foo = 0;
char* g_some_pointer; // Notice the position of the *
-
+
+/// A colorful enum.
enum SomeEnum {
- COLOR_RED,
- COLOR_GREEN,
- COLOR_BLUE
+ COLOR_RED, ///< The color of fire.
+ COLOR_GREEN, ///< The color of grass.
+ COLOR_BLUE ///< Not actually the color of water.
};
-
+
+/**
+ * Very important struct that does a lot of stuff.
+ * Note that the asterisks are indented by one space.
+ */
struct Position {
int x, y;
};
-
+
// Use "typename" rather than "class" here, just to be consistent
-template
+template
void FooBar() {
int some_array[] = {
5,
@@ -52,29 +61,29 @@ void FooBar() {
7,
42
};
-
+
if (note == the_space_after_the_if) {
CallAfunction();
} else {
// Use a space after the // when commenting
}
-
+
// Comment directly above code when possible
if (some_condition) single_statement();
-
+
// Place a single space after the for loop semicolons
for (int i = 0; i != 25; ++i) {
// This is how we write loops
}
-
+
DoStuff(this, function, call, takes, up, multiple,
lines, like, this);
-
+
if (this || condition_takes_up_multiple &&
lines && like && this || everything ||
alright || then) {
}
-
+
switch (var) {
// No indentation for case label
case 1: {
@@ -85,18 +94,18 @@ void FooBar() {
case 3:
DoSomething(var);
return;
-
+
default:
// Yes, even break for the last case
break;
}
-
+
std::vector
you_can_declare,
a_few,
variables,
like_this;
}
-
+
}
```