RuboCop から長すぎると報告されたメソッドがあります。メソッドごとに 7 行しか許可されていません。問題のある方法は次のとおりです。
def on(definition, visit = false, &block)
if @active.is_a?(definition)
block.call @active if block
return @active
end
@active = definition.new
@active.load if visit
block.call @active if block
@active
end
トップ条件をガード句に変換するつもりでしif
たが、その方法がわかりません。
これに7行目と8行目を組み合わせてみました:
@active = definition.new().load if visit
しかし、それは間違いなく機能しません。
RuboCop 違反をアクティブのままにすることも、許容範囲を変更することもできません。