#nullable disable using System.Diagnostics.CodeAnalysis; namespace NadekoBot.Common; [AttributeUsage(AttributeTargets.Method | AttributeTargets.Class)] [SuppressMessage("Style", "IDE0022:Use expression body for methods")] public sealed class NoPublicBotAttribute : PreconditionAttribute { public override Task CheckPermissionsAsync( ICommandContext context, CommandInfo command, IServiceProvider services) { #if GLOBAL_NADEKO return Task.FromResult(PreconditionResult.FromError("Not available on the public bot. To learn how to selfhost a private bot, click [here](https://nadekobot.readthedocs.io/en/latest/).")); #else return Task.FromResult(PreconditionResult.FromSuccess()); #endif } } /// /// Classed marked with this attribute will not be added to the service provider /// [AttributeUsage(AttributeTargets.Class)] public class DontAddToIocContainerAttribute : Attribute { }