#include "di/function/tag_invoke.h"
#include "di/io/interface/writer.h"
#include "di/io/size_writer.h"
#include "di/meta/language.h"
#include "di/reflect/reflect.h"
#include "di/types/in_place_type.h"
#include "di/util/declval.h"
Go to the source code of this file.
Namespaces | |
namespace | di |
namespace | di::concepts |
namespace | di::meta |
namespace | di::serialization |
namespace | di::serialization::detail |
Concepts | |
concept | di::concepts::Serializer |
concept | di::concepts::SerializationFormat |
concept | di::concepts::Serializable |
Typedefs | |
template<concepts::Serializer S> | |
using | di::meta::SerializationFormat = typename meta::RemoveCVRef<S>::SerializationFormat |
template<typename T, typename Writer = any::AnyRef<io::Writer>, typename... Args> | |
using | di::meta::Serializer |
template<typename S> | |
using | di::meta::SerializeResult = meta::WriterResult<void, decltype(util::declval<S>().writer())> |
template<concepts::SerializationFormat S, typename T> | |
using | di::meta::SerializeMetadata = decltype(serialization::serialize_metadata(in_place_type<T>, in_place_type<S>)) |
template<concepts::SerializationFormat S, typename T> | |
using | di::SerializeMetadata |
template<typename S> | |
using | di::SerializeResult |
Variables | |
constexpr auto | di::serialization::serializer = detail::SerializerFunction {} |
constexpr auto | di::serialization::serialize_metadata = detail::SerializeMetadataFunction {} |
constexpr auto | di::serialization::serialize = detail::SerializeFunction {} |
constexpr auto | di::serialization::serialize_size = detail::SerializeSizeFunction {} |
constexpr auto | di::serialization::serializable = detail::SerializableFunction {} |
constexpr auto | di::serialize |
constexpr auto | di::serialize_size |
constexpr auto | di::serializer |