Sha256: 11dfc61478a75873ba6081e5d171d938becaa8f2192b727d17678f312d35d4bf

Contents?: true

Size: 414 Bytes

Versions: 2

Compression:

Stored size: 414 Bytes

Contents

require 'captivus/backtrace/line'

module Captivus
  class Backtrace
    def initialize(exception)
      unless exception.respond_to?(:backtrace)
        raise ArgumentError, "#{exception} must respond to `backtrace`"
      end
      @exception = exception
    end

    def as_json(*)
      Array(exception.backtrace).map { |line| Line.new(line).as_json }
    end

    private

    attr_reader :exception
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
captivus-0.0.6 lib/captivus/backtrace.rb
captivus-0.0.5 lib/captivus/backtrace.rb