hyprland-wiki/pages/Contributing and Debugging/PR-Guidelines.md
2024-10-03 19:20:45 +01:00

32 lines
823 B
Markdown

---
title: PR Guidelines
---
## PR Requirements
- Clean, not hacky code
- Described changes and _why_ they were there
- Following the style (see below)
### Code Style
Hyprland's code style is governed by the `.clang-format` file.
Make sure to format accordingly whenever you make a PR.
### Some code FAQ
> Why is the config variable getting so weird?
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
static const auto PVARIABLE = CConfigValue<TYPE>("name");
// e.g.
static const auto PBORDERSIZE = CConfigValue<Hyprlang::INT>("general:border_size");
```
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.