Exception: ChildProcessError Private

Inherits:
RuntimeError
  • Object
show all
Defined in:
exceptions.rb

Overview

This class is part of a private API. This class may only be used in the Homebrew/brew repository. Third parties should avoid using this class if possible, as it may be removed or changed without warning.

Raised when a child process sends us an exception over its error pipe.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(inner) ⇒ ChildProcessError

This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.

Returns a new instance of ChildProcessError.



759
760
761
762
763
764
765
766
767
768
769
770
# File 'exceptions.rb', line 759

def initialize(inner)
  @inner = inner
  @inner_class = Object.const_get inner["json_class"]

  super <<~EOS
    An exception occurred within a child process:
      #{inner_class}: #{inner["m"]}
  EOS

  # Clobber our real (but irrelevant) backtrace with that of the inner exception.
  set_backtrace inner["b"]
end

Instance Attribute Details

#innerObject (readonly)

This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.



757
758
759
# File 'exceptions.rb', line 757

def inner
  @inner
end

#inner_classObject (readonly)

This method is part of a private API. This method may only be used in the Homebrew/brew repository. Third parties should avoid using this method if possible, as it may be removed or changed without warning.



757
758
759
# File 'exceptions.rb', line 757

def inner_class
  @inner_class
end