EVOLUTION-MANAGER
Edit File: aligned_delete.hpp
/* Copyright 2014-2015 Glen Joseph Fernandes (glenjofe@gmail.com) Distributed under the Boost Software License, Version 1.0. (http://www.boost.org/LICENSE_1_0.txt) */ #ifndef BOOST_ALIGN_ALIGNED_DELETE_HPP #define BOOST_ALIGN_ALIGNED_DELETE_HPP #include <boost/align/aligned_alloc.hpp> #include <boost/align/aligned_delete_forward.hpp> namespace boost { namespace alignment { struct aligned_delete { template<class T> void operator()(T* ptr) const BOOST_NOEXCEPT_IF(BOOST_NOEXCEPT_EXPR(ptr->~T())) { if (ptr) { ptr->~T(); boost::alignment::aligned_free(ptr); } } }; } /* alignment */ } /* boost */ #endif