Dash Core Source Documentation (0.16.0.1)

Find detailed information regarding the Dash Core source code.

immer::detail::dvektor::impl< T, B, MP > Struct Template Reference

#include <dvektor_impl.hpp>

Public Types

using inner_t = inner_node< T, B, MP >
 
using leaf_t = leaf_node< T, B >
 
using node_t = node< T, B, MP >
 
using node_ptr_t = node_ptr< T, B, MP >
 
using ref_t = ref< T, B, MP >
 

Public Member Functions

void goto_pos_writable (std::size_t old_index, std::size_t new_index, std::size_t xr)
 
void goto_fresh_pos_writable (std::size_t old_index, std::size_t new_index, std::size_t xr)
 
impl push_back (T value) const
 
const T & get (std::size_t index) const
 
template<typename FnT >
impl update (std::size_t idx, FnT &&fn) const
 
impl assoc (std::size_t idx, T value) const
 

Static Public Member Functions

template<typename ... Ts>
static auto make_node (Ts &&...xs)
 

Public Attributes

std::size_t size
 
std::size_t focus
 
bool dirty
 
ref_t p
 

Detailed Description

template<typename T, int B, typename MP>
struct immer::detail::dvektor::impl< T, B, MP >

Definition at line 312 of file dvektor_impl.hpp.

Member Typedef Documentation

◆ inner_t

template<typename T, int B, typename MP>
using immer::detail::dvektor::impl< T, B, MP >::inner_t = inner_node<T, B, MP>

Definition at line 314 of file dvektor_impl.hpp.

◆ leaf_t

template<typename T, int B, typename MP>
using immer::detail::dvektor::impl< T, B, MP >::leaf_t = leaf_node<T, B>

Definition at line 315 of file dvektor_impl.hpp.

◆ node_ptr_t

template<typename T, int B, typename MP>
using immer::detail::dvektor::impl< T, B, MP >::node_ptr_t = node_ptr<T, B, MP>

Definition at line 317 of file dvektor_impl.hpp.

◆ node_t

template<typename T, int B, typename MP>
using immer::detail::dvektor::impl< T, B, MP >::node_t = node<T, B, MP>

Definition at line 316 of file dvektor_impl.hpp.

◆ ref_t

template<typename T, int B, typename MP>
using immer::detail::dvektor::impl< T, B, MP >::ref_t = ref<T, B, MP>

Definition at line 318 of file dvektor_impl.hpp.

Member Function Documentation

◆ assoc()

template<typename T, int B, typename MP>
impl immer::detail::dvektor::impl< T, B, MP >::assoc ( std::size_t  idx,
value 
) const
inline

Definition at line 394 of file dvektor_impl.hpp.

Referenced by immer::dvektor< T, B, MemoryPolicy >::assoc().

◆ get()

template<typename T, int B, typename MP>
const T& immer::detail::dvektor::impl< T, B, MP >::get ( std::size_t  index) const
inline

Definition at line 379 of file dvektor_impl.hpp.

Referenced by immer::dvektor< T, B, MemoryPolicy >::operator[]().

◆ goto_fresh_pos_writable()

template<typename T, int B, typename MP>
void immer::detail::dvektor::impl< T, B, MP >::goto_fresh_pos_writable ( std::size_t  old_index,
std::size_t  new_index,
std::size_t  xr 
)
inline

Definition at line 343 of file dvektor_impl.hpp.

◆ goto_pos_writable()

template<typename T, int B, typename MP>
void immer::detail::dvektor::impl< T, B, MP >::goto_pos_writable ( std::size_t  old_index,
std::size_t  new_index,
std::size_t  xr 
)
inline

Definition at line 331 of file dvektor_impl.hpp.

◆ make_node()

template<typename T, int B, typename MP>
template<typename ... Ts>
static auto immer::detail::dvektor::impl< T, B, MP >::make_node ( Ts &&...  xs)
inlinestatic

◆ push_back()

template<typename T, int B, typename MP>
impl immer::detail::dvektor::impl< T, B, MP >::push_back ( value) const
inline

Definition at line 355 of file dvektor_impl.hpp.

Referenced by immer::dvektor< T, B, MemoryPolicy >::push_back().

◆ update()

template<typename T, int B, typename MP>
template<typename FnT >
impl immer::detail::dvektor::impl< T, B, MP >::update ( std::size_t  idx,
FnT &&  fn 
) const
inline

Member Data Documentation

◆ dirty

◆ focus

◆ p

◆ size


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