Trait ResultCache  
pub trait ResultCache {
    // Required methods
    fn key(&self, key: &ResultCacheKey<'_>) -> u64;
    fn put(&mut self, key: u64, result: &Result<(), TestCaseError>);
    fn get(&self, key: u64) -> Option<&Result<(), TestCaseError>>;
}Expand description
An object which can cache the outcomes of tests.
Required Methods§
fn key(&self, key: &ResultCacheKey<'_>) -> u64
fn key(&self, key: &ResultCacheKey<'_>) -> u64
Convert the given cache key into a u64 representing that value. The
u64 is used as the key below.
This is a separate step so that ownership of the key value can be handed off to user code without needing to be able to clone it.
fn put(&mut self, key: u64, result: &Result<(), TestCaseError>)
fn put(&mut self, key: u64, result: &Result<(), TestCaseError>)
Save result as the outcome associated with the test input in key.
result is passed as a reference so that the decision to clone depends
on whether the cache actually plans on storing it.