Sha256: 2168fd6c326bd590aa646488a7ef9b6e791bbdd9e74a828dfe7b17fcdf63a53d

Contents?: true

Size: 638 Bytes

Versions: 11

Compression:

Stored size: 638 Bytes

Contents

module V8
  class Error < StandardError
    attr_reader :value
    def initialize(message, value)
      super(message)
      @value = value
    end
  end
  const_set :JSError, Error

  def self.Error(exception)
    value = exception.to_ruby
    if !exception.kind_of?(V8::C::Value)
      raise V8::Error.new(exception.to_s, value)
    elsif exception.IsNativeError()
      if football = exception.GetHiddenValue("rr::Football")
        raise football.Value()
      else
        raise V8::Error.new(exception.Get("message").to_ruby, value)
      end
    else
      raise V8::Error.new(exception.ToString().to_ruby, value)
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
therubyracer-0.11.0beta6-x86-linux lib/v8/error.rb
therubyracer-0.11.0beta6-x86_64-linux lib/v8/error.rb
therubyracer-0.11.0beta6 lib/v8/error.rb
therubyracer-0.11.0beta5-x86-linux lib/v8/error.rb
therubyracer-0.11.0beta5 lib/v8/error.rb
therubyracer-0.11.0beta5-x86_64-linux lib/v8/error.rb
therubyracer-0.11.0beta4 lib/v8/error.rb
therubyracer-0.11.0beta3 lib/v8/error.rb
therubyracer-0.11.0beta2-x86_64-linux lib/v8/error.rb
therubyracer-0.11.0beta2 lib/v8/error.rb
therubyracer-0.11.0beta1 lib/v8/error.rb