6#include <bond/core/config.h>
8#include "detail/tags.h"
10#include <boost/utility/enable_if.hpp>
23template <
typename T,
typename Reader = ProtocolReader>
26template <
typename Reader>
27class bonded<void, Reader>;
29template <
typename T>
struct
32template <
typename T,
typename Reader>
struct
33remove_bonded<bonded<T, Reader> >;
35template <
typename T,
typename Reader,
typename Enable =
void>
38template <
typename Reader>
41template <
typename Reader>
44template <
typename Reader>
48class RequiredFieldValiadator;
50struct BuiltInProtocols;
52template <
typename T,
typename Protocols = BuiltInProtocols,
typename Val
idator = RequiredFieldValiadator<T> >
55template <
typename T,
typename Enable =
void>
struct
56schema_for_passthrough;
58template<
typename T,
typename Enable =
void>
struct
61template <
typename T>
struct
64template <
typename Input>
69struct qualified_name_tag;
71template <
typename Protocols = BuiltInProtocols,
typename Transform,
typename T,
typename boost::enable_if<is_modifying_transform<Transform> >::type* =
nullptr>
72bool Apply(
const Transform& transform, T& value);
74template <
typename Protocols = BuiltInProtocols,
typename Transform,
typename T>
75bool Apply(
const Transform& transform,
const T& value);
77template <
typename Protocols = BuiltInProtocols,
typename T,
typename Writer>
78inline void Marshal(
const T& obj, Writer& output);
80template <
typename Writer,
typename Protocols = BuiltInProtocols>
83template <
typename Protocols = BuiltInProtocols,
typename Writer>
84Marshaler<Writer, Protocols> MarshalTo(Writer& output);
86template <
typename Writer,
typename Protocols = BuiltInProtocols>
89template <
typename Protocols = BuiltInProtocols,
typename Writer>
90Serializer<Writer, Protocols> SerializeTo(Writer& output);
namespace bond
Definition: apply.h:17
void Marshal(const T &obj, Writer &output)
Marshal an object using a protocol writer.
Definition: bond.h:63