From ea1b7572b206805304e06857356feddaee6f097f Mon Sep 17 00:00:00 2001 From: Bond-009 Date: Tue, 21 Mar 2017 21:36:56 +0100 Subject: [PATCH] Overloaded AddModuleAsync with Type --- src/Discord.Net.Commands/CommandService.cs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/Discord.Net.Commands/CommandService.cs b/src/Discord.Net.Commands/CommandService.cs index 91472b9eb..35229d672 100644 --- a/src/Discord.Net.Commands/CommandService.cs +++ b/src/Discord.Net.Commands/CommandService.cs @@ -83,20 +83,21 @@ namespace Discord.Commands _moduleLock.Release(); } } - public async Task AddModuleAsync() + public Task AddModuleAsync() => AddModuleAsync(typeof(T)); + public async Task AddModuleAsync(Type type) { await _moduleLock.WaitAsync().ConfigureAwait(false); try { - var typeInfo = typeof(T).GetTypeInfo(); + var typeInfo = type.GetTypeInfo(); - if (_typedModuleDefs.ContainsKey(typeof(T))) + if (_typedModuleDefs.ContainsKey(type)) throw new ArgumentException($"This module has already been added."); var module = ModuleClassBuilder.Build(this, typeInfo).FirstOrDefault(); if (module.Value == default(ModuleInfo)) - throw new InvalidOperationException($"Could not build the module {typeof(T).FullName}, did you pass an invalid type?"); + throw new InvalidOperationException($"Could not build the module {type.FullName}, did you pass an invalid type?"); _typedModuleDefs[module.Key] = module.Value;