Skip to main content

ProcessingCache

Struct ProcessingCache 

Source
pub struct ProcessingCache<T, B> { /* private fields */ }
Expand description

Cache of processed contexts.

Pass one to Process::process_full_with_cache. Processing options and base URL are part of the key, so they may vary freely between calls; the Loader is not, so a cache must not outlive the loader it was populated against. One cache per document is the natural unit.

Entries are never evicted, so the cache grows with the number of distinct contexts processed through it. Self::clear releases them.

Implementations§

Source§

impl<T, B> ProcessingCache<T, B>

Source

pub fn new() -> Self

Creates an empty cache.

Source

pub fn clear(&self)

Discards every memoized context.

Source

pub fn len(&self) -> usize

Returns the number of memoized contexts.

Source

pub fn is_empty(&self) -> bool

Checks whether nothing has been memoized yet.

Trait Implementations§

Source§

impl<T, B> Default for ProcessingCache<T, B>

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

§

impl<T, B> !Freeze for ProcessingCache<T, B>

§

impl<T, B> !RefUnwindSafe for ProcessingCache<T, B>

§

impl<T, B> !UnwindSafe for ProcessingCache<T, B>

§

impl<T, B> Send for ProcessingCache<T, B>
where Mutex<RawMutex, HashMap<u64, CacheEntry<T, B>>>: Send,

§

impl<T, B> Sync for ProcessingCache<T, B>
where Mutex<RawMutex, HashMap<u64, CacheEntry<T, B>>>: Sync,

§

impl<T, B> Unpin for ProcessingCache<T, B>
where Mutex<RawMutex, HashMap<u64, CacheEntry<T, B>>>: Unpin,

§

impl<T, B> UnsafeUnpin for ProcessingCache<T, B>
where Mutex<RawMutex, HashMap<u64, CacheEntry<T, B>>>: UnsafeUnpin,

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> BorrowUnordered for T

Source§

fn as_unordered(&self) -> &Unordered<T>

Views this value as an Unordered reference.
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, C> FromWithContext<T, C> for T

Source§

fn from_with(value: T, _context: &C) -> T

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, C> IntoWithContext<U, C> for T
where U: FromWithContext<T, C>,

Source§

fn into_with(self, context: &C) -> U

Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

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

Source§

type Error = !

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

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U, C> TryFromWithContext<U, C> for T
where U: IntoWithContext<T, C>,

Source§

type Error = !

Source§

fn try_from_with( value: U, context: &C, ) -> Result<T, <T as TryFromWithContext<U, C>>::Error>

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.
Source§

impl<T, U, C> TryIntoWithContext<U, C> for T
where U: TryFromWithContext<T, C>,

Source§

type Error = <U as TryFromWithContext<T, C>>::Error

Source§

fn try_into_with( self, context: &C, ) -> Result<U, <T as TryIntoWithContext<U, C>>::Error>

Source§

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

Source§

fn with<C>(&self, context: C) -> Contextual<&T, C>

Source§

fn into_with<C>(self, context: C) -> Contextual<T, C>
where T: Sized,