LLVM: llvm::iterator_facade_base< DerivedT, IteratorCategoryT, T, DifferenceTypeT, PointerT, ReferenceT >::PointerProxy Class Reference (original) (raw)

A proxy object for computing a pointer via indirecting a copy of a reference. More...

template<typename DerivedT, typename IteratorCategoryT, typename T, typename DifferenceTypeT = std::ptrdiff_t, typename PointerT = T *, typename ReferenceT = T &>
class llvm::iterator_facade_base< DerivedT, IteratorCategoryT, T, DifferenceTypeT, PointerT, ReferenceT >::PointerProxy

A proxy object for computing a pointer via indirecting a copy of a reference.

This is used in APIs which need to produce a pointer but for which the reference might be a temporary. The proxy preserves the reference internally and exposes the pointer via a arrow operator.

Definition at line 116 of file iterator.h.