Table of Contents

Class CommandInfo

Namespace
Kook.Commands
Assembly
Kook.Net.Commands.dll

表示一个命令的信息。

public class CommandInfo
Inheritance
CommandInfo
Inherited Members

Remarks

此对象包含命令的信息。这可能包括命令的模块、有关命令的各种描述以及执行模式等。

Properties

Aliases

获取此命令的所有别名。

public IReadOnlyList<string> Aliases { get; }

Property Value

IReadOnlyList<string>

Attributes

获取此命令的所有特性。

public IReadOnlyList<Attribute> Attributes { get; }

Property Value

IReadOnlyList<Attribute>

HasVarArgs

获取此命令是否可变数量的参数。

public bool HasVarArgs { get; }

Property Value

bool

IgnoreExtraArgs

获取此命令是否应忽略额外的参数。

public bool IgnoreExtraArgs { get; }

Property Value

bool

Module

获取此命令所属的模块。

public ModuleInfo Module { get; }

Property Value

ModuleInfo

Name

获取此命令的名称。如果未设置基本名称,则返回首要别名。

public string Name { get; }

Property Value

string

Parameters

获取此命令的所有参数的信息。

public IReadOnlyList<ParameterInfo> Parameters { get; }

Property Value

IReadOnlyList<ParameterInfo>

Preconditions

获取此命令的所有先决条件。

public IReadOnlyList<PreconditionAttribute> Preconditions { get; }

Property Value

IReadOnlyList<PreconditionAttribute>

Priority

获取此命令的优先级。当命令匹配多个重载时,此优先级将用于确定要执行的重载。

public int Priority { get; }

Property Value

int
See Also

Remarks

获取此命令的备注。

public string? Remarks { get; }

Property Value

string

Remarks

此字段返回命令的摘要。SummaryRemarks 可以用于帮助命令中,为用户提供命令的详细信息。

RunMode

获取此命令的执行模式。

public RunMode RunMode { get; }

Property Value

RunMode

Summary

获取此命令的摘要。

public string? Summary { get; }

Property Value

string

Remarks

此字段返回命令的摘要。SummaryRemarks 可以用于帮助命令中,为用户提供命令的详细信息。

Methods

CheckPreconditionsAsync(ICommandContext, IServiceProvider?)

检查命令在指定的上下文中是否可以执行。

public Task<PreconditionResult> CheckPreconditionsAsync(ICommandContext context, IServiceProvider? services = null)

Parameters

context ICommandContext

命令的上下文。

services IServiceProvider

用于检查的服务提供程序。

Returns

Task<PreconditionResult>

一个表示异步检查操作的任务。任务的结果包含先决条件的结果。

ExecuteAsync(ICommandContext, ParseResult, IServiceProvider)

执行命令。

public Task<IResult> ExecuteAsync(ICommandContext context, ParseResult parseResult, IServiceProvider services)

Parameters

context ICommandContext

命令执行上下文。

parseResult ParseResult

命令的参数解析结果。

services IServiceProvider

用于执行的服务提供程序。

Returns

Task<IResult>

一个表示异步执行操作的任务。任务的结果包含命令执行的结果。

ExecuteAsync(ICommandContext, IEnumerable<object?>, IEnumerable<object?>, IServiceProvider)

执行命令。

public Task<IResult> ExecuteAsync(ICommandContext context, IEnumerable<object?> argList, IEnumerable<object?> paramList, IServiceProvider services)

Parameters

context ICommandContext

命令执行上下文。

argList IEnumerable<object>

命令的实参列表。

paramList IEnumerable<object>

命令的形参列表。

services IServiceProvider

用于执行的服务提供程序。

Returns

Task<IResult>

一个表示异步执行操作的任务。任务的结果包含命令执行的结果。

ParseAsync(ICommandContext, int, SearchResult, PreconditionResult?, IServiceProvider?)

解析命令的参数。

public Task<ParseResult> ParseAsync(ICommandContext context, int startIndex, SearchResult searchResult, PreconditionResult? preconditionResult = null, IServiceProvider? services = null)

Parameters

context ICommandContext

命令执行上下文。

startIndex int

解析的起始索引。

searchResult SearchResult

命令搜索结果。

preconditionResult PreconditionResult

先决条件的检查结果。

services IServiceProvider

用于解析的服务提供程序。

Returns

Task<ParseResult>

一个表示异步解析操作的任务。任务的结果包含解析的结果。