Module: Continuum
- Defined in:
- lib/active_support/vendor/memcache-client-1.6.5/memcache.rb
Defined Under Namespace
Classes: Entry
Constant Summary collapse
- POINTS_PER_SERVER =
this is the default in libmemcached
160
Class Method Summary collapse
-
.binary_search(ary, value, &block) ⇒ Object
Find the closest index in Continuum with value <= the given value.
Class Method Details
.binary_search(ary, value, &block) ⇒ Object
Find the closest index in Continuum with value <= the given value
902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 |
# File 'lib/active_support/vendor/memcache-client-1.6.5/memcache.rb', line 902 def self.binary_search(ary, value, &block) upper = ary.size - 1 lower = 0 idx = 0 while(lower <= upper) do idx = (lower + upper) / 2 comp = ary[idx].value <=> value if comp == 0 return idx elsif comp > 0 upper = idx - 1 else lower = idx + 1 end end return upper end |