Open Piedone opened 9 years ago
+1
+1
And this makes you wonder why GitHub doesn't have a voting feature for issues. Probably the only aspect in what Codeplex is better :-).
Yeah exactly. Maybe submit an issue for that? ;)
There is one :-): https://github.com/isaacs/github/issues/9 Well, kind of...
Breaking change :/
Or maybe not breaking ...
Not breaking :-).
Theoretically, it can be breaking if someone explicitly created a Func<T1, T2, ...>
and passed it as an argument. However, I think everyone uses lambda expressions these days, so this shouldn't be a problem.
Having
Func<T1, T2, ...>
orAction<T1, T2,...˙>
delegates in public interfaces is most of the times confusing, since you don't know the meaning of the arguments. If there is a single output or a single input/output argument, that is most of the time fine, but it's gets really hard to understand once we have three-four type parameters forFunc
.E.g. you have to dig through the code to eventually find out that the parameters of the
Func<string, string, string, PlacementInfo>
stored inBuildShapeContext.FindPlacement
expectsshapeType, differentiator, location
.Instead, we could define explicit delegates, e.g. for the above:
I'm sure there are similar cases elsewhere too.
A quite similar issue is #4759.