Dash Core Source Documentation (0.16.0.1)

Find detailed information regarding the Dash Core source code.

immer::detail::arrays::node< T, MemoryPolicy > Struct Template Reference

#include <node.hpp>

Classes

struct  data_t
 

Public Types

using memory = MemoryPolicy
 
using heap = typename MemoryPolicy::heap::type
 
using transience = typename memory::transience_t
 
using refs_t = typename memory::refcount
 
using ownee_t = typename transience::ownee
 
using node_t = node
 
using edit_t = typename transience::edit
 
using impl_t = combine_standard_layout_t< data_t, refs_t, ownee_t >
 

Public Member Functions

refs_trefs () const
 
const ownee_townee () const
 
ownee_townee ()
 
const T * data () const
 
T * data ()
 
bool can_mutate (edit_t e) const
 

Static Public Member Functions

static constexpr std::size_t sizeof_n (size_t count)
 
static void delete_n (node_t *p, size_t sz, size_t cap)
 
static node_tmake_n (size_t n)
 
static node_tmake_e (edit_t e, size_t n)
 
static node_tfill_n (size_t n, T v)
 
template<typename Iter , typename Sent , std::enable_if_t< detail::compatible_sentinel_v< Iter, Sent >, bool > = true>
static node_tcopy_n (size_t n, Iter first, Sent last)
 
static node_tcopy_n (size_t n, node_t *p, size_t count)
 
template<typename Iter >
static node_tcopy_e (edit_t e, size_t n, Iter first, Iter last)
 
static node_tcopy_e (edit_t e, size_t n, node_t *p, size_t count)
 

Public Attributes

impl_t impl
 

Detailed Description

template<typename T, typename MemoryPolicy>
struct immer::detail::arrays::node< T, MemoryPolicy >

Definition at line 22 of file node.hpp.

Member Typedef Documentation

◆ edit_t

template<typename T , typename MemoryPolicy >
using immer::detail::arrays::node< T, MemoryPolicy >::edit_t = typename transience::edit

Definition at line 30 of file node.hpp.

◆ heap

template<typename T , typename MemoryPolicy >
using immer::detail::arrays::node< T, MemoryPolicy >::heap = typename MemoryPolicy::heap::type

Definition at line 25 of file node.hpp.

◆ impl_t

template<typename T , typename MemoryPolicy >
using immer::detail::arrays::node< T, MemoryPolicy >::impl_t = combine_standard_layout_t<data_t, refs_t, ownee_t>

Definition at line 39 of file node.hpp.

◆ memory

template<typename T , typename MemoryPolicy >
using immer::detail::arrays::node< T, MemoryPolicy >::memory = MemoryPolicy

Definition at line 24 of file node.hpp.

◆ node_t

template<typename T , typename MemoryPolicy >
using immer::detail::arrays::node< T, MemoryPolicy >::node_t = node

Definition at line 29 of file node.hpp.

◆ ownee_t

template<typename T , typename MemoryPolicy >
using immer::detail::arrays::node< T, MemoryPolicy >::ownee_t = typename transience::ownee

Definition at line 28 of file node.hpp.

◆ refs_t

template<typename T , typename MemoryPolicy >
using immer::detail::arrays::node< T, MemoryPolicy >::refs_t = typename memory::refcount

Definition at line 27 of file node.hpp.

◆ transience

template<typename T , typename MemoryPolicy >
using immer::detail::arrays::node< T, MemoryPolicy >::transience = typename memory::transience_t

Definition at line 26 of file node.hpp.

Member Function Documentation

◆ can_mutate()

◆ copy_e() [1/2]

◆ copy_e() [2/2]

template<typename T , typename MemoryPolicy >
static node_t* immer::detail::arrays::node< T, MemoryPolicy >::copy_e ( edit_t  e,
size_t  n,
node_t p,
size_t  count 
)
inlinestatic

◆ copy_n() [1/2]

◆ copy_n() [2/2]

template<typename T , typename MemoryPolicy >
static node_t* immer::detail::arrays::node< T, MemoryPolicy >::copy_n ( size_t  n,
node_t p,
size_t  count 
)
inlinestatic

◆ data() [1/2]

◆ data() [2/2]

template<typename T , typename MemoryPolicy >
T* immer::detail::arrays::node< T, MemoryPolicy >::data ( )
inline

Definition at line 57 of file node.hpp.

References immer::detail::arrays::node< T, MemoryPolicy >::impl.

◆ delete_n()

◆ fill_n()

◆ make_e()

template<typename T , typename MemoryPolicy >
static node_t* immer::detail::arrays::node< T, MemoryPolicy >::make_e ( edit_t  e,
size_t  n 
)
inlinestatic

Definition at line 77 of file node.hpp.

References immer::detail::arrays::node< T, MemoryPolicy >::make_n().

◆ make_n()

◆ ownee() [1/2]

template<typename T , typename MemoryPolicy >
const ownee_t& immer::detail::arrays::node< T, MemoryPolicy >::ownee ( ) const
inline

◆ ownee() [2/2]

template<typename T , typename MemoryPolicy >
ownee_t& immer::detail::arrays::node< T, MemoryPolicy >::ownee ( )
inline

Definition at line 54 of file node.hpp.

References immer::detail::arrays::node< T, MemoryPolicy >::impl.

◆ refs()

◆ sizeof_n()

template<typename T , typename MemoryPolicy >
static constexpr std::size_t immer::detail::arrays::node< T, MemoryPolicy >::sizeof_n ( size_t  count)
inlinestatic

Member Data Documentation

◆ impl


The documentation for this struct was generated from the following file:
Released under the MIT license