FastLED 3.9.15
Loading...
Searching...
No Matches
move.h
Go to the documentation of this file.
1#pragma once
2
3namespace fl {
4
5
6// Define remove_reference trait
7template <typename T> struct remove_reference {
8 using type = T;
9};
10
11// Specialization for lvalue reference
12template <typename T> struct remove_reference<T &> {
13 using type = T;
14};
15
16// Specialization for rvalue reference
17template <typename T> struct remove_reference<T &&> {
18 using type = T;
19};
20
21// Helper alias template for remove_reference
22template <typename T>
24
25// Implementation of move
26template <typename T>
27constexpr typename remove_reference<T>::type &&move(T &&t) noexcept {
28 return static_cast<typename remove_reference<T>::type &&>(t);
29}
30
31} // namespace fl
static uint32_t t
Definition Luminova.h:54
constexpr remove_reference< T >::type && move(T &&t) noexcept
Definition move.h:27
typename remove_reference< T >::type remove_reference_t
Definition move.h:23
IMPORTANT!
Definition crgb.h:20