di 0.1.0
Loading...
Searching...
No Matches
status_code_erasable_into.h
Go to the documentation of this file.
1#pragma once
2
3#include "di/meta/core.h"
4#include "di/meta/language.h"
7
8namespace di::concepts {
9namespace detail {
10 template<typename From, typename To>
11 concept StatusCodeErasableIntoHelper =
12 (!LanguageVoid<From> && !LanguageVoid<To> && TriviallyRelocatable<meta::StatusCodeDomainValue<From>> &&
13 TriviallyRelocatable<meta::StatusCodeDomainValue<To>> &&
14 sizeof(vocab::detail::StatusCodeStorage<From>) <= sizeof(vocab::detail::StatusCodeStorage<To>));
15}
16
17template<typename From, typename To>
18concept StatusCodeErasableInto = detail::StatusCodeErasableIntoHelper<meta::RemoveCVRef<From>, meta::RemoveCVRef<To>>;
19}
Definition status_code_erasable_into.h:18
Definition any_storable.h:9
RemoveCV< RemoveReference< T > > RemoveCVRef
Definition core.h:74