2021-02-06 18:16:46 +01:00
|
|
|
/*
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef __remove_ref_h__
|
|
|
|
#define __remove_ref_h__
|
|
|
|
|
|
|
|
|
2020-02-21 05:51:48 +01:00
|
|
|
|
|
|
|
// STRUCT TEMPLATE remove_reference
|
|
|
|
template<class _Ty>
|
2021-02-06 18:16:46 +01:00
|
|
|
struct _typeofam_remove_ref
|
|
|
|
{ // remove reference
|
2020-02-21 05:51:48 +01:00
|
|
|
using type = _Ty;
|
2021-02-06 18:16:46 +01:00
|
|
|
};
|
2020-02-21 05:51:48 +01:00
|
|
|
|
|
|
|
template<class _Ty>
|
2021-02-06 18:16:46 +01:00
|
|
|
struct _typeofam_remove_ref<_Ty&>
|
|
|
|
{ // remove reference
|
2020-02-21 05:51:48 +01:00
|
|
|
using type = _Ty;
|
2021-02-06 18:16:46 +01:00
|
|
|
};
|
2020-02-21 05:51:48 +01:00
|
|
|
//
|
|
|
|
//template<class _Ty>
|
|
|
|
// struct remove_ref<_Ty&&>
|
|
|
|
// { // remove rvalue reference
|
|
|
|
// using type = _Ty;
|
|
|
|
// };
|
2021-02-06 18:16:46 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#endif
|