12#ifndef JPH_DISABLE_CUSTOM_ALLOCATOR
43 template <
typename T2>
62 template <
bool has_reallocate_v = has_reallocate,
typename = std::enable_if_t<has_reallocate_v>>
90 template <
typename T2>
102template <
typename T>
using STLAllocator = std::allocator<T>;
112#if (!defined(JPH_PLATFORM_WINDOWS) || defined(JPH_COMPILER_MINGW)) && !defined(JPH_DISABLE_CUSTOM_ALLOCATOR)
120 inline size_t operator () (
const JPH::String &inRHS)
const
122 return hash<string_view> { } (inRHS);
#define JPH_NAMESPACE_END
Definition: Core.h:378
#define JPH_NAMESPACE_BEGIN
Definition: Core.h:372
#define JPH_ASSERT(...)
Definition: IssueReporting.h:33
AllocateFunction Allocate
Definition: Memory.cpp:68
ReallocateFunction Reallocate
Definition: Memory.cpp:69
FreeFunction Free
Definition: Memory.cpp:70
AlignedFreeFunction AlignedFree
Definition: Memory.cpp:72
AlignedAllocateFunction AlignedAllocate
Definition: Memory.cpp:71
std::basic_string< char, std::char_traits< char >, STLAllocator< char > > String
Definition: STLAllocator.h:107
std::basic_istringstream< char, std::char_traits< char >, STLAllocator< char > > IStringStream
Definition: STLAllocator.h:108
STL allocator that forwards to our allocation functions.
Definition: STLAllocator.h:17
STLAllocator()=default
Constructor.
std::true_type propagate_on_container_move_assignment
Allocator supports moving.
Definition: STLAllocator.h:37
pointer allocate(size_type inN)
Allocate memory.
Definition: STLAllocator.h:50
static constexpr bool needs_aligned_allocate
If this allocator needs to fall back to aligned allocations because the type requires it.
Definition: STLAllocator.h:47
static constexpr bool has_reallocate
Should we expose a reallocate function?
Definition: STLAllocator.h:59
T * pointer
Pointer to type.
Definition: STLAllocator.h:22
const T & const_reference
Definition: STLAllocator.h:28
bool operator==(const STLAllocator< T > &) const
Allocators are stateless so assumed to be equal.
Definition: STLAllocator.h:79
bool operator!=(const STLAllocator< T > &) const
Definition: STLAllocator.h:84
pointer reallocate(pointer inOldPointer, size_type inOldSize, size_type inNewSize)
Reallocate memory.
Definition: STLAllocator.h:63
std::true_type is_always_equal
The allocator is stateless.
Definition: STLAllocator.h:34
T value_type
Definition: STLAllocator.h:19
void deallocate(pointer inPointer, size_type)
Free memory.
Definition: STLAllocator.h:70
size_t size_type
Definition: STLAllocator.h:30
STLAllocator(const STLAllocator< T2 > &)
Constructor from other allocator.
Definition: STLAllocator.h:44
ptrdiff_t difference_type
Definition: STLAllocator.h:31
const T * const_pointer
Definition: STLAllocator.h:23
T & reference
Definition: STLAllocator.h:27
Default implementation of AllocatorHasReallocate which tells if an allocator has a reallocate functio...
Definition: STLAllocator.h:10
static constexpr bool sValue
Definition: STLAllocator.h:10
Converting to allocator for other type.
Definition: STLAllocator.h:92