2020-01-11 17:21:31 +01:00
|
|
|
|
#nullable enable
|
|
|
|
|
namespace Capnp
|
2019-06-12 21:56:55 +02:00
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// This interface is intended to be implemented by schema-generated domain classes which support deserialization from
|
|
|
|
|
/// a <see cref="DeserializerState"/> and serialization to a <see cref="SerializerState"/>.
|
|
|
|
|
/// </summary>
|
|
|
|
|
public interface ICapnpSerializable
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Serializes the implementation's current state to a serializer state.
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="state">Target serializer state</param>
|
|
|
|
|
void Serialize(SerializerState state);
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Deserializes the implementation's state from a deserializer state.
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="state">Source deserializer state</param>
|
|
|
|
|
void Deserialize(DeserializerState state);
|
|
|
|
|
}
|
|
|
|
|
}
|
2020-01-11 17:21:31 +01:00
|
|
|
|
#nullable restore
|