To be not, or not to be not?

That is not the question

Code in question:

module AuthenticatedSystem
protected

Returns true or false if the user is logged in.

# Preloads @current_user with the user model if they're logged in.
def logged_in?
  !!current_user
end

Is !! as simple as it looks, or does it have meaning beyond a double
negative? Google doesn’t recognize !! in a search.

I see it as “Not (current_user == Nil)”

On Sep 22, 11:05 pm, Ruby F. [email protected] wrote:

Is !! as simple as it looks, or does it have meaning beyond a double
negative? Google doesn’t recognize !! in a search.

It’s as simple as it looks, which is up for debate. The point of the
double negative is to concisely turn any into a boolean. !! will
always result in either true or false.

See http://github.com/ymendel/truthy/tree/master/lib/truthy.rb (and
the spec at
http://github.com/ymendel/truthy/tree/master/spec/truthy_spec.rb
if you’re interested).

Ruby F. wrote:

I see it as “Not (current_user == Nil)”

In fact, it is “Not (current_user == Nil Or current_user == False)”