using Robust.Shared.Serialization.TypeSerializers.Interfaces; namespace Robust.Shared.Serialization { /// /// Allows a type with an argument-free constructor (i.e. new()) to provide its own serializer and /// deserializer in place from a string, without deferring to an . /// /// /// This is much more limited than a full serializer, and only allows working with a scalar, but may be /// convenient. /// public interface ISelfSerialize { /// /// Deserialize the type from a given string value, after having already constructed one with new(). /// /// The scalar to deserialize from. void Deserialize(string value); /// /// Serialize the type to a yaml scalar (i.e. string). /// /// The serialized representation of the data. string Serialize(); } }