Spec-Zone.ru › Homebrew

Класс: RuboCop::Cask::AST::StanzaBlock Закрытый

Наследуется от:
Object
  • Object
  • RuboCop::Cask::AST::StanzaBlock
показать все
Расширен модулем:
T::Helpers
Определён в:
rubocops/cask/ast/cask_block.rb

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

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

CaskBlock

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

  • #block_node ⇒ RuboCop::AST::BlockNode только для чтения закрытый
  • #comments ⇒ Array<Parser::Source::Comment> только для чтения закрытый

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

  • #initialize(block_node, comments) ⇒ void конструктор закрытый
  • #stanzas ⇒ Array<Stanza> закрытый

Подробное описание конструкторов

#initialize(block_node, comments) ⇒ void

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

Параметры:

  • block_node (RuboCop::AST::BlockNode)
  • comments (Array<Parser::Source::Comment>)


19
20
21
22
# File 'rubocops/cask/ast/cask_block.rb', line 19

def initialize(block_node, comments)
  @block_node = block_node
  @comments = comments
end

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

#block_node ⇒ RuboCop::AST::BlockNode (только для чтения)

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

Возвращает:

  • (RuboCop::AST::BlockNode)


13
14
15
# File 'rubocops/cask/ast/cask_block.rb', line 13

def block_node
  @block_node
end

#comments ⇒ Array<Parser::Source::Comment> (только для чтения)

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

Возвращает:

  • (Array<Parser::Source::Comment>)


16
17
18
# File 'rubocops/cask/ast/cask_block.rb', line 16

def comments
  @comments
end

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

#stanzas ⇒ Array<Stanza>

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

Возвращает:

  • (Array<Stanza>)


25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# File 'rubocops/cask/ast/cask_block.rb', line 25

def stanzas
  return [] unless (block_body = block_node.block_body)

  # If a block only contains one stanza, it is that stanza's direct parent, otherwise
  # stanzas are grouped in a nested block and the block is that nested block's parent.
  is_stanza = if block_body.begin_block?
    ->(node) { node.parent.parent == block_node }
  else
    ->(node) { node.parent == block_node }
  end

  @stanzas ||= T.let(
    block_body.each_node
              .select(&:stanza?)
              .select(&is_stanza)
              .map { |node| Stanza.new(node, comments) },
    T.nilable(T::Array[Stanza]),
  )
end

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

Spec-Zone.ru

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