Since you don't need the object and the list node at the same time, you can reduce memory usage and improve cache locality by using a union of std.TailQueue(void).Node and Object, instead of a std.TailQueue(Object).Node which always stores redundant information.
Since you don't need the object and the list node at the same time, you can reduce memory usage and improve cache locality by using a union of
std.TailQueue(void).Node
andObject
, instead of astd.TailQueue(Object).Node
which always stores redundant information.I know, i've done this in #12586 to provide this functionality to the std lib