Sha256: d43ccf481f8b09aca65bf8994ed0700730888dc057d1ff09db3b7b296f8133d9
Contents?: true
Size: 1.06 KB
Versions: 2
Compression:
Stored size: 1.06 KB
Contents
# frozen_string_literal: true module Lite module Command module Internals module Faults def self.included(base) base.class_eval { attr_reader :fault_exception, :original_exception } end def caused_by return if success? @caused_by || self end def caused_fault? caused_by == self end def thrown_by return if success? @thrown_by || self end def threw_fault? thrown_by == self end def thrown? fault? && !caused_fault? end def raise!(original: false) exception = (fault_exception unless original) || original_exception return if exception.nil? raise(exception) end private def throw!(command) return if command.success? send(:"#{command.status}!", command) end def raise_dynamic_faults? Lite::Command.configuration.raise_dynamic_faults end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
lite-command-3.1.3 | lib/lite/command/internals/faults.rb |
lite-command-3.1.2 | lib/lite/command/internals/faults.rb |