polybar/include/utils/mixins.hpp

34 lines
638 B
C++

#pragma once
#include "common.hpp"
POLYBAR_NS
/**
* Base class for non copyable objects
*/
class non_copyable_mixin {
public:
non_copyable_mixin(const non_copyable_mixin&) = delete;
non_copyable_mixin& operator=(const non_copyable_mixin&) = delete;
protected:
non_copyable_mixin() = default;
~non_copyable_mixin() = default;
};
/**
* Base class for non movable objects
*/
class non_movable_mixin {
public:
non_movable_mixin(non_movable_mixin&&) = delete;
non_movable_mixin& operator=(non_movable_mixin&&) = delete;
protected:
non_movable_mixin() = default;
~non_movable_mixin() = default;
};
POLYBAR_NS_END