Dash Core Source Documentation (0.16.0.1)
Find detailed information regarding the Dash Core source code.
util.hpp File Reference
#include <immer/config.hpp>
#include <cstddef>
#include <new>
#include <type_traits>
#include <memory>
#include <immer/detail/type_traits.hpp>
Include dependency graph for util.hpp:
This graph shows which files directly or indirectly include this file:
Go to the source code of this file.
Classes | |
struct | immer::detail::not_supported_t |
struct | immer::detail::empty_t |
struct | immer::detail::exact_t< T > |
struct | immer::detail::constantly< T, value > |
Namespaces | |
immer | |
immer::detail | |
Typedefs | |
template<typename T > | |
using | immer::detail::aligned_storage_for = typename std::aligned_storage< sizeof(T), alignof(T)>::type |
Functions | |
template<typename T > | |
T & | immer::detail::auto_const_cast (const T &x) |
template<typename T > | |
T && | immer::detail::auto_const_cast (const T &&x) |
template<typename Iter1 , typename Iter2 > | |
auto | immer::detail::uninitialized_move (Iter1 in1, Iter1 in2, Iter2 out) |
template<class T > | |
void | immer::detail::destroy (T *first, T *last) |
template<class T , class Size > | |
void | immer::detail::destroy_n (T *p, Size n) |
template<typename Heap , typename T , typename... Args> | |
T * | immer::detail::make (Args &&...args) |
template<typename T > | |
constexpr auto | immer::detail::clz_ (T) -> not_supported_t |
constexpr auto | immer::detail::clz_ (unsigned int x) |
constexpr auto | immer::detail::clz_ (unsigned long x) |
constexpr auto | immer::detail::clz_ (unsigned long long x) |
template<typename T > | |
constexpr T | immer::detail::log2_aux (T x, T r=0) |
template<typename T > | |
constexpr auto | immer::detail::log2 (T x) -> std::enable_if_t<!std::is_same< decltype(clz_(x)), not_supported_t >::value, T > |
template<bool b, typename F > | |
auto | immer::detail::static_if (F &&f) -> std::enable_if_t< b > |
template<bool b, typename R = void, typename F1 , typename F2 > | |
auto | immer::detail::static_if (F1 &&f1, F2 &&f2) -> std::enable_if_t< b, R > |
template<typename Iterator , typename Sentinel , std::enable_if_t< detail::std_distance_supports_v< Iterator, Sentinel >, bool > = true> | |
std::iterator_traits< Iterator >::difference_type | immer::detail::distance (Iterator first, Sentinel last) |
template<typename Iterator , typename Sentinel , typename SinkIter , std::enable_if_t< detail::std_uninitialized_copy_supports_v< Iterator, Sentinel, SinkIter >, bool > = true> | |
SinkIter | immer::detail::uninitialized_copy (Iterator first, Sentinel last, SinkIter d_first) |
template<typename SourceIter , typename Sent , typename SinkIter , std::enable_if_t<(!detail::std_uninitialized_copy_supports_v< SourceIter, Sent, SinkIter >) &&detail::compatible_sentinel_v< SourceIter, Sent > &&detail::is_forward_iterator_v< SinkIter >, bool > = true> | |
SinkIter | immer::detail::uninitialized_copy (SourceIter first, Sent last, SinkIter d_first) |