pub struct Cache<Source> {
pub source: Source,
/* private fields */
}
Expand description
Noise function that caches the last output value generated by the source function.
If the input coordinates passed to Cache::get
are equal to the previous
call, the function returns the cached result of the previous call to
Source::get
. Otherwise, Source::get
is called with the new coordinates,
overwriting the cache with the result, and returning the result to the
caller.
Caching a noise function is useful if it is used as a source function for multiple noise functions. If a source function is not cached, the source function will redundantly calculate the same output value once for each noise function in which it is included.
Fields§
§source: Source
Outputs the value to be cached.
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl<Source> !RefUnwindSafe for Cache<Source>
impl<Source> Send for Cache<Source>where
Source: Send,
impl<Source> !Sync for Cache<Source>
impl<Source> Unpin for Cache<Source>where
Source: Unpin,
impl<Source> UnwindSafe for Cache<Source>where
Source: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more