/// <summary> /// Create configuration object, which implements given Structure. /// Structure properties are parsed from input stream. /// </summary> /// <param name="input">Input stream from where configuration is parsed.</param> /// <param name="mode">Mode which is used for parsing input data.</param> /// <typeparam name="Structure">Interface which describes structure of configuration file.</typeparam> /// <returns>Configuration object.</returns> public static Structure CreateFromStream <Structure>(StreamReader input, ParsingMode mode = ParsingMode.Strict) where Structure : IConfiguration { var parser = ConfigParser.FromStream(input, mode); return(createConfig <Structure>(parser)); }