![]() |
Raven Engine v0.1
|
Defines scoped and allocator-aware smart pointers for Raven. More...
#include "Raven/Core/Types.h"#include "Raven/Memory/MalevolentAllocator.h"#include "Raven/Memory/StackAllocator.h"#include "Raven/Memory/MemoryManager.h"#include "Raven/Memory/AllocatorTraits.h"#include "Raven/Core/MemoryTracker.h"#include <utility>Classes | |
| class | Raven::Scope< T > |
| Exclusive-ownership smart pointer. More... | |
| class | Raven::ScopeWithAllocator< T > |
| Scoped smart pointer that uses a specific allocator. More... | |
Namespaces | |
| namespace | Raven |
Enumerations | |
| enum class | Raven::AllocatorType { Raven::AllocatorType::None , Raven::AllocatorType::Stack , Raven::AllocatorType::Malevolent } |
| Types of allocators supported by ScopeWithAllocator. More... | |
Functions | |
| template<typename T, typename... Args> | |
| Scope< T > | Raven::CreateScope (Args &&... args) |
| Helper to create a Scope<T> by constructing T in-place. | |
| template<typename T, typename... Args> | |
| ScopeWithAllocator< T > | Raven::CreateScopeWithAllocator (usize objectCount, Args &&... args) |
| Creates a ScopeWithAllocator using default allocator selection. | |
| template<typename T, typename Allocator, typename... Args> | |
| ScopeWithAllocator< T > | Raven::CreateScopeWithAllocator (Allocator *allocator, Args &&... args) |
| Creates a ScopeWithAllocator with explicit allocator. | |
Defines scoped and allocator-aware smart pointers for Raven.
Provides two RAII types: