mirror of
https://github.com/hyprwm/hyprland-wiki.git
synced 2024-11-26 06:25:59 +01:00
add clang format notes
This commit is contained in:
parent
b597ca16a0
commit
2f1b29815f
1 changed files with 3 additions and 47 deletions
|
@ -6,53 +6,9 @@
|
||||||
|
|
||||||
## Code Style
|
## Code Style
|
||||||
|
|
||||||
Hyprland's code style:
|
Hyprland's code style is governed by the `.clang-format` file.
|
||||||
|
|
||||||
```cpp
|
Make sure to format accordingly whenever you make a PR.
|
||||||
void myFunction(int arg) {
|
|
||||||
|
|
||||||
if (shortStatement)
|
|
||||||
doSomething();
|
|
||||||
else
|
|
||||||
doNotDoIt();
|
|
||||||
|
|
||||||
switch (value) {
|
|
||||||
case 1:
|
|
||||||
{ // braces optional
|
|
||||||
blahBlah();
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
default:
|
|
||||||
Debug::log(ERR, "error");
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
const auto CONSTVALUE = arg == 1 ? 2 : 3;
|
|
||||||
|
|
||||||
void* pLocalPointer = nullptr;
|
|
||||||
|
|
||||||
int localValue = 0;
|
|
||||||
|
|
||||||
if (MY && VERY && LONG && IF && STATEMENT && OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO && SUPERLONG && STATEMENT) {
|
|
||||||
; // blank
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
class myClass {
|
|
||||||
public:
|
|
||||||
int m_iMyLocalInt = 0;
|
|
||||||
// ^ member
|
|
||||||
// ^ int
|
|
||||||
// ^ camel name
|
|
||||||
|
|
||||||
void classFunction(int, int, bool defaultBool = false);
|
|
||||||
// ^ most arg names omitted
|
|
||||||
// ^ arg name mandatory here because C++
|
|
||||||
|
|
||||||
// Note: omitting args only for functions with clear / few args. For long functions:
|
|
||||||
void classFunctionLong(int a, int b, bool sure, bool red, bool enabled, void* item, const CColor& color = {0});
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
## Some code FAQ
|
## Some code FAQ
|
||||||
|
|
||||||
|
@ -61,7 +17,7 @@ public:
|
||||||
Every variable from the config needs to be found in a hashmap. To limit the amount of hashmap searches, getting a config option looks like this:
|
Every variable from the config needs to be found in a hashmap. To limit the amount of hashmap searches, getting a config option looks like this:
|
||||||
|
|
||||||
```cpp
|
```cpp
|
||||||
static auto *const PFOLLOWMOUSE = &g_pConfigManager->getConfigValuePtr("input:follow_mouse")->intValue;
|
static auto* const PFOLLOWMOUSE = &g_pConfigManager->getConfigValuePtr("input:follow_mouse")->intValue;
|
||||||
```
|
```
|
||||||
|
|
||||||
Since the hashmap _cannot_ be mutated during runtime, this pointer will always be valid, and will not require hashmap lookups every single time it's read.
|
Since the hashmap _cannot_ be mutated during runtime, this pointer will always be valid, and will not require hashmap lookups every single time it's read.
|
||||||
|
|
Loading…
Reference in a new issue