Open sandboxFocus

Method Cast

Cast<TSource, TTarget>(TSource)

At post-compile time, casts an instance of a type into another. A post-compile time error is reported if the source type cannot be assigned to the target type.

Declaration
public static TTarget Cast<TSource, TTarget>(TSource o) where TSource : class where TTarget : class
Parameters
Type Name Description
TSource o

Instance to be casted.

Returns
Type Description
TTarget

The object o casted as TTarget.

Type Parameters
Name Description
TSource

Source type.

TTarget

Target type.

Remarks

The purpose of this method is to make a source code compilable even when an interface will be implemented at post-compile time. PostSharp ensures that TTarget is assignable from TSource. If yes, the call to this method is simply suppressed. If types are not assignable, a build error is issued.