Dash Core Source Documentation (0.16.0.1)
Find detailed information regarding the Dash Core source code.
•All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
util.hpp File Reference
#include <immer/config.hpp>
#include <cstddef>
#include <new>
#include <type_traits>
#include <memory>
#include <immer/detail/type_traits.hpp>


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) |