AWS SDK for C++

AWS SDK for C++ Version 1.11.909

Loading...
Searching...
No Matches
SerializableStruct.h
1#pragma once
2
3#include <smithy/Smithy_EXPORTS.h>
4#include <smithy/client/schema/Schema.h>
5
6namespace smithy {
7namespace schema {
8class ShapeDeserializer;
9class ShapeSerializer;
10
11class SMITHY_API SerializableStruct {
12 public:
13 virtual ~SerializableStruct() = default;
14
15 // Schema must be owned per-instance (per request/result).
16 virtual const Schema& GetSchema() const = 0;
17 virtual void SerializeMembers(ShapeSerializer& serializer) const = 0;
18 virtual void From(const Schema& memberSchema, ShapeDeserializer& deserializer) = 0;
19
20 void Deserialize(ShapeDeserializer& deserializer);
21};
22
23} // namespace schema
24} // namespace smithy
virtual void From(const Schema &memberSchema, ShapeDeserializer &deserializer)=0
virtual ~SerializableStruct()=default
virtual void SerializeMembers(ShapeSerializer &serializer) const =0
virtual const Schema & GetSchema() const =0
void Deserialize(ShapeDeserializer &deserializer)