Module: Kobako::StructuredError

Included in:
SandboxError, ServiceError
Defined in:
lib/kobako/errors.rb,
sig/kobako/errors.rbs

Overview

The structured attribution the two invocation-failure classes carry from a decoded guest exception — its origin, original klass, backtrace_lines, and details — so a Host App can inspect a failure beyond its message. Mixed into both rather than promoted to a shared superclass because SandboxError and ServiceError sit in distinct branches of the invocation-outcome taxonomy under Kobako::Error.

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#backtrace_linesArray[String]? (readonly)

Returns the value of attribute backtrace_lines.

Returns:

  • (Array[String], nil)


74
75
76
# File 'lib/kobako/errors.rb', line 74

def backtrace_lines
  @backtrace_lines
end

#detailsObject (readonly)

Returns the value of attribute details.

Returns:

  • (Object)


74
75
76
# File 'lib/kobako/errors.rb', line 74

def details
  @details
end

#klassString? (readonly)

Returns the value of attribute klass.

Returns:

  • (String, nil)


74
75
76
# File 'lib/kobako/errors.rb', line 74

def klass
  @klass
end

#originString? (readonly)

Returns the value of attribute origin.

Returns:

  • (String, nil)


74
75
76
# File 'lib/kobako/errors.rb', line 74

def origin
  @origin
end

Instance Method Details

#initialize(message, origin: nil, klass: nil, backtrace_lines: nil, details: nil) ⇒ Object



76
77
78
79
80
81
82
# File 'lib/kobako/errors.rb', line 76

def initialize(message, origin: nil, klass: nil, backtrace_lines: nil, details: nil)
  super(message)
  @origin = origin
  @klass = klass
  @backtrace_lines = backtrace_lines
  @details = details
end