// Copyright 2007-2013 David Robillard <d@drobilla.net>
// SPDX-License-Identifier: GPL-3.0-or-later

#ifndef RAUL_DELETABLE_HPP
#define RAUL_DELETABLE_HPP

namespace raul {

/**
   Something with a virtual destructor.

   @ingroup raul
*/
class Deletable
{
public:
  Deletable() = default;

  Deletable(const Deletable&)            = default;
  Deletable& operator=(const Deletable&) = default;
  Deletable(Deletable&&)                 = default;
  Deletable& operator=(Deletable&&)      = default;

  virtual ~Deletable() = default;
};

} // namespace raul

#endif // RAUL_DELETABLE_HPP