From 708a1bac4ed00dc2f53b342d17f06da8496eb628 Mon Sep 17 00:00:00 2001 From: Eladash Date: Fri, 16 Apr 2021 08:55:54 +0300 Subject: [PATCH] Input archive: Add implicit serialization operator --- include/cereal/cereal.hpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/include/cereal/cereal.hpp b/include/cereal/cereal.hpp index 750fb23b..37578d35 100644 --- a/include/cereal/cereal.hpp +++ b/include/cereal/cereal.hpp @@ -700,6 +700,16 @@ namespace cereal return *self; } + //! Implicit conversion for serialization constant types + // Such as "const int value = ar;" + template && std::is_copy_constructible_v>> + operator T() + { + T value{}; + process( value ); + return value; + } + //! Serializes any data marked for deferment using defer /*! This will cause any data wrapped in DeferredData to be immediately serialized */ void serializeDeferments()