To map a result, ie a success T or an error E, into another result,
ie a success U or an error F means the code focus on T -> U, without
regard it's an Ok, and E -> F, without regard it's an Err value.
As such, it's seems more natural to express the idea with
methods manipulating tbe values than to recreate the enum container too.
The Serde library uses those map and map_err methods.