Class: Toys::Utils::Exec::Result
- Inherits:
-
Object
- Object
- Toys::Utils::Exec::Result
- Defined in:
- core-docs/toys/utils/exec.rb
Overview
Defined in the toys-core gem
The result returned from a subcommand execution. This includes the identifying name of the execution (if any), the result status of the execution, and any captured stream output.
Possible result statuses are:
- The process failed to start. #failed? will return true, and #exception will return an exception describing the failure (often an errno).
- The process executed and exited with a normal exit code. Either #success? or #error? will return true, and #exit_code will return the numeric exit code.
- The process executed but was terminated by an uncaught signal. #signaled? will return true, and #signal_code will return the numeric signal code.
Instance Attribute Summary collapse
-
#captured_err ⇒ String?
readonly
The captured error string.
-
#captured_out ⇒ String?
readonly
The captured output string.
-
#exception ⇒ Exception?
readonly
The exception raised if a process couldn't be started.
-
#name ⇒ Object
readonly
The subcommand's name.
-
#status ⇒ Process::Status?
readonly
The Ruby process status object, providing various information about the ending state of the process.
Instance Method Summary collapse
-
#error? ⇒ Boolean
Returns true if the subprocess terminated with a nonzero status, or false if the process failed to start, terminated due to a signal, or returned a zero status.
-
#exit_code ⇒ Integer?
The numeric status code for a process that exited normally,.
-
#failed? ⇒ Boolean
Returns true if the subprocess failed to start, or false if the process was able to execute.
-
#signal_code ⇒ Integer?
(also: #term_signal)
The numeric signal code that caused process termination.
-
#signaled? ⇒ Boolean
Returns true if the subprocess terminated due to an unhandled signal, or false if the process failed to start or exited normally.
-
#success? ⇒ Boolean
Returns true if the subprocess terminated with a zero status, or false if the process failed to start, terminated due to a signal, or returned a nonzero status.
Instance Attribute Details
#captured_err ⇒ String? (readonly)
The captured error string.
621 622 623 |
# File 'core-docs/toys/utils/exec.rb', line 621 def captured_err @captured_err end |
#captured_out ⇒ String? (readonly)
The captured output string.
613 614 615 |
# File 'core-docs/toys/utils/exec.rb', line 613 def captured_out @captured_out end |
#exception ⇒ Exception? (readonly)
The exception raised if a process couldn't be started.
Exactly one of #exception and #status will be non-nil. Exactly one of #exception, #exit_code, or #signal_code will be non-nil.
645 646 647 |
# File 'core-docs/toys/utils/exec.rb', line 645 def exception @exception end |
#name ⇒ Object (readonly)
The subcommand's name.
605 606 607 |
# File 'core-docs/toys/utils/exec.rb', line 605 def name @name end |
#status ⇒ Process::Status? (readonly)
The Ruby process status object, providing various information about the ending state of the process.
Exactly one of #exception and #status will be non-nil.
633 634 635 |
# File 'core-docs/toys/utils/exec.rb', line 633 def status @status end |
Instance Method Details
#error? ⇒ Boolean
Returns true if the subprocess terminated with a nonzero status, or false if the process failed to start, terminated due to a signal, or returned a zero status.
715 716 717 |
# File 'core-docs/toys/utils/exec.rb', line 715 def error? # Source available in the toys-core gem end |
#exit_code ⇒ Integer?
The numeric status code for a process that exited normally,
Exactly one of #exception, #exit_code, or #signal_code will be non-nil.
658 659 660 |
# File 'core-docs/toys/utils/exec.rb', line 658 def exit_code # Source available in the toys-core gem end |
#failed? ⇒ Boolean
Returns true if the subprocess failed to start, or false if the process was able to execute.
683 684 685 |
# File 'core-docs/toys/utils/exec.rb', line 683 def failed? # Source available in the toys-core gem end |
#signal_code ⇒ Integer? Also known as: term_signal
The numeric signal code that caused process termination.
Exactly one of #exception, #exit_code, or #signal_code will be non-nil.
672 673 674 |
# File 'core-docs/toys/utils/exec.rb', line 672 def signal_code # Source available in the toys-core gem end |
#signaled? ⇒ Boolean
Returns true if the subprocess terminated due to an unhandled signal, or false if the process failed to start or exited normally.
693 694 695 |
# File 'core-docs/toys/utils/exec.rb', line 693 def signaled? # Source available in the toys-core gem end |
#success? ⇒ Boolean
Returns true if the subprocess terminated with a zero status, or false if the process failed to start, terminated due to a signal, or returned a nonzero status.
704 705 706 |
# File 'core-docs/toys/utils/exec.rb', line 704 def success? # Source available in the toys-core gem end |