IceShard
1
A personal game engine project, with development focused on 2D/2.5D games.
Toggle main menu visibility
Loading...
Searching...
No Matches
utils
public
ice
params_types.hxx
Go to the documentation of this file.
1
3
4
#pragma once
5
#include <
ice/math.hxx
>
6
#include <
ice/mem_unique_ptr.hxx
>
7
#include <
ice/string.hxx
>
8
#include <
ice/span.hxx
>
9
#include <type_traits>
10
11
namespace
ice
12
{
13
14
struct
ParamsInternal;
15
struct
ParamInstanceBase
;
16
17
using
Params
=
ice::UniquePtr<ParamsInternal>
const
;
18
using
ParamsCustomCallback
= bool(*)(
void
* userdata,
ice::Span<ice::String const>
results)
noexcept
;
19
20
namespace
concepts
21
{
22
23
template
<
typename
T>
24
concept
ParamCustomType
=
requires
(T t) {
25
std::is_same_v<
decltype
(&T::param_parse_results),
bool
(*)(T&,
ice::Span<ice::String const>
)
noexcept
>;
26
};
27
28
}
// namespace concepts
29
30
}
// namespace ice
ice::concepts::ParamCustomType
Definition
params_types.hxx:24
math.hxx
mem_unique_ptr.hxx
ice::concepts
Definition
container_concepts.hxx:12
ice
SPDX-License-Identifier: MIT.
Definition
array.hxx:12
ice::Params
ice::UniquePtr< ParamsInternal > const Params
Definition
params_types.hxx:17
ice::ParamsCustomCallback
bool(*)(void *userdata, ice::Span< ice::String const > results) noexcept ParamsCustomCallback
Definition
params_types.hxx:18
span.hxx
string.hxx
ice::ParamInstanceBase
Base class for global defined parameter instances.
Definition
params.hxx:114
ice::Span
A view into an array of objects laid out in contiguous memory.
Definition
span.hxx:17
ice::UniquePtr
Definition
mem_unique_ptr.hxx:25
Generated by
1.18.0