Sha256: e34af0690b6fa234b32993a25ea34a2a866e7e9092a460d0d4ddc771256463a4
Contents?: true
Size: 1.45 KB
Versions: 43
Compression:
Stored size: 1.45 KB
Contents
/** * @fileoverview Rule to check for properties whose identifier ends with the string Sync * @author Matt DuVall<http://mattduvall.com/> */ /* jshint node:true */ "use strict"; //------------------------------------------------------------------------------ // Rule Definition //------------------------------------------------------------------------------ module.exports = { meta: { docs: { description: "disallow synchronous methods", category: "Node.js and CommonJS", recommended: false, url: "https://eslint.org/docs/rules/no-sync" }, schema: [ { type: "object", properties: { allowAtRootLevel: { type: "boolean" } }, additionalProperties: false } ] }, create(context) { const selector = context.options[0] && context.options[0].allowAtRootLevel ? ":function MemberExpression[property.name=/.*Sync$/]" : "MemberExpression[property.name=/.*Sync$/]"; return { [selector](node) { context.report({ node, message: "Unexpected sync method: '{{propertyName}}'.", data: { propertyName: node.property.name } }); } }; } };
Version data entries
43 entries across 43 versions & 1 rubygems