Lines Matching refs:T
72 template <class T> struct is_lvalue_reference { static constexpr bool value = false; };
73 template <class T> struct is_lvalue_reference<T&> { static constexpr bool value = true; };
79 template<class T, class U> struct is_same { static constexpr bool value = false; };
80 template<class T> struct is_same<T, T> { static constexpr bool value = true; };
94 template <class T>
95 T*
96 move(T* first, T* last, T* d_first)
104 template <class T>
105 constexpr T && forward(os::remove_reference_t<T>&t) noexcept {
106 return static_cast<T &&>(t);
109 template <class T>
110 constexpr T && forward(os::remove_reference_t<T>&& t) noexcept {
111 static_assert(!os::is_lvalue_reference<T>::value,
113 return static_cast<T &&>(t);
119 template <class T>
120 T*
121 move_backward(T* first, T* last, T* d_last)
129 template <class T>
130 T*
131 uninitialized_move(T* first, T* last, T* d_first)
134 ::new (static_cast<void*>(d_first)) T(os::move(*first));
139 template <class T>
141 destroy(T* first, T* last)
144 first->~T();
148 template <class T>
150 uninitialized_value_construct(T* first, T* last)
153 ::new (static_cast<void*>(first)) T();