libkazv
clientutil.hpp File Reference
#include <libkazv-config.hpp>
#include <string>
#include <tuple>
#include <immer/map.hpp>
#include <zug/transducer/filter.hpp>
#include <zug/transducer/eager.hpp>
#include <lager/deps.hpp>
#include <boost/container_hash/hash.hpp>
#include <boost/serialization/string.hpp>
#include <cursorutil.hpp>
#include <jobinterface.hpp>
#include <eventinterface.hpp>
#include "thread-safety-helper.hpp"
Include dependency graph for clientutil.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  Kazv::KeyOfState
 
struct  std::hash< Kazv::KeyOfState >
 

Namespaces

 Kazv
 
 std
 

Macros

#define KAZV_WRAP_ATTR(_type, _d, _attr)
 

Functions

template<class K , class V , class List , class Func >
immer::map< K, V > Kazv::merge (immer::map< K, V > map, List list, Func keyOf)
 
std::string Kazv::keyOfPresence (Event e)
 
std::string Kazv::keyOfAccountData (Event e)
 
std::string Kazv::keyOfTimeline (Event e)
 
std::string Kazv::keyOfEphemeral (Event e)
 
template<class Archive >
void Kazv::serialize (Archive &ar, KeyOfState &m, std::uint32_t const)
 
bool Kazv::operator== (KeyOfState a, KeyOfState b)
 
KeyOfState Kazv::keyOfState (Event e)
 
template<class Context >
JobInterface & Kazv::getJobHandler (Context &&ctx)
 
template<class Context >
EventInterface & Kazv::getEventEmitter (Context &&ctx)
 
template<class ImmerT1 , class RangeT2 , class Pred , class Func >
ImmerT1 Kazv::sortedUniqueMerge (ImmerT1 base, RangeT2 addon, Pred exists, Func keyOf)
 
std::string Kazv::increaseTxnId (std::string cur)
 
std::string Kazv::getTxnId (Event, ClientModel &m)
 

Macro Definition Documentation

◆ KAZV_WRAP_ATTR

#define KAZV_WRAP_ATTR (   _type,
  _d,
  _attr 
)
Value:
inline auto _attr() const { \
KAZV_VERIFY_THREAD_ID(); \
return (_d)[&_type::_attr]; \
}