If you consider the code examples in temperature.rs, you will see that some use a tuple and some use a single type return. While for development this is a fairly acceptable approach, for a release we may want something more structured.
Consider the two functions kelvin_to_celcius and celcius_to_farenheit; in order to use them, we need to have two variables:
let ktoc = kelvin_to_celcius(14.5f32); let ctof = celcius_to_fahrenheit(24.3f32);
There are a number of possible solutions to this problem.
- Do nothing! Many libraries use multiple variables when the function returns different types.
- Implement a trait within the module that tests the return for false and returns either a String containing the answer or calculation failed.
- Define a single struct for the answer of the form, which is then passed back to the caller, as follows: ...