Skip to main content

FromScript

Trait FromScript 

Source
pub trait FromScript {
    type This<'w>;

    // Required method
    fn from_script(
        value: ScriptValue,
        world: WorldGuard<'_>,
    ) -> Result<Self::This<'_>, InteropError>
       where Self: Sized;
}
Expand description

Describes the procedure for constructing a value of type T from a ScriptValue.

The FromScript::This associated type is used to allow for the implementation of this trait to return a type with the lifetime of the world guard. In 99% cases you can just use Self as the associated type.

Required Associated Types§

Source

type This<'w>

The type that is constructed from the script value.

Required Methods§

Source

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self::This<'_>, InteropError>
where Self: Sized,

Construct a value of type T from a ScriptValue.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl FromScript for ()

Source§

type This<'w> = ()

Source§

fn from_script( _value: ScriptValue, _world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl FromScript for NonMaxU32

Source§

type This<'w> = NonMaxU32

Source§

fn from_script( value: ScriptValue, _world: WorldGuard<'_>, ) -> Result<Self::This<'_>, InteropError>
where Self: Sized,

Source§

impl FromScript for OsString

Source§

type This<'w> = OsString

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl FromScript for PathBuf

Source§

type This<'w> = PathBuf

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl FromScript for String

Source§

type This<'w> = String

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl FromScript for bool

Source§

type This<'w> = bool

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self::This<'_>, InteropError>
where Self: Sized,

Source§

impl FromScript for char

Source§

type This<'w> = char

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self::This<'_>, InteropError>
where Self: Sized,

Source§

impl FromScript for f32

Source§

type This<'w> = f32

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl FromScript for f64

Source§

type This<'w> = f64

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl FromScript for i8

Source§

type This<'w> = i8

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl FromScript for i16

Source§

type This<'w> = i16

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl FromScript for i32

Source§

type This<'w> = i32

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl FromScript for i64

Source§

type This<'w> = i64

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl FromScript for i128

Source§

type This<'w> = i128

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl FromScript for isize

Source§

type This<'w> = isize

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl FromScript for u8

Source§

type This<'w> = u8

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl FromScript for u16

Source§

type This<'w> = u16

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl FromScript for u32

Source§

type This<'w> = u32

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl FromScript for u64

Source§

type This<'w> = u64

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl FromScript for u128

Source§

type This<'w> = u128

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl FromScript for usize

Source§

type This<'w> = usize

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl<T0: FromScript, T1: FromScript, T2: FromScript, T3: FromScript, T4: FromScript, T5: FromScript, T6: FromScript, T7: FromScript, T8: FromScript, T9: FromScript, T10: FromScript, T11: FromScript, T12: FromScript, T13: FromScript> FromScript for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)
where Self: 'static, for<'w> T0::This<'w>: Into<T0>, for<'w> T1::This<'w>: Into<T1>, for<'w> T2::This<'w>: Into<T2>, for<'w> T3::This<'w>: Into<T3>, for<'w> T4::This<'w>: Into<T4>, for<'w> T5::This<'w>: Into<T5>, for<'w> T6::This<'w>: Into<T6>, for<'w> T7::This<'w>: Into<T7>, for<'w> T8::This<'w>: Into<T8>, for<'w> T9::This<'w>: Into<T9>, for<'w> T10::This<'w>: Into<T10>, for<'w> T11::This<'w>: Into<T11>, for<'w> T12::This<'w>: Into<T12>, for<'w> T13::This<'w>: Into<T13>,

Source§

impl<T0: FromScript, T1: FromScript, T2: FromScript, T3: FromScript, T4: FromScript, T5: FromScript, T6: FromScript, T7: FromScript, T8: FromScript, T9: FromScript, T10: FromScript, T11: FromScript, T12: FromScript> FromScript for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)
where Self: 'static, for<'w> T0::This<'w>: Into<T0>, for<'w> T1::This<'w>: Into<T1>, for<'w> T2::This<'w>: Into<T2>, for<'w> T3::This<'w>: Into<T3>, for<'w> T4::This<'w>: Into<T4>, for<'w> T5::This<'w>: Into<T5>, for<'w> T6::This<'w>: Into<T6>, for<'w> T7::This<'w>: Into<T7>, for<'w> T8::This<'w>: Into<T8>, for<'w> T9::This<'w>: Into<T9>, for<'w> T10::This<'w>: Into<T10>, for<'w> T11::This<'w>: Into<T11>, for<'w> T12::This<'w>: Into<T12>,

