SchemeValue

Trait SchemeValue 

Source
pub trait SchemeValue: Sized {
    // Required methods
    fn from_scheme(
        memory: &Memory<'_>,
        value: Value,
    ) -> Result<Option<Self>, DynamicError>;
    fn into_scheme(self, memory: &mut Memory<'_>) -> Result<Value, DynamicError>;
}
Expand description

A trait to convert Rust values from and into Scheme values.

Required Methods§

Source

fn from_scheme( memory: &Memory<'_>, value: Value, ) -> Result<Option<Self>, DynamicError>

Converts a Scheme value into a Rust value.

Source

fn into_scheme(self, memory: &mut Memory<'_>) -> Result<Value, DynamicError>

Converts a Rust value into a Scheme value.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl SchemeValue for bool

Source§

fn from_scheme( memory: &Memory<'_>, value: Value, ) -> Result<Option<Self>, DynamicError>

Source§

fn into_scheme(self, memory: &mut Memory<'_>) -> Result<Value, DynamicError>

Source§

impl SchemeValue for f32

Source§

fn from_scheme( _memory: &Memory<'_>, value: Value, ) -> Result<Option<Self>, DynamicError>

Source§

fn into_scheme(self, _memory: &mut Memory<'_>) -> Result<Value, DynamicError>

Source§

impl SchemeValue for f64

Source§

fn from_scheme( _memory: &Memory<'_>, value: Value, ) -> Result<Option<Self>, DynamicError>

Source§

fn into_scheme(self, _memory: &mut Memory<'_>) -> Result<Value, DynamicError>

Source§

impl SchemeValue for i8

Source§

fn from_scheme( _memory: &Memory<'_>, value: Value, ) -> Result<Option<Self>, DynamicError>

Source§

fn into_scheme(self, _memory: &mut Memory<'_>) -> Result<Value, DynamicError>

Source§

impl SchemeValue for i16

Source§

fn from_scheme( _memory: &Memory<'_>, value: Value, ) -> Result<Option<Self>, DynamicError>

Source§

fn into_scheme(self, _memory: &mut Memory<'_>) -> Result<Value, DynamicError>

Source§

impl SchemeValue for i32

Source§

fn from_scheme( _memory: &Memory<'_>, value: Value, ) -> Result<Option<Self>, DynamicError>

Source§

fn into_scheme(self, _memory: &mut Memory<'_>) -> Result<Value, DynamicError>

Source§

impl SchemeValue for i64

Source§

fn from_scheme( _memory: &Memory<'_>, value: Value, ) -> Result<Option<Self>, DynamicError>

Source§

fn into_scheme(self, _memory: &mut Memory<'_>) -> Result<Value, DynamicError>

Source§

impl SchemeValue for isize

Source§

fn from_scheme( _memory: &Memory<'_>, value: Value, ) -> Result<Option<Self>, DynamicError>

Source§

fn into_scheme(self, _memory: &mut Memory<'_>) -> Result<Value, DynamicError>

Source§

impl SchemeValue for u8

Source§

fn from_scheme( _memory: &Memory<'_>, value: Value, ) -> Result<Option<Self>, DynamicError>

Source§

fn into_scheme(self, _memory: &mut Memory<'_>) -> Result<Value, DynamicError>

Source§

impl SchemeValue for u16

Source§

fn from_scheme( _memory: &Memory<'_>, value: Value, ) -> Result<Option<Self>, DynamicError>

Source§

fn into_scheme(self, _memory: &mut Memory<'_>) -> Result<Value, DynamicError>

Source§

impl SchemeValue for u32

Source§

fn from_scheme( _memory: &Memory<'_>, value: Value, ) -> Result<Option<Self>, DynamicError>

Source§

fn into_scheme(self, _memory: &mut Memory<'_>) -> Result<Value, DynamicError>

Source§

impl SchemeValue for u64

Source§

fn from_scheme( _memory: &Memory<'_>, value: Value, ) -> Result<Option<Self>, DynamicError>

Source§

fn into_scheme(self, _memory: &mut Memory<'_>) -> Result<Value, DynamicError>

Source§

impl SchemeValue for usize

Source§

fn from_scheme( _memory: &Memory<'_>, value: Value, ) -> Result<Option<Self>, DynamicError>

Source§

fn into_scheme(self, _memory: &mut Memory<'_>) -> Result<Value, DynamicError>

Source§

impl SchemeValue for String

Source§

fn from_scheme( memory: &Memory<'_>, value: Value, ) -> Result<Option<Self>, DynamicError>

Source§

fn into_scheme(self, memory: &mut Memory<'_>) -> Result<Value, DynamicError>

Implementors§