15 #include <type_traits>
19 #if SEQAN3_WITH_CEREAL
20 # include <cereal/archives/binary.hpp>
21 # include <cereal/details/traits.hpp>
41 #if SEQAN3_WITH_CEREAL
64 #if SEQAN3_WITH_CEREAL
83 #if SEQAN3_WITH_CEREAL
106 #if SEQAN3_WITH_CEREAL
107 template <
typename t>
110 template <
typename t>
148 #if SEQAN3_WITH_CEREAL
149 template <
typename value_t,
150 typename input_archive_t = cereal::BinaryInputArchive,
151 typename output_archive_t = cereal::BinaryOutputArchive>
152 concept
cerealisable = cereal::traits::is_input_serializable<value_t, input_archive_t>::value
153 && cereal::traits::is_output_serializable<value_t, output_archive_t>::value;
155 template <
typename value_t,
typename input_archive_t =
void,
typename output_archive_t =
void>
162 namespace seqan3::detail
169 #if SEQAN3_WITH_CEREAL
170 template <
typename type>
171 using strip_cereal_wrapper_t =
typename cereal::traits::strip_minimal<std::decay_t<type>>::type;
173 template <
typename type>
174 using strip_cereal_wrapper_t = type;
All archives of the Cereal library satisfy this.
All output archives of the Cereal library satisfy this.
All text archives of the Cereal library satisfy this.
Specifies the requirements for types that are serialisable via Cereal.
The main SeqAn3 namespace.
Definition: aligned_sequence_concept.hpp:29