Mercurial > lbo > hg > memoize
view examples/shared.rs @ 102:dc425adf42b3
Add an example that uses SharedCache
This will catch the compile error on `cargo test`.
author | Risto Saarelma <risto.saarelma@iki.fi> |
---|---|
date | Fri, 04 Aug 2023 13:06:15 +0300 |
parents | |
children |
line wrap: on
line source
use memoize::memoize; #[memoize(SharedCache)] fn hello(arg: String, arg2: usize) -> bool { println!("{} => {}", arg, arg2); arg.len() % 2 == arg2 } fn main() { // `hello` is only called once here. assert!(!hello("World".to_string(), 0)); assert!(!hello("World".to_string(), 0)); // Sometimes one might need the original function. assert!(!memoized_original_hello("World".to_string(), 0)); memoized_flush_hello(); }