Redundant boolean literals should be removed from expressions to improve readability.

== Noncompliant Code Example

----
if condition == true  { /* ... */ } // Noncompliant
if condition != false { /* ... */ } // Noncompliant
if condition && true  { /* ... */ } // Noncompliant
if condition || false { /* ... */ } // Noncompliant
doSomething(!false)                 // Noncompliant
doSomething(condition == true)      // Noncompliant

v = condition ? true  : false   // Noncompliant
v = condition ? true  : exp     // Noncompliant
v = condition ? false : exp     // Noncompliant
v = condition ? exp   : true    // Noncompliant
v = condition ? exp   : false   // Noncompliant
----

== Compliant Solution

----
if condition { /* ... */ }
if condition { /* ... */ }
if condition { /* ... */ }
if condition { /* ... */ }
doSomething(true)
doSomething(condition)

v = condition
v = condition  || exp
v = !condition && exp
v = !condition || exp
v = condition  && exp
----

== Exceptions

Expression statements are ignored.

----
expect(value) == true // ignored
----

ifdef::env-github,rspecator-view[]
'''
== Comments And Links
(visible only on this page)

include::../comments-and-links.adoc[]
endif::env-github,rspecator-view[]
