Method: Packet::TimerStore#bin_search_for_key

Defined in:
lib/packet/timer_store.rb

#bin_search_for_key(lower_index, upper_index, key) ⇒ Object



40
41
42
43
44
45
46
47
48
49
50
# File 'lib/packet/timer_store.rb', line 40

def bin_search_for_key(lower_index,upper_index,key)
  return upper_index if(upper_index - lower_index <= 1)
  pivot = (lower_index + upper_index)/2
  if @order[pivot] == key
    return pivot
  elsif @order[pivot] < key
    bin_search_for_key(pivot,upper_index,key)
  else
    bin_search_for_key(lower_index,pivot,key)
  end
end