Signal-iOS/SignalServiceKit/Storage/Database/SDSError.swift
2024-03-27 12:22:52 -05:00

42 lines
1.1 KiB
Swift

//
// Copyright 2019 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
//
import Foundation
import GRDB
import SignalCoreKit
// TODO: Perhaps we should replace all of these with assertionError.
@objc
public enum SDSError: Int, Error {
// TODO: We may want to add a description parameter to these errors.
case invalidResult
case missingRequiredField
case unexpectedType
case invalidValue
case invalidTransaction
}
// MARK: -
extension SDSError: CustomStringConvertible {
public var description: String {
switch self {
case .invalidResult:
return "SDSError.invalidResult"
case .missingRequiredField:
return "SDSError.missingRequiredField"
case .unexpectedType:
return "SDSError.unexpectedType"
case .invalidValue:
return "SDSError.invalidValue"
case .invalidTransaction:
return "SDSError.invalidTransaction"
@unknown default:
owsFailDebug("unexpected value: \(self.rawValue)")
return "SDSError.Unknown"
}
}
}