Method: Hyperll::HyperLogLog#offer_hashed

Defined in:
lib/hyperll/hyper_log_log.rb

#offer_hashed(value) ⇒ Object



39
40
41
42
43
# File 'lib/hyperll/hyper_log_log.rb', line 39

def offer_hashed(value)
  j = value >> (INT_SIZE - @log2m)
  r = number_of_leading_zeros(((value << @log2m) & INT_HASH) | (1 << (@log2m - 1)) + 1) + 1
  @register_set.update_if_greater(j, r)
end