add_new_rule |
Create a custom rule for internal use |
any_duplicated_linter |
Require usage of 'anyDuplicated(x) > 0' over 'any(duplicated(x))' |
any_is_na_linter |
Require usage of 'anyNA(x)' over 'any(is.na(x))' |
class_equals_linter |
Block comparison of class with '==' |
condition_message_linter |
Block usage of 'paste()' and 'paste0()' with messaging functions using '...' |
double_assignment_linter |
double_assignment |
duplicate_argument_linter |
Duplicate argument linter |
empty_assignment_linter |
empty_assignment |
equals_na_linter |
Equality check with NA linter |
equal_assignment_linter |
equal_assignment |
expect_comparison_linter |
Require usage of 'expect_gt(x, y)' over 'expect_true(x > y)' (and similar) |
expect_identical_linter |
Require usage of 'expect_identical(x, y)' where appropriate |
expect_length_linter |
Require usage of 'expect_length(x, n)' over 'expect_equal(length(x), n)' |
expect_named_linter |
Require usage of 'expect_named(x, n)' over 'expect_equal(names(x), n)' |
expect_not_linter |
Require usage of 'expect_false(x)' over 'expect_true(!x)' |
expect_null_linter |
Require usage of 'expect_null' for checking 'NULL' |
expect_true_false_linter |
Require usage of 'expect_true(x)' over 'expect_equal(x, TRUE)' |
expect_type_linter |
Require usage of 'expect_type(x, type)' over 'expect_equal(typeof(x), type)' |
export_new_rule |
Create a custom rule for external use |
fix |
Automatically replace lints |
fix_dir |
Automatically replace lints |
fix_package |
Automatically replace lints |
fix_text |
Automatically replace lints |
for_loop_index_linter |
Block usage of for loops directly overwriting the indexing variable |
function_return_linter |
Lint common mistakes/style issues cropping up from return statements |
implicit_assignment_linter |
implicit_assignment |
is_numeric_linter |
Redirect 'is.numeric(x) || is.integer(x)' to just use 'is.numeric(x)' |
lengths_linter |
Require usage of 'lengths()' where possible |
length_levels_linter |
Require usage of nlevels over length(levels(.)) |
length_test_linter |
Check for a common mistake where length is applied in the wrong place |
library_call_linter |
Library call linter |
lint |
List all lints in a file or a directory |
lint_dir |
List all lints in a file or a directory |
lint_package |
List all lints in a file or a directory |
lint_text |
List all lints in a file or a directory |
list_comparison_linter |
Block usage of comparison operators with known-list() functions like lapply |
list_linters |
Get the list of linters in 'flir' |
literal_coercion_linter |
Require usage of correctly-typed literals over literal coercions |
matrix_apply_linter |
Require usage of 'colSums(x)' or 'rowSums(x)' over 'apply(x, ., sum)' |
missing_argument_linter |
Missing argument linter |
nested_ifelse_linter |
Block usage of nested 'ifelse()' calls |
numeric_leading_zero_linter |
Require usage of a leading zero in all fractional numerics |
outer_negation_linter |
Require usage of '!any(x)' over 'all(!x)', '!all(x)' over 'any(!x)' |
package_hooks_linter |
Package hooks linter |
paste_linter |
Raise lints for several common poor usages of 'paste()' |
redundant_equals_linter |
Block usage of '==', '!=' on logical vectors |
redundant_ifelse_linter |
Prevent 'ifelse()' from being used to produce 'TRUE'/'FALSE' or '1'/'0' |
rep_len_linter |
Require usage of rep_len(x, n) over rep(x, length.out = n) |
right_assignment_linter |
right_assignment |
sample_int_linter |
Require usage of sample.int(n, m, ...) over sample(1:n, m, ...) |
seq_linter |
Sequence linter |
setup_flir |
Setup flir |
setup_flir_gha |
Create a Github Actions workflow for 'flir' |
sort_linter |
Check for common mistakes around sorting vectors |
stopifnot_all_linter |
Block usage of all() within stopifnot() |
todo_comment_linter |
TODO comment linter |
T_and_F_symbol_linter |
'T' and 'F' symbol linter |
undesirable_function_linter |
Undesirable function linter |
undesirable_operator_linter |
Undesirable operator linter |
unnecessary_nesting_linter |
Block instances of unnecessary nesting |
which_grepl_linter |
Require usage of grep over which(grepl(.)) |