jsdoc/implements-on-classes Correctness ​
What it does ​
Reports an issue with any non-constructor function using @implements
.
Why is this bad? ​
Constructor functions should be whether marked with @class
, @constructs
, or being an ES6 class constructor.
Examples ​
Examples of incorrect code for this rule:
javascript
/**
* @implements {SomeClass}
*/
function quux() {}
Examples of correct code for this rule:
javascript
class Foo {
/**
* @implements {SomeClass}
*/
constructor() {}
}
/**
* @implements {SomeClass}
* @class
*/
function quux() {}
How to use ​
To enable this rule in the CLI or using the config file, you can use:
bash
oxlint --deny jsdoc/implements-on-classes --jsdoc-plugin
json
{
"plugins": ["jsdoc"],
"rules": {
"jsdoc/implements-on-classes": "error"
}
}