What does the trait bound
'static mean in Rust?
After a few weeks of programming in Rust we should have a pretty good idea of what a
'static reference is, but a
'static trait bound can seem a bit more mysterious.
The first time I had to add a
'static trait bound to my code. I didn't feel like I understood what was happening, because there were no references involved. In fact, the only data involved were function arguments being passed by ownership, which is usually a pretty reliable way of avoiding borrow checker problems.
In many cases, the rust compiler will suggest a
'static trait bound to address a problem. The compiler is probably right, but let's explore what it really means so we can be confident that we understand the solution.