Aller au contenu
Bienvenue sur la nouvelle documentation de CppUtils !

Namespace: CppUtils::Type

using CppUtils::Type::UnderlyingElementType = typedef std::remove_cvref_t<std::remove_all_extents_t<std::remove_pointer_t<std::decay_t<Type>>>>;

Resolves the decayed element type of a pointer, array, or scalar type.

using CppUtils::Type::Hash = typedef std::uint64_t;
using CppUtils::Type::Token = typedef Hash;
using CppUtils::Type::LazyEvaluationType = typedef typename LazyEvaluation<Condition, Then, Arg, Else>::type;
using CppUtils::Type::CommonType = typedef typename Common<T...>::type;
using CppUtils::Type::In = typedef std::conditional_t<preferPassByRef<T>, const T&, T>;
using CppUtils::Type::NthType = typedef std::tuple_element_t<I, std::tuple<Types...>>;
using CppUtils::Type::FirstType = typedef NthType<0, Types...>;
using CppUtils::Type::UniqueType = typedef typename Unique<Container<>, Types...>::type;
using CppUtils::Type::UniqueVariant = typedef UniqueType<std::variant, std::decay_t<Types>...>;
using CppUtils::Type::UniqueTuple = typedef UniqueType<std::tuple, Types...>;
using CppUtils::Type::FilterType = typedef typename Filter<Trait, Container<>, Types...>::type;
constexpr auto CppUtils::Type::isFunctionPointer;
constexpr Hash CppUtils::Type::HashOffset;
constexpr Hash CppUtils::Type::HashPrime;
constexpr struct CppUtils::Type::HashT CppUtils::Type::hash;
constexpr Detail::WriteCPO CppUtils::Type::write;
constexpr Detail::ReadCPO CppUtils::Type::read;
constexpr Detail::SerializeCPO CppUtils::Type::serialize;
constexpr auto CppUtils::Type::isSpecializationOfTypes;
constexpr auto CppUtils::Type::isSpecializationOfTypes<IncompleteType<Args...>, IncompleteType>;
constexpr auto CppUtils::Type::isSpecializationOfValues;
constexpr auto CppUtils::Type::isSpecializationOfValues<IncompleteType<Args...>, IncompleteType>;
constexpr auto CppUtils::Type::preferPassByRef;
constexpr auto CppUtils::Type::preferPassByValue;
constexpr bool CppUtils::Type::FalseValue;
constexpr bool CppUtils::Type::FalseType;
constexpr auto mixHash(Hash hashValue) noexcept -> Hash;
template <class Target, class Mapping, class Source>
constexpr auto toStruct(const Source& source) -> Target;
template <class Target, class TargetMapping, class SourceMapping, class Source>
constexpr auto toStruct(const Source& source) -> Target;
template <class ReturnType, class Object, class... Args>
constexpr auto getNonConstMemberFunction(ReturnType(Object::*function)(Args...)) -> decltype(auto);
template <class ReturnType, class Object, class... Args>
constexpr auto getConstMemberFunction(ReturnType(Object::*function)(Args...) const) -> decltype(auto);
template <class Value>
auto deserialize(auto& source);
auto deserialize(auto& source, auto& value);
template <class T, class... Types>
consteval auto getPosition() -> std::size_t;