// (C) Copyright Beman Dawes 1999-2003. 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)
// Contributed by Dave Abrahams
// See http://www.boost.org/libs/utility for documentation.
#ifndef DLIB_BOOST_NONCOPYABLE_HPP_INCLUDED
#define DLIB_BOOST_NONCOPYABLE_HPP_INCLUDED
#ifndef BOOST_NONCOPYABLE_HPP_INCLUDED
#define BOOST_NONCOPYABLE_HPP_INCLUDED
namespace boost
{
namespace noncopyable_ // protection from unintended ADL
{
class noncopyable
{
/*!
This class makes it easier to declare a class as non-copyable.
If you want to make an object that can't be copied just inherit
from this object.
!*/
protected:
noncopyable() {}
~noncopyable() {}
private: // emphasize the following members are private
noncopyable( const noncopyable& );
const noncopyable& operator=( const noncopyable& );
};
}
typedef noncopyable_::noncopyable noncopyable;
} // namespace boost
#endif // BOOST_NONCOPYABLE_HPP_INCLUDED
namespace dlib
{
using boost::noncopyable;
}
#endif // DLIB_BOOST_NONCOPYABLE_HPP_INCLUDED