Consider type Foo and something which yields IEnumerable<Foo?>.
Later in code I do seq.Where(x => x != null), so effectively it should become IEnumerable<Foo> for all other methods down the chain.
Is there an elegant way to let compiler know items are not null anymore?