23#ifndef VCL_CONCEPTS_SERIALIZATION_H
24#define VCL_CONCEPTS_SERIALIZATION_H
26#include "const_correctness.h"
43 { os << value } -> std::convertible_to<std::ostream&>;
56 { is >> value } -> std::convertible_to<std::istream&>;
68concept Serializable =
requires (T&& obj, std::ostream& os, std::istream& is) {
69 { obj.serialize(os) } -> std::same_as<void>;
71 { obj.deserialize(is) } -> std::same_as<void>;
The IsConst concept is satisfied if T satisfies one of the following conditions:
Definition const_correctness.h:43
Concept that is evaluated true if T is an output streamable type.
Definition serialization.h:42
Concept that is evaluated true if T is serializable.
Definition serialization.h:68