У меня очень большая кодовая база, которая использует сочетание вложенных и компактных стилей для определений классов.
RuboCop: ClassAndModuleChildren
# Nested
class Foo
class Bar
end
end
# Compact
class Foo::Bar
end
Я строю автоматизированный инструмент, который использует регулярные выражения для реорганизации пространств имен большого числа классов. Это легко сделать, когда определения классов представлены в компактном формате, но гораздо сложнее, когда они находятся во вложенном формате.
Поэтому мне нужен способ преобразовать все экземпляры вложенного стиля в компактный. style.
Я надеялся, что RuboCop сможет сделать это для меня, и хотя docs , похоже, предполагает, что он поддерживает автозамену, я не могу заставить его работать. RuboCop сообщает о нарушениях, но не исправляет их.
bundle exec rubocop --auto-correct app/controllers/announcements_controller.rb
Inspecting 1 file
C
Offenses:
app/controllers/announcements_controller.rb:1:8: C: Style/ClassAndModuleChildren: Use compact module/class definition instead of nested style.
module Vapid
^^^^^
app/controllers/announcements_controller.rb:2:10: C: Style/ClassAndModuleChildren: Use compact module/class definition instead of nested style.
module V2
^^
1 file inspected, 2 offenses detected
Буду признателен, если кто-то сможет выполнить эту работу или знает лучший способ автоматически принять компактный стиль.