IEnumerable <object> Read(IAmReadable readable) { ValueType = ValueTypeEnum.Header; yield return(readable.GetType().Name); foreach (var item in readable.ReadParts(this)) { yield return(item); } ValueType = ValueTypeEnum.Footer; yield return(null); }
public IEnumerable <object> ReadFormatted(IAmReadable instance) { yield return(Version); yield return(new ObjectHeader { Version = instance.Version, Name = instance.GetType().Name }); foreach (var item in instance.ReadParts(this)) { yield return(item); } yield return(new ObjectFooter()); }