Common serializers. More...
Classes | |
| struct | SaxStream | 
| struct | To | 
Functions | |
| template<typename... Types> | |
| formats::json::Value | Serialize (const boost::variant< Types... > &value, To< formats::json::Value >) | 
| template<class Rep , class Period > | |
| static json::Value | Serialize (std::chrono::duration< Rep, Period > duration, To< formats::json::Value >) | 
| template<class Rep , class Period > | |
| static void | WriteToStream (std::chrono::duration< Rep, Period > duration, formats::json::StringBuilder &sw) | 
| template<typename... Types> | |
| formats::json::Value | Serialize (const std::variant< Types... > &value, To< formats::json::Value >) | 
| template<typename T , typename Value > | |
| Value | Serialize (const boost::optional< T > &value, To< Value >) | 
| template<typename Value > | |
| Value | Serialize (const boost::uuids::uuid &value, To< Value >) | 
| Outputs UUID in format: 12345678-1234-1234-1234-123412345678.   | |
| template<typename StringBuilder > | |
| void | WriteToStream (const boost::uuids::uuid &value, StringBuilder &sw) | 
| template<typename T , typename Value > | |
| std::enable_if_t< meta::kIsRange< T > &&!meta::kIsMap< T > &&!std::is_same_v< T, boost::uuids::uuid >, Value > | Serialize (const T &value, To< Value >) | 
| Common containers serialization (vector/set)   | |
| template<typename T , typename Value > | |
| std::enable_if_t< meta::kIsUniqueMap< T >, Value > | Serialize (const T &value, To< Value >) | 
| Mappings serialization.   | |
| template<typename T , typename Value > | |
| Value | Serialize (const std::optional< T > &value, To< Value >) | 
| std::optional serialization   | |
| template<typename Value , typename Duration > | |
| Value | Serialize (const utils::datetime::TimeOfDay< Duration > &value, To< Value >) | 
| template<typename Value , typename Duration , typename StringBuilder > | |
| void | WriteToStream (const utils::datetime::TimeOfDay< Duration > &value, StringBuilder &sw) | 
| template<typename... Types, typename StringBuilder > | |
| void | WriteToStream (const std::variant< Types... > &value, StringBuilder &sw) | 
| Variant serialization.   | |
| template<typename T , typename StringBuilder > | |
| void | WriteToStream (const std::optional< T > &value, StringBuilder &sw) | 
| std::optional serialization   | |
| template<typename T , typename StringBuilder > | |
| std::enable_if_t<!std::is_arithmetic_v< T > > | WriteToStream (const T &value, StringBuilder &sw) | 
| json::Value | Serialize (const google::protobuf::Message &message, To< json::Value >) | 
Common serializers.
| Value formats::serialize::Serialize | ( | const boost::optional< T > & | value, | 
| To< Value > | |||
| ) | 
Definition at line 18 of file boost_optional.hpp.
| Value formats::serialize::Serialize | ( | const boost::uuids::uuid & | value, | 
| To< Value > | |||
| ) | 
Outputs UUID in format: 12345678-1234-1234-1234-123412345678.
Definition at line 24 of file boost_uuid.hpp.
| formats::json::Value formats::serialize::Serialize | ( | const boost::variant< Types... > & | value, | 
| To< formats::json::Value > | |||
| ) | 
Definition at line 18 of file serialize_boost_variant.hpp.
| Value formats::serialize::Serialize | ( | const std::optional< T > & | value, | 
| To< Value > | |||
| ) | 
std::optional serialization
Definition at line 50 of file common_containers.hpp.
| formats::json::Value formats::serialize::Serialize | ( | const std::variant< Types... > & | value, | 
| To< formats::json::Value > | |||
| ) | 
Definition at line 17 of file serialize_variant.hpp.
| std::enable_if_t< meta::kIsRange< T > &&!meta::kIsMap< T > && !std::is_same_v< T, boost::uuids::uuid >, Value > formats::serialize::Serialize | ( | const T & | value, | 
| To< Value > | |||
| ) | 
Common containers serialization (vector/set)
Definition at line 28 of file common_containers.hpp.
| std::enable_if_t< meta::kIsUniqueMap< T >, Value > formats::serialize::Serialize | ( | const T & | value, | 
| To< Value > | |||
| ) | 
Mappings serialization.
Definition at line 39 of file common_containers.hpp.
| Value formats::serialize::Serialize | ( | const utils::datetime::TimeOfDay< Duration > & | value, | 
| To< Value > | |||
| ) | 
Definition at line 18 of file time_of_day.hpp.
      
  | 
  static | 
Definition at line 19 of file serialize_duration.hpp.
| void formats::serialize::WriteToStream | ( | const boost::uuids::uuid & | value, | 
| StringBuilder & | sw | ||
| ) | 
Definition at line 29 of file boost_uuid.hpp.
| void formats::serialize::WriteToStream | ( | const std::optional< T > & | value, | 
| StringBuilder & | sw | ||
| ) | 
std::optional serialization
Definition at line 34 of file write_to_stream.hpp.
| void formats::serialize::WriteToStream | ( | const std::variant< Types... > & | value, | 
| StringBuilder & | sw | ||
| ) | 
Variant serialization.
Definition at line 27 of file write_to_stream.hpp.
| std::enable_if_t<!std::is_arithmetic_v< T > > formats::serialize::WriteToStream | ( | const T & | value, | 
| StringBuilder & | sw | ||
| ) | 
Handle ranges, fall back to using formats::*Serialize
The signature of this WriteToStream must remain the less specialized one, so that it is not preferred over other functions.
Definition at line 78 of file write_to_stream.hpp.
| void formats::serialize::WriteToStream | ( | const utils::datetime::TimeOfDay< Duration > & | value, | 
| StringBuilder & | sw | ||
| ) | 
Definition at line 23 of file time_of_day.hpp.
      
  | 
  static | 
Definition at line 27 of file serialize_duration.hpp.