NRefactory
NRefactory copied to clipboard
'Convert explicit interface implementation to implicit' needs to copy contraints and default parameters from interface member
Explicit interface implementations implicitly inherit generic constraints from the interface member. Similarly, they usually do not specify any default parameters, as the explicit interface implementation cannot be called directly without going through the interface.
When an explicit interface implementation is converted to an implicit implementation, the NRefactory code action needs to copy the generic constraints, and also should copy the default parameter values.
When converting in the opposite direction, the action should remove the constraints and default parameter values.