private static bool Check(IFace <object> i) { // We would use type information about the GDV guess here to optimize. if (i.Foo() is IList <int> ) { return(true); } return(false); }