Source§

impl<T0: FromScript, T1: FromScript, T2: FromScript, T3: FromScript, T4: FromScript, T5: FromScript, T6: FromScript, T7: FromScript, T8: FromScript, T9: FromScript, T10: FromScript, T11: FromScript> FromScript for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)
where Self: 'static, for<'w> T0::This<'w>: Into<T0>, for<'w> T1::This<'w>: Into<T1>, for<'w> T2::This<'w>: Into<T2>, for<'w> T3::This<'w>: Into<T3>, for<'w> T4::This<'w>: Into<T4>, for<'w> T5::This<'w>: Into<T5>, for<'w> T6::This<'w>: Into<T6>, for<'w> T7::This<'w>: Into<T7>, for<'w> T8::This<'w>: Into<T8>, for<'w> T9::This<'w>: Into<T9>, for<'w> T10::This<'w>: Into<T10>, for<'w> T11::This<'w>: Into<T11>,

Source§

impl<T0: FromScript, T1: FromScript, T2: FromScript, T3: FromScript, T4: FromScript, T5: FromScript, T6: FromScript, T7: FromScript, T8: FromScript, T9: FromScript, T10: FromScript> FromScript for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)
where Self: 'static, for<'w> T0::This<'w>: Into<T0>, for<'w> T1::This<'w>: Into<T1>, for<'w> T2::This<'w>: Into<T2>, for<'w> T3::This<'w>: Into<T3>, for<'w> T4::This<'w>: Into<T4>, for<'w> T5::This<'w>: Into<T5>, for<'w> T6::This<'w>: Into<T6>, for<'w> T7::This<'w>: Into<T7>, for<'w> T8::This<'w>: Into<T8>, for<'w> T9::This<'w>: Into<T9>, for<'w> T10::This<'w>: Into<T10>,

Source§

impl<T0: FromScript, T1: FromScript, T2: FromScript, T3: FromScript, T4: FromScript, T5: FromScript, T6: FromScript, T7: FromScript, T8: FromScript, T9: FromScript> FromScript for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9)
where Self: 'static, for<'w> T0::This<'w>: Into<T0>, for<'w> T1::This<'w>: Into<T1>, for<'w> T2::This<'w>: Into<T2>, for<'w> T3::This<'w>: Into<T3>, for<'w> T4::This<'w>: Into<T4>, for<'w> T5::This<'w>: Into<T5>, for<'w> T6::This<'w>: Into<T6>, for<'w> T7::This<'w>: Into<T7>, for<'w> T8::This<'w>: Into<T8>, for<'w> T9::This<'w>: Into<T9>,

Source§

impl<T0: FromScript, T1: FromScript, T2: FromScript, T3: FromScript, T4: FromScript, T5: FromScript, T6: FromScript, T7: FromScript, T8: FromScript> FromScript for (T0, T1, T2, T3, T4, T5, T6, T7, T8)
where Self: 'static, for<'w> T0::This<'w>: Into<T0>, for<'w> T1::This<'w>: Into<T1>, for<'w> T2::This<'w>: Into<T2>, for<'w> T3::This<'w>: Into<T3>, for<'w> T4::This<'w>: Into<T4>, for<'w> T5::This<'w>: Into<T5>, for<'w> T6::This<'w>: Into<T6>, for<'w> T7::This<'w>: Into<T7>, for<'w> T8::This<'w>: Into<T8>,

Source§

impl<T0: FromScript, T1: FromScript, T2: FromScript, T3: FromScript, T4: FromScript, T5: FromScript, T6: FromScript, T7: FromScript> FromScript for (T0, T1, T2, T3, T4, T5, T6, T7)
where Self: 'static, for<'w> T0::This<'w>: Into<T0>, for<'w> T1::This<'w>: Into<T1>, for<'w> T2::This<'w>: Into<T2>, for<'w> T3::This<'w>: Into<T3>, for<'w> T4::This<'w>: Into<T4>, for<'w> T5::This<'w>: Into<T5>, for<'w> T6::This<'w>: Into<T6>, for<'w> T7::This<'w>: Into<T7>,

