Lines Matching refs:val
81 // Copy val into the hash table, returning a pointer to the copy now in the table.
83 T* set(T val) {
87 return this->uncheckedSet(std::move(val));
236 T* uncheckedSet(T&& val) {
237 const K& key = Traits::GetKey(val);
245 s.emplace(std::move(val), hash);
252 s.emplace(std::move(val), hash);
334 val.storage = that.val.storage;
341 new (&val.storage) T(that.val.storage);
357 val.storage = std::move(that.val.storage);
364 new (&val.storage) T(std::move(that.val.storage));
373 T& operator*() & { return val.storage; }
374 const T& operator*() const& { return val.storage; }
375 T&& operator*() && { return std::move(val.storage); }
376 const T&& operator*() const&& { return std::move(val.storage); }
380 new (&val.storage) T(std::move(v));
391 val.storage.~T();
403 } val;
427 // Set key to val in the table, replacing any previous value with the same key.
428 // We copy both key and val, and return a pointer to the value copy now in the table.
429 V* set(K key, V val) {
430 Pair* out = fTable.set({std::move(key), std::move(val)});
444 if (V* val = this->find(key)) {
445 return *val;