#[non_exhaustive]
pub struct CommandOption {
Show 14 fields pub kind: CommandOptionType, pub name: String, pub name_localizations: Option<HashMap<String, String>>, pub description: String, pub description_localizations: Option<HashMap<String, String>>, pub required: bool, pub choices: Vec<CommandOptionChoice>, pub options: Vec<CommandOption>, pub channel_types: Vec<ChannelType>, pub min_value: Option<Number>, pub max_value: Option<Number>, pub min_length: Option<u16>, pub max_length: Option<u16>, pub autocomplete: bool,
}
Expand description

The parameters for an Command.

Discord docs.

Fields (Non-exhaustive)

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
kind: CommandOptionType

The option type.

name: String

The option name.

name_localizations: Option<HashMap<String, String>>

Localizations of the option name with locale as the key

description: String

The option description.

description_localizations: Option<HashMap<String, String>>

Localizations of the option description with locale as the key

required: bool

Whether the parameter is optional or required.

choices: Vec<CommandOptionChoice>

Choices the user can pick from.

Note: Only available for String and Integer CommandOptionType.

options: Vec<CommandOption>

The nested options.

Note: Only available for SubCommand or SubCommandGroup.

channel_types: Vec<ChannelType>

If the option is a Channel, it will only be able to show these types.

min_value: Option<Number>

Minimum permitted value for Integer or Number options

max_value: Option<Number>

Maximum permitted value for Integer or Number options

min_length: Option<u16>

Minimum permitted length for String options

max_length: Option<u16>

Maximum permitted length for String options

autocomplete: bool

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Deserialize this value from the given Serde deserializer. Read more

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more