mirror of
https://github.com/mamoe/mirai.git
synced 2025-02-05 07:06:57 +08:00
Make ConsoleCommandSender an object
This commit is contained in:
parent
5250e3779f
commit
7d9d181002
@ -19,14 +19,12 @@ import kotlinx.coroutines.CoroutineScope
|
|||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
import net.mamoe.kjbb.JvmBlockingBridge
|
import net.mamoe.kjbb.JvmBlockingBridge
|
||||||
import net.mamoe.mirai.Bot
|
import net.mamoe.mirai.Bot
|
||||||
import net.mamoe.mirai.console.ConsoleFrontEndImplementation
|
|
||||||
import net.mamoe.mirai.console.MiraiConsole
|
import net.mamoe.mirai.console.MiraiConsole
|
||||||
import net.mamoe.mirai.console.command.CommandManager.INSTANCE.execute
|
import net.mamoe.mirai.console.command.CommandManager.INSTANCE.execute
|
||||||
import net.mamoe.mirai.console.command.CommandSender.Companion.asCommandSender
|
import net.mamoe.mirai.console.command.CommandSender.Companion.asCommandSender
|
||||||
import net.mamoe.mirai.console.command.CommandSender.Companion.asMemberCommandSender
|
import net.mamoe.mirai.console.command.CommandSender.Companion.asMemberCommandSender
|
||||||
import net.mamoe.mirai.console.command.CommandSender.Companion.asTempCommandSender
|
import net.mamoe.mirai.console.command.CommandSender.Companion.asTempCommandSender
|
||||||
import net.mamoe.mirai.console.command.CommandSender.Companion.toCommandSender
|
import net.mamoe.mirai.console.command.CommandSender.Companion.toCommandSender
|
||||||
import net.mamoe.mirai.console.command.ConsoleCommandSender.INSTANCE
|
|
||||||
import net.mamoe.mirai.console.command.description.CommandArgumentParserException
|
import net.mamoe.mirai.console.command.description.CommandArgumentParserException
|
||||||
import net.mamoe.mirai.console.internal.MiraiConsoleImplementationBridge
|
import net.mamoe.mirai.console.internal.MiraiConsoleImplementationBridge
|
||||||
import net.mamoe.mirai.console.internal.command.qualifiedNameOrTip
|
import net.mamoe.mirai.console.internal.command.qualifiedNameOrTip
|
||||||
@ -502,21 +500,19 @@ public fun CommandSender.getBotOrNull(): Bot? {
|
|||||||
* 控制台指令执行者. 代表由控制台执行指令
|
* 控制台指令执行者. 代表由控制台执行指令
|
||||||
*
|
*
|
||||||
* 控制台拥有一切指令的执行权限.
|
* 控制台拥有一切指令的执行权限.
|
||||||
*
|
|
||||||
* @see INSTANCE
|
|
||||||
*/
|
*/
|
||||||
// 前端实现
|
// 前端实现
|
||||||
public abstract class ConsoleCommandSender @ConsoleFrontEndImplementation constructor() : AbstractCommandSender() {
|
public object ConsoleCommandSender : AbstractCommandSender() {
|
||||||
public final override val bot: Nothing? get() = null
|
|
||||||
public final override val subject: Nothing? get() = null
|
|
||||||
public final override val user: Nothing? get() = null
|
|
||||||
public final override val name: String get() = NAME
|
|
||||||
public final override fun toString(): String = NAME
|
|
||||||
|
|
||||||
public final override val permitteeId: AbstractPermitteeId.Console = AbstractPermitteeId.Console
|
|
||||||
|
|
||||||
public companion object INSTANCE : ConsoleCommandSender(), CoroutineScope {
|
|
||||||
public const val NAME: String = "ConsoleCommandSender"
|
public const val NAME: String = "ConsoleCommandSender"
|
||||||
|
|
||||||
|
public override val bot: Nothing? get() = null
|
||||||
|
public override val subject: Nothing? get() = null
|
||||||
|
public override val user: Nothing? get() = null
|
||||||
|
public override val name: String get() = NAME
|
||||||
|
public override fun toString(): String = NAME
|
||||||
|
|
||||||
|
public override val permitteeId: AbstractPermitteeId.Console = AbstractPermitteeId.Console
|
||||||
|
|
||||||
public override val coroutineContext: CoroutineContext by lazy { MiraiConsole.childScopeContext(NAME) }
|
public override val coroutineContext: CoroutineContext by lazy { MiraiConsole.childScopeContext(NAME) }
|
||||||
public override suspend fun sendMessage(message: Message): Nothing? {
|
public override suspend fun sendMessage(message: Message): Nothing? {
|
||||||
MiraiConsoleImplementationBridge.consoleCommandSender.sendMessage(message)
|
MiraiConsoleImplementationBridge.consoleCommandSender.sendMessage(message)
|
||||||
@ -528,7 +524,6 @@ public abstract class ConsoleCommandSender @ConsoleFrontEndImplementation constr
|
|||||||
return null
|
return null
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 知道 [Group] 环境的 [UserCommandSender]
|
* 知道 [Group] 环境的 [UserCommandSender]
|
||||||
|
Loading…
Reference in New Issue
Block a user