Class: RuboCop::Cop::Cask::StanzaGrouping
- Extended by:
- AutoCorrector, Forwardable
- Includes:
- RangeHelp, CaskHelp
- Defined in:
- rubocops/cask/stanza_grouping.rb
Overview
This cop checks that a cask’s stanzas are grouped correctly, including nested within on_*
blocks.
Constant Summary collapse
- MISSING_LINE_MSG =
"stanza groups should be separated by a single empty line"
- EXTRA_LINE_MSG =
"stanzas within the same group should have no lines between them"
Instance Method Summary collapse
Methods included from CaskHelp
#find_end_line, #inner_stanzas, #on_block, #on_cask_stanza_block, #on_system_methods
Instance Method Details
#on_cask(cask_block) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'rubocops/cask/stanza_grouping.rb', line 20 def on_cask(cask_block) @cask_block = cask_block @line_ops = {} cask_stanzas = cask_block.toplevel_stanzas add_offenses(cask_stanzas) return if (on_blocks = on_system_methods(cask_stanzas)).none? on_blocks.map(&:method_node).select(&:block_type?).each do |on_block| stanzas = inner_stanzas(on_block, processed_source.comments) add_offenses(stanzas) end end |