Dash Core Source Documentation (0.16.0.1)

Find detailed information regarding the Dash Core source code.

immer::detail::rbts::full_pos< NodeT > Struct Template Reference

#include <position.hpp>

Public Types

using node_t = NodeT
 

Public Member Functions

count_t count () const
 
node_tnode () const
 
size_t size () const
 
shift_t shift () const
 
count_t index (size_t idx) const
 
count_t subindex (size_t idx) const
 
size_t size (count_t offset) const
 
size_t size_sbh (count_t offset, size_t) const
 
size_t size_before (count_t offset) const
 
void copy_sizes (count_t offset, count_t n, size_t init, size_t *sizes)
 
template<typename Visitor , typename... Args>
void each (Visitor v, Args &&... args)
 
template<typename Visitor , typename... Args>
bool each_pred (Visitor v, Args &&... args)
 
template<typename Visitor , typename... Args>
bool each_pred_zip (Visitor v, node_t *other, Args &&... args)
 
template<typename Visitor , typename... Args>
bool each_pred_i (Visitor v, count_t i, count_t n, Args &&... args)
 
template<typename Visitor , typename... Args>
void each_i (Visitor v, count_t i, count_t n, Args &&... args)
 
template<typename Visitor , typename... Args>
bool each_pred_right (Visitor v, count_t start, Args &&... args)
 
template<typename Visitor , typename... Args>
bool each_pred_left (Visitor v, count_t last, Args &&... args)
 
template<typename Visitor , typename... Args>
void each_sub (Visitor v, Args &&... args)
 
template<typename Visitor , typename... Args>
void each_left_sub (Visitor v, Args &&... args)
 
template<typename Visitor , typename... Args>
void each_right_sub (Visitor v, Args &&... args)
 
template<typename Visitor , typename... Args>
void each_right (Visitor v, count_t start, Args &&... args)
 
template<typename Visitor , typename... Args>
void each_left (Visitor v, count_t last, Args &&... args)
 
template<typename Visitor , typename... Args>
decltype(auto) towards (Visitor v, size_t idx, Args &&... args)
 
template<typename Visitor , typename... Args>
decltype(auto) towards_oh_ch (Visitor v, size_t idx, count_t offset_hint, count_t, Args &&... args)
 
template<typename Visitor , typename... Args>
decltype(auto) towards_oh (Visitor v, size_t idx, count_t offset_hint, Args &&... args)
 
template<typename Visitor , typename... Args>
decltype(auto) towards_sub_oh (Visitor v, size_t idx, count_t offset_hint, Args &&... args)
 
template<typename Visitor , typename... Args>
decltype(auto) first_sub (Visitor v, Args &&... args)
 
template<typename Visitor , typename... Args>
decltype(auto) first_sub_leaf (Visitor v, Args &&... args)
 
template<typename Visitor , typename... Args>
decltype(auto) first_sub_inner (Visitor v, Args &&... args)
 
template<typename Visitor , typename... Args>
decltype(auto) nth_sub (count_t idx, Visitor v, Args &&... args)
 
template<typename Visitor , typename... Args>
decltype(auto) nth_sub_leaf (count_t idx, Visitor v, Args &&... args)
 
template<typename Visitor , typename ... Args>
decltype(auto) visit (Visitor v, Args &&...args)
 

Public Attributes

node_tnode_
 
shift_t shift_
 

Static Public Attributes

static constexpr auto B = NodeT::bits
 
static constexpr auto BL = NodeT::bits_leaf
 

Detailed Description

template<typename NodeT>
struct immer::detail::rbts::full_pos< NodeT >

Definition at line 1050 of file position.hpp.

Member Typedef Documentation

◆ node_t

template<typename NodeT >
using immer::detail::rbts::full_pos< NodeT >::node_t = NodeT

Definition at line 1055 of file position.hpp.

Member Function Documentation

◆ copy_sizes()

template<typename NodeT >
void immer::detail::rbts::full_pos< NodeT >::copy_sizes ( count_t  offset,
count_t  n,
size_t  init,
size_t sizes 
)
inline

Definition at line 1069 of file position.hpp.

References immer::detail::rbts::full_pos< NodeT >::shift_.

◆ count()

template<typename NodeT >
count_t immer::detail::rbts::full_pos< NodeT >::count ( ) const
inline

◆ each()

◆ each_i()

◆ each_left()

template<typename NodeT >
template<typename Visitor , typename... Args>
void immer::detail::rbts::full_pos< NodeT >::each_left ( Visitor  v,
count_t  last,
Args &&...  args 
)
inline

Definition at line 1199 of file position.hpp.

References immer::detail::rbts::full_pos< NodeT >::each_i().

◆ each_left_sub()

template<typename NodeT >
template<typename Visitor , typename... Args>
void immer::detail::rbts::full_pos< NodeT >::each_left_sub ( Visitor  v,
Args &&...  args 
)
inline

Definition at line 1187 of file position.hpp.

References immer::detail::rbts::full_pos< NodeT >::each_i().

◆ each_pred()

◆ each_pred_i()

◆ each_pred_left()

template<typename NodeT >
template<typename Visitor , typename... Args>
bool immer::detail::rbts::full_pos< NodeT >::each_pred_left ( Visitor  v,
count_t  last,
Args &&...  args 
)
inline

◆ each_pred_right()

