Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Your guess about 'a is correct. 'a is here used to signify that the return value can only be safely used while the value table exists and is not being concurrently modified. This implies that the value is not copied on return, but only a reference into the table is returned.


I'm surprised that RawTable isn't parametrized on the type of hash function. Something like this (possibly wrong way to express it, but you get the idea)

    fn search_entry_hashed<'a, K: Eq, V, H: SafeHash>(table: &'a mut RawTable<K,V,H>, hash: H, k: K)
        -> Entry<'a, K, V>


RawTable doesn't have to be because the hash function has already been computed at that point. The actual hash table is.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: