Add new reserved lifetime: 'owned
Rust Internals [Unofficial]
June 12, 2026
I feel like you might want to explore higher-ranked trait bounds, or, as others have said, use multiple lifetime parameters. Your initial example is more-or-less asking for a &'static &'static str or a &'static String when you use Check<'static, &'static str> or Check<'static, String>. Using the same one lifetime parameter for everything is really limiting.
Discussion in the ATmosphere