Skip to main content

SchemeValue

Trait SchemeValue 

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

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

Required Methods§

Source

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

Converts a Scheme value into a Rust value.

Source

fn into_scheme(self, memory: &mut Memory<H>) -> 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".

Implementations on Foreign Types§

Source§

impl<H: Heap> SchemeValue<H> for String

Source§

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

Source§

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

Source§

impl<H: Heap> SchemeValue<H> for bool

Source§

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

Source§

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

Source§

impl<H> SchemeValue<H> for f32

Source§

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

Source§

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

Source§

impl<H> SchemeValue<H> for f64

Source§

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

Source§

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

Source§

impl<H> SchemeValue<H> for i8

Source§

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

Source§

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

Source§

impl<H> SchemeValue<H> for i16

Source§

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

Source§

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

Source§

impl<H> SchemeValue<H> for i32

Source§

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

Source§

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

Source§

impl<H> SchemeValue<H> for i64

Source§

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

Source§

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

Source§

impl<H> SchemeValue<H> for isize

Source§

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

Source§

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

Source§

impl<H> SchemeValue<H> for u8

Source§

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

Source§

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

Source§

impl<H> SchemeValue<H> for u16

Source§

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

Source§

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

Source§

impl<H> SchemeValue<H> for u32

Source§

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

Source§

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

Source§

impl<H> SchemeValue<H> for u64

Source§

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

Source§

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

Source§

impl<H> SchemeValue<H> for usize

Source§

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

Source§

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

Implementors§