using System.Collections.Generic; using Autofac; using HandlebarsDotNet; using MfGames.Nitride.Handlebars.Configuration; namespace MfGames.Nitride.Handlebars; public class NitrideHandlebarsModule : Module { /// protected override void Load(ContainerBuilder builder) { builder.RegisterOperators(this); builder.RegisterValidators(this); builder.RegisterType() .AsSelf() .SingleInstance(); builder.Register( (context) => { IHandlebars handlebars = HandlebarsDotNet.Handlebars.Create(); IEnumerable helpers = context.Resolve>(); foreach (IHandlebarsLoader helper in helpers) { helper.Register(handlebars); } return handlebars; }) .As() .SingleInstance(); } }