Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
streams.hpp File Reference
#include "barretenberg/serialize/msgpack.hpp"
#include "barretenberg/serialize/msgpack_apply.hpp"
#include <iomanip>
#include <map>
#include <memory>
#include <optional>
#include <ostream>
#include <vector>

Go to the source code of this file.

Namespaces

namespace  serialize
 
namespace  std
 STL namespace.
 

Functions

template<typename T >
void serialize::_msgpack_stream_write (std::ostream &os, const std::shared_ptr< T > &field)
 Helper method for streaming msgpack values, specialized for shared_ptr.
 
void serialize::_msgpack_stream_write (std::ostream &os, const auto &field)
 Helper method for streaming msgpack values, normal case.
 
void serialize::_msgpack_stream_write_key_value_pairs (std::ostream &os)
 Recursive helper method for streaming msgpack key value pairs, base case.
 
void serialize::_msgpack_stream_write_key_value_pairs (std::ostream &os, const std::string &key, const auto &value, const auto &... rest)
 Recursive helper method for streaming msgpack key value pairs, default arg case.
 
void serialize::_msgpack_stream_write_key_value_pairs (std::ostream &os, const std::string &key, const msgpack_concepts::HasMsgPack auto &value, const auto &... rest)
 Recursive helper method for streaming msgpack key value pairs, msgpack arg case We add a new line as this was the previous output captured in snapshot tests. TODO(AD): Ideally some tab indenting?
 
template<msgpack_concepts::HasMsgPack T>
std::ostream & std::operator<< (std::ostream &os, const T &obj)
 Automatically derived stream operator for any object that defines .msgpack() (implicitly defined by MSGPACK_FIELDS). Note this is duplicated as it must be seen in both std and global namespaces.
 
std::ostream & std::operator<< (std::ostream &os, std::vector< uint8_t > const &arr)
 
template<std::integral T, typename A >
std::ostream & std::operator<< (std::ostream &os, std::vector< T, A > const &arr)
 
template<typename T , typename A >
requires (!std::integral<T>)
std::ostream & std::operator<< (std::ostream &os, std::vector< T, A > const &arr)
 
template<size_t S>
std::ostream & std::operator<< (std::ostream &os, std::array< uint8_t, S > const &arr)
 
template<typename T , size_t S>
std::ostream & std::operator<< (std::ostream &os, std::array< T, S > const &arr)
 
template<typename T , typename U >
std::ostream & std::operator<< (std::ostream &os, std::pair< T, U > const &pair)
 
template<typename T >
std::ostream & std::operator<< (std::ostream &os, std::optional< T > const &opt)
 
template<typename T , typename U >
std::ostream & std::operator<< (std::ostream &os, std::map< T, U > const &map)