template<typename NodeT >
template<typename Visitor , typename... Args>
bool immer::detail::rbts::full_pos< NodeT >::each_pred_right ( Visitor  v,
count_t  start,
Args &&...  args 
)
inline

◆ each_pred_zip()

template<typename NodeT >
template<typename Visitor , typename... Args>
bool immer::detail::rbts::full_pos< NodeT >::each_pred_zip ( Visitor  v,
node_t other,
Args &&...  args 
)
inline

◆ each_right()

template<typename NodeT >
template<typename Visitor , typename... Args>
void immer::detail::rbts::full_pos< NodeT >::each_right ( Visitor  v,
count_t  start,
Args &&...  args 
)
inline

Definition at line 1195 of file position.hpp.

References immer::detail::rbts::full_pos< NodeT >::each_i().

◆ each_right_sub()

template<typename NodeT >
template<typename Visitor , typename... Args>
void immer::detail::rbts::full_pos< NodeT >::each_right_sub ( Visitor  v,
Args &&...  args 
)
inline

Definition at line 1191 of file position.hpp.

References immer::detail::rbts::full_pos< NodeT >::each_i().

◆ each_sub()

template<typename NodeT >
template<typename Visitor , typename... Args>
void immer::detail::rbts::full_pos< NodeT >::each_sub ( Visitor  v,
Args &&...  args 
)
inline

Definition at line 1183 of file position.hpp.

References immer::detail::rbts::full_pos< NodeT >::each().

◆ first_sub()

template<typename NodeT >
template<typename Visitor , typename... Args>
decltype(auto) immer::detail::rbts::full_pos< NodeT >::first_sub ( Visitor  v,
Args &&...  args 
)
inline

◆ first_sub_inner()

template<typename NodeT >
template<typename Visitor , typename... Args>
decltype(auto) immer::detail::rbts::full_pos< NodeT >::first_sub_inner ( Visitor  v,
Args &&...  args 
)
inline

◆ first_sub_leaf()

template<typename NodeT >
template<typename Visitor , typename... Args>
decltype(auto) immer::detail::rbts::full_pos< NodeT >::first_sub_leaf ( Visitor  v,
Args &&...  args 
)
inline

◆ index()

◆ node()

template<typename NodeT >
node_t* immer::detail::rbts::full_pos< NodeT >::node ( ) const
inline

Definition at line 1060 of file position.hpp.

References immer::detail::rbts::full_pos< NodeT >::node_.

◆ nth_sub()

◆ nth_sub_leaf()

template<typename NodeT >
template<typename Visitor , typename... Args>
decltype(auto) immer::detail::rbts::full_pos< NodeT >::nth_sub_leaf ( count_t  idx,
Visitor  v,
Args &&...  args 
)
inline

◆ shift()

template<typename NodeT >
shift_t immer::detail::rbts::full_pos< NodeT >::shift ( ) const
inline

Definition at line 1062 of file position.hpp.

References immer::detail::rbts::full_pos< NodeT >::shift_.

◆ size() [1/2]

template<typename NodeT >
size_t immer::detail::rbts::full_pos< NodeT >::size ( ) const
inline

Definition at line 1061 of file position.hpp.

References immer::detail::rbts::full_pos< NodeT >::shift_.

◆ size() [2/2]

template<typename NodeT >
size_t immer::detail::rbts::full_pos< NodeT >::size ( count_t  offset) const
inline

Definition at line 1065 of file position.hpp.

References immer::detail::rbts::full_pos< NodeT >::shift_.

◆ size_before()

template<typename NodeT >
size_t immer::detail::rbts::full_pos< NodeT >::size_before ( count_t  offset) const
inline

Definition at line 1067 of file position.hpp.

References immer::detail::rbts::full_pos< NodeT >::shift_.

◆ size_sbh()

template<typename NodeT >
size_t immer::detail::rbts::full_pos< NodeT >::size_sbh ( count_t  offset,
size_t   
) const
inline

Definition at line 1066 of file position.hpp.

References immer::detail::rbts::full_pos< NodeT >::shift_.

◆ subindex()

template<typename NodeT >
count_t immer::detail::rbts::full_pos< NodeT >::subindex ( size_t  idx) const
inline

Definition at line 1064 of file position.hpp.

References immer::detail::rbts::full_pos< NodeT >::shift_.

◆ towards()

template<typename NodeT >
template<typename Visitor , typename... Args>
decltype(auto) immer::detail::rbts::full_pos< NodeT >::towards ( Visitor  v,
size_t  idx,
Args &&...  args 
)
inline

◆ towards_oh()

◆ towards_oh_ch()

template<typename NodeT >
template<typename Visitor , typename... Args>
decltype(auto) immer::detail::rbts::full_pos< NodeT >::towards_oh_ch ( Visitor  v,
size_t  idx,
count_t  offset_hint,
count_t  ,
Args &&...  args 
)
inline

◆ towards_sub_oh()

template<typename NodeT >
template<typename Visitor , typename... Args>
decltype(auto) immer::detail::rbts::full_pos< NodeT >::towards_sub_oh ( Visitor  v,
size_t  idx,
count_t  offset_hint,
Args &&...  args 
)
inline

◆ visit()

template<typename NodeT >
template<typename Visitor , typename ... Args>
decltype(auto) immer::detail::rbts::full_pos< NodeT >::visit ( Visitor  v,
Args &&...  args 
)
inline

Definition at line 1286 of file position.hpp.

Member Data Documentation

◆ B

◆ BL

◆ node_

◆ shift_


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