Similar to std::unique_ptr's release function which allows the user to take control of the object, allow the user to take control of the map to unmap the file after the original wrapper goes out of scope.
This causes an issue when using something like libzip where data added to the zip file must remain valid until the archive is closed. Normally the pointer and size can be stored by the callee and released after the archive is closed, but this is not possible
Similar to
std::unique_ptr
's release function which allows the user to take control of the object, allow the user to take control of the map to unmap the file after the original wrapper goes out of scope. This causes an issue when using something likelibzip
where data added to the zip file must remain valid until the archive is closed. Normally the pointer and size can be stored by the callee and released after the archive is closed, but this is not possible