Lumiera  0.pre.03
»edit your freedom«
Strip< X > Struct Template Reference

#include "lib/meta/trait.hpp"

Description

template<typename X>
struct lib::meta::Strip< X >

Helper for type analysis: tries to strip all kinds of type adornments.

Definition at line 249 of file trait.hpp.

Public Types

using Type = typename Unwrap< TypePlain >::Type
 
using TypePlain = remove_cv_t< TypePointee >
 
using TypePointee = remove_pointer_t< TypeReferred >
 
using TypeReferred = remove_reference_t< TypeUnconst >
 
using TypeUnconst = remove_cv_t< X >
 

Member Typedef Documentation

◆ TypeUnconst

using TypeUnconst = remove_cv_t<X>

Definition at line 251 of file trait.hpp.

◆ TypeReferred

using TypeReferred = remove_reference_t<TypeUnconst>

Definition at line 252 of file trait.hpp.

◆ TypePointee

using TypePointee = remove_pointer_t<TypeReferred>

Definition at line 253 of file trait.hpp.

◆ TypePlain

using TypePlain = remove_cv_t<TypePointee>

Definition at line 254 of file trait.hpp.

◆ Type

using Type = typename Unwrap<TypePlain>::Type

Definition at line 256 of file trait.hpp.

+ Inheritance diagram for Strip< X >:
+ Collaboration diagram for Strip< X >:

The documentation for this struct was generated from the following file: