My Project
remove_volatile.hpp
Go to the documentation of this file.
1 
28 #ifndef BSL_REMOVE_VOLATILE_HPP
29 #define BSL_REMOVE_VOLATILE_HPP
30 
31 namespace bsl
32 {
48  template<typename T>
49  struct remove_volatile final
50  {
52  using type = T;
53  };
54 
56  template<typename T>
58 
60 
61  template<typename T>
62  struct remove_volatile<T volatile> final
63  {
64  static_assert(sizeof(T) != sizeof(T), "volatile not supported"); // NOLINT
65 
67  using type = T;
68  };
69 
71 }
72 
73 #endif
Provides the member typedef type which is the same as T, except that its topmost volatile qualifier i...
Definition: remove_volatile.hpp:49
T type
provides the member typedef "type"
Definition: remove_volatile.hpp:52
typename remove_volatile< T >::type remove_volatile_t
a helper that reduces the verbosity of bsl::remove_volatile
Definition: remove_volatile.hpp:57