Check that two function signatures are equal at compile-time - C#