FastLED 3.9.15
Loading...
Searching...
No Matches
shared_ptr.h File Reference
#include "fl/namespace.h"
#include "fl/type_traits.h"
#include "fl/utility.h"
#include "fl/stdint.h"
#include "fl/cstddef.h"
#include "fl/bit_cast.h"
#include "fl/atomic.h"
+ Include dependency graph for shared_ptr.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  fl::detail::ControlBlock< T, Deleter >
 
struct  fl::detail::ControlBlockBase
 
struct  fl::detail::default_delete< T >
 
struct  fl::detail::make_shared_tag
 
struct  fl::detail::no_op_deleter< T >
 
struct  fl::detail::no_tracking_tag
 
struct  fl::detail::NoDeleter< T >
 
class  fl::shared_ptr< T >
 

Namespaces

namespace  fl
 IMPORTANT!
 
namespace  fl::detail
 

Functions

template<typename T, typename A, typename... Args>
shared_ptr< T > fl::allocate_shared (const A &alloc, Args &&... args)
 
template<typename T, typename Y>
shared_ptr< T > fl::const_pointer_cast (const shared_ptr< Y > &other) noexcept
 
template<typename T, typename... Args>
shared_ptr< T > fl::make_shared (Args &&... args)
 
template<typename T>
shared_ptr< T > fl::make_shared_no_tracking (T &obj)
 
template<typename T, typename Deleter, typename... Args>
shared_ptr< T > fl::make_shared_with_deleter (Deleter d, Args &&... args)
 
template<typename T, typename Y>
bool fl::operator!= (const shared_ptr< T > &lhs, const shared_ptr< Y > &rhs) noexcept
 
template<typename T>
bool fl::operator!= (const shared_ptr< T > &lhs, fl::nullptr_t) noexcept
 
template<typename T>
bool fl::operator!= (fl::nullptr_t, const shared_ptr< T > &rhs) noexcept
 
template<typename T, typename Y>
bool fl::operator< (const shared_ptr< T > &lhs, const shared_ptr< Y > &rhs) noexcept
 
template<typename T, typename Y>
bool fl::operator<= (const shared_ptr< T > &lhs, const shared_ptr< Y > &rhs) noexcept
 
template<typename T, typename Y>
bool fl::operator== (const shared_ptr< T > &lhs, const shared_ptr< Y > &rhs) noexcept
 
template<typename T>
bool fl::operator== (const shared_ptr< T > &lhs, fl::nullptr_t) noexcept
 
template<typename T>
bool fl::operator== (fl::nullptr_t, const shared_ptr< T > &rhs) noexcept
 
template<typename T, typename Y>
bool fl::operator> (const shared_ptr< T > &lhs, const shared_ptr< Y > &rhs) noexcept
 
template<typename T, typename Y>
bool fl::operator>= (const shared_ptr< T > &lhs, const shared_ptr< Y > &rhs) noexcept
 
template<typename T, typename Y>
shared_ptr< T > fl::reinterpret_pointer_cast (const shared_ptr< Y > &other) noexcept
 
template<typename T, typename Y>
shared_ptr< T > fl::static_pointer_cast (const shared_ptr< Y > &other) noexcept
 
template<typename T>
void fl::swap (shared_ptr< T > &lhs, shared_ptr< T > &rhs) noexcept
 

Class Documentation

◆ fl::detail::make_shared_tag

struct fl::detail::make_shared_tag

◆ fl::detail::no_tracking_tag

struct fl::detail::no_tracking_tag