Класс: SystemCommand::Result Закрытый
- Наследует:
- Object
- Object
- SystemCommand::Result
- Подключает:
- Context, Utils::Output::Mixin
- Определён в:
- system_command.rb
Обзор
Этот класс является частью закрытого API. Этот класс можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого класса, поскольку он может быть удалён или изменён без предупреждения.
Результат, содержащий вывод и статус завершения завершившегося подпроцесса.
Краткое описание атрибутов экземпляра свернуть
- #command ⇒ Array<String> закрытый
- #exit_status ⇒ Integer? закрытый
- #status ⇒ Process::Status закрытый
Краткое описание методов экземпляра свернуть
- #assert_success! ⇒ void закрытый
- #initialize(command, output, status, secrets:) ⇒ void конструктор закрытый
- #merged_output ⇒ String закрытый
- #plist ⇒ T.untyped закрытый
- #stderr ⇒ String закрытый
- #stdout ⇒ String закрытый
- #success? ⇒ Boolean закрытый
- #to_ary ⇒ Array<(String, String, Process::Status)> (также: #to_a) закрытый
Методы, подключённые из Utils::Output::Mixin
#issue_reporting_message, #odebug, #odeprecated, #odie, #odisabled, #ofail, #oh1, #oh1_title, #ohai, #ohai_title, #onoe, #opoo, #opoo_outside_github_actions, #opoo_without_github_actions_annotation, #pretty_deprecated, #pretty_disabled, #pretty_duration, #pretty_install_status, #pretty_installed, #pretty_uninstalled, #pretty_upgradable, #pretty_warning
Методы, подключённые из Context
current, current=, #debug?, #quiet?, #verbose?, #with_context
Подробное описание конструкторов
#initialize(command, output, status, secrets:) ⇒ void
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
501 502 503 504 505 506 507 | # File 'system_command.rb', line 501 def initialize(command, output, status, secrets:) @command = command @output = output @status = status @exit_status = T.let(status.exitstatus, T.nilable(Integer)) @secrets = secrets end |
Подробное описание атрибутов экземпляра
#command ⇒ Array<String>
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
485 486 487 | # File 'system_command.rb', line 485 def command @command end |
#exit_status ⇒ Integer?
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
491 492 493 | # File 'system_command.rb', line 491 def exit_status @exit_status end |
#status ⇒ Process::Status
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
488 489 490 | # File 'system_command.rb', line 488 def status @status end |
Подробное описание методов экземпляра
#assert_success! ⇒ void
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
Этот метод возвращает неопределённое значение.
510 511 512 513 514 | # File 'system_command.rb', line 510 def assert_success! return if @status.success? raise ErrorDuringExecution.new(command, status: @status, output: @output, secrets: @secrets) end |
#merged_output ⇒ String
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
531 532 533 | # File 'system_command.rb', line 531 def merged_output @merged_output ||= T.let(@output.map { |_, line| line }.join, T.nilable(String)) end |
#plist ⇒ T.untyped
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 | # File 'system_command.rb', line 549 def plist require "plist" @plist ||= T.let(begin output = stdout output = output.sub(/\A(.*?)(\s*<\?\s*xml)/m) do warn_plist_garbage(T.must(Regexp.last_match(1))) Regexp.last_match(2) end output = output.sub(%r{(<\s*/\s*plist\s*>\s*)(.*?)\Z}m) do warn_plist_garbage(T.must(Regexp.last_match(2))) Regexp.last_match(1) end Plist.parse_xml(output, marshal: false) end, T.untyped) end |
#stderr ⇒ String
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
524 525 526 527 528 | # File 'system_command.rb', line 524 def stderr @stderr ||= T.let(@output.select { |type,| type == :stderr } .map { |_, line| line } .join, T.nilable(String)) end |
#stdout ⇒ String
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
517 518 519 520 521 | # File 'system_command.rb', line 517 def stdout @stdout ||= T.let(@output.select { |type,| type == :stdout } .map { |_, line| line } .join, T.nilable(String)) end |
#success? ⇒ Boolean
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
536 537 538 539 540 | # File 'system_command.rb', line 536 def success? return false if @exit_status.nil? @exit_status.zero? end |
#to_ary ⇒ Array<(String, String, Process::Status)> Также называется: to_a
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
543 544 545 | # File 'system_command.rb', line 543 def to_ary [stdout, stderr, status] end |
© 2009–present Homebrew contributors
Licensed under the BSD 2-Clause License.
https://docs.brew.sh/rubydoc/SystemCommand/Result.html