swayfx/HACKING.md

25 lines
810 B
Markdown
Raw Normal View History

2017-04-30 00:54:08 +10:00
## Logging
Use `sway_log(importance, fmt, ...)` to log. The following importances are
available:
2018-07-10 07:54:30 +10:00
* `WLR_DEBUG`: Debug messages, only shows with `sway -d`
* `WLR_INFO`: Informational messages
* `WLR_ERROR`: Error messages
2017-04-30 00:54:08 +10:00
`sway_log` is a macro that calls `_sway_log` with the current filename and line
number, which are written into the log with your message.
## Assertions
In the compositor, assertions *must not* be fatal. All error cases must be
handled as gracefully as possible - crashing the compositor will make the user
lose all of their work.
Use `sway_assert(condition, fmt, ...)` to perform an assertion. This returns
`condition`, which you must handle if false. An error will be logged if the
assertion fails.
Outside of the compositor (swaymsg, swaybar, etc), using `assert.h` is
permitted.