T& data() { return m_data.data(); }
void swap(value_initialized & arg) { m_data.swap(arg.m_data); }
void swap ( initialized<T> & lhs, initialized<T> & rhs ) { lhs.swap(rhs) ; }
T const & data() const { return m_data.data(); }
initialized(initialized const & arg) { new (wrapper_address()) wrapper( static_cast<wrapper const &>(*(arg.wrapper_address()))); }
void swap(initialized & arg) { ::boost::swap( this->data(), arg.data() ); }
BOOST_GPU_ENABLED void swap(value_initialized & arg) { m_data.swap(arg.m_data); }
BOOST_GPU_ENABLED T& data() { return m_data.data(); }
BOOST_GPU_ENABLED T const & data() const { return m_data.data(); }
BOOST_GPU_ENABLED void swap ( initialized<T> & lhs, initialized<T> & rhs ) { lhs.swap(rhs) ; }
BOOST_GPU_ENABLED void swap(initialized & arg) { ::boost::swap( this->data(), arg.data() ); }