chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Update TODO
[elogind.git]
/
CODING_STYLE
diff --git
a/CODING_STYLE
b/CODING_STYLE
index e22c1edb1273ab0892541cef0439156d360162c7..598d241b2baa048c1bc18644ade20ea9dcfb3d49 100644
(file)
--- a/
CODING_STYLE
+++ b/
CODING_STYLE
@@
-1,6
+1,9
@@
-
- 8ch indent, no tabs
- 8ch indent, no tabs
+- Don't break code lines too eagerly. We do *not* force line breaks at
+ 80ch, all of today's screens should be much larger than that. But
+ then again, don't overdo it, ~140ch should be enough really.
+
- Variables and functions *must* be static, unless they have a
prototype, and are supposed to be exported.
- Variables and functions *must* be static, unless they have a
prototype, and are supposed to be exported.
@@
-15,7
+18,7
@@
- For robustness reasons, destructors should be able to destruct
half-initialized objects, too
- For robustness reasons, destructors should be able to destruct
half-initialized objects, too
-- Error codes are returned as negative Exxx.
i.e
. return -EINVAL. There
+- Error codes are returned as negative Exxx.
e.g
. return -EINVAL. There
are some exceptions: for constructors, it is OK to return NULL on
OOM. For lookup functions, NULL is fine too for "not found".
are some exceptions: for constructors, it is OK to return NULL on
OOM. For lookup functions, NULL is fine too for "not found".
@@
-54,7
+57,7
@@
doing something wrong!
- Stay uniform. For example, always use "usec_t" for time
doing something wrong!
- Stay uniform. For example, always use "usec_t" for time
- values. Do not
usec mix
msec, and usec and whatnot.
+ values. Do not
mix usec and
msec, and usec and whatnot.
- Make use of _cleanup_free_ and friends. It makes your code much
nicer to read!
- Make use of _cleanup_free_ and friends. It makes your code much
nicer to read!
@@
-76,6
+79,17
@@
But it is OK if you do not.
But it is OK if you do not.
+- Single-line "if" blocks should not be enclosed in {}. Use this:
+
+ if (foobar)
+ waldo();
+
+ instead of this:
+
+ if (foobar) {
+ waldo();
+ }
+
- Do not write "foo ()", write "foo()".
- Please use streq() and strneq() instead of strcmp(), strncmp() where applicable.
- Do not write "foo ()", write "foo()".
- Please use streq() and strneq() instead of strcmp(), strncmp() where applicable.
@@
-152,7
+166,7
@@
function or a "non-logging" function. "Logging" functions do logging
on their own, "non-logging" function never log on their own and
expect their callers to log. All functions in "library" code,
function or a "non-logging" function. "Logging" functions do logging
on their own, "non-logging" function never log on their own and
expect their callers to log. All functions in "library" code,
- i.e. in src/shared/ and suchlike must be "non-logging". Everytime a
+ i.e. in src/shared/ and suchlike must be "non-logging". Every
time a
"logging" function calls a "non-logging" function, it should log
about the resulting errors. If a "logging" function calls another
"logging" function, then it should not generate log messages, so
"logging" function calls a "non-logging" function, it should log
about the resulting errors. If a "logging" function calls another
"logging" function, then it should not generate log messages, so
@@
-167,3
+181,8
@@
caching for any thread that is not the main thread. Use
is_main_thread() to detect whether the calling thread is the main
thread.
caching for any thread that is not the main thread. Use
is_main_thread() to detect whether the calling thread is the main
thread.
+
+- Option parsing:
+ - Do not print full help() on error, be specific about the error.
+ - Do not print messages to stdout on error.
+ - Do not POSIX_ME_HARDER unless necessary, i.e. avoid "+" in option string.