Dash Core Source Documentation (0.16.0.1)

Find detailed information regarding the Dash Core source code.

immer::detail::rbts::push_tail_mut_visitor< NodeT, Mutating > Struct Template Reference

#include <operations.hpp>

+ Inheritance diagram for immer::detail::rbts::push_tail_mut_visitor< NodeT, Mutating >:
+ Collaboration diagram for immer::detail::rbts::push_tail_mut_visitor< NodeT, Mutating >:

Public Types

using this_t = push_tail_mut_visitor
 
using this_no_mut_t = push_tail_mut_visitor< NodeT, false >
 
using node_t = NodeT
 
using edit_t = typename NodeT::edit_t
 

Static Public Member Functions

template<typename Pos >
static node_tvisit_relaxed (Pos &&pos, edit_t e, node_t *tail, count_t ts)
 
template<typename Pos , typename... Args>
static node_tvisit_regular (Pos &&pos, edit_t e, node_t *tail, Args &&...)
 
template<typename Pos , typename... Args>
static node_tvisit_leaf (Pos &&pos, edit_t e, node_t *tail, Args &&...)
 
- Static Public Member Functions inherited from immer::detail::rbts::visitor_base< push_tail_mut_visitor< NodeT, Mutating > >
static decltype(auto) visit_node (Args &&...args)
 
static decltype(auto) visit_relaxed (Args &&...args)
 
static decltype(auto) visit_regular (Args &&...args)
 
static decltype(auto) visit_inner (Args &&...args)
 
static decltype(auto) visit_leaf (Args &&...args)
 

Static Public Attributes

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

Detailed Description

template<typename NodeT, bool Mutating = true>
struct immer::detail::rbts::push_tail_mut_visitor< NodeT, Mutating >

Definition at line 648 of file operations.hpp.

Member Typedef Documentation

◆ edit_t

template<typename NodeT , bool Mutating = true>
using immer::detail::rbts::push_tail_mut_visitor< NodeT, Mutating >::edit_t = typename NodeT::edit_t

Definition at line 657 of file operations.hpp.

◆ node_t

template<typename NodeT , bool Mutating = true>
using immer::detail::rbts::push_tail_mut_visitor< NodeT, Mutating >::node_t = NodeT

Definition at line 656 of file operations.hpp.

◆ this_no_mut_t

template<typename NodeT , bool Mutating = true>
using immer::detail::rbts::push_tail_mut_visitor< NodeT, Mutating >::this_no_mut_t = push_tail_mut_visitor<NodeT, false>

Definition at line 655 of file operations.hpp.

◆ this_t

template<typename NodeT , bool Mutating = true>
using immer::detail::rbts::push_tail_mut_visitor< NodeT, Mutating >::this_t = push_tail_mut_visitor

Definition at line 654 of file operations.hpp.

Member Function Documentation

◆ visit_leaf()

template<typename NodeT , bool Mutating = true>
template<typename Pos , typename... Args>
static node_t* immer::detail::rbts::push_tail_mut_visitor< NodeT, Mutating >::visit_leaf ( Pos &&  pos,
edit_t  e,
node_t tail,
Args &&  ... 
)
inlinestatic

Definition at line 745 of file operations.hpp.

References IMMER_UNREACHABLE.

◆ visit_regular()

template<typename NodeT , bool Mutating = true>
template<typename Pos , typename... Args>
static node_t* immer::detail::rbts::push_tail_mut_visitor< NodeT, Mutating >::visit_regular ( Pos &&  pos,
edit_t  e,
node_t tail,
Args &&  ... 
)
inlinestatic

◆ visit_relaxed()

Member Data Documentation

◆ B

template<typename NodeT , bool Mutating = true>
constexpr auto immer::detail::rbts::push_tail_mut_visitor< NodeT, Mutating >::B = NodeT::bits
static

◆ BL

template<typename NodeT , bool Mutating = true>
constexpr auto immer::detail::rbts::push_tail_mut_visitor< NodeT, Mutating >::BL = NodeT::bits_leaf
static

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