📄 no-explicit-any.ts¶
📊 Analysis Summary¶
| Metric | Count |
|---|---|
| 🔧 Functions | 106 |
| 📦 Imports | 4 |
| 📊 Variables & Constants | 1 |
| 📑 Type Aliases | 2 |
📚 Table of Contents¶
🛠️ File Location:¶
📂 packages/eslint-plugin/src/rules/no-explicit-any.ts
📦 Imports¶
| Name | Source |
|---|---|
TSESLint |
@typescript-eslint/utils |
TSESTree |
@typescript-eslint/utils |
AST_NODE_TYPES |
@typescript-eslint/utils |
createRule |
../util |
Variables & Constants¶
| Name | Type | Kind | Value | Exported |
|---|---|---|---|---|
fixOrSuggest |
`{ | |||
| fix: TSESLint.ReportFixFunction | null; | |||
| suggest: TSESLint.ReportSuggestionArray |
null; | |||
}| const |{ |
||||
| fix: null, | ||||
| suggest: isKeyofAny | ||||
| ? [ | ||||
| { | ||||
| messageId: 'suggestPropertyKey', | ||||
| fix: createPropertyKeyFixer(node), | ||||
| }, | ||||
| ] | ||||
| : [ | ||||
| { | ||||
| messageId: 'suggestUnknown', | ||||
| fix: fixer => fixer.replaceText(node, 'unknown'), | ||||
| }, | ||||
| { | ||||
| messageId: 'suggestNever', | ||||
| fix: fixer => fixer.replaceText(node, 'never'), | ||||
| }, | ||||
| ], | ||||
| }` | ✗ |
Functions¶
isNodeValidFunction(node: TSESTree.Node): boolean¶
Code
function isNodeValidFunction(node: TSESTree.Node): boolean {
return [
AST_NODE_TYPES.ArrowFunctionExpression, // const x = (...args: any[]) => {};
AST_NODE_TYPES.FunctionDeclaration, // function f(...args: any[]) {}
AST_NODE_TYPES.FunctionExpression, // const x = function(...args: any[]) {};
AST_NODE_TYPES.TSCallSignatureDeclaration, // type T = {(...args: any[]): unknown};
AST_NODE_TYPES.TSConstructorType, // type T = new (...args: any[]) => unknown
AST_NODE_TYPES.TSConstructSignatureDeclaration, // type T = {new (...args: any[]): unknown};
AST_NODE_TYPES.TSDeclareFunction, // declare function _8(...args: any[]): unknown;
AST_NODE_TYPES.TSEmptyBodyFunctionExpression, // declare class A { f(...args: any[]): unknown; }
AST_NODE_TYPES.TSFunctionType, // type T = (...args: any[]) => unknown;
AST_NODE_TYPES.TSMethodSignature, // type T = {f(...args: any[]): unknown};
].includes(node.type);
}
-
JSDoc:
-
Parameters:
node: TSESTree.Node- Return Type:
boolean - Calls:
[ AST_NODE_TYPES.ArrowFunctionExpression, // const x = (...args: any[]) => {}; AST_NODE_TYPES.FunctionDeclaration, // function f(...args: any[]) {} AST_NODE_TYPES.FunctionExpression, // const x = function(...args: any[]) {}; AST_NODE_TYPES.TSCallSignatureDeclaration, // type T = {(...args: any[]): unknown}; AST_NODE_TYPES.TSConstructorType, // type T = new (...args: any[]) => unknown AST_NODE_TYPES.TSConstructSignatureDeclaration, // type T = {new (...args: any[]): unknown}; AST_NODE_TYPES.TSDeclareFunction, // declare function _8(...args: any[]): unknown; AST_NODE_TYPES.TSEmptyBodyFunctionExpression, // declare class A { f(...args: any[]): unknown; } AST_NODE_TYPES.TSFunctionType, // type T = (...args: any[]) => unknown; AST_NODE_TYPES.TSMethodSignature, // type T = {f(...args: any[]): unknown}; ].includes
isNodeRestElementInFunction(node: TSESTree.Node): boolean¶
Code
-
JSDoc:
-
Parameters:
node: TSESTree.Node- Return Type:
boolean - Calls:
isNodeValidFunction
isNodeReadonlyTSTypeOperator(node: TSESTree.Node): boolean¶
Code
-
JSDoc:
-
Parameters:
node: TSESTree.Node- Return Type:
boolean
isNodeValidArrayTSTypeReference(node: TSESTree.Node): boolean¶
Code
-
JSDoc:
-
Parameters:
node: TSESTree.Node- Return Type:
boolean - Calls:
['Array', 'ReadonlyArray'].includes
isNodeValidTSType(node: TSESTree.Node): boolean¶
Code
-
JSDoc:
-
Parameters:
node: TSESTree.Node- Return Type:
boolean - Calls:
isNodeReadonlyTSTypeOperatorisNodeValidArrayTSTypeReference
isGreatGrandparentRestElement(node: TSESTree.Node): boolean¶
Code
-
JSDoc:
-
Parameters:
node: TSESTree.Node- Return Type:
boolean - Calls:
isNodeRestElementInFunction
isGreatGreatGrandparentRestElement(node: TSESTree.Node): boolean¶
Code
-
JSDoc:
-
Parameters:
node: TSESTree.Node- Return Type:
boolean - Calls:
isNodeValidTSTypeisNodeRestElementInFunction
isNodeDescendantOfRestElementInFunction(node: TSESTree.Node): boolean¶
Code
-
JSDoc:
-
Parameters:
node: TSESTree.Node- Return Type:
boolean - Calls:
isGreatGrandparentRestElementisGreatGreatGrandparentRestElement
isNodeWithinKeyofAny(node: TSESTree.TSAnyKeyword): boolean¶
Code
-
JSDoc:
-
Parameters:
node: TSESTree.TSAnyKeyword- Return Type:
boolean
createPropertyKeyFixer(node: TSESTree.TSAnyKeyword): (fixer: TSESLint.RuleFixer) => any¶
Code
-
JSDoc:
-
Parameters:
node: TSESTree.TSAnyKeyword- Return Type:
(fixer: TSESLint.RuleFixer) => any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText
fix(fixer: any): any¶
- Parameters:
fixer: any- Return Type:
any - Calls:
fixer.replaceText