libkazv
immer-utils.hpp File Reference
#include "libkazv-config.hpp"
#include <tuple>
Include dependency graph for immer-utils.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 Kazv
 

Functions

template<class T >
auto Kazv::getIn (T &&item)
 
template<class ImmerT , class K , class ... Keys>
auto Kazv::getIn (ImmerT &&container, K &&key, Keys &&...keys)
 
template<class T >
auto Kazv::setIn (T, T newVal)
 
template<class ImmerT , class K >
auto Kazv::setIn (ImmerT container, std::decay_t< decltype(getIn(std::declval< ImmerT >(), std::declval< K >()))> newVal, K &&key) -> std::decay_t< ImmerT >
 
template<class ImmerT , class K , class ... Keys>
auto Kazv::setIn (ImmerT container, std::decay_t< decltype(getIn(std::declval< ImmerT >(), std::declval< K >(), std::declval< Keys >()...))> newVal, K &&key, Keys &&...keys) -> std::decay_t< ImmerT >
 
template<class T , class Func >
auto Kazv::updateIn (T oldVal, Func func) -> T
 
template<class ImmerT , class Func , class ... Keys>
auto Kazv::updateIn (ImmerT container, Func func, Keys &&...keys) -> ImmerT