redundant_equals_linter {lintr} | R Documentation |
Block usage of ==
, !=
on logical vectors
Description
Testing x == TRUE
is redundant if x
is a logical vector. Wherever this is
used to improve readability, the solution should instead be to improve the
naming of the object to better indicate that its contents are logical. This
can be done using prefixes (is, has, can, etc.). For example, is_child
,
has_parent_supervision
, can_watch_horror_movie
clarify their logical
nature, while child
, parent_supervision
, watch_horror_movie
don't.
Usage
redundant_equals_linter()
Tags
best_practices, common_mistakes, efficiency, readability
See Also
-
linters for a complete list of linters available in lintr.
Examples
# will produce lints
lint(
text = "if (any(x == TRUE)) 1",
linters = redundant_equals_linter()
)
lint(
text = "if (any(x != FALSE)) 0",
linters = redundant_equals_linter()
)
# okay
lint(
text = "if (any(x)) 1",
linters = redundant_equals_linter()
)
lint(
text = "if (!all(x)) 0",
linters = redundant_equals_linter()
)
[Package lintr version 3.1.2 Index]