@@ -257,15 +257,15 @@ struct HashMap(TKey, TValue, Traits = DefaultHashMapTraits!TKey, Allocator = IAl
257
257
return 0 ;
258
258
}
259
259
260
- auto byKey () { return bySlot.map! (e => e.key); }
261
- auto byKey () const { return bySlot.map! (e => e.key); }
262
- auto byValue () { return bySlot.map! (e => e.value); }
263
- auto byValue () const { return bySlot.map! (e => e.value); }
264
- auto byKeyValue () { import std.typecons : Tuple ; return bySlot.map! (e => Tuple ! (Key, " key" , Value, " value" )(e.key, e.value)); }
265
- auto byKeyValue () const { import std.typecons : Tuple ; return bySlot.map! (e => Tuple ! (const (Key), " key" , const (Value), " value" )(e.key, e.value)); }
266
-
267
- private auto bySlot () { return m_table[].filter! (e => ! Traits.equals(e.key, Traits.clearValue)); }
268
- private auto bySlot () const { return m_table[].filter! (e => ! Traits.equals(e.key, Traits.clearValue)); }
260
+ auto byKey () { return bySlot.map! (( ref e) => e.key); }
261
+ auto byKey () const { return bySlot.map! (( ref e) => e.key); }
262
+ auto byValue () { return bySlot.map! (ref ( ref e) => e.value); }
263
+ auto byValue () const { return bySlot.map! (ref ( ref e) => e.value); }
264
+ auto byKeyValue () { import std.typecons : Tuple ; return bySlot.map! (( ref e) => Tuple ! (Key, " key" , Value, " value" )(e.key, e.value)); }
265
+ auto byKeyValue () const { import std.typecons : Tuple ; return bySlot.map! (( ref e) => Tuple ! (const (Key), " key" , const (Value), " value" )(e.key, e.value)); }
266
+
267
+ private auto bySlot () { return m_table[].filter! (( ref e) => ! Traits.equals(e.key, Traits.clearValue)); }
268
+ private auto bySlot () const { return m_table[].filter! (( ref e) => ! Traits.equals(e.key, Traits.clearValue)); }
269
269
270
270
private @property AllocatorInstanceType allocator()
271
271
{
0 commit comments