Spec-Zone.ru › Homebrew

Класс: RuboCop::Cop::Cask::StanzaOrder Приватный

Наследуется от:
Base
  • Object
  • Base
  • RuboCop::Cop::Cask::StanzaOrder
показать все
Расширяется:
AutoCorrector
Подключает:
IgnoredNode, CaskHelp
Определён в:
rubocops/cask/stanza_order.rb

Обзор

Этот класс является частью приватного API. Этот класс можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого класса, поскольку он может быть удалён или изменён без предупреждения.

Эта проверка контролирует правильный порядок директив cask, в том числе вложенных в блоки on_*.

См. также:

  • https://docs.brew.sh/Cask-Cookbook#stanza-order

Краткое описание констант свернуть

MESSAGE =

Эта константа является частью приватного API. Эту константу можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этой константы, поскольку она может быть удалена или изменена без предупреждения.

"`%<stanza>s` stanza out of order"

Краткое описание методов экземпляра свернуть

  • #on_cask_stanza_block(stanza_block) ⇒ void приватный
  • #on_new_investigation ⇒ void приватный

Методы, включённые из CaskHelp

#cask_tap, #inner_stanzas, #on_block, #on_cask, #on_system_methods

Подробное описание методов экземпляра

#on_cask_stanza_block(stanza_block) ⇒ void

Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.

Этот метод возвращает неопределённое значение.

Параметры:

  • stanza_block (RuboCop::Cask::AST::StanzaBlock)


19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'rubocops/cask/stanza_order.rb', line 19

def on_cask_stanza_block(stanza_block)
  stanzas = stanza_block.stanzas
  ordered_stanzas = sort_stanzas(stanzas)

  return if stanzas == ordered_stanzas

  stanzas.zip(ordered_stanzas).each do |stanza_before, stanza_after|
    next if stanza_before == stanza_after

    add_offense(
      stanza_before.method_node,
      message: format(MESSAGE, stanza: stanza_before.stanza_name),
    ) do |corrector|
      next if part_of_ignored_node?(stanza_before.method_node)
      raise "unexpected nil value for stanza_after" unless stanza_after

      corrector.replace(
        stanza_before.source_range_with_comments,
        stanza_after.source_with_comments,
      )

      # Ignore node so that nested content is not auto-corrected and clobbered.
      ignore_node(stanza_before.method_node)
    end
  end
end

#on_new_investigation ⇒ void

Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.

Этот метод возвращает неопределённое значение.



47
48
49
50
51
# File 'rubocops/cask/stanza_order.rb', line 47

def on_new_investigation
  super

  ignored_nodes.clear
end

© 2009–present Homebrew contributors
Licensed under the BSD 2-Clause License.
https://docs.brew.sh/rubydoc/RuboCop/Cop/Cask/StanzaOrder.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API