private static IDeserializer BuildDeserializer(DeserializeYamlSettings settings) { var deserializerBuilder = new DeserializerBuilder(); if (!(settings.NamingConvention is null)) { deserializerBuilder = deserializerBuilder.WithNamingConvention(settings.NamingConvention); } var deserializer = deserializerBuilder.Build(); return(deserializer); }
public static T DeserializeYaml <T>(this ICakeContext context, string yaml, DeserializeYamlSettings settings) { T result = default(T); var d = BuildDeserializer(settings); using (var tr = new StringReader(yaml)) { var reader = new MergingParser(new Parser(tr)); result = d.Deserialize <T>(reader); } return(result); }
public static T DeserializeYamlFromFile <T>(this ICakeContext context, FilePath filename, DeserializeYamlSettings settings) { T result = default(T); var d = BuildDeserializer(settings); using (var tr = File.OpenText(filename.MakeAbsolute(context.Environment).FullPath)) { var reader = new MergingParser(new Parser(tr)); result = d.Deserialize <T>(reader); } return(result); }