eslint-scope transformer

This commit is contained in:
sanex3339
2020-01-15 22:15:38 +03:00
parent c3b0b4f369
commit ff6b3013a6
16 changed files with 24338 additions and 264 deletions
+51 -1
View File
@@ -123,6 +123,53 @@ export class NodeGuards {
return node.type === NodeType.ExportNamedDeclaration;
}
/**
* @param {Identifier} identifierNode
* @param {Node} parentNode
* @returns {identifierNode is Identifier}
*/
public static isExportNamedClassDeclarationIdentifierNode (
identifierNode: ESTree.Identifier,
parentNode: ESTree.Node
): identifierNode is ESTree.Identifier {
return NodeGuards.isClassDeclarationNode(parentNode)
&& parentNode.id === identifierNode
&& !!parentNode.parentNode
&& NodeGuards.isExportNamedDeclarationNode(parentNode.parentNode);
}
/**
* @param {Identifier} identifierNode
* @param {Node} parentNode
* @returns {identifierNode is Identifier}
*/
public static isExportNamedFunctionDeclarationIdentifierNode (
identifierNode: ESTree.Identifier,
parentNode: ESTree.Node
): identifierNode is ESTree.Identifier {
return NodeGuards.isFunctionDeclarationNode(parentNode)
&& parentNode.id === identifierNode
&& !!parentNode.parentNode
&& NodeGuards.isExportNamedDeclarationNode(parentNode.parentNode);
}
/**
* @param {Identifier} identifierNode
* @param {Node} parentNode
* @returns {identifierNode is Identifier}
*/
public static isExportNamedVariableDeclarationIdentifierNode (
identifierNode: ESTree.Identifier,
parentNode: ESTree.Node
): identifierNode is ESTree.Identifier {
return NodeGuards.isVariableDeclaratorNode(parentNode)
&& parentNode.id === identifierNode
&& !!parentNode.parentNode
&& NodeGuards.isVariableDeclarationNode(parentNode.parentNode)
&& !!parentNode.parentNode.parentNode
&& NodeGuards.isExportNamedDeclarationNode(parentNode.parentNode.parentNode);
}
/**
* @param {Node} node
* @returns {boolean}
@@ -404,7 +451,10 @@ export class NodeGuards {
&& !NodeGuards.parentNodeIsPropertyNode(node, parentNode)
&& !NodeGuards.parentNodeIsMemberExpressionNode(node, parentNode)
&& !NodeGuards.parentNodeIsMethodDefinitionNode(node, parentNode)
&& !NodeGuards.isLabelIdentifierNode(node, parentNode);
&& !NodeGuards.isLabelIdentifierNode(node, parentNode)
&& !NodeGuards.isExportNamedClassDeclarationIdentifierNode(node, parentNode)
&& !NodeGuards.isExportNamedFunctionDeclarationIdentifierNode(node, parentNode)
&& !NodeGuards.isExportNamedVariableDeclarationIdentifierNode(node, parentNode);
}
/**