Skip to content

no-unused-vars

Detects unused variables, imports and functions.

This rule will warn you about:

  • Unused local variables or parameters.
  • Unused named imports.
  • Unused private state variables.
  • Unused private functions.

This rule will not warn you about:

  • Unused public, external or internal functions.
  • Unused public or internal state variables.
  • Unused global imports.
  • Unused named return parameters.

Examples of incorrect code for this rule:

import { UnusedNamedImport } from "./Unused.sol";
contract Example {
uint private unusedPrivateStateVar;
function unusedPrivateFunction(uint unusedParam) private {
uint unusedLocalVar;
}
}

Examples of correct code for this rule:

import "./UnusedGlobalImport.sol";
contract Example {
uint public unusedPublicStateVar;
function unusedPublicFunction() public view returns (uint unusedReturnParam) {
return 1;
}
}

This rule can receive an object option with an ignorePattern string field, which is a regular expression that matches identifiers to ignore.

For example, to ignore all identifiers that start with an underscore, you can do:

"no-unused-vars": [
"error",
{
"ignorePattern": "^_"
}
]