# Generic Cache System Build a simple key-value cache that can store any types. You'll write generic functions that manage cached data, demonstrating how generics let you write one implementation that works with strings, numbers, or any other type. ## What you'll practice - Writing generic functions with multiple type parameters `` - Using trait bounds to constrain what types can be used - Working with `HashMap` and generic collections - Combining `Option` and `Result` with generics ## Further information - [Generic Data Types](https://doc.rust-lang.org/book/ch10-01-syntax.html) - [Using Trait Bounds](https://doc.rust-lang.org/book/ch10-02-traits.html#using-trait-bounds-to-conditionally-implement-methods)