public HelperProvider(RuleEngine engine)
{
this.engine = engine;
string thisNamespace = GetType().Namespace;
string gameNamespace = string.Format("{0}.{1}", thisNamespace, engine.Context.GameTitle);
var types = GetType().Assembly.GetTypes()
.Where(t => t.Namespace == thisNamespace || t.Namespace == gameNamespace)
.Where(t => t.GetCustomAttributes(typeof(HelperAttribute), false).Length > 0);
foreach (var type in types)
{
helpers.Add(new HelperInfo(this, type));
}
}