Browse Source

general: Move deleted copy/move constructor/assignment operators to public interface

This allows for better compiler errors, where the compiler will state a
copy or move couldn't occur due to the relevant function being deleted.

Previously a compiler would warn about the relevant function not being
accessible (which, while true, isn't as informative as it could be).
nce_cpp
Lioncash 4 years ago
parent
commit
2c2e08df02
  1. 1
      src/core/hid/emulated_console.h
  2. 2
      src/core/hid/emulated_controller.h
  3. 1
      src/core/hid/hid_core.h
  4. 7
      src/core/hle/kernel/k_auto_object.h
  5. 4
      src/core/hle/kernel/k_auto_object_container.h
  6. 3
      src/core/hle/kernel/k_handle_table.h
  7. 2
      src/core/hle/service/vi/display/vi_display.h

1
src/core/hid/emulated_console.h

@ -10,6 +10,7 @@
#include <mutex>
#include <unordered_map>
#include "common/common_funcs.h"
#include "common/common_types.h"
#include "common/input.h"
#include "common/param_package.h"

2
src/core/hid/emulated_controller.h

@ -13,8 +13,6 @@
#include "common/common_types.h"
#include "common/input.h"
#include "common/param_package.h"
#include "common/point.h"
#include "common/quaternion.h"
#include "common/settings.h"
#include "common/vector_math.h"
#include "core/hid/hid_types.h"

1
src/core/hid/hid_core.h

@ -6,6 +6,7 @@
#include <memory>
#include "common/common_funcs.h"
#include "core/hid/hid_types.h"
namespace Core::HID {

7
src/core/hle/kernel/k_auto_object.h

@ -20,8 +20,6 @@ class KernelCore;
class KProcess;
#define KERNEL_AUTOOBJECT_TRAITS(CLASS, BASE_CLASS) \
YUZU_NON_COPYABLE(CLASS); \
YUZU_NON_MOVEABLE(CLASS); \
\
private: \
friend class ::Kernel::KClassTokenGenerator; \
@ -32,6 +30,9 @@ private:
} \
\
public: \
YUZU_NON_COPYABLE(CLASS); \
YUZU_NON_MOVEABLE(CLASS); \
\
using BaseClass = BASE_CLASS; \
static constexpr TypeObj GetStaticTypeObj() { \
constexpr ClassTokenType Token = ClassToken(); \
@ -224,9 +225,9 @@ private:
template <typename T>
class KScopedAutoObject {
public:
YUZU_NON_COPYABLE(KScopedAutoObject);
public:
constexpr KScopedAutoObject() = default;
constexpr KScopedAutoObject(T* o) : m_obj(o) {

4
src/core/hle/kernel/k_auto_object_container.h

@ -16,13 +16,12 @@ class KernelCore;
class KProcess;
class KAutoObjectWithListContainer {
public:
YUZU_NON_COPYABLE(KAutoObjectWithListContainer);
YUZU_NON_MOVEABLE(KAutoObjectWithListContainer);
public:
using ListType = boost::intrusive::rbtree<KAutoObjectWithList>;
public:
class ListAccessor : public KScopedLightLock {
public:
explicit ListAccessor(KAutoObjectWithListContainer* container)
@ -48,7 +47,6 @@ public:
friend class ListAccessor;
public:
KAutoObjectWithListContainer(KernelCore& kernel) : m_lock(kernel), m_object_list() {}
void Initialize() {}

3
src/core/hle/kernel/k_handle_table.h

@ -22,13 +22,12 @@ namespace Kernel {
class KernelCore;
class KHandleTable {
public:
YUZU_NON_COPYABLE(KHandleTable);
YUZU_NON_MOVEABLE(KHandleTable);
public:
static constexpr size_t MaxTableSize = 1024;
public:
explicit KHandleTable(KernelCore& kernel_);
~KHandleTable();

2
src/core/hle/service/vi/display/vi_display.h

@ -28,10 +28,10 @@ class Layer;
/// Represents a single display type
class Display {
public:
YUZU_NON_COPYABLE(Display);
YUZU_NON_MOVEABLE(Display);
public:
/// Constructs a display with a given unique ID and name.
///
/// @param id The unique ID for this display.

Loading…
Cancel
Save