Struct jlrs::memory::output::OutputScope [−][src]
pub struct OutputScope<'scope, 'frame, 'borrow, F: Frame<'frame>>(_, _, _);
A Scope
that can be used once to root a value in an earlier frame.
Implementations
impl<'scope, 'frame, 'borrow, F: Frame<'frame>> OutputScope<'scope, 'frame, 'borrow, F>
[src]
impl<'scope, 'frame, 'borrow, F: Frame<'frame>> OutputScope<'scope, 'frame, 'borrow, F>
[src]pub fn value_scope<'data, G>(
self,
func: G
) -> JlrsResult<UnrootedValue<'scope, 'data, 'borrow>> where
G: for<'nested, 'inner> FnOnce(Output<'scope>, &'inner mut GcFrame<'nested, F::Mode>) -> JlrsResult<UnrootedValue<'scope, 'data, 'inner>>,
[src]
self,
func: G
) -> JlrsResult<UnrootedValue<'scope, 'data, 'borrow>> where
G: for<'nested, 'inner> FnOnce(Output<'scope>, &'inner mut GcFrame<'nested, F::Mode>) -> JlrsResult<UnrootedValue<'scope, 'data, 'inner>>,
Create a new scope and root the output in the current frame. See Scope::value_scope
for more information.
pub fn value_scope_with_slots<'data, G>(
self,
capacity: usize,
func: G
) -> JlrsResult<UnrootedValue<'scope, 'data, 'borrow>> where
G: for<'nested, 'inner> FnOnce(Output<'scope>, &'inner mut GcFrame<'nested, F::Mode>) -> JlrsResult<UnrootedValue<'scope, 'data, 'inner>>,
[src]
self,
capacity: usize,
func: G
) -> JlrsResult<UnrootedValue<'scope, 'data, 'borrow>> where
G: for<'nested, 'inner> FnOnce(Output<'scope>, &'inner mut GcFrame<'nested, F::Mode>) -> JlrsResult<UnrootedValue<'scope, 'data, 'inner>>,
Create a new scope and root the output in the current frame. See
Scope::value_scope_with_slots
for more information.
pub fn result_scope<'data, G>(
self,
func: G
) -> JlrsResult<UnrootedResult<'scope, 'data, 'borrow>> where
G: for<'nested, 'inner> FnOnce(Output<'scope>, &'inner mut GcFrame<'nested, F::Mode>) -> JlrsResult<UnrootedResult<'scope, 'data, 'inner>>,
[src]
self,
func: G
) -> JlrsResult<UnrootedResult<'scope, 'data, 'borrow>> where
G: for<'nested, 'inner> FnOnce(Output<'scope>, &'inner mut GcFrame<'nested, F::Mode>) -> JlrsResult<UnrootedResult<'scope, 'data, 'inner>>,
Create a new scope and root the output in the current frame. See Scope::result_scope
for more information.
pub fn result_scope_with_slots<'data, G>(
self,
capacity: usize,
func: G
) -> JlrsResult<UnrootedResult<'scope, 'data, 'borrow>> where
G: for<'nested, 'inner> FnOnce(Output<'scope>, &'inner mut GcFrame<'nested, F::Mode>) -> JlrsResult<UnrootedResult<'scope, 'data, 'inner>>,
[src]
self,
capacity: usize,
func: G
) -> JlrsResult<UnrootedResult<'scope, 'data, 'borrow>> where
G: for<'nested, 'inner> FnOnce(Output<'scope>, &'inner mut GcFrame<'nested, F::Mode>) -> JlrsResult<UnrootedResult<'scope, 'data, 'inner>>,
Create a new scope and root the output in the current frame. See
Scope::result_scope_with_slots
for more information.
Trait Implementations
impl<'scope, 'frame, 'data, 'borrow, F: Frame<'frame>> Scope<'scope, 'frame, 'data, F> for OutputScope<'scope, 'frame, 'borrow, F>
[src]
impl<'scope, 'frame, 'data, 'borrow, F: Frame<'frame>> Scope<'scope, 'frame, 'data, F> for OutputScope<'scope, 'frame, 'borrow, F>
[src]fn value_scope<G>(self, func: G) -> JlrsResult<Self::Value> where
G: for<'nested, 'inner> FnOnce(Output<'scope>, &'inner mut GcFrame<'nested, F::Mode>) -> JlrsResult<UnrootedValue<'scope, 'data, 'inner>>,
[src]
G: for<'nested, 'inner> FnOnce(Output<'scope>, &'inner mut GcFrame<'nested, F::Mode>) -> JlrsResult<UnrootedValue<'scope, 'data, 'inner>>,
fn result_scope<G>(self, func: G) -> JlrsResult<Self::JuliaResult> where
G: for<'nested, 'inner> FnOnce(Output<'scope>, &'inner mut GcFrame<'nested, F::Mode>) -> JlrsResult<UnrootedResult<'scope, 'data, 'inner>>,
[src]
G: for<'nested, 'inner> FnOnce(Output<'scope>, &'inner mut GcFrame<'nested, F::Mode>) -> JlrsResult<UnrootedResult<'scope, 'data, 'inner>>,
fn value_scope_with_slots<G>(
self,
capacity: usize,
func: G
) -> JlrsResult<Self::Value> where
G: for<'nested, 'inner> FnOnce(Output<'scope>, &'inner mut GcFrame<'nested, F::Mode>) -> JlrsResult<UnrootedValue<'scope, 'data, 'inner>>,
[src]
self,
capacity: usize,
func: G
) -> JlrsResult<Self::Value> where
G: for<'nested, 'inner> FnOnce(Output<'scope>, &'inner mut GcFrame<'nested, F::Mode>) -> JlrsResult<UnrootedValue<'scope, 'data, 'inner>>,
fn result_scope_with_slots<G>(
self,
capacity: usize,
func: G
) -> JlrsResult<Self::JuliaResult> where
G: for<'nested, 'inner> FnOnce(Output<'scope>, &'inner mut GcFrame<'nested, F::Mode>) -> JlrsResult<UnrootedResult<'scope, 'data, 'inner>>,
[src]
self,
capacity: usize,
func: G
) -> JlrsResult<Self::JuliaResult> where
G: for<'nested, 'inner> FnOnce(Output<'scope>, &'inner mut GcFrame<'nested, F::Mode>) -> JlrsResult<UnrootedResult<'scope, 'data, 'inner>>,
fn global(&self) -> Global<'scope>
[src]
Auto Trait Implementations
impl<'scope, 'frame, 'borrow, F> RefUnwindSafe for OutputScope<'scope, 'frame, 'borrow, F> where
F: RefUnwindSafe,
impl<'scope, 'frame, 'borrow, F> RefUnwindSafe for OutputScope<'scope, 'frame, 'borrow, F> where
F: RefUnwindSafe,
impl<'scope, 'frame, 'borrow, F> Send for OutputScope<'scope, 'frame, 'borrow, F> where
F: Send,
impl<'scope, 'frame, 'borrow, F> Send for OutputScope<'scope, 'frame, 'borrow, F> where
F: Send,
impl<'scope, 'frame, 'borrow, F> Sync for OutputScope<'scope, 'frame, 'borrow, F> where
F: Sync,
impl<'scope, 'frame, 'borrow, F> Sync for OutputScope<'scope, 'frame, 'borrow, F> where
F: Sync,
impl<'scope, 'frame, 'borrow, F> Unpin for OutputScope<'scope, 'frame, 'borrow, F>
impl<'scope, 'frame, 'borrow, F> Unpin for OutputScope<'scope, 'frame, 'borrow, F>
impl<'scope, 'frame, 'borrow, F> !UnwindSafe for OutputScope<'scope, 'frame, 'borrow, F>
impl<'scope, 'frame, 'borrow, F> !UnwindSafe for OutputScope<'scope, 'frame, 'borrow, F>