我想阻止在代码库中使用:id => 'new-protocol'
。 rubocop中是否存在允许我指定关键字的linter?如果没有,如果我想完成它,我是否必须写一个自定义警察?
答案 0 :(得分:2)
我的同伴帮助了我。看起来我们需要写一个自定义警察。
module RuboCop
module Cop
module Hired
class Unscoped < Cop
MSG = "Avoid using `unscoped`."
def_node_matcher :unscoped?, <<-END
(send _ :unscoped)
END
def on_send(node)
return unless unscoped?(node)
add_offense(node, :expression, MSG % node.source)
end
end
end
end
end
将其放在一个文件夹中,例如说lib/cops/
,然后将其添加到.rubocop.yml
:
require:
- ./lib/cops/<whatever_you_called_the_file>.rb
请参阅http://www.rubydoc.info/github/bbatsov/RuboCop/RuboCop/NodePattern