Класс: RuboCop::Cop::Cask::InstallSteps Private
- Наследует:
- Base
- Object
- Base
- RuboCop::Cop::Cask::InstallSteps
- Расширен с помощью:
- AutoCorrector
- Включает в себя:
- CaskHelp, InstallStepsHelper
- Определен в:
- rubocops/cask/install_steps.rb
Обзор
Этот класс является частью приватного API. Этот класс может использоваться только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого класса, так как он может быть удален или изменен без предварительного уведомления.
Этот коп проверяет использование декларативных шагов установки (install steps).
Краткое описание констант свернуть
- INSTALL_STEP_PAIRS =
Эта константа является частью приватного API. Эта константа может использоваться только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этой константы, так как она может быть удалена или изменена без предварительного уведомления.
T.let( { preflight: :preflight_steps, postflight: :postflight_steps, uninstall_preflight: :uninstall_preflight_steps, uninstall_postflight: :uninstall_postflight_steps, }.freeze, T::Hash[Symbol, Symbol], )
Константы, включенные из InstallStepsHelper
InstallStepsHelper::ALLOWED_STEP_ARGUMENT_NODE_TYPES, InstallStepsHelper::ALLOWED_STEP_METHODS, InstallStepsHelper::CASK_ALLOWED_STEP_METHODS, InstallStepsHelper::CONFIG_WRITE_STEP_METHODS, InstallStepsHelper::FILE_PREPARATION_STEP_METHODS, InstallStepsHelper::REBUILD_ACTION_STEP_LINES, InstallStepsHelper::REBUILD_ACTION_STEP_METHODS, InstallStepsHelper::SIMPLE_STEP_CONVERSION_MSG, InstallStepsHelper::STEP_BLOCK_MSG
Краткое описание методов свернуть
- #on_cask(cask_block) ⇒ void private
Методы, включенные из InstallStepsHelper
#install_step_block_offense_node, #install_steps_block_source, #simple_install_step_lines, #step_block_msg
Методы, включенные из CaskHelp
#cask_tap, #inner_stanzas, #on_block, #on_cask_stanza_block, #on_system_methods
Подробное описание методов
#on_cask(cask_block) ⇒ void
Этот метод является частью приватного API. Этот метод может использоваться только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого метода, так как он может быть удален или изменен без предварительного уведомления.
Этот метод возвращает неопределенное значение.
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | # File 'rubocops/cask/install_steps.rb', line 26 def on_cask(cask_block) stanzas = cask_block.stanzas INSTALL_STEP_PAIRS.each do |flight_block, steps_block| next unless (flight_stanza = stanzas.find { |stanza| stanza.stanza_name == flight_block }) steps_stanza = stanzas.find { |stanza| stanza.stanza_name == steps_block } if steps_stanza add_offense(steps_stanza.source_range, message: "`#{flight_stanza.stanza_name}` and `#{steps_block}` cannot both be used.") else audit_flight_block(flight_stanza, steps_block) end end stanzas.each do |stanza| next unless INSTALL_STEP_PAIRS.value?(stanza.stanza_name) next unless stanza.method_node.block_type? next unless (offense_node = install_step_block_offense_node( T.cast(stanza.method_node, RuboCop::AST::BlockNode), allowed_methods: CASK_ALLOWED_STEP_METHODS, )) add_offense(offense_node, message: step_block_msg(CASK_ALLOWED_STEP_METHODS)) end end |
© 2009–present Homebrew contributors
Licensed under the BSD 2-Clause License.
https://docs.brew.sh/rubydoc/RuboCop/Cop/Cask/InstallSteps.html