summaryrefslogtreecommitdiff
path: root/euler/include/type_traits
blob: fcea0138560c86bc0bcacdd03050722ab244b5aa (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#pragma once

namespace std {

  template <class t>
  struct remove_reference {
    typedef t type;
  };

  template <class t>
  struct remove_reference<t &> {
    typedef t type;
  };

  template <class t>
  struct remove_reference<t &&> {
    typedef t type;
  };

  template <class t>
  using remove_reference_t = typename remove_reference<t>::type;

}