DescriptorGuard<T> can produce a FifoDescriptor<T> that is guaranteed to remain valid as long as the DescriptorGuard is not dropped.
DescriptorGuard<T>
FifoDescriptor<T>