[−][src]Struct gluon_vm::api::PushAsRef
Newtype which can be used to push types implementating AsRef
Methods
impl<T, R: ?Sized> PushAsRef<T, R>
[src]
Trait Implementations
impl<T, R: ?Sized> VmType for PushAsRef<T, R> where
T: AsRef<R>,
R: 'static,
&'static R: VmType,
[src]
T: AsRef<R>,
R: 'static,
&'static R: VmType,
type Type = <&'static R as VmType>::Type
A version of Self
which implements Any
allowing a TypeId
to be retrieved
fn make_type(thread: &Thread) -> ArcType
[src]
fn make_forall_type(vm: &Thread) -> ArcType
[src]
fn extra_args() -> VmIndex
[src]
How many extra arguments a function returning this type requires. Used for abstract types which when used in return position should act like they still need more arguments before they are called Read more
impl<'vm, T, R: ?Sized> Pushable<'vm> for PushAsRef<T, R> where
T: AsRef<R>,
&'a R: Pushable<'vm>,
[src]
T: AsRef<R>,
&'a R: Pushable<'vm>,
fn push(self, context: &mut ActiveThread<'vm>) -> Result<()>
[src]
fn status_push(self, context: &mut ActiveThread<'vm>) -> Status where
Self: Sized,
[src]
Self: Sized,
unsafe fn marshal_unrooted(self, vm: &'vm Thread) -> Result<Value> where
Self: Sized,
[src]
Self: Sized,
fn marshal<T>(self, vm: &'vm Thread) -> Result<RootedValue<T>> where
Self: Sized,
T: VmRoot<'vm>,
[src]
Self: Sized,
T: VmRoot<'vm>,
Auto Trait Implementations
impl<T, R: ?Sized> Send for PushAsRef<T, R> where
R: Send,
T: Send,
R: Send,
T: Send,
impl<T, R: ?Sized> Sync for PushAsRef<T, R> where
R: Sync,
T: Sync,
R: Sync,
T: Sync,
Blanket Implementations
impl<'vm, T> AsyncPushable for T where
T: Pushable<'vm>,
[src]
T: Pushable<'vm>,
fn async_push(Self, &mut ActiveThread<'vm>, u32) -> Result<Async<()>, Error>
[src]
fn async_status_push(
self,
context: &mut ActiveThread<'vm>,
frame_index: VmIndex
) -> Status where
Self: Sized,
[src]
self,
context: &mut ActiveThread<'vm>,
frame_index: VmIndex
) -> Status where
Self: Sized,
impl<'vm, T> Pushable for T where
T: Userdata,
[src]
T: Userdata,
fn push(Self, &mut ActiveThread<'vm>) -> Result<(), Error>
[src]
fn status_push(self, context: &mut ActiveThread<'vm>) -> Status where
Self: Sized,
[src]
Self: Sized,
unsafe fn marshal_unrooted(self, vm: &'vm Thread) -> Result<Value> where
Self: Sized,
[src]
Self: Sized,
fn marshal<T>(self, vm: &'vm Thread) -> Result<RootedValue<T>> where
Self: Sized,
T: VmRoot<'vm>,
[src]
Self: Sized,
T: VmRoot<'vm>,
impl<D, T> FromPtr for T
[src]
impl<T, U> Into for T where
U: From<T>,
[src]
U: From<T>,
impl<T> From for T
[src]
impl<T, U> TryFrom for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = !
🔬 This is a nightly-only experimental API. (
try_from
)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T> Borrow for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
🔬 This is a nightly-only experimental API. (
try_from
)The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<Choices> CoproductSubsetter for Choices
[src]
type Remainder = Choices
fn subset(
self
) -> Result<CNil, <Choices as CoproductSubsetter<CNil, HNil>>::Remainder>
[src]
self
) -> Result<CNil, <Choices as CoproductSubsetter<CNil, HNil>>::Remainder>
impl<Source> Sculptor for Source
[src]
impl<T, U, I> LiftInto for T where
U: LiftFrom<T, I>,
[src]
U: LiftFrom<T, I>,
impl<T> Any for T where
T: Any,
[src]
T: Any,