Exception: H8::JsError

Inherits:
Error show all
Defined in:
lib/h8/errors.rb,
ext/h8/main.cpp

Overview

The general error caused by the script execution, e.g. uncaught javascript exceptinos and like. Check #message to see the cause.

Direct Known Subclasses

NestedError, TimeoutError

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#javascript_errorObject (readonly)

Javascript Error object. May be nil



13
14
15
# File 'lib/h8/errors.rb', line 13

def javascript_error
  @javascript_error
end

#origin_columnObject (readonly)

Javascript Error object. May be nil



13
14
15
# File 'lib/h8/errors.rb', line 13

def origin_column
  @origin_column
end

#origin_lineObject (readonly)

Javascript Error object. May be nil



13
14
15
# File 'lib/h8/errors.rb', line 13

def origin_line
  @origin_line
end

#origin_nameObject (readonly)

Javascript Error object. May be nil



13
14
15
# File 'lib/h8/errors.rb', line 13

def origin_name
  @origin_name
end

Instance Method Details

#javascript_backtraceObject

String that represents stack trace if any as multiline string (n separated)



21
22
23
24
25
26
27
28
29
30
31
# File 'lib/h8/errors.rb', line 21

def javascript_backtrace
  if @javascript_error
    s = @javascript_error.stack
    if s !~ /at\s+.*\d+/
      s += "\n\tat #{@origin_name}:#{@origin_line}:#{@origin_column}\n"
    end
    s
  else
    @message
  end
end

#messageObject



37
38
39
# File 'lib/h8/errors.rb', line 37

def message
  to_s
end

#nameObject

Error name



16
17
18
# File 'lib/h8/errors.rb', line 16

def name
  @javascript_error.name ? @javascript_error.name : @message
end

#to_sObject



33
34
35
# File 'lib/h8/errors.rb', line 33

def to_s
  javascript_backtrace
end