Sha256: 672201aa05f47a20c2a1b1fac2d4f59ab34e6c36dfb63d5e3e00bb8d4210b9b6
Contents?: true
Size: 820 Bytes
Versions: 1
Compression:
Stored size: 820 Bytes
Contents
module Byebug module DAP # Methods to safely execute methods. # @api private module SafeHelpers # Safely execute `method` on `target` with `args`. # @param target the receiver # @param method [std:Symbol] the method name # @param args [std:Array] the method arguments # @yield called on error # @yieldparam ex [std:StandardError] the execution error def safe(target, method, *args, &block) if method.is_a?(Array) && args.empty? method.each { |m| target = target.__send__(m) } target else target.__send__(method, *args) end rescue StandardError => e log "\n! #{e.message} (#{e.class})", *e.backtrace if Debug.evaluate block.parameters.empty? ? yield : yield(e) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
byebug-dap-0.1.4 | lib/byebug/dap/helpers/safe_helpers.rb |