C# Language Features
Get flash to fully experience Pearltrees
The C5 Generic Collection Library
For generic type parameters, the out keyword specifies that the type parameter is covariant. You can use the out keyword in generic interfaces and delegates. Covariance enables you to use a more derived type than that specified by the generic parameter. This allows for implicit conversion of classes that implement variant interfaces and implicit conversion of delegate types. Covariance and contravariance are supported for reference types, but they are not supported for value types. An interface that has a covariant type parameter enables its methods to return more derived types than those specified by the type parameter.