This function makes a copy of the data stored in result; if a client wishes to reuse the result instance to avoid allocations they can do so. (This function may invoke an internal copy of the result or serialize it in place to disk, etc.)
/// Thrown if the tool info is not yet written.
///