1 // 2 // detail/noncopyable.hpp 3 // ~~~~~~~~~~~~~~~~~~~~~~ 4 // 5 // Copyright (c) 2003-2015 Christopher M. Kohlhoff (chris at kohlhoff dot com) 6 // 7 // Distributed under the Boost Software License, Version 1.0. (See accompanying 8 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 9 // 10 11 #ifndef ASIO_DETAIL_NONCOPYABLE_HPP 12 #define ASIO_DETAIL_NONCOPYABLE_HPP 13 14 #if defined(_MSC_VER) && (_MSC_VER >= 1200) 15 # pragma once 16 #endif // defined(_MSC_VER) && (_MSC_VER >= 1200) 17 18 #include "asio/detail/config.hpp" 19 20 #include "asio/detail/push_options.hpp" 21 22 namespace clmdep_asio { 23 namespace detail { 24 25 class noncopyable 26 { 27 protected: noncopyable()28 noncopyable() {} ~noncopyable()29 ~noncopyable() {} 30 private: 31 noncopyable(const noncopyable&); 32 const noncopyable& operator=(const noncopyable&); 33 }; 34 35 } // namespace detail 36 37 using clmdep_asio::detail::noncopyable; 38 39 } // namespace clmdep_asio 40 41 #include "asio/detail/pop_options.hpp" 42 43 #endif // ASIO_DETAIL_NONCOPYABLE_HPP 44