using JetBrains.Annotations; using YamlDotNet.Serialization; namespace Trash.Extensions { public static class YamlDotNetExtensions { public static T? DeserializeType(this IDeserializer deserializer, string data) where T : class { var extractor = deserializer.Deserialize>(data); return extractor.RootObject; } [UsedImplicitly(ImplicitUseTargetFlags.Members)] private class RootExtractor where T : class { public T? RootObject { get; } } } }