Method: SolidCache::MaglevHash#initialize

Defined in:
lib/solid_cache/maglev_hash.rb

#initialize(nodes) ⇒ MaglevHash

Returns a new instance of MaglevHash.

Raises:

  • (ArgumentError)


12
13
14
15
16
17
18
# File 'lib/solid_cache/maglev_hash.rb', line 12

def initialize(nodes)
  raise ArgumentError, "No nodes specified" if nodes.count == 0
  raise ArgumentError, "Maximum node count is #{TABLE_SIZE}" if nodes.count > TABLE_SIZE

  @nodes = nodes.uniq.sort
  @lookup = build_lookup
end