a575963da9
Former-commit-id: da6be194a6b1221998fc28233f2503bd61dd9d14
38 lines
439 B
C#
38 lines
439 B
C#
class MainClass
|
|
{
|
|
static class TypeConverter<TIn, TOut>
|
|
where TIn : class
|
|
where TOut : struct
|
|
{
|
|
public static bool Convert(TIn input)
|
|
{
|
|
if (input is TOut)
|
|
{
|
|
return true;
|
|
}
|
|
|
|
return false;
|
|
}
|
|
}
|
|
|
|
public static int Main()
|
|
{
|
|
object x = 3;
|
|
if (TypeConverter<object, double>.Convert(x))
|
|
return 1;
|
|
|
|
if (!TypeConverter<I, S>.Convert(new S()))
|
|
return 2;
|
|
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
interface I
|
|
{
|
|
}
|
|
|
|
struct S : I
|
|
{
|
|
}
|