public static int Main() { Eval(GenClass <FooClass> .ConvertToConstraint(new FooClass()).GetType().Equals(typeof(FooClass))); Eval(GenClass <FooStruct> .ConvertToConstraint(new FooStruct()).GetType().Equals(typeof(FooStruct))); Eval(GenStruct <FooClass> .ConvertToConstraint(new FooClass()).GetType().Equals(typeof(FooClass))); Eval(GenStruct <FooStruct> .ConvertToConstraint(new FooStruct()).GetType().Equals(typeof(FooStruct))); TypeFilter myFilter = new TypeFilter(MyInterfaceFilter); Console.WriteLine(typeof(FooClass).FindInterfaces(myFilter, typeof(XFoo))); foreach (var iface in typeof(FooStruct).GetInterfaces()) { Console.WriteLine(iface); } Console.WriteLine(typeof(FooStruct).GetInterfaces()); Console.WriteLine(typeof(FooStruct).IsInterface); Console.WriteLine(typeof(XFoo).IsInterface); if (result) { Console.WriteLine("Test Passed"); return(0); } else { Console.WriteLine("Test Failed"); return(1); } }
public static int Main() { Eval(GenClass <FooClass> .ConvertToConstraint(new FooClass()).GetType().Equals(typeof(FooClass))); Eval(GenClass <FooStruct> .ConvertToConstraint(new FooStruct()).GetType().Equals(typeof(FooStruct))); Eval(GenStruct <FooClass> .ConvertToConstraint(new FooClass()).GetType().Equals(typeof(FooClass))); Eval(GenStruct <FooStruct> .ConvertToConstraint(new FooStruct()).GetType().Equals(typeof(FooStruct))); if (result) { Console.WriteLine("Test Passed"); return(100); } else { Console.WriteLine("Test Failed"); return(1); } }