#pragma once namespace alpaqa::util { /// Deleter for `std::unique_ptr` that just destructs the object, without /// deallocating. template struct noop_delete { constexpr noop_delete() noexcept = default; template constexpr noop_delete(const noop_delete &) noexcept {} constexpr void operator()(T *t) const noexcept { t->~T(); } }; } // namespace alpaqa::util