Files
ICCery-CPU/Sources/AppError.swift
T
Local Admin 1c53e698aa
Build macOS Packages / Build macOS (Intel) (push) Failing after 15s
Build macOS Packages / Build macOS (Apple Silicon) (push) Failing after 29s
Build macOS Packages / Build macOS (Universal) (push) Skipped
build fixes
2026-09-07 06:11:55 -07:00

36 lines
1022 B
Swift

import Foundation
/// Process exit codes from SPEC §4.
enum AppExitCode: Int32 {
case success = 0
case invalidJob = 1
case unreadableTarget = 2
case printerError = 3
case internalFatal = 4
}
enum AppError: Error, CustomStringConvertible {
case invalidJob(String)
case unreadableTarget(String)
case printer(String)
case internalFatal(String)
var exitCode: AppExitCode {
switch self {
case .invalidJob: return .invalidJob
case .unreadableTarget: return .unreadableTarget
case .printer: return .printerError
case .internalFatal: return .internalFatal
}
}
var description: String {
switch self {
case .invalidJob(let m): return "Invalid / missing job file: \(m)"
case .unreadableTarget(let m): return "One or more target files unreadable: \(m)"
case .printer(let m): return "Printer / CUPS error: \(m)"
case .internalFatal(let m): return "Internal fatal error: \(m)"
}
}
}