using System; using System.Collections.Generic; using Autofac; using MfGames.Nitride.Handlebars.Configuration; namespace MfGames.Nitride.Handlebars; public static class NitrideHandlebarsBuilderExtensions { public static NitrideBuilder UseHandlebars(this NitrideBuilder builder) { return builder .ConfigureContainer(x => x.RegisterModule()); } public static NitrideBuilder UseHandlebars( this NitrideBuilder builder, Func> configure) { builder.UseHandlebars(); builder.ConfigureContainer( c => { IEnumerable loaders = configure(c); foreach (IHandlebarsLoader loader in loaders) { c.RegisterInstance(loader) .As() .SingleInstance(); } }); return builder; } }