#include <cstddef>
#include <limits>
#include <memory>
#include <new>
#include <type_traits>
#include <utility>
#include "absl/base/macros.h"
#include "absl/meta/type_traits.h"
Go to the source code of this file.
Namespaces | |
absl | |
absl::memory_internal | |
Typedefs | |
template<template< typename > class Extract, typename Obj , typename Default > | |
using | absl::memory_internal::ExtractOrT = typename ExtractOr< Extract, Obj, Default, void >::type |
template<typename T > | |
using | absl::memory_internal::GetConstPointer = typename T::const_pointer |
template<typename T > | |
using | absl::memory_internal::GetConstVoidPointer = typename T::const_void_pointer |
template<typename T > | |
using | absl::memory_internal::GetDifferenceType = typename T::difference_type |
template<typename T > | |
using | absl::memory_internal::GetIsAlwaysEqual = typename T::is_always_equal |
template<typename Alloc > | |
using | absl::memory_internal::GetIsNothrow = typename Alloc::is_nothrow |
template<typename T > | |
using | absl::memory_internal::GetPointer = typename T::pointer |
template<typename T > | |
using | absl::memory_internal::GetPropagateOnContainerCopyAssignment = typename T::propagate_on_container_copy_assignment |
template<typename T > | |
using | absl::memory_internal::GetPropagateOnContainerMoveAssignment = typename T::propagate_on_container_move_assignment |
template<typename T > | |
using | absl::memory_internal::GetPropagateOnContainerSwap = typename T::propagate_on_container_swap |
template<typename T > | |
using | absl::memory_internal::GetSizeType = typename T::size_type |
template<typename T > | |
using | absl::memory_internal::GetVoidPointer = typename T::void_pointer |
Functions | |
template<typename Allocator , typename Iterator , typename... Args> | |
void | absl::memory_internal::ConstructRange (Allocator &alloc, Iterator first, Iterator last, const Args &...args) |
template<typename Allocator , typename Iterator , typename InputIterator > | |
void | absl::memory_internal::CopyRange (Allocator &alloc, Iterator destination, InputIterator first, InputIterator last) |
template<typename T , typename U > | |
constexpr bool | absl::memory_internal::HasRebindAlloc (...) |
template<typename T , typename U > | |
constexpr bool | absl::memory_internal::HasRebindAlloc (typename T::template rebind< U >::other *) |
template<typename T , typename... Args> | |
memory_internal::MakeUniqueResult< T >::scalar | absl::make_unique (Args &&...args) |
template<typename T > | |
memory_internal::MakeUniqueResult< T >::array | absl::make_unique (size_t n) |
template<typename T , typename... Args> | |
memory_internal::MakeUniqueResult< T >::invalid | absl::make_unique (Args &&...)=delete |
template<typename T > | |
auto | absl::RawPtr (T &&ptr) -> decltype(std::addressof(*ptr)) |
std::nullptr_t | absl::RawPtr (std::nullptr_t) |
template<typename T , typename D > | |
std::shared_ptr< T > | absl::ShareUniquePtr (std::unique_ptr< T, D > &&ptr) |
template<typename T > | |
std::weak_ptr< T > | absl::WeakenPtr (const std::shared_ptr< T > &ptr) |
template<typename T > | |
std::unique_ptr< T > | absl::WrapUnique (T *ptr) |