Class: Thread::Backtrace::PseudoLocation

Inherits:
Object
  • Object
show all
Defined in:
lib/pretty_debug.rb

Constant Summary collapse

Pattern =
/\A(?'f'[^:]+)(?::(?'l'\d+))?(?::in `(?'m'.+)'|(?'m'.+))?\z/m

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(to_s) ⇒ PseudoLocation

Returns a new instance of PseudoLocation.



67
68
69
70
71
72
73
# File 'lib/pretty_debug.rb', line 67

def initialize to_s
  @to_s = to_s
  m = @to_s.match(Pattern)
  @absolute_path, @lineno, @label = m[:f], m[:l] ? m[:l].to_i : nil, m[:m].to_s
  @path = File.basename(@absolute_path)
  @base_label = @label
end

Instance Attribute Details

#absolute_pathObject

Returns the value of attribute absolute_path.



66
67
68
# File 'lib/pretty_debug.rb', line 66

def absolute_path
  @absolute_path
end

#base_labelObject

Returns the value of attribute base_label.



66
67
68
# File 'lib/pretty_debug.rb', line 66

def base_label
  @base_label
end

#labelObject

Returns the value of attribute label.



66
67
68
# File 'lib/pretty_debug.rb', line 66

def label
  @label
end

#linenoObject

Returns the value of attribute lineno.



66
67
68
# File 'lib/pretty_debug.rb', line 66

def lineno
  @lineno
end

#pathObject

Returns the value of attribute path.



66
67
68
# File 'lib/pretty_debug.rb', line 66

def path
  @path
end

#to_sObject

Returns the value of attribute to_s.



66
67
68
# File 'lib/pretty_debug.rb', line 66

def to_s
  @to_s
end

Instance Method Details

#basenameObject



75
# File 'lib/pretty_debug.rb', line 75

def basename; File.basename(absolute_path) end

#dirnameObject



74
# File 'lib/pretty_debug.rb', line 74

def dirname; File.dirname(absolute_path) end

#realbasenameObject



78
# File 'lib/pretty_debug.rb', line 78

def realbasename; File.basename(realpath) end

#realdirnameObject



77
# File 'lib/pretty_debug.rb', line 77

def realdirname; File.dirname(realpath) end

#realpathObject



76
# File 'lib/pretty_debug.rb', line 76

def realpath; absolute_path == "-e" ? absolute_path : File.realpath(absolute_path) end