F
является переменной типа, а не типом, и поэтому не может иметь собственных параметров типа или времени жизни.Если вам нужно ограничить переменную типа только теми ссылками, которые ограничены временем жизни, вы можете использовать время жизни в качестве границы:
struct Bar<'a, 'f: 'a, F: Foo<'f> + 'f> {
filter: &'a FooRef<'f, F>,
}