Struct ContextRef

Source
pub struct ContextRef<'a> { /* private fields */ }
Expand description

A mutable reference to a context being created or destroyed.

Implementations§

Source§

impl ContextRef<'_>

Source

pub fn parent(&self) -> Option<&Context>

Get the parent context of this context.

See Context::parent for more details.

Source

pub fn extensions(&self) -> &Extensions

Get a read-only reference to the extensions of this context.

Source

pub fn extensions_mut(&mut self) -> &mut Extensions

Get a mutable reference to the extensions of this context.

Examples found in repository?
examples/basic.rs (line 31)
28    fn on_new_context(&self, mut context: ContextRef<'_>, fields: Fields<'_>) {
29        let foo_value = fields.get("foo").and_then(|value| value.as_bool());
30        if let Some(foo_value) = foo_value {
31            context.extensions_mut().insert(Foo(foo_value));
32        }
33    }
Source

pub fn iter(&self) -> impl Iterator<Item = &Context>

Recursively iterate over this context’s parents.

Because the ContextRef is used before the context is created, and after it is destroyed, the iterator will not include the context itself.

Auto Trait Implementations§

§

impl<'a> Freeze for ContextRef<'a>

§

impl<'a> !RefUnwindSafe for ContextRef<'a>

§

impl<'a> Send for ContextRef<'a>

§

impl<'a> Sync for ContextRef<'a>

§

impl<'a> Unpin for ContextRef<'a>

§

impl<'a> !UnwindSafe for ContextRef<'a>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.