Feature #18332
open
Added by dorianmariefr (Dorian Marié) about 3 years ago.
Updated almost 3 years ago.
Description
It would be a shortcut for a ? b : nil
:
e.g.
"#{current_path == "/" ? "font-bold"}"
"#{user.admin? ? "text-red-600"}"
Doing a && b
returns false
which converted to a string gives "false"
.
When nil
converts to a string it gives ""
.
I would use it mostly in string interpolations.
puts "#{'font-bold' if true}"
# => font-bold
Thanks, I still think the root? ? "font-bold"
reads better than "font-bold" if root?
though
Well, obviously that's a matter of personal taste, but for a one-branch if
the postfix form seems to read naturally ("this item will have class "font-bold" if it is root).
So it might be that cond ? result
reads better for you because you invented it starting to think from cond ? result : else
(which, should we say, is quite esoteric on itself, we just got used to it)
"font-bold" if root?
reads much better than root? ? "font-bold"
.
??
is a character literal.
As omitting the :
and after makes the syntax value conflicting of course, I don't think this is acceptable.
Also available in: Atom
PDF
Like0
Like0Like0Like0Like0Like0Like0