internal static Exception ToException(this ImageUtilError err, string message) { Debug.Assert(err != ImageUtilError.None); string errMessage = $"{message}; {err}."; switch (err) { case ImageUtilError.PermissionDenied: return(new UnauthorizedAccessException(errMessage)); case ImageUtilError.InvalidParameter: return(new ArgumentException(errMessage)); case ImageUtilError.NoSuchFile: return(new FileNotFoundException(errMessage)); case ImageUtilError.OutOfMemory: return(new OutOfMemoryException(errMessage)); case ImageUtilError.NotSupported: return(new NotSupportedException(errMessage)); case ImageUtilError.NotSupportedFormat: return(new FileFormatException(errMessage)); case ImageUtilError.InvalidOperation: default: return(new InvalidOperationException(errMessage)); } }
internal static void ThrowIfFailed(this ImageUtilError err, string message) { if (err == ImageUtilError.None) { return; } throw err.ToException(message); }