[ntcore] HandleMap: Use concepts for T

This commit is contained in:
Peter Johnson
2024-10-19 00:08:26 -07:00
parent 4a43ddbacf
commit 396f8203ac

View File

@@ -4,6 +4,7 @@
#pragma once
#include <concepts>
#include <memory>
#include <utility>
@@ -13,8 +14,13 @@
namespace nt {
template <typename T>
concept HandleType = requires {
{ T::kType } -> std::convertible_to<NT_Handle>;
};
// Utility wrapper class for our UidVectors
template <typename T, size_t Size>
template <HandleType T, size_t Size>
class HandleMap : public wpi::UidVector<std::unique_ptr<T>, Size> {
public:
template <typename... Args>