Feature/additional overloading #113
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
As discussed in #89:
I finally got code at a stage were its worth sharing. I've added code generation for overloads. This is what it looks like for Length (sorry about the re-formatting of the Length.json file, VS did that automatically).
´´´
"OperatorOverloads": [
{
"Operator": "/",
"OtherUnit": "TimeSpan",
"ReturnUnit": "Speed",
"ReturnUnitBasePluralName": "MetersPerSecond",
"OtherUnitBasePluralName": "TotalSeconds"
},
´´´
It would be nice if it could automatically create the corresponding overload in Speed (I think all the needed information is there), but since this is the first time I'm working with PowerShell scripts it would be faster for me to do this manually for the 32 quantities...
At the moment I've only added the operator overloading for Length. If you like it I can do the same for the rest of the units.
I've added some tests in InterUnitConversionTests.cs to show the end result but I can't think of good auto-generated test. All tests I can think of would just test the generation code and not the actual conversion. If you have a good idea I'm happy to do the work.