mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Document ternary expression style and the else-after-return prohibition. No bug, rs=luke over IRC, DONTBUILD because this is modifying docs but touching no code
--HG-- extra : rebase_source : 0c11adc6052878710300eea87520345ca7e9143f
This commit is contained in:
parent
a56e9dd1aa
commit
9cf1352230
34
mfbt/STYLE
34
mfbt/STYLE
@ -42,6 +42,23 @@ A corollary: don't mix declaration types by declaring a T and a T* (or a T**,
|
|||||||
|
|
||||||
T* foo, bar; // BAD
|
T* foo, bar; // BAD
|
||||||
|
|
||||||
|
== Expressions ==
|
||||||
|
|
||||||
|
Ternary expressions (a ? b : c) should use only one line if sufficiently short.
|
||||||
|
Longer ternary expressions should use multiple lines. The condition,
|
||||||
|
consequent, and alternative should each be on separate lines (each part
|
||||||
|
overflowing to additional lines as necessary), and the ? and : should be aligned
|
||||||
|
with the start of the condition:
|
||||||
|
|
||||||
|
size_t
|
||||||
|
BinaryTree::height()
|
||||||
|
{
|
||||||
|
return isLeaf()
|
||||||
|
? 0
|
||||||
|
: 1 + std::max(left()->height(),
|
||||||
|
right()->height());
|
||||||
|
}
|
||||||
|
|
||||||
== Bracing ==
|
== Bracing ==
|
||||||
|
|
||||||
Don't brace single statements.
|
Don't brace single statements.
|
||||||
@ -347,3 +364,20 @@ interprets that argument.
|
|||||||
DefineProperty(JSObject* obj, const char* name, Value v, Enumerability e);
|
DefineProperty(JSObject* obj, const char* name, Value v, Enumerability e);
|
||||||
|
|
||||||
Use NULL for the null pointer constant.
|
Use NULL for the null pointer constant.
|
||||||
|
|
||||||
|
If a consequent in an if-statement ends with a return, don't specify an else.
|
||||||
|
The else would be redundant with the return, and not using it avoids excess
|
||||||
|
indentation. If you feel the if-else alternation is important as a way to
|
||||||
|
think about the choice being made, consider a ternary expression instead.
|
||||||
|
|
||||||
|
// BAD
|
||||||
|
if (f())
|
||||||
|
return 2;
|
||||||
|
else
|
||||||
|
return 5;
|
||||||
|
// GOOD
|
||||||
|
if (f())
|
||||||
|
return 2;
|
||||||
|
return 5;
|
||||||
|
// GOOD
|
||||||
|
return f() ? 2 : 5
|
||||||
|
Loading…
Reference in New Issue
Block a user