Class: Object
- Inherits:
- BasicObject
- Defined in:
- lib/pretty_debug.rb,
lib/pretty_debug.rb
Overview
Terminal formatting
Instance Method Summary collapse
- #_? ⇒ Boolean
- #case?(*kases) ⇒ Boolean
- #expect(s) ⇒ Object
- #follow(m) ⇒ Object
- #forwardtrace(sym) ⇒ Object
- #intercept(&pr) ⇒ Object
Instance Method Details
#_? ⇒ Boolean
87 |
# File 'lib/pretty_debug.rb', line 87 def _?; tap{Test.testee.push(self)} end |
#case?(*kases) ⇒ Boolean
26 |
# File 'lib/pretty_debug.rb', line 26 def case? *kases; kases.any?{|kase| kase === self} end |
#expect(s) ⇒ Object
25 |
# File 'lib/pretty_debug.rb', line 25 def expect s; raise ArgumentError.new("Expecting `#{s.inspect}`: #{inspect}") end |
#follow(m) ⇒ Object
84 85 86 |
# File 'lib/pretty_debug.rb', line 84 def follow m; tap{puts "Next step: #{method(m).source_location .chain{|a| a ? a.join(":") : "Unknown #{self}.#{m}"} }"} end |
#forwardtrace(sym) ⇒ Object
81 82 83 |
# File 'lib/pretty_debug.rb', line 81 def forwardtrace sym tap{puts "#{inspect}##{sym} defined at:", method(sym).source_location.join(":").indent} end |
#intercept(&pr) ⇒ Object
78 79 80 |
# File 'lib/pretty_debug.rb', line 78 def intercept &pr tap{|x| puts "[Debug] #{caller[2][/.*?:\d+/]}:".color(:yellow); pr ? pr.call(x) : p(x)} end |