class Binstream::Tracker
Public Class Methods
new()
click to toggle source
# File lib/binstream/tracker.rb, line 6 def initialize @tracking_buffer = [] @enabled = false end
Public Instance Methods
buffer()
click to toggle source
# File lib/binstream/tracker.rb, line 11 def buffer @tracking_buffer end
clear()
click to toggle source
# File lib/binstream/tracker.rb, line 23 def clear @tracking_buffer.clear end
enabled=(bool)
click to toggle source
# File lib/binstream/tracker.rb, line 15 def enabled=(bool) @enabled = !!bool end
enabled?()
click to toggle source
# File lib/binstream/tracker.rb, line 19 def enabled? @enabled end
print_debug_buffer(options={})
click to toggle source
# File lib/binstream/tracker.rb, line 43 def print_debug_buffer(options={}) return unless enabled? STDERR.puts "" STDERR.puts "DEBUG BUFFER:" debug_str = @tracking_buffer.map do |item| if item.nil? "\\x00" elsif item == :newline "\n\n" elsif item == :break "\n\t" else item.inspect end end.join(", ") STDERR.puts debug_str STDERR.puts "" end
track(message = nil) { || ... }
click to toggle source
# File lib/binstream/tracker.rb, line 27 def track(message = nil, &block) value = if message.nil? && block_given? yield else message end if enabled? @tracking_buffer << value end return value end