class Honeybadger::Breadcrumbs::RingBuffer

Attributes

buffer[R]

Public Class Methods

new(buffer_size = 40) click to toggle source
# File lib/honeybadger/breadcrumbs/ring_buffer.rb, line 11
def initialize(buffer_size = 40)
  @buffer_size = buffer_size
  clear!
end

Public Instance Methods

add!(item) click to toggle source
# File lib/honeybadger/breadcrumbs/ring_buffer.rb, line 16
def add!(item)
  @buffer << item
  @ct += 1
  @buffer.shift(1) if @ct > @buffer_size
end
clear!() click to toggle source
# File lib/honeybadger/breadcrumbs/ring_buffer.rb, line 22
def clear!
  @buffer = []
  @ct = 0
end
drop() click to toggle source
# File lib/honeybadger/breadcrumbs/ring_buffer.rb, line 39
def drop
  @buffer.pop
end
each(&blk) click to toggle source
# File lib/honeybadger/breadcrumbs/ring_buffer.rb, line 31
def each(&blk)
  @buffer.each(&blk)
end
previous() click to toggle source
# File lib/honeybadger/breadcrumbs/ring_buffer.rb, line 35
def previous
  @buffer.last
end
to_a() click to toggle source
# File lib/honeybadger/breadcrumbs/ring_buffer.rb, line 27
def to_a
  @buffer
end