9#if FL_HAS_SANITIZER_LSAN
10# include <sanitizer/lsan_interface.h>
47 static AlignedStorage storage;
48 static T* ptr =
nullptr;
50#if FL_HAS_SANITIZER_LSAN
51 __lsan::ScopedDisabler disabler;
53 ptr =
new (&storage.data) T();
87 return *
static_cast<T*
>(existing);
107 char data[
sizeof(T)];
110 static AlignedStorage storage;
112#if FL_HAS_SANITIZER_LSAN
113 __lsan::ScopedDisabler disabler;
116 T* ptr =
new (&storage.data) T();
139 static AlignedStorage storage;
147#if FL_HAS_SANITIZER_LSAN
148 __lsan::ScopedDisabler disabler;
Alignment macros and utilities for FastLED.
Singleton(const Singleton &) FL_NOEXCEPT=delete
static T & instance() FL_NOEXCEPT
Singleton & operator=(const Singleton &) FL_NOEXCEPT=delete
Singleton() FL_NOEXCEPT=default
static T * instanceRef() FL_NOEXCEPT
static T & instance() FL_NOEXCEPT
SingletonShared(const SingletonShared &) FL_NOEXCEPT=delete
SingletonShared & operator=(const SingletonShared &) FL_NOEXCEPT=delete
static T * instanceRef() FL_NOEXCEPT
static T * instanceInner() FL_NOEXCEPT
SingletonShared() FL_NOEXCEPT=default
static T & instance() FL_NOEXCEPT
static T * instanceRef() FL_NOEXCEPT
SingletonThreadLocal() FL_NOEXCEPT=default
SingletonThreadLocal(const SingletonThreadLocal &) FL_NOEXCEPT=delete
SingletonThreadLocal & operator=(const SingletonThreadLocal &) FL_NOEXCEPT=delete
void * singleton_registry_get(const char *key)
void singleton_registry_set(const char *key, void *value)
Compile-time linker keep-alive hook for a single fl::Bus.
constexpr int type_rank< T >::value
class FL_ALIGN_AS_T(max_align< Types... >::value) variant
ThreadLocalFake< T > ThreadLocal
Base definition for an LED controller.
#define FL_PRETTY_FUNCTION