coffeelint-newline-after-function
Version:
Validate a newline policy after function definitiions
28 lines (18 loc) • 770 B
text/coffeescript
module.exports = class NewlinesAfterFunction
rule:
name: 'newline_after_function'
value : 1
level : 'error'
message : 'Wrong count of newlines between a function and other code'
description: "Checks the number of newlines between a function definition and other
code"
lintLine: (line, lineApi) ->
line_spacing = lineApi.config[@rule.name].value
return null if not line_spacing or lineApi.isLastLine()
{ lineNumber, context } = lineApi
if lineApi.lineHasToken("->") or lineApi.lineHasToken("=>")
for i in [1..line_spacing]
nextLine = lineNumber + i
if lineApi.lineHasToken(null, nextLine)
return { context: "Expected #{line_spacing} got #{nextLine - lineNumber - 1}" }
return null