How do I define custom Error types and enums?

In Swift, you can define custom error types by adopting the Error protocol. This allows you to create your own error types that can be thrown and caught using Swift's error handling mechanisms. Enums are often used to define these custom error types for better organization and clarity.

Creating a Custom Error Type with Enums

Here’s how you can define a custom error type using an enum:

enum NetworkError: Error { case invalidURL case networkUnavailable case serverError(code: Int) } // Example usage func fetchData(from url: String) throws { guard let _ = URL(string: url) else { throw NetworkError.invalidURL } // Imagine network operation here and an error occurs throw NetworkError.serverError(code: 404) }

Swift Custom Error Types Error Protocol Enums Error Handling