mirror of
https://github.com/mamoe/mirai.git
synced 2025-03-23 13:50:12 +08:00
Fix RESTRICTED_CONSOLE_COMMAND_OWNER
This commit is contained in:
parent
8a45312788
commit
e63775676a
@ -34,6 +34,7 @@ val COMPOSITE_COMMAND_SUB_COMMAND_FQ_NAME = FqName("net.mamoe.mirai.console.comm
|
||||
val SIMPLE_COMMAND_HANDLER_COMMAND_FQ_NAME = FqName("net.mamoe.mirai.console.command.SimpleCommand.Handler")
|
||||
val COMMAND_SENDER_FQ_NAME = FqName("net.mamoe.mirai.console.command.CommandSender")
|
||||
val CONSOLE_COMMAND_SENDER_FQ_NAME = FqName("net.mamoe.mirai.console.command.ConsoleCommandSender")
|
||||
val CONSOLE_COMMAND_OWNER_FQ_NAME = FqName("net.mamoe.mirai.console.command.ConsoleCommandOwner")
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
// Plugin
|
||||
|
@ -7,9 +7,14 @@ import net.mamoe.mirai.console.command.SimpleCommand
|
||||
import net.mamoe.mirai.console.data.AutoSavePluginConfig
|
||||
import net.mamoe.mirai.console.data.value
|
||||
|
||||
object MySimpleCommand000 : SimpleCommand(
|
||||
object MySimpleCommand0001 : SimpleCommand(
|
||||
ConsoleCommandOwner, "foo",
|
||||
description = "示例指令"
|
||||
) {}
|
||||
|
||||
object MySimpleCommand000 : SimpleCommand(
|
||||
MyPluginMain, "foo",
|
||||
description = "示例指令"
|
||||
) {
|
||||
@Handler
|
||||
suspend fun CommandSender.handle(int: Int, str: String) {
|
||||
|
@ -16,7 +16,7 @@ import net.mamoe.mirai.console.compiler.common.diagnostics.MiraiConsoleErrors.IL
|
||||
import net.mamoe.mirai.console.compiler.common.diagnostics.MiraiConsoleErrors.ILLEGAL_PLUGIN_DESCRIPTION
|
||||
import net.mamoe.mirai.console.compiler.common.diagnostics.MiraiConsoleErrors.ILLEGAL_VERSION_REQUIREMENT
|
||||
import net.mamoe.mirai.console.compiler.common.diagnostics.MiraiConsoleErrors.RESTRICTED_CONSOLE_COMMAND_OWNER
|
||||
import net.mamoe.mirai.console.compiler.common.resolve.COMMAND_SENDER_FQ_NAME
|
||||
import net.mamoe.mirai.console.compiler.common.resolve.CONSOLE_COMMAND_OWNER_FQ_NAME
|
||||
import net.mamoe.mirai.console.compiler.common.resolve.ResolveContextKind
|
||||
import net.mamoe.mirai.console.compiler.common.resolve.resolveContextKinds
|
||||
import net.mamoe.mirai.console.intellij.resolve.resolveAllCalls
|
||||
@ -135,10 +135,12 @@ class ContextualParametersChecker : DeclarationChecker {
|
||||
val expr = argument.getArgumentExpression() ?: return null
|
||||
|
||||
if (expr is KtReferenceExpression) {
|
||||
expr.getResolvedCall(context)?.isCalling(COMMAND_SENDER_FQ_NAME) ?: return null
|
||||
if (expr.getResolvedCall(context)?.isCalling(CONSOLE_COMMAND_OWNER_FQ_NAME) == true) {
|
||||
return RESTRICTED_CONSOLE_COMMAND_OWNER.on(inspectionTarget)
|
||||
}
|
||||
}
|
||||
|
||||
return RESTRICTED_CONSOLE_COMMAND_OWNER.on(inspectionTarget)
|
||||
return null
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user