Module unnecessary_function_arguments

A rule to detect unnecessary function arguments.

Behaviours: hank_rule.

Description

A rule to detect unnecessary function arguments.

The rule emits a warning for each function argument that is consistently ignored in all function clauses.

To avoid this warning, remove the unused argument(s).

Note

This rule will not emit a warning if the function implements a NIF call (assuming that the stub function calls erlang:nif_error/1,2) or if it's a behaviour callback. In particular, the rule will not emit a warning for any exported function in modules that implement non-OTP behaviors or OTP behaviors that have dynamic callbacks, like gen_statem or ct_suite. It will also not emit a warning if the function is "known" even if not in a behaviour, like parse_transform/2.

Function Index

ignored/2Rule ignore specifications.

Function Details

ignored/2

ignored(Pattern::hank_rule:ignore_pattern(), FuncName::term()) -> boolean()

Rule ignore specifications. Example:

       -hank([{unnecessary_function_arguments,
                %% You can give a list of multiple specs or a single one
                [%% Will ignore any unused argument from ignore_me/2 within the module
                 {ignore_me, 2},
                 %% Will ignore the 2nd argument from ignore_me_too/3 within the module
                 {ignore_me_too, 3, 2},
                 %% Will ignore any unused argument from any ignore_me_again/x
                 %% within the module (no matter the function arity)
                 ignore_me_again]}]).
       


Generated by EDoc