2023-01-30 02:36:25 -07:00
|
|
|
// Copyright 2023 Dolphin Emulator Project
|
|
|
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <algorithm>
|
|
|
|
|
2023-02-02 17:18:37 -07:00
|
|
|
namespace Common
|
|
|
|
{
|
2023-01-30 02:36:25 -07:00
|
|
|
// A useful template for passing string literals as arguments to templates
|
|
|
|
// from: https://ctrpeach.io/posts/cpp20-string-literal-template-parameters/
|
2023-01-30 21:29:16 -07:00
|
|
|
template <size_t N>
|
|
|
|
struct StringLiteral
|
|
|
|
{
|
|
|
|
consteval StringLiteral(const char (&str)[N]) { std::copy_n(str, N, value); }
|
2023-01-30 02:36:25 -07:00
|
|
|
|
|
|
|
char value[N];
|
|
|
|
};
|
2023-02-02 17:18:37 -07:00
|
|
|
|
|
|
|
} // namespace Common
|