Skip to content

File serialization.hpp

FileList > backends > cxx > include > zmbt > reflect > serialization.hpp

Go to the source code of this file

More...

  • #include <type_traits>
  • #include <boost/json.hpp>
  • #include "zmbt/core/preprocessor.hpp"
  • #include "zmbt/core.hpp"
  • #include "ducktyping_traits_pp.hpp"
  • #include "signal_traits.hpp"
  • #include "serialization_defaults.hpp"

Namespaces

Type Name
namespace zmbt
ZMBT root namespace.
namespace reflect
Reflection metafunctions.

Classes

Type Name
struct has_serialization <class T, class E>
struct serialization< T, detail::enable_for_custom_serialization< T > > <class T>
struct serialization< T, detail::enable_for_default_serialization< T > > <class T>

Macros

Type Name
define ZMBT_INJECT_JSON_TAG_INVOKE using [**zmbt::reflect::tag\_invoke**](namespacezmbt_1_1reflect.md#function-tag_invoke);
define ZMBT_INJECT_JSON_TAG_INVOKE_INTO (...) ZMBT\_PP\_INJECT\_CODE\_INTO\_NS(ZMBT\_INJECT\_JSON\_TAG\_INVOKE, \_\_VA\_ARGS\_\_)
define ZMBT_INJECT_OSTREAM_OPERATOR using zmbt::reflect::operator&lt;&lt;;
define ZMBT_INJECT_OSTREAM_OPERATOR_INTO (...) ZMBT\_PP\_INJECT\_CODE\_INTO\_NS(ZMBT\_INJECT\_OSTREAM\_OPERATOR, \_\_VA\_ARGS\_\_)
define ZMBT_INJECT_SERIALIZATION ZMBT\_INJECT\_JSON\_TAG\_INVOKE ZMBT\_INJECT\_OSTREAM\_OPERATOR
define ZMBT_INJECT_SERIALIZATION_INTO (...) ZMBT\_PP\_INJECT\_CODE\_INTO\_NS(ZMBT\_INJECT\_SERIALIZATION, \_\_VA\_ARGS\_\_)

Detailed Description

Copyright:

(c) Copyright 2022-2023 Volvo Car Corporation

Copyright:

(c) Copyright 2024 Zenseact AB

** **

SPDX-License-Identifier: Apache-2.0

Macro Definition Documentation

define ZMBT_INJECT_JSON_TAG_INVOKE

#define ZMBT_INJECT_JSON_TAG_INVOKE `using zmbt::reflect::tag_invoke ;`

define ZMBT_INJECT_JSON_TAG_INVOKE_INTO

#define ZMBT_INJECT_JSON_TAG_INVOKE_INTO (
    ...
) `ZMBT_PP_INJECT_CODE_INTO_NS(ZMBT_INJECT_JSON_TAG_INVOKE, __VA_ARGS__)`

define ZMBT_INJECT_OSTREAM_OPERATOR

#define ZMBT_INJECT_OSTREAM_OPERATOR `using zmbt::reflect::operator<<;`

define ZMBT_INJECT_OSTREAM_OPERATOR_INTO

#define ZMBT_INJECT_OSTREAM_OPERATOR_INTO (
    ...
) `ZMBT_PP_INJECT_CODE_INTO_NS(ZMBT_INJECT_OSTREAM_OPERATOR, __VA_ARGS__)`

define ZMBT_INJECT_SERIALIZATION

#define ZMBT_INJECT_SERIALIZATION `ZMBT_INJECT_JSON_TAG_INVOKE ZMBT_INJECT_OSTREAM_OPERATOR`

define ZMBT_INJECT_SERIALIZATION_INTO

#define ZMBT_INJECT_SERIALIZATION_INTO (
    ...
) `ZMBT_PP_INJECT_CODE_INTO_NS(ZMBT_INJECT_SERIALIZATION, __VA_ARGS__)`


The documentation for this class was generated from the following file zmbt-framework/zmbt-framework/backends/cxx/include/zmbt/reflect/serialization.hpp