diff options
Diffstat (limited to 'node_modules/tslint/lib/rules/noEmptyInterfaceRule.js')
-rw-r--r-- | node_modules/tslint/lib/rules/noEmptyInterfaceRule.js | 27 |
1 files changed, 13 insertions, 14 deletions
diff --git a/node_modules/tslint/lib/rules/noEmptyInterfaceRule.js b/node_modules/tslint/lib/rules/noEmptyInterfaceRule.js index 8ba57b596..411026490 100644 --- a/node_modules/tslint/lib/rules/noEmptyInterfaceRule.js +++ b/node_modules/tslint/lib/rules/noEmptyInterfaceRule.js @@ -28,28 +28,27 @@ var Rule = (function (_super) { Rule.prototype.apply = function (sourceFile) { return this.applyWithFunction(sourceFile, walk); }; + /* tslint:disable:object-literal-sort-keys */ + Rule.metadata = { + ruleName: "no-empty-interface", + description: "Forbids empty interfaces.", + rationale: "An empty interface is equivalent to its supertype (or `{}`).", + optionsDescription: "Not configurable.", + options: null, + type: "typescript", + typescriptOnly: true, + }; + /* tslint:enable:object-literal-sort-keys */ + Rule.FAILURE_STRING = "An empty interface is equivalent to `{}`."; + Rule.FAILURE_STRING_FOR_EXTENDS = "An interface declaring no members is equivalent to its supertype."; return Rule; }(Lint.Rules.AbstractRule)); -/* tslint:disable:object-literal-sort-keys */ -Rule.metadata = { - ruleName: "no-empty-interface", - description: "Forbids empty interfaces.", - rationale: "An empty interface is equivalent to its supertype (or `{}`).", - optionsDescription: "Not configurable.", - options: null, - type: "typescript", - typescriptOnly: true, -}; -/* tslint:enable:object-literal-sort-keys */ -Rule.FAILURE_STRING = "An empty interface is equivalent to `{}`."; -Rule.FAILURE_STRING_FOR_EXTENDS = "An interface declaring no members is equivalent to its supertype."; exports.Rule = Rule; function walk(ctx) { return ts.forEachChild(ctx.sourceFile, function cb(node) { if (tsutils_1.isInterfaceDeclaration(node) && node.members.length === 0 && (node.heritageClauses === undefined || - node.heritageClauses[0].types === undefined || // allow interfaces that extend 2 or more interfaces node.heritageClauses[0].types.length < 2)) { return ctx.addFailureAtNode(node.name, node.heritageClauses !== undefined ? Rule.FAILURE_STRING_FOR_EXTENDS : Rule.FAILURE_STRING); |