Source§

impl<T0: FromScript, T1: FromScript, T2: FromScript, T3: FromScript, T4: FromScript, T5: FromScript, T6: FromScript> FromScript for (T0, T1, T2, T3, T4, T5, T6)
where Self: 'static, for<'w> T0::This<'w>: Into<T0>, for<'w> T1::This<'w>: Into<T1>, for<'w> T2::This<'w>: Into<T2>, for<'w> T3::This<'w>: Into<T3>, for<'w> T4::This<'w>: Into<T4>, for<'w> T5::This<'w>: Into<T5>, for<'w> T6::This<'w>: Into<T6>,

Source§

impl<T0: FromScript, T1: FromScript, T2: FromScript, T3: FromScript, T4: FromScript, T5: FromScript> FromScript for (T0, T1, T2, T3, T4, T5)
where Self: 'static, for<'w> T0::This<'w>: Into<T0>, for<'w> T1::This<'w>: Into<T1>, for<'w> T2::This<'w>: Into<T2>, for<'w> T3::This<'w>: Into<T3>, for<'w> T4::This<'w>: Into<T4>, for<'w> T5::This<'w>: Into<T5>,

Source§

impl<T0: FromScript, T1: FromScript, T2: FromScript, T3: FromScript, T4: FromScript> FromScript for (T0, T1, T2, T3, T4)
where Self: 'static, for<'w> T0::This<'w>: Into<T0>, for<'w> T1::This<'w>: Into<T1>, for<'w> T2::This<'w>: Into<T2>, for<'w> T3::This<'w>: Into<T3>, for<'w> T4::This<'w>: Into<T4>,

Source§

impl<T0: FromScript, T1: FromScript, T2: FromScript, T3: FromScript> FromScript for (T0, T1, T2, T3)
where Self: 'static, for<'w> T0::This<'w>: Into<T0>, for<'w> T1::This<'w>: Into<T1>, for<'w> T2::This<'w>: Into<T2>, for<'w> T3::This<'w>: Into<T3>,

Source§

impl<T0: FromScript, T1: FromScript, T2: FromScript> FromScript for (T0, T1, T2)
where Self: 'static, for<'w> T0::This<'w>: Into<T0>, for<'w> T1::This<'w>: Into<T1>, for<'w> T2::This<'w>: Into<T2>,

Source§

impl<T0: FromScript, T1: FromScript> FromScript for (T0, T1)
where Self: 'static, for<'w> T0::This<'w>: Into<T0>, for<'w> T1::This<'w>: Into<T1>,

Source§

type This<'w> = (T0, T1)

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl<T0: FromScript> FromScript for (T0,)
where Self: 'static, for<'w> T0::This<'w>: Into<T0>,

Source§

type This<'w> = (T0,)

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl<T: FromScript + 'static, const N: usize> FromScript for [T; N]
where for<'w> T::This<'w>: Into<T>,

Source§

type This<'w> = [T; N]

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl<T: FromScript + 'static> FromScript for Vec<T>
where for<'w> T::This<'w>: Into<T>,

Source§

type This<'w> = Vec<T>

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl<T: FromScript + 'static> FromScript for VecDeque<T>
where for<'w> T::This<'w>: Into<T>,

Source§

type This<'w> = VecDeque<T>

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl<T: FromScript> FromScript for Option<T>
where for<'w> T::This<'w>: Into<T>,

Source§

type This<'w> = Option<T>

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl<V> FromScript for HashMap<String, V>
where V: FromScript + 'static, for<'w> V::This<'w>: Into<V>,

Source§

type This<'w> = HashMap<String, V>

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl<V> FromScript for HashMap<String, V>
where V: FromScript + 'static, for<'w> V::This<'w>: Into<V>,

Source§

type This<'w> = HashMap<String, V>

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Source§

impl<V> FromScript for HashSet<V>
where V: FromScript + Eq + Hash + 'static, for<'w> V::This<'w>: Into<V>,

Source§

type This<'w> = HashSet<V>

Source§

fn from_script( value: ScriptValue, world: WorldGuard<'_>, ) -> Result<Self, InteropError>

Implementors§