Skip to main content

hash_key

Function hash_key 

pub fn hash_key(value: &impl Hash) -> u64
Expand description

Hash any hashable value into the u64 key space used by AccessNode::key.

This is the inverse-less half of the key contract: a widget hashes its element ids on the way out, and compares an incoming key path element back against hash_key(&id) on the way in (see Widget::perform_action). The hash is a plain FNV-1a with a fixed basis, so it is deterministic within and across processes — unlike std::collections::hash_map::RandomState, which would hand an assistive technology a different id every launch.