pub trait BasicOption: Sized {
    // Required methods
    fn create_option(
        name: impl Into<String>,
        description: impl Into<String>
    ) -> CreateCommandOption;
    fn from_value(value: Option<&CommandDataOptionValue>) -> Result<Self>;
}
Expand description

A basic option which can be nested inside of Commands or SubCommands.

This trait is implemented already for most primitive types.

Required Methods§

source

fn create_option( name: impl Into<String>, description: impl Into<String> ) -> CreateCommandOption

Create the command option.

source

fn from_value(value: Option<&CommandDataOptionValue>) -> Result<Self>

Extract data from a CommandDataOptionValue.

Errors

Returns an error if the implementation fails.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl BasicOption for bool

source§

impl BasicOption for f32

source§

impl BasicOption for f64

source§

impl BasicOption for i8

source§

impl BasicOption for i16

source§

impl BasicOption for i32

source§

impl BasicOption for i64

source§

impl BasicOption for i128

source§

impl BasicOption for isize

source§

impl BasicOption for u8

source§

impl BasicOption for u16

source§

impl BasicOption for u32

source§

impl BasicOption for u64

source§

impl BasicOption for u128

source§

impl BasicOption for usize

source§

impl BasicOption for String

source§

impl BasicOption for AttachmentId

source§

impl BasicOption for ChannelId

source§

impl BasicOption for GenericId

source§

impl BasicOption for RoleId

source§

impl BasicOption for UserId

source§

impl<T: BasicOption> BasicOption for Option<T>

source§

fn create_option( name: impl Into<String>, description: impl Into<String> ) -> CreateCommandOption

Delegates to T’s BasicOption::create_option implementation, but sets CreateCommandOption::required to false afterwards.

source§

fn from_value(value: Option<&CommandDataOptionValue>) -> Result<Self>

Only delegates to T’s BasicOption::from_value implementation if value is Some.

Implementors§