There are 2 Error struct / enum declarations, probably in separate files
To the ?, they are different types and cannot be converted from one to the other (because they are two disparate structs that happen to have the same name, but can have different bodies)
To fix this
You can either use .some_func_result().map_err(|err| /* conversion here/*)?; +
Or you can impl From<Error1> for Error2
And you should also name it ThingError, so you can visually differentiate the two
There are like 10 different mapping functions, depending on if you're using an option or a result
I never remember which one specifically i need, (unwrap_or, map_or, map_or_else, ok, ok_or)
I usually just hunt through the auto complete list until i find the function signature that gives me what i need
A pill calendar is really handy. When you take pills once daily, it's really easy to forget if you've taken today's since your brain just filters it out
But taking a second dose can be dangerous, so a pill calendar gives you visual conformation that you have indeed taken today's pills
Ralkalest