43 lines
		
	
	
		
			1022 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1022 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| // Copyright David Abrahams 2002.
 | |
| // Distributed under the Boost Software License, Version 1.0. (See
 | |
| // accompanying file LICENSE_1_0.txt or copy at
 | |
| // http://www.boost.org/LICENSE_1_0.txt)
 | |
| #ifndef VOID_RETURN_DWA200274_HPP
 | |
| # define VOID_RETURN_DWA200274_HPP
 | |
| 
 | |
| # include <boost/config.hpp>
 | |
| 
 | |
| namespace boost { namespace python { namespace detail { 
 | |
| 
 | |
| struct void_return
 | |
| {
 | |
|     void_return() {}
 | |
|  private: 
 | |
|     void operator=(void_return const&);
 | |
| };
 | |
| 
 | |
| template <class T>
 | |
| struct returnable
 | |
| {
 | |
|     typedef T type;
 | |
| };
 | |
| 
 | |
| # ifdef BOOST_NO_VOID_RETURNS
 | |
| template <>
 | |
| struct returnable<void>
 | |
| {
 | |
|     typedef void_return type;
 | |
| };
 | |
| 
 | |
| #  ifndef BOOST_NO_CV_VOID_SPECIALIZATIONS
 | |
| template <> struct returnable<const void> : returnable<void> {};
 | |
| template <> struct returnable<volatile void> : returnable<void> {};
 | |
| template <> struct returnable<const volatile void> : returnable<void> {};
 | |
| #  endif
 | |
| 
 | |
| # endif // BOOST_NO_VOID_RETURNS
 | |
| 
 | |
| }}} // namespace boost::python::detail
 | |
| 
 | |
| #endif // VOID_RETURN_DWA200274_HPP
 | 
