Class: Sentry::StacktraceInterface::Frame
- Defined in:
- lib/sentry/interfaces/stacktrace.rb
Overview
Not actually an interface, but I want to use the same style
Instance Attribute Summary collapse
-
#abs_path ⇒ Object
Returns the value of attribute abs_path.
-
#context_line ⇒ Object
Returns the value of attribute context_line.
-
#function ⇒ Object
Returns the value of attribute function.
-
#in_app ⇒ Object
Returns the value of attribute in_app.
-
#lineno ⇒ Object
Returns the value of attribute lineno.
-
#module ⇒ Object
Returns the value of attribute module.
-
#post_context ⇒ Object
Returns the value of attribute post_context.
-
#pre_context ⇒ Object
Returns the value of attribute pre_context.
-
#vars ⇒ Object
Returns the value of attribute vars.
Instance Method Summary collapse
- #filename ⇒ Object
-
#initialize(project_root) ⇒ Frame
constructor
A new instance of Frame.
- #to_hash(*args) ⇒ Object
Methods inherited from Interface
Constructor Details
#initialize(project_root) ⇒ Frame
Returns a new instance of Frame.
16 17 18 |
# File 'lib/sentry/interfaces/stacktrace.rb', line 16 def initialize(project_root) @project_root = project_root end |
Instance Attribute Details
#abs_path ⇒ Object
Returns the value of attribute abs_path.
13 14 15 |
# File 'lib/sentry/interfaces/stacktrace.rb', line 13 def abs_path @abs_path end |
#context_line ⇒ Object
Returns the value of attribute context_line.
13 14 15 |
# File 'lib/sentry/interfaces/stacktrace.rb', line 13 def context_line @context_line end |
#function ⇒ Object
Returns the value of attribute function.
13 14 15 |
# File 'lib/sentry/interfaces/stacktrace.rb', line 13 def function @function end |
#in_app ⇒ Object
Returns the value of attribute in_app.
13 14 15 |
# File 'lib/sentry/interfaces/stacktrace.rb', line 13 def in_app @in_app end |
#lineno ⇒ Object
Returns the value of attribute lineno.
13 14 15 |
# File 'lib/sentry/interfaces/stacktrace.rb', line 13 def lineno @lineno end |
#module ⇒ Object
Returns the value of attribute module.
13 14 15 |
# File 'lib/sentry/interfaces/stacktrace.rb', line 13 def module @module end |
#post_context ⇒ Object
Returns the value of attribute post_context.
13 14 15 |
# File 'lib/sentry/interfaces/stacktrace.rb', line 13 def post_context @post_context end |
#pre_context ⇒ Object
Returns the value of attribute pre_context.
13 14 15 |
# File 'lib/sentry/interfaces/stacktrace.rb', line 13 def pre_context @pre_context end |
#vars ⇒ Object
Returns the value of attribute vars.
13 14 15 |
# File 'lib/sentry/interfaces/stacktrace.rb', line 13 def vars @vars end |
Instance Method Details
#filename ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/sentry/interfaces/stacktrace.rb', line 20 def filename return if abs_path.nil? return @filename if instance_variable_defined?(:@filename) prefix = if under_project_root? && in_app @project_root elsif under_project_root? longest_load_path || @project_root else longest_load_path end @filename = prefix ? abs_path[prefix.to_s.chomp(File::SEPARATOR).length + 1..-1] : abs_path end |
#to_hash(*args) ⇒ Object
36 37 38 39 40 41 42 43 44 |
# File 'lib/sentry/interfaces/stacktrace.rb', line 36 def to_hash(*args) data = super(*args) data[:filename] = filename data.delete(:vars) unless vars && !vars.empty? data.delete(:pre_context) unless pre_context && !pre_context.empty? data.delete(:post_context) unless post_context && !post_context.empty? data.delete(:context_line) unless context_line && !context_line.empty? data end |