Saw this signature today:
public interface ISomeInterface
What impact does the in parameter have?
That signifies generic contravariance. The opposite is covariance (keyword out).
What this means is that when an interface is contravariant (in), then the interface can be implicitly converted to a generic type when the type parameter inherits T.
Conversely for covariance out, the interface can be implicitly converted to a generic type where the type parameter is a 'lesser' type in the type hierarchy.