class
Ameba::Rule::Lint::ComparisonToBoolean
- Ameba::Rule::Lint::ComparisonToBoolean
- Ameba::Rule::Base
- Reference
- Object
Overview
A rule that disallows comparison to booleans.
For example, these are considered invalid:
foo == true
bar != false
false === baz
This is because these expressions evaluate to true or false, so you
could get the same result by using either the variable directly,
or negating the variable.
YAML configuration example:
Lint/ComparisonToBoolean:
Enabled: true
Included Modules
- YAML::Serializable
- YAML::Serializable::Strict
Defined in:
ameba/rule/lint/comparison_to_boolean.crConstant Summary
-
MSG =
"Comparison to a boolean is pointless" -
OP_NAMES =
["==", "!=", "==="] of ::String
Constructors
- .new(ctx : YAML::ParseContext, node : YAML::Nodes::Node)
-
.new(config = nil)
A rule that disallows comparison to booleans.
- .new(*, __context_for_yaml_serializable ctx : YAML::ParseContext, __node_for_yaml_serializable node : YAML::Nodes::Node)
Instance Method Summary
- #description : String
- #description=(description : String)
- #enabled : Bool
- #enabled=(enabled : Bool)
- #excluded : Array(String) | Nil
- #excluded=(excluded : Array(String) | Nil)
- #severity : Ameba::Severity
- #severity=(severity : Ameba::Severity)
- #test(source, node : Crystal::Call)
Instance methods inherited from class Ameba::Rule::Base
==(other)
==,
catch(source : Source)
catch,
excluded?(source)
excluded?,
group
group,
hash
hash,
name
name,
special?
special?,
test(source : Source, node : Crystal::ASTNode, *opts)test(source : Source) test
Class methods inherited from class Ameba::Rule::Base
parsed_doc
parsed_doc
Macros inherited from class Ameba::Rule::Base
issue_for(*args)
issue_for
Macros inherited from module Ameba::Config::RuleConfig
properties(&block)
properties
Constructor Detail
def self.new(config = nil)
#
A rule that disallows comparison to booleans.
For example, these are considered invalid:
foo == true
bar != false
false === baz
This is because these expressions evaluate to true or false, so you
could get the same result by using either the variable directly,
or negating the variable.
YAML configuration example:
Lint/ComparisonToBoolean:
Enabled: true
def self.new(*, __context_for_yaml_serializable ctx : YAML::ParseContext, __node_for_yaml_serializable node : YAML::Nodes::Node)
#