malena
Why malena
Quick start
Tutorials
API docs
GitHub
GitHub
Tutorials
Loading...
Searching...
No Matches
Utilities
TypeExtraction.h
Go to the documentation of this file.
1
// Copyright (c) 2025 Dave R. Smith. All rights reserved.
2
// Malena Framework — Proprietary Software. See LICENSE for terms.
3
4
//
5
// Created by Dave Smith on 3/10/26.
6
//
7
8
#ifndef MALENA_TYPEEXTRACTION_H
9
#define MALENA_TYPEEXTRACTION_H
10
15
16
#include <
Malena/Core/malena_export.h
>
17
18
namespace
ml
19
{
21
27
template
<
typename
T,
typename
=
void
>
28
struct
extract_Flags {
using
type = void; };
29
30
template
<
typename
T>
31
struct
extract_Flags<T, std::void_t<typename T::Flags>>
32
{
33
using
type =
typename
T::Flags;
34
};
35
42
template
<
typename
T,
typename
=
void
>
43
struct
extract_State {
using
type = void; };
44
45
template
<
typename
T>
46
struct
extract_State<T, std::void_t<typename T::State>>
47
{
48
using
type =
typename
T::State;
49
};
50
52
53
}
// namespace ml
54
55
#endif
// MALENA_TYPEEXTRACTION_H
malena_export.h
ml
Definition
Component.h:22