| "Variance information." |
| shared interface Variance of invariant | covariant | contravariant {} |
| |
| "Invariant means that neither subtype nor supertype can be accepted, the |
| type has to be exactly that which is declared." |
| shared object invariant satisfies Variance { |
| string => "Invariant"; |
| } |
| |
| "Covariant means that subtypes of the given type may be returned." |
| shared object covariant satisfies Variance { |
| string => "Covariant"; |
| } |
| |
| "Contravariant means that supertypes of the given type may be accepted." |
| shared object contravariant satisfies Variance { |
| string => "Contravariant"; |
| } |
| |