28 lines
559 B
C#
28 lines
559 B
C#
|
class Test
|
||
|
{
|
||
|
|
||
|
public static T QueryInterface<T>(object val)
|
||
|
where T : class
|
||
|
{
|
||
|
if (val == null)
|
||
|
return null;
|
||
|
|
||
|
// First, see if the given object can be directly cast
|
||
|
// to the requested type. This will be a common case,
|
||
|
// especially when checking for standard behavior interface
|
||
|
// implementations (like IXrcDataElement).
|
||
|
T tval = val as T;
|
||
|
if (tval != null)
|
||
|
return tval;
|
||
|
|
||
|
// ... rest of method unimportant and omitted ...
|
||
|
return null;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
class Driver
|
||
|
{
|
||
|
public static void Main () {}
|
||
|
}
|
||
|
|