| Server IP : 185.208.173.17 / Your IP : 87.236.161.98 Web Server : Microsoft-IIS/10.0 System : Windows NT SRV8576125506 10.0 build 26100 (Windows Server 2016) AMD64 User : IUSR ( 0) PHP Version : 7.4.13 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/inetpub/wwwroot/parsmega.nuxt/node_modules/eslint-ast-utils/lib/ |
Upload File : |
'use strict';
const getPropertyName = require('./get-property-name');
const prototypeMethods = ['then', 'catch'];
const knownNotMethods = ['promisify', 'promisifyAll', 'cancel', 'is'];
function containsThenOrCatch(node) {
return Boolean(node) &&
node.type === 'CallExpression' &&
node.callee.type === 'MemberExpression' &&
prototypeMethods.indexOf(getPropertyName(node.callee)) !== -1;
}
function isPromiseStaticMethod(node) {
return Boolean(node) &&
node.type === 'CallExpression' &&
node.callee.type === 'MemberExpression' &&
node.callee.object.type === 'Identifier' &&
node.callee.object.name === 'Promise' &&
knownNotMethods.indexOf(getPropertyName(node.callee)) === -1;
}
function isNewPromise(node) {
return Boolean(node) &&
node.type === 'NewExpression' &&
node.callee.type === 'Identifier' &&
node.callee.name === 'Promise';
}
function isPromise(node) {
return containsThenOrCatch(node) ||
isPromiseStaticMethod(node) ||
isNewPromise(node);
}
module.exports = isPromise;