enum TransferState { case waiting case copying(progress: Double) case finished}func message(for state: TransferState) -> String { switch state { case .waiting: return "Waiting" case .copying(let progress): return "Copying \(Int(progress * 100))%" case .copying(let progress) where progress < 0.1: return "Starting" case .finished: return "Done" }}