[*] Rename AuDelegate to AuConsumer
[+] Added AuSupplier
This commit is contained in:
parent
10a61779e9
commit
95b0e1135c
@ -11,8 +11,13 @@
|
|||||||
#define AU_NO_MOVE(type) type(type&&) = delete;
|
#define AU_NO_MOVE(type) type(type&&) = delete;
|
||||||
#define AU_NO_COPY_NO_MOVE(type) AU_NO_COPY(type) AU_NO_MOVE(type)
|
#define AU_NO_COPY_NO_MOVE(type) AU_NO_COPY(type) AU_NO_MOVE(type)
|
||||||
|
|
||||||
#define AU_SHARED_FROM_THIS (std::static_pointer_cast<std::remove_pointer_t<decltype(this)>>(this->shared_from_this()))
|
#if !defined(AU_SHARED_FROM_THIS)
|
||||||
#define AU_WEAK_FROM_THIS (AuWPtr<std::remove_pointer_t<decltype(this)>>(std::static_pointer_cast<std::remove_pointer_t<decltype(this)>>(this->shared_from_this())))
|
#define AU_SHARED_FROM_THIS (std::static_pointer_cast<std::remove_pointer_t<decltype(this)>>(this->shared_from_this()))
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if !defined(AU_WEAK_FROM_THIS)
|
||||||
|
#define AU_WEAK_FROM_THIS (AuWPtr<std::remove_pointer_t<decltype(this)>>(std::static_pointer_cast<std::remove_pointer_t<decltype(this)>>(this->shared_from_this())))
|
||||||
|
#endif
|
||||||
|
|
||||||
#define AU_BRACKET_SCOPE(...) __VA_ARGS__
|
#define AU_BRACKET_SCOPE(...) __VA_ARGS__
|
||||||
|
|
||||||
@ -76,15 +81,19 @@ name ## Shared_t name ## Shared(T... args) \
|
|||||||
|
|
||||||
#if defined(AURORA_COMPILER_MSVC)
|
#if defined(AURORA_COMPILER_MSVC)
|
||||||
#define AU_NORETURN __declspec(noreturn)
|
#define AU_NORETURN __declspec(noreturn)
|
||||||
#else
|
#elif (defined(AURORA_COMPILER_CLANG) || defined(AURORA_COMPILER_GCC))
|
||||||
|
#define AU_ALLOC __attribute__((noreturn))
|
||||||
|
#elif defined(AU_LANG_CPP)
|
||||||
#define AU_NORETURN [[noreturn]]
|
#define AU_NORETURN [[noreturn]]
|
||||||
|
#else
|
||||||
|
#define AU_NORETURN
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(AURORA_PLATFORM_WIN32)
|
#if defined(AURORA_PLATFORM_WIN32)
|
||||||
#define AU_ALLOC __declspec(allocator)
|
#define AU_ALLOC __declspec(allocator)
|
||||||
#elif defined(AURORA_COMPILER_CLANG)
|
#elif defined(AURORA_COMPILER_CLANG)
|
||||||
#define AU_ALLOC __declspec(allocator)
|
#define AU_ALLOC __declspec(allocator)
|
||||||
#elif defined(AURORA_COMPILER_COMMUNISM)
|
#elif defined(AURORA_COMPILER_GCC)
|
||||||
#define AU_ALLOC __attribute__((malloc))
|
#define AU_ALLOC __attribute__((malloc))
|
||||||
#else
|
#else
|
||||||
#define AU_ALLOC
|
#define AU_ALLOC
|
||||||
|
@ -128,7 +128,10 @@ using AuPredicate = AuFunction<bool(T)>;
|
|||||||
using AuVoidFunc = AuFunction<void(void)>;
|
using AuVoidFunc = AuFunction<void(void)>;
|
||||||
|
|
||||||
template<class T>
|
template<class T>
|
||||||
using AuDelegate = AuFunction<void(T)>;
|
using AuConsumer = AuFunction<void(T)>;
|
||||||
|
|
||||||
|
template<class T>
|
||||||
|
using AuSupplier = AuFunction<T(void)>;
|
||||||
|
|
||||||
//#include "tinyutf8.h"
|
//#include "tinyutf8.h"
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user