This repository has been archived on 2023-02-02. You can view files and clone it, but cannot push or open issues or pull requests.
mfgames-nitride-cil/src/MfGames.Nitride.Handlebars/NitrideHandlebarsBuilderExt...

40 lines
1.0 KiB
C#

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<NitrideHandlebarsModule>());
}
public static NitrideBuilder UseHandlebars(
this NitrideBuilder builder,
Func<ContainerBuilder, IEnumerable<IHandlebarsLoader>> configure)
{
builder.UseHandlebars();
builder.ConfigureContainer(
c =>
{
IEnumerable<IHandlebarsLoader> loaders = configure(c);
foreach (IHandlebarsLoader loader in loaders)
{
c.RegisterInstance(loader)
.As<IHandlebarsLoader>()
.SingleInstance();
}
});
return builder;
}
}