libER 0.1.4.2
ELDEN RING API library
Loading...
Searching...
No Matches
Classes | Functions
utility.hpp File Reference

Dantelion2 utility. More...

#include <detail/preprocessor.hpp>
#include <memory/from_allocator.hpp>
#include <algorithm>
#include <atomic>
#include <compare>
#include <concepts>
#include <stdexcept>
#include <utility>

Go to the source code of this file.

Classes

class  from::DLUT::DLNonCopyable
 Base class used for non-copyable, but movable objects. More...
 
class  from::DLUT::DLReferenceCountObject
 Abstract class for implementing reference counting garbage collection. More...
 
class  from::DLUT::DLReferenceCountPtr< T >
 A refcounted pointer that models std::shared_ptr<T>. More...
 
struct  from::DLUT::dummy_rfco
 

Functions

template<typename T , typename U >
bool from::DLUT::operator== (const DLReferenceCountPtr< T > &lhs, const DLReferenceCountPtr< U > &rhs)
 DLReferenceCountPtr comparison.
 
template<typename T , typename U >
std::strong_ordering from::DLUT::operator<=> (const DLReferenceCountPtr< T > &lhs, const DLReferenceCountPtr< U > &rhs)
 DLReferenceCountPtr comparison.
 
template<typename T , typename U >
bool from::DLUT::operator== (const DLReferenceCountPtr< U > &lhs, std::nullptr_t)
 DLReferenceCountPtr comparison.
 
template<typename T , typename U >
std::strong_ordering from::DLUT::operator<=> (const DLReferenceCountPtr< T > &lhs, std::nullptr_t)
 DLReferenceCountPtr comparison.
 
template<typename T , typename... Args>
requires std::derived_from<T, DLUT::DLReferenceCountObject>
DLUT::DLReferenceCountPtr< T > from::make_refcounted (Args &&... args)
 Construct a reference counted object with the default libER allocator.
 

Detailed Description

Dantelion2 utility.

Copyright 2024 libER ELDEN RING API library

Function Documentation

◆ make_refcounted()

template<typename T , typename... Args>
requires std::derived_from<T, DLUT::DLReferenceCountObject>
DLUT::DLReferenceCountPtr< T > from::make_refcounted ( Args &&...  args)
inline

Construct a reference counted object with the default libER allocator.

Template Parameters
Tclass that derives from DLReferenceCountObject
Parameters
argsconstructor parameters
Returns
[[nodiscard]] DLUT::DLReferenceCountPtr<T> the resulting refcounted pointer