12 #ifndef ZYPP_AUTODISPOSE_H
13 #define ZYPP_AUTODISPOSE_H
16 #include <boost/call_traits.hpp>
95 typedef typename boost::call_traits<_Tp>::param_type
param_type;
96 typedef typename boost::call_traits<_Tp>::reference
reference;
99 typedef typename boost::call_traits<_Tp>::value_type
result_type;
103 typedef function<void ( param_type )>
Dispose;
130 {
return _pimpl->_value; }
134 {
return _pimpl->_value; }
138 {
return _pimpl->_value; }
142 {
return &
_pimpl->_value; }
155 {
return _pimpl->_dispose; }
159 {
_pimpl->_dispose = dispose_r; }
167 {
_pimpl->_dispose.swap( dispose_r ); }
194 inline std::ostream & operator<<( std::ostream & str, const AutoDispose<_Tp> & obj )
195 {
return str << obj.value(); }
200 #endif // ZYPP_AUTODISPOSE_H