Dash Core Source Documentation (0.16.0.1)

Find detailed information regarding the Dash Core source code.

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

#include <operations.hpp>

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

Public Types

using node_t = NodeT
 
using this_t = slice_left_mut_visitor
 
using edit_t = typename NodeT::edit_t
 
using value_t = typename NodeT::value_t
 
using relaxed_t = typename NodeT::relaxed_t
 
using result_t = std::tuple< shift_t, NodeT * >
 
using no_collapse_t = slice_left_mut_visitor< NodeT, false, true >
 
using no_collapse_no_mut_t = slice_left_mut_visitor< NodeT, false, false >
 
using no_mut_t = slice_left_mut_visitor< NodeT, Collapse, false >
 

Static Public Member Functions

template<typename PosT >
static result_t visit_relaxed (PosT &&pos, size_t first, edit_t e)
 
template<typename PosT >
static result_t visit_regular (PosT &&pos, size_t first, edit_t e)
 
template<typename PosT >
static result_t visit_leaf (PosT &&pos, size_t first, edit_t e)
 
- Static Public Member Functions inherited from immer::detail::rbts::visitor_base< slice_left_mut_visitor< NodeT, Collapse, 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 Collapse = true, bool Mutating = true>
struct immer::detail::rbts::slice_left_mut_visitor< NodeT, Collapse, Mutating >

Definition at line 1157 of file operations.hpp.

Member Typedef Documentation

◆ edit_t

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

Definition at line 1162 of file operations.hpp.

◆ no_collapse_no_mut_t

template<typename NodeT, bool Collapse = true, bool Mutating = true>
using immer::detail::rbts::slice_left_mut_visitor< NodeT, Collapse, Mutating >::no_collapse_no_mut_t = slice_left_mut_visitor<NodeT, false, false>

Definition at line 1169 of file operations.hpp.

◆ no_collapse_t

template<typename NodeT, bool Collapse = true, bool Mutating = true>
using immer::detail::rbts::slice_left_mut_visitor< NodeT, Collapse, Mutating >::no_collapse_t = slice_left_mut_visitor<NodeT, false, true>

Definition at line 1168 of file operations.hpp.

◆ no_mut_t

template<typename NodeT, bool Collapse = true, bool Mutating = true>
using immer::detail::rbts::slice_left_mut_visitor< NodeT, Collapse, Mutating >::no_mut_t = slice_left_mut_visitor<NodeT, Collapse, false>

Definition at line 1170 of file operations.hpp.

◆ node_t

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

Definition at line 1160 of file operations.hpp.

◆ relaxed_t

template<typename NodeT, bool Collapse = true, bool Mutating = true>
using immer::detail::rbts::slice_left_mut_visitor< NodeT, Collapse, Mutating >::relaxed_t = typename NodeT::relaxed_t

Definition at line 1164 of file operations.hpp.

◆ result_t

template<typename NodeT, bool Collapse = true, bool Mutating = true>
using immer::detail::rbts::slice_left_mut_visitor< NodeT, Collapse, Mutating >::result_t = std::tuple<shift_t, NodeT*>

Definition at line 1166 of file operations.hpp.

◆ this_t

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

Definition at line 1161 of file operations.hpp.

◆ value_t

template<typename NodeT, bool Collapse = true, bool Mutating = true>
using immer::detail::rbts::slice_left_mut_visitor< NodeT, Collapse, Mutating >::value_t = typename NodeT::value_t

Definition at line 1163 of file operations.hpp.

Member Function Documentation

◆ visit_leaf()

template<typename NodeT, bool Collapse = true, bool Mutating = true>
template<typename PosT >
static result_t immer::detail::rbts::slice_left_mut_visitor< NodeT, Collapse, Mutating >::visit_leaf ( PosT &&  pos,
size_t  first,
edit_t  e 
)
inlinestatic

◆ visit_regular()

◆ visit_relaxed()

Member Data Documentation

◆ B

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

Definition at line 1172 of file operations.hpp.

◆ BL

